📜  ML |局部加权线性回归

📅  最后修改于: 2021-04-16 06:08:55             🧑  作者: Mango

先决条件:ML |线性回归

线性回归是一种监督型学习算法,用于计算输入(X)和输出(Y)之间的线性关系。

普通线性回归所涉及的步骤为:


从下图可以明显看出,当X和Y之间存在非线性关系时,该算法不能用于进行预测。在这种情况下,将使用局部加权线性回归。

局部加权线性回归:

局部加权线性回归是一种非参数算法,也就是说,该模型不像常规线性回归那样学习固定的参数集。相当的参数\theta为每个查询点分别计算x 。在计算时\theta ,则对训练集中位于以下位置附近的点给予较高的“偏好” x比远离的点x

修改后的成本函数为:  J(\theta) = $\sum_{i=1}^{m} w^{(i)}(\theta^Tx^{(i)} - y^{(i)})^2

在哪里, w^{(i)}是与训练点相关的非负“权重” x^{(i)}
为了x^{(i)}位于更靠近查询点的位置x , 的价值w^{(i)}很大,而x^{(i)}躺在远离x的价值w^{(i)}是小。典型的选择w^{(i)}是:  w^{(i)} = exp(\frac{-(x^{(i)} - x)^2}{2\tau^2})
在哪里, \tau称为带宽参数,并控制w^{(i)}随距离而下降x

显然,如果|x^{(i)} - x|是小w^{(i)}接近1,如果|x^{(i)} - x|w^{(i)}接近0。

因此,训练集点更靠近查询点x贡献更多的成本J(\theta)比远离的点x

例如 –

考虑一个查询点x = 5.0并让x^{(1)}x^{(2)是训练集中的两点,这样x^{(1)} = 4.9并且x^{(2)} = 3.0。
使用公式 w^{(i)} = exp(\frac{-(x^{(i)} - x)^2}{2\tau^2}) \tau = 0.5:
 w^{(1)} = exp(\frac{-(4.9 - 5.0)^2}{2(0.5)^2}) = 0.9802
 w^{(2)} = exp(\frac{-(3.0 - 5.0)^2}{2(0.5)^2}) = 0.000335
 So, \ J(\theta) = 0.9802*(\theta^Tx^{(1)} - y^{(1)}) + 0.000335*(\theta^Tx^{(2)} - y^{(2)})
因此,权重随着指数之间的距离呈指数下降x x^{(i)}增加,因此预测的误差贡献也增加了x^{(i)}成本。

因此,在计算时\theta ,我们更注重减少(\theta^Tx^{(i)} - y^{(i)})^2对于更靠近查询点的点(具有更大的w^{(i)} )。

局部加权线性回归涉及的步骤为:

要记住的要点:

  • 局部加权线性回归是一种监督学习算法。
  • 它是一种非参数算法。
  • 没有训练阶段。所有工作都在测试阶段/进行预测时完成。