吴恩达机器学习week2

week2

多元线性回归

多元概念

输入的变量说明
在这里插入图片描述
多元变量的假设函数如下
在这里插入图片描述
如果用矩阵来表示,就是如下的结果(注意:此处默认x0这个变量是1,为了和假设函数的第一个参数对应,这样可以用两个n+1维的向量相乘)
在这里插入图片描述

多元变量的梯度下降方法

多元和一元的本质是一样的,我们只需要对每一个参数都进行求导迭代,最后达到收敛
在这里插入图片描述
如下两张图是一元和多元的区别(主要区别在于对每个参数进行求导之后乘对应的第i个变量xi即可)
在这里插入图片描述

梯度下降的实用方法1:特征缩放(Feature Scaling)

我们可以通过让我们的特征值都大致在一个范围内来加快梯度下降的速度,因为θ在小范围的时候会下降的快,大范围时下降的慢

  • 方法一:特征缩放
    用输入的特征除以该特征的范围,将得到一个范围在1以内的值

  • 方法二:均值归一化
    用输入的特征值减去该特征值的平均值,然后再除以标准差
    在这里插入图片描述
    μi就是特征i的均值,si是特征i的范围或者是标准差(max-min);

**ps:**The quizzes in this course use range - the programming exercises use standard deviation.

梯度下降实用方法2:学习率

检测梯度下降是否有效的两种方法

  1. debug方式:以迭代次数为x轴,纵轴为损失函数,如果损失函数在增加,那么应该增加α的值
  2. 自动收敛测试:声明如果损失函数减少的值在一轮迭代中少于E(比如10-3),那么就认为收敛,但是在实际中很难选到合适的α
    在这里插入图片描述
    在这里插入图片描述
    总结: 如果α过于小,那么会收敛很慢(下坡慢);如果α太大,那么会造成在每一轮的迭代中损失函数并不下降,导致最终无法收敛

多项式回归

如果我们的数据不能够很好的贴合线性回归,那么我们可以将假设函数修改为高次多项式
比如:我们的假设函数是如下的线性函数
在这里插入图片描述
那么我们可以将它变为高次的例如
在这里插入图片描述
在这里插入图片描述
当然,我们还可以对特征进行改动
在这里插入图片描述
这样的情况下一定要注意特征放缩

分析计算参数

正态方程求解θ

公式:
在这里插入图片描述
将所有特征按照图示方法转化为 (m*n+1) 的矩阵即可,x0默认用1;结果是一个m维的列向量
在这里插入图片描述
对于正态方程的方法来说不需要对特征值进行一个标准化

正态方程和梯度下降的优缺点对比如下:

梯度下降正态方程
需要选择学习率α不需要选择学习率α
需要多次迭代不需要迭代
O (kn^2)O(n^3)需要计算x的转置乘x
当特征数N很大时效果好N越大越慢

一般当N超过万的数量级时选用梯度下降会更加快

正态方程的不可逆问题

在实际应用的过程中可能会出现求矩阵的逆时不可逆的情况。这种情况大致有两种原因:

  1. 有冗余特征,两个特征值的关联太大或者是说两者是有线性关系的
  2. 有太多的特征值(出现样本数目小于特征值数目)的情况,这种情况可以删掉一些特征或者使用正则化regularization的方法(稍后的课程介绍)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值