【Stanford机器学习笔记】1-Linear Regression with One Variable

1. Model Representation

单变量线性回归即假设函数中 hθ(x) 只包含一个特征变量x,加上一个偏差值bias,即只包含两个参数 θ0 θ1

hθ(x)=θ0+θ1x
监督分类的基本流程是将训练样本输入学习算法,通过训练得到最优参数 Θ ,最后得到假设函数 h(x) ,然后用于回归预测。除了线性回归,还包括一些非线性回归,如指数、对数、多项式等。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第1张图片

2. Cost Function

代价函数J又叫误差平方函数,即所有样本的残差平方和。训练的目标是最小化代价函数,获取最优参数 Θ ,代价函数公式如下:

J(Θ)=12mi=1m(hθ(x(i))y(i))2
目标函数是:
min J(Θ)

【Stanford机器学习笔记】1-Linear Regression with One Variable_第2张图片

备注:整个课程中,除特殊说明,m都是指训练样本(training examples)的个数,n都是指特征的个数(feature),即特征维数(feature dimension),i指的是第i个样本( ith example ),j是指的第j个参数 θj .

3. Cost Function-Intuition I

假设函数 hθ(x) 是关于x的函数,代价函数 J(Θ) 是关于参数 Θ 的函数。
现在令 θ0=0 ,则假设函数变为:

hθ(x)=θ1x
此时, θ1 即为直线 hθ(x) 的斜率,通过改变 θ1 的值,寻找代价函数 J(Θ) 的最小值,此时, θ1 即为假设函数 hθ(x) 的最优参数。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第3张图片

4. Cost Function-Intuition II

现在令 θ0 θ1 都不等于0,即有两个参数,当有一个参数时,代价函数 J(θ) 是一个二次函数曲线,当有两个参数时,则代价函数 J(θ) 是一个三维的碗形曲面图形(二维中用等高线表示),每一对参数( θ0 θ1 )都有一个 J(θ) 值,通过寻找 θ0 θ1 参数的值,使得 J(θ) 最小,及参数最优,得到最优假设函数 hθ(x)
【Stanford机器学习笔记】1-Linear Regression with One Variable_第4张图片

课中是通过手动调节参数来是得代价函数 J(θ) 最小,进而获得最优参数,接下来的课中主要讲如何自动的训练模型来获得最优参数。

5. Gradient Descent

梯度下降法是机器学习中最常用的优化算法之一,该算法的主要流程是:
(1)计算代价函数 J(Θ) 的偏导数 θjJ(Θ)
(2)利用梯度下降更新参数的值(注意是同时更新所有参数);

θj:=θjαθjJ(Θ) (for j=0 and j=1)

(3)依次循环1-2步,直至收敛(convergence)停止。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第5张图片

6. Gradient Descent Intuition

(1)梯度下降中的导数项 ddθjJ(θ1)
假设只有一个参数 θ1 ,则代价函数为 J(θ1) 为二次函数曲线,梯度下降公式为:

θ1:=θ1αθ1J(θ1)
如果初始值 θ1 在对称轴右边,梯度下降导数项 ddθjJ(θ1) 大于等于0,则 θ1 逐渐减小;如果 θ1 在对称轴左边,梯度下降导数项 ddθjJ(θ1) 小于等于0,则 θ1 逐渐增加;
【Stanford机器学习笔记】1-Linear Regression with One Variable_第6张图片

(2)梯度下降中的学习率 α
如果学习率太小,则梯度下降将非常慢;如果太大,则可能会错过最代价函数最小值,或不能收敛。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第7张图片

(3)局部最小值(局部最优)
如果 θ1 初始值正好落在代价函数一个局部最小值处,则 θ1 将保持不变。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第8张图片

(4)接近最优,梯度下降逐渐减慢
如果学习率 α 是固定数值,则随着训练接近代价函数最小值(最优),梯度下降导数项逐渐变小,导致梯度下降逐渐减慢。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第9张图片

7. Gradient Descent for Linear Regression

(1)将梯度下降优化算法用于线性回归(假设只有一个参数x),关键在于计算其中的导数项 θ1J(θ0,θ1)
【Stanford机器学习笔记】1-Linear Regression with One Variable_第10张图片

(2)依次对参数进行求偏导
【Stanford机器学习笔记】1-Linear Regression with One Variable_第11张图片

(3)同时更新参数值,循环以上步骤直至收敛
【Stanford机器学习笔记】1-Linear Regression with One Variable_第12张图片

Note:
上一节中我们讲到,梯度下降可能会收敛到局部最小值,但是对于代价函数 J(θ0,θ1) 来说不会存在这个问题,因为 J(θ0,θ1) 是一个凸函数,只有一个全局最小值。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第13张图片
以上是使用的方法称为批量梯度下降法,即训练时遍历所有训练样本,还有另外一种方法叫随机批量梯度下降法(Stochastic Gradient Descent,SGD),在遍历循环时只需要部分样本即可,随后课程会讲到。
【Stanford机器学习笔记】1-Linear Regression with One Variable_第14张图片

你可能感兴趣的:(Machine,Learning)