StudyNotes_MachineLearning_2(吴恩达机器学习公开课)

Cost function(代价函数)&Gradient descent(梯度下降)

1.Cost function

1.1 How to choose parameters?

        接上节内容,我们希望通过选择更合适的参数让假设函数h(x),更好的拟合数据点。

 不同参数的选择改变着假设函数的形式

         平方误差代价函数是解决回归问题最常用的手段,而我们也需根据问题不同选择合适的代价函数。

1.2 Examples of  simplified cost function(one parameter)

       

对之前假设函数进行简化(单参数)

  

θ选择1时h(x)和J(θ)函数图像
θ选择0.5时h(x)和J(θ)函数图像

 

         最后,通过选择不同的θ,得到不同的假设函数值;计算平方误差和后,得到一条关于θ的曲线,求其最小值便得到拟合最好结果。

1.3 Two parameters

双参数的J(θ)代价函数三维图

         而这个三维的代价函数图像亦可用等高线图(contour plots)来表示:

右侧为等高线图

         可以看到不同的θ取值可能得到相同的J(θ)函数值,那么将这些相同函数值的点用同色表示,来代表等高。

        那么如何来找到这组参数下的代价函数的最小值,需要用到梯度下降算法。

 

2.Gradient descent

2.1 outline

        梯度下降算法可应用于除线性回归问题以外的更广范围,可以是更多参数的问题。

        其思路大概是:设定两个参数的初值(通常为0),通过不断小幅调整两个参数,来使得J(θ)函数值更小,直到找对最小值或局部最小值。

        其特点是:根据初始位置的不同,梯度下降算法可能会引至不同的局部最优解(local optimum) 

        需注意的是,我们应实现同步更新的过程(上图左下),而不是每次计算分别代入更新后的θ值(上图右下)。

        而上方的迭代公式中,":="代表赋值符号而不是判定符号,"α"是学习率,也即每次迭代的下降步长。 

 

2.2 Summary of gradient descent

         (1)理解这个公式的含义:α是学习率也即步长控制,用以控制并调节梯度下降中每一步的参数自变量变化程度(增加或减少),而右侧偏导式控制梯度下降的方向,也即参数自变量递加或递减的方向。

 

        在线性函数中,这个式子的偏导部分为一阶导,也即斜率,这样可以直观地明白梯度下降算法公式中的组成部分的含义。最终当导数为0时,也即下降到了最小值点,参数自变量便不再更新了。  

        需要注意的是α的选择,太小会使下降速率太慢,太大则有可能越过最优解,甚至导致全局发散无法收敛到目标最优解的情况。

        梯度下降算法会自动调节步长(随着向局部最优解附近靠近,导数值是不断减小趋于0的),所以不必每次调整α的数值来控制步长的缩减。

2.3 Gradient descent for linear regression

 

        将上图右侧的代价函数J代入左侧梯度下降算法公式 有:

j=0:\frac{\partial J\left ( \theta _{0} ,\theta_{1}\right )}{\partial \theta_{0}}=\frac{1}{m}\sum\limits_{i=1}^{m}(h_\theta(x^i)-y^i)

j=1:\frac{\partial J\left ( \theta _{0} ,\theta_{1}\right )}{\partial \theta_{0}}=\frac{1}{m}\sum\limits_{i=1}^{m}(h_\theta(x^i)-y^i)*x^i

        得到了下图的应用于线性回归的梯度下降公式:

         线性回归问题是一个全局凸函数,也就是说,不存在局部最优结果,梯度下降的最终结果会收敛到全局最优解。

         下面用一组图例,显示这个收敛过程:

         可以看出,梯度下降算法使得函数与实际数据的拟合程度越来越好。

         这个梯度下降算法被称为Batch Gradient descent,原因是每一次梯度下降都对整个数据集样本进行遍历,计算偏导数时也计算的是数据集的总和。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值