最近在看Peter Harrington写的“机器学习实战”,这是我的学习心得,这次是第8章 - 预测数值型数据:回归。
使用线性回归方程,求解系数向量w。
平方误差的矩阵表示: (y-xw)(y-xw) 对w求导: \begin{array}{lcl} ((y-xw)^T(y-xw))' & = (y^2 - 2xyw + (xw)^2)' \\ & = -2xy + 2xw \\ & = -2x^T(y- xw) \\ -2x^T(y- xw) & = 0 \\ x^T(y- xw) & = 0 \\ x^Ty- x^Txw) & = 0 \\ w & = (x^T y)(x^T x)^{-1} \end{array} \\ where \\ \qquad x \text{ : training data, it is a matrix.} \\ \qquad x^T \text{ : x's transpose.} \\ \qquad y \text{ : result data of training data.} \\ \qquad w \text{ : it is a vector.}
为了解决线性回归欠拟合的问题,一个思路是:我们用离测试数据比较近的训练数据进行线性回归分析。 因此我们给每个训练数据赋予一个权重\alpha,太远的训练数据的权重为0,离测试数据越近,权重越大。 这个思路有点像KNN算法。
岭回归是一种缩减(shrinkage)技术。缩减方法可以去掉不重要的参数,因此能更好地理解数据。