线性回归(linear regression)
其实线性回归不过就是在做两件事,画一条线并判断这条线到各个点的距离。
如下图:

其中这条线便是距离各个点距离总和最小的直线。

也就是e+u+w+b+a总和在直线为这个情况下最小。
但是什么时候这条线是我们需要的线呢?-- 线到各个点最短的时候便是。
我们先理解一下什么是凹函数: 凹函数即为在一定范围内,仅有一个最低点。并且不存在局部最低点。
我们的线性回归方程

其中y^ i(x) - yi 是差值 进行累加。 最终结果最小的时候便是我们想要的结果。
我们改写公式为
其中我们应该知道hΘ(x) = w0x+w1; 其实就是我们的简单二维直线方程;
接下来我们思考一个问题。是否随着直线 w0,和w1的变化 J(Θ)会随之增大减小?
很明显,是的。因为它是个凹函数:如下图

很好,我们接下来继续设计这个程序。
既然我们知道凹函数了,那我们只需要找到其中的最低点就好了。
那么很简单,我们对w0,w1求偏导即可。

其中令偏导等于0的时候,就是我们需要的最小值了。
其实同理,以上仅仅是二维的,那么我们可以试着上升到多维。
其实很简单了,我们的由原来的二维 hΘ(x) = w0x+w1;
改为以下内容
//注意其中的Θ为上述的w
然后我们依次求偏导:
既然我们知道偏导为0的时候就是最小值,为什么我们不把他们加起来,看看什么时候值最小呢?

由此,我们已经初步了解了线性回归原理以及不知不觉中学了一个新知识,最小二乘法。
这个函数将为我们后来的梯度下降进行服务。
我们总结一下线性回归,其实就是取一条线,然后得到h(x)-y(x)的值进行累加,最后取h(x)为什么形式时候能得到最小值。

浙公网安备 33010602011771号