Machine Learning:Linear Regression With One Variable

Machine Learning:Linear Regression With One Variable

       机器学习可以应用于计算机视觉,自然语言处理,数据挖掘等领域,可以分为监督学习(Supervised Learning),无监督学习(Unsupervised Learning),强化学习(Reinforcement Learning)等。

       首先我们从一个简单的监督学习入手:假如给我们一组训练集(在这里就是Size和Price),我们如何才能建立一个可以预测房价的模型呢?

       这里(x,y)称为一个训练样本,(xi,yi)称为第i个训练样本,所有训练样本的集合称为训练集。




        在这里CostFunction是关于theta0和theta1的函数,而h(x)是关于x的函数,其参数是theta。我们需要找到合适的theta值使得h(x)与y之间的差的绝对值最小(也就是使整体上预测更加准确),在这里我们使用平方差以便于处理。

 


       下面的两幅图是Cost Function的曲面图和等高图,我们可以形象的把这种曲面形状成为bow-shaped,可以看到它是仅有一个全局最优解的(一般而言线性回归的Cost Function是满足这个特性的)。



     下面我们介绍如何确定theta的值使得CostFunction的值最小,我们称之为gradient descent(梯度下降法)。



     注意theta的更新需保持同步。



     在我们进行迭代的过程中,theta总是逐步趋近于最优解的,所以theta的初值并不重要。



       关于学习率alpha的选择问题:因为alpha太小则收敛太慢,而alpha太大则有可能无法收敛,所以alpha的选择有一定的难度,需要进行一些尝试。(可以尝试0.001,0.003,0.01…)。其次是alpha一旦选择后,无需再进行改变,因为当我们趋近于最小值时,斜率同样也逐渐减小,这样最终会趋于最小值,当然前提是alpha的值选择恰当。

 





       如何判断Cost Function是否收敛?我们可以看两次迭代之后Cost Function值的变化,其次我们可以画出Cost Function的图形,看其最后是否收敛与某一值。


                         -------------------------------------------------------------------------------------------------------------

                                          本内容摘自斯坦福大学Andrew Ng老师《机器学习》课件


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。