各种回归算法

Posted lyteins

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了各种回归算法相关的知识,希望对你有一定的参考价值。

  • 线性回归

线性回归(linear regression)是最简单的模型,通过学习一个线性模型来预测输出值。多元线性回归可表示为$$f(x_i)=w^Tx_i+b$$根据最小二乘法,寻找最优$$\hat{w}^*=argmin(y-W\hat{w})^T(y-X\hat{w})$$求导得到$$\hat{w}^*=(X^TX)^{-1}X^Ty$$在实际样例中,矩阵$X^TX$往往不是满秩矩阵,如样本特征数量大于样本数量,则必然不满秩,此时可以求解出多个使均方误差最小的$\hat{w}$,此时则需要引入正则化(regularization)项。

  • 局部加权线性回归

对于用高阶多项式进行线性回归,若阶数过低,容易造成欠拟合(underfitting);阶数过高,容易造成过拟合(overfitting)。因此可以引入加权项,即$$\hat{w}^*=argmin(y-X\hat{w})^TW(y-X\hat{w})$$其中$W$为权重矩阵,为对角矩阵,其对角线上元素$W_{ii}$为对应样本点$x_i$的权重值。

我们需要使距离所给定的$x$越近的样本点的权重越高。常用高斯核函数,其对应表达式为$$w_{ii}=exp(frac{|x_i-x|}{-2k^2})$$可以看出,当$k$过大,所有样本权重都近似为1,容易造成欠拟合;当$k$过小,距离过远的点无法参与到回归过程,容易造成过拟合现象。

局部加权线性回归缺点和KNN近似,即每次要计算一个点的预测值时,需要利用所有的已知数据样本进行计算,计算量很大。

 

 

 

 

  • Reference

[1]《机器学习》,周志华

[2] http://python.jobbole.com/88747/

以上是关于各种回归算法的主要内容,如果未能解决你的问题,请参考以下文章

01-线性回归算法

各种机器学习算法的应用场景分别是什么(比如朴素贝叶斯决策树K 近邻SVM逻辑回归最大熵模型)

各种机器学习算法的应用场景分别是什么(比如朴素贝叶斯决策树K 近邻SVM逻辑回归最大熵模型)

如何在 R 中使用 XGBoost 算法进行回归?

R语言中的偏最小二乘PLS回归算法

[机器学习实战-Logistic回归]使用Logistic回归预测各种实例