本系列文档按课程视频的章节(P+第几集)进行分类,记录了学习时的一些知识点,方便自己复习。
课程视频P11
图1 表示了梯度下降方法和线性回归模型,而我们要做的就是把它俩结合起来,用梯度下降法来使这个线性回归模型达到最小值。画红线的部分为偏导数,是重点要讨论的部分,在下一张图展开。
图2将梯度下降法中的偏导函数的求解分步展开写了出来。
图3形象的展示了梯度下降法的求解方式,在山顶不断地朝梯度下降的地方前进,最终到达山脚。对应的就是通过每一时刻做图像的切线斜率,不断调整
θ
0
\theta_0
θ0,
θ
1
\theta_1
θ1的值,使
J
(
θ
0
,
θ
1
)
J(\theta_0,\theta_1)
J(θ0,θ1)不断变小,最终达到局部最优。
图4 的等高线图和线性函数图像要结合起来看,当右边的等高线图上的点不断变化时,左边的线性函数图像也随着变化。随着等高线图从外缘的等高线不断朝着中心移动,线性函数的斜率不断向0靠近,最终当点到达等高线图的中心时,表示了此时的代价函数值最小,随之就出现了蓝色的线性函数图像,此时的线性函数是对散点数据的最佳拟合曲线。
图5 介绍了知识点Batch gradient descent, 当每一次梯度下降时,都要遍历所有的训练集样本,就叫做Batch gradient descent。当然,也有每一次梯度下降时,不会遍历所有的训练集样本,而是只关注其中一部分样本的方法,我们之后会讲到。
课程视频P14——矩阵向量乘法
** 可以用两个矩阵的相乘来表示将不同的x代入线性函数之后得到的值,例如图6 就是用一个4x2矩阵乘以2x1矩阵表示了将4个x值分别带入一个一元一次函数,并求得对应结果。**
课程视频P15——矩阵乘法
** 图7 就是用一个4x2矩阵乘以2x3矩阵表示了将4个x值分别带入三个一元一次函数,并求得对应结果。可以回看上一图,对比感受一下。**
课程视频P18——多元线性回归(Multivariate linear regression)
当房价有了不止一个影响因素,图8 表示有
x
1
,
x
2
,
x
3
,
x
4
x_1,x_2,x_3,x_4
x1,x2,x3,x4四个影响房价y的因素变量时,用一个4x1的向量来表示一组四个变量,而这样的数据样本有n个,故我们也有n个这样的向量,所以向量合起来组成了一个n维矩阵。
图9 讲述了当有n个影响目标值
h
θ
(
x
)
h_\theta(x)
hθ(x)的变量
x
1
.
.
.
x
n
x_1...x_n
x1...xn时,目标函数的写法,以及将目标函数系数转化为转置矩阵,再与x变量相乘的写法。
课程视频P20——多元梯度下降法之特征缩放
在实际操作中可以通过特征缩放来将一些指标统一到一个比较合适的范围,通常采用样本
x
−
u
1
m
a
x
−
m
i
n
\frac{x-u_1}{max-min}
max−minx−u1 来进行缩小样本值,如图10 就采用此方法对房子面积大小,房间数量进行缩小。
课程视频P21——多元梯度下降法之学习率 α \alpha α
图11 讲述了采用左边收敛曲线的方式对梯度下降法下代价函数
J
(
θ
)
J(\theta)
J(θ)的收敛情况进行直观的判断。
图12 介绍了梯度下降法中如果曲线不断上升或者反复升降,都说明是学习率
α
\alpha
α太大了导致的。
当学习率
α
\alpha
α太小时,每一次的迭代都能使代价函数不断变小,最终达到最小值,但是如果学习率
α
\alpha
α太小,就会导致每次迭代只会下降一点点,由此需要迭代很多次,效率很低。
当学习率
α
\alpha
α太大时,很可能出现右边那幅图的迭代情况,导致无法收敛。
于是在测试该设置什么大小的学习率
α
\alpha
α值时,通常采用如图12 的方式,以很小的学习率,如0.001开始,每次学习率变为前一次的3倍,将0.003的3倍可近似取整为0.01,以此类推下去,可得到一个学习率
α
\alpha
α的集合,再对比测试,最终就可得到迭代效果最优的
α
\alpha
α值。
未完待续…