监督学习: 回归

这部分主要涉及的是如何将数据进行预测,比如:线性回归、多项式回归、岭回归等。

线性回归实现 #

对于价格预测之类的工作,比如下图,通过面积来预测价格

image

通过最简单的划线来预测,我们知道一根直线的斜率和截距即可画出来。

\(y(x, w) = w_0 + w_1x \)

然后就是如何计算这里的 w0 和 w1 的值了,这里介绍了 最小二乘法。、

不过在此之前需要定义 损失函数 这里就很简单

def square_loss(x: np.ndarray, y: np.ndarray, w0: float, w1: float):
    """平方损失函数"""
    loss = sum(np.square(y - (w0 + w1 * x)))
    return loss

多项式回归 #

对于一些更复杂的函数,捏合的线就不一定是直线了,我们可以通过多项式来拟合。

image

多项式的公式如下

\(y(x, w) = w_0 + w_1x + w_2x^2 +...+w_mx^m = \sum\limits_{j=0}^{m}w_jx^j \tag{1}\)

计算的过程和单项式一样。

其他回归 #

除了线性回归和多项式回归,还有其他的回归方法,比如岭回归、Lasso回归等。就不做展开了,感兴趣的可以自己去了解下。

comments powered by Disqus