ML算法:局部加权线性回归

2021年5月6日16:53:08 发表评论 1,070 次浏览

先决条件:ML |线性回归

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

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

培训阶段:计算以最小化成本。预测输出:对于给定的查询点,

ML算法:局部加权线性回归1

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

ML算法:局部加权线性回归2

局部加权线性回归:

局部加权线性回归是一种非参数算法, 也就是说, 该模型不像常规线性回归那样学习固定的参数集。相当的参数

\ 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
因此,\ 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)}

)。

ML算法:局部加权线性回归3

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

计算以最小化成本。预测输出:对于给定的查询点,

要记住的要点:

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

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: