什么是线性回归?
线性回归是在假设特征满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。其函数形式为:
向量的表达形式为:
线性回归模型是如何进行训练?
首先我们已经确定好了线性回归模型的形式了,训练的时候提供给我们的是数据,为了能够去拟合提供的数据,模型需要去改变参数
的值,通过一定次数的迭代优化,最终找到了最优参数
使得
,一次次的迭代优化的过程便是模型的训练。
模型是根据什么进行训练?
目标函数,模型训练的目的是要最小化损失函数或者最大化预测概率。线性回归模型一般是最小化损失函数,它所用的损失函数可能是平方误差,即:

如何使这个目标函数最小呢?
可以对这个函数进行求导,首先我们需要将模型公式代入目标函数中:

我们希望这个函数在


很明显,公式中的参数m,b,w都与i无关,简化时可以直接提出来。
令这两个偏导等于0,求解方程组,解得:


这样我们通过提供的数据求出

那么标签矩阵可以用mx1来表示:

为了构建线性模型,我们还需要1xn的参数矩阵:

(当然还需要有bias,为了推导方便没有加)
所以我们的线性模型为:

h(x)表示假设,即hypothesis。通过矩阵乘法,我们知道结果是一个n×1的矩阵。 跟前面推导单变量的线性回归模型时一样,列出目标函数:

这里的1/2并无太大意义,只是为了求导时能将参数正好消掉而加上。目标函数代表了误差,我们希望它尽可能地小,所以要对它求偏导并令偏导数为0,求解方程。
在求偏导之前先展开一下:


在求导之前,提供几个常见的矩阵求导公式:



接下来开始对目标函数求关于参数的偏导:


最后简化为:

令偏导为0:

最后求出参数解:

好的,大功告成
网友评论