回归:预测房价

1 回归(Regression)

回归的理念大概是:通过建模来了解观测量和特征值之间的关系,模拟观测值如何随着特征值的变化而变化

在本文中我们使用的例子是房价预测。

2 线性回归(Linear regression modeling)

我们可以通过线性回归模型,拟合出房屋面积与价格之间的关系
RegressionPredictingHousePrices_1

有一种常用的拟合方法:通过取残差平方和(RSS)的最小值来得到参数

选取一次函数:
RegressionPredictingHousePrices_2
得到最后的结果
RegressionPredictingHousePrices_3

我们还可以选取二次函数、三次函数、…、十三次函数、十四次函数…
我们发现阶数越高,拟合后的 RSS 越小,但并不是其效果就越好,在这个过程中会发生过拟合
RegressionPredictingHousePrices_4

3 评估回归模型(Evaluating regression modeling)

为了解决上述问题,我们把数据分为 2 部分,一部分用来进行拟合(训练集),另一部分用来评价拟合的效果(测试集

Simulate predictions(模拟预测)

  1. Remove some houses
  2. Fit model on remaining
  3. Predict heldout houses

Training error(训练损失):
训练集的残差平方和(RSS)
RegressionPredictingHousePrices_5

Test error(测试损失):
测试集的 RSS
RegressionPredictingHousePrices_6

然后我们画出 Training error 和 Test error 随着阶数变化的曲线。可以看出,Training error 随着阶数的增大而减小,一直到趋近 0;但 Test error 却不是。
RegressionPredictingHousePrices_7

4 预测房价

代码在这里