转载请注明出自BYRans博客:http://www.cnblogs.com/BYRans/
线性回归中提到最小二乘损失函数及其相关知识。对于这一部分知识不清楚的同学可以参考上一篇文章《线性回归、梯度下降》。本篇文章主要讲解使用最小二乘法法构建损失函数和最小化损失函数的方法。
最小二乘法构建损失函数
最小二乘法也一种优化方法,用于求得目标函数的最优值。简单的说就是:让我们的预测值与真实值总的拟合误差(即总残差)达到最小。
在线性回归中使用最小二乘法构建了损失函数:
上一篇文章《线性回归、梯度下降》中提到求解使损失函数J(θ)取最小的θ值有两种方法:梯度下降(gradient descent)和正则方程(The normal equations)。下面主要讲一下正则方程。梯度下降方法最小化损失函数参考文章《线性回归、梯度下降》
正则方程
将训练特征表示为X矩阵,结果表示成y向量,仍然是线性回归模型,损失函数不变。那么θ可以直接由下面公式得出:
推导过程涉及线性代数方面的知识,这里不再详细展开线性代数知识。
设m为训练样本数;x为样本中的自变量,即二手房价格预测中的房屋面积和卧室数目,x为n维向量;向量y为训练数据中的房屋价格,y为m维向量。那么训练数据可以用矩阵表示为:
因为,所以
就可以表示为:
损失函数就转化为:
线性代数中有两个公式:
其中符号表示一个m*n的矩阵,这个矩阵的第(i,j)个元素为
。上面两个公式合起来可以表示为:
依据这这个公式对损失函数J(θ)推导:
为了最小化J(θ),又因为J(θ)由最小二乘法得到,J(θ)的取值大于等于0,即最小值为0。所以,我们使,从而得到θ取值: