机器学习day3——多变量线性回归、正规方程

多变量即多个特征量。
xⱼ 表示第j个特征值
x ⁽ⁱ⁾ 表示第i个训练样本的输入特征值,x ⁽²⁾ 表示第2个训练样本的特征向量,2表示索引而不是平方
x ⱼ ⁽ⁱ⁾ 表示第i个训练样本中第j个特征量的值

假设函数

多变量假设函数
用向量表示xᵢ 、θᵢ向量表示多元假设函数

梯度下降函数:

向量形式的梯度

特征缩放

如果变量之间的取值范围相差过大,图形会呈现椭圆状,,且在梯度下降过程中,梯度值来回波动且过程较长;相反,如果你能确保这些特征都处在一个相近的范围,确保不同特征的取值在相近的范围内,这样梯度下降法就能更快地收敛。
J(θ) 是一个关于参数θ1 和 θ2 的函数,且x1、x2范围相差较大
使用特征缩放后的函数图像,x1,x2的范围相近
执行特征缩放的目的一般是将特征的取值约束到接近[-1,1]的范围,x0一般来说已经等于1了,而其他特征需要除以不同的数将其范围控制在[-1,1]左右。
例如

均值归一化

如果你有一个特征 xᵢ 你就用xᵢ-μᵢ来替换,通过这样做 让你的特征值具有为0的平均值。(除了x0)
(x1 - μ1)/S1来替换原来的特征x1。其中定义μ1的意思是在训练集中x1的平均值,S1:特征值的范围(最大值-最小值,或者也可以把S1设为变量的标准差)
注意:特征值缩放,并不需要太在意精度,它只是为了让梯度下降更快,减少迭代次数。
例如

学习效率

判断梯度下降是否正常工作:利用迭代-代数函数值图。
正常工作的梯度函数的调试渐变下降图x轴梯度下降的每步迭代后,y轴代数函数的值随迭代次数增加,当迭代次数增加但代数函数的值不怎么变化时,说明函数已经接近收敛。
相反,代价函数值随迭代次数增加的,说明梯度函数出现问题了,需要通过调整α的值,使梯度函数正常工作。
带价函数值随迭代数增加,梯度函数不正常工作
带价函数值随迭代数波动,梯度函数不正常工作

说明,梯度下降幅度太大,说明学习率α太大,应该使用较小的学习率α
当学习率α太小时,只会影响迭代次数,降低收敛速度,不会影响代价函数。可以逐步增加α的值,从而得到合适的α值。

正规方程

参考:https://blog.csdn.net/hahajinbu/article/details/49904665
之前学习的梯度下降法,是用迭代的方式来求代价函数的最优解。而正规方程利用解析的方式求解,可以一次性求得最优解。
正规方程
正规方程
这样通过正规方程就可以很容易地求出参数 θ(一定要注意,这里的参数 θ 是一个向量)。

定义一个矩阵,作为设计矩阵,表示样本输入,xθ,这个矩阵的每一行都是一组特征值。
设计矩阵
对比梯度下降函数和正规方程:
图来源于:https://zhuanlan.zhihu.com/p/56444135
所以正规方程适合特征变量的数量较小的情况,如果特征变量数量较多还是选择梯度下降算法求最优解。

呜呜呜呜呜 这章前面学得有多开心后面学正规方程就有多懵逼 呜呜呜呜呜

正规方程在矩阵不可逆情况下的解

以下情况可能会出现矩阵不可逆的情况:
1. 有两个相似的特征
这个两个特征可以用一个线性关系进行表示。
例如,米和英尺,这两个都是用来描述长度的单位,且他们之间可以进行相互转化,如果特征值同时出现他们两个,就会出现矩阵不可逆的情况。
解决:选取任意一个作为特征
2. 特征值的数量特别多,但是训练集的数量特别少
比如10个样本集,却要求出100个特征。
解决:减少特征或者使用正规法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值