Computer Science
Machine Learning Chinese NLP :::: Gradient Descent for Multiple Variables
Gradient Descent for Multiple Variables
在之前的视频中 我们谈到了一种线性回归的假设形式
这是一种有多特征或者是多变量的形式
在本节视频中 我们将会谈到如何找到满足这一假设的参数
尤其是如何使用梯度下降法
来解决多特征的线性回归问题
为尽快让你理解 现假设现有多元线性回归
并约定 x0=1
该模型的参数是从 θ0 到 θn
不要认为这是 n+1 个单独的参数
你可以把这 n+1 个 θ 参数想象成一个 n+1 维的向量 θ
所以 你现在就可以把这个模型的参数
想象成其本身就是一个 n+1 维的向量
我们的代价函数是从 θ0 到 θn 的函数 J 并给出了误差项平方的和
但同样地 不要把函数 J
想成是一个关于 n+1 个自变量的函数
而是看成带有一个 n+1 维向量的函数
这就是梯度下降法
我们将会不停地用 θj 减去 α 倍的导数项 来替代 θj
同样的方法 我们写出函数J(θ)
因此 θj 被更新成 θj 减去学习率 α 与对应导数的乘积
就是代价函数的对参数 θj 的偏导数
当我们实现梯度下降法后 你可以仔细观察一下
尤其是它的偏导数项
下面是我们当特征 n=1 时 梯度下降的情况
我们有两条针对参数 θ0 和 θ1 不同的更新规则
希望这些对你来说并不陌生 这一项是代价函数里部分求导的结果
就是代价函数相对于 θ0 的偏导数
同样 对参数 θ1 我们有另一个更新规则
仅有的一点区别是 当我们之前只有一个特征
我们称该特征为x(i) 但现在我们在新符号里
我们会标记它为 x 上标 (i) 下标1 来表示我们的特征
以上就是当我们仅有一个特征时候的算法
下面我们来讲讲当有一个以上特征时候的算法
现有数目远大于1的很多特征
我们的梯度下降更新规则变成了这样
有些同学可能知道微积分 如果你看看代价函数
代价函数 J 对参数 θj 求偏导数
你会发现 求其偏导数的那一项
我已经用蓝线圈出来了
如果你实现了这一步
你将会得到多元线性回归的梯度下降算法
最后 我想让你明白
为什么新旧两种算法实际上是一回事儿
或者说为什么这两个是类似的算法 为什么它们都是梯度下降算法
考虑这样一个情况
有两个或以上个数的特征
同时我们有对θ1、θ2、θ3的三条更新规则 当然可能还有其它参数
如果你观察θ0的更新规则
你会发现这跟之前
n=1的情况相同
它们之所以是等价的
这是因为在我们的标记约定里有 x(i)0=1 也就是
我用品红色圈起来的两项是等价的
同样地 如果你观察 θ1 的更新规则
你会发现这里的这一项是
和之前对参数θ1的更新项是等价的
在这里我们只是用了新的符号x(i)1来表示我们的第一个特征
现在我们有个更多的特征 那么就可以用与之前相同的更新规则
我们可以用同样的规则来处理 θ2 等其它参数
这张幻灯片的内容不少 请务必仔细理解
如果觉得幻灯片上数学公式没看懂 尽管暂停视频
请确保理解了再继续后面的学习
如果你将这些算法都实现了
那么你就可以直接应用到多元线性回归中了
Sorry, the comment form is closed at this time.