machine learning的课程的第二讲
在machine learning的课程的第二讲中,才是真正的知识讲解。这节课主要讲了以下三个方面的东西:
1.linear regression(线性回归)
2.Gradient descent(梯度下降)
3.normal equations(正规方程)
linear regression(线性回归)
我们可以看上面二维坐标中的线性方程,假如方程式是y = wx + b;那么在这个直线上的点都会使y等于0,不在直线上的点会使y大于或者等于0.大于0我们可以认为这个样本属于类别“1”,小于0我们就可以认为这个样本属于类别“-1”。
我们可以用另外一种方式来写这个公式:
θ代表一系列的参数或者权重。我们假设x0=1,那么这个公式可以更好的表达为:
我们定义代价函数,可以理解为错分类的代价:
上面的这个公式中小i上标代表数据的第i个,m代码训练数据的总数。
LMS(最小均方)算法:
我们想要选择θ来最小化J(θ),我们可以随机的选取θ,大多数情况下我就把它初始化为0,然后迭代的更新θ,让J(θ)变得越来越小,直至J(θ)已经达到最小。我们在这里可以用梯度下降法:
α代表学习速率(learning rate)。假如我们只有一个训练数据,那么可以避免对J(θ)再进行累加了(因为J(θ)本身代表了一个训练数据的错分类代价)。我们对θ求偏导,得到
将这个结果带入上面的公式中,我们得到了下面的公式:
这个就是所谓的LMS更新规则,也被称为Widrow-Hoff学习规则。大家可能也有疑问,我们的数据不可能只有一个啊,下面提供了2中解决办法。首先可以每次遍历所有的数据,然后更新一个参数θ。这是批梯度下降。
还可以每次输入一个数据,但是更新所有的参数θ。这就是增量梯度下降。
也许有人要问,梯度下降和LMS到底是神马关系,纠扯不清啊。按照我的理解,LMS就是梯度下降用于2次方的代价函数。其实梯度下降函数应该可以用于多次方的函数的。
浙公网安备 33010602011771号