天天看点

线性回归预测数值型数据

所谓线性回归(linear regression),就是根据训练数据找到一组参数w,利用 y = w*s 对新数据进行预测。

通常使用误差函数为平方误差:

线性回归预测数值型数据

使该误差最小化,求导令其导数为零求得系数w,利用矩阵可以表示为:

线性回归预测数值型数据

该过程成为普通最小二乘法(ordinary least squares,OLS)

由于OLS只能找到数据最佳拟合直线,所以应用有限。引入局部加权线性回归(Locally Weighted Linear Regression, LWLR)

给每个点赋予权重,误差函数为:

线性回归预测数值型数据

,求解w得:

线性回归预测数值型数据

W即使权重矩阵,是一个只含对角元素的方阵(其余为0),根据预测点与附近的点的距离分布,通常使用高斯核函数:

线性回归预测数值型数据

但是该方法计算量大

为了防止过拟合,也为了缩减系数,可以使用岭回归、lasso、前向逐步回归方法。

岭回归也就是说在线性回归求解w时加入λI惩罚项,即

线性回归预测数值型数据

根据不同λ可以得到多个系数w,可以交叉验证最优解。

岭回归这个名字只是因为λI这个惩罚项是个对角矩阵,看起来像个分界岭。

最小二乘法增加约束 

线性回归预测数值型数据

 时可以得到岭回归一样的公式,而lasso只在次基础上更改了限定:

线性回归预测数值型数据

但是求解则需要二次规划算法,增加了计算复杂度。

前向逐步方法是一种贪心算法,即每一步都尽可能减少误差。

在迭代中,对于每个特征,都采取增加或减小一个很小得数值来改变w,如果误差小于当前最小误差,则前进。

这里得很小得数值和迭代次数都是参数。

继续阅读