让我们通过一个简化的具体示例,来了解基本的评估流程如何运作。假设我们要构建一个模型,根据房屋面积(平方英尺)预测房价。这是一个回归问题,因为价格是一个连续的数值。
场景:预测房价
我们收集了10套房屋的数据,记录了它们的面积和售价:
| 面积 (平方英尺) |
价格 (千美元) |
| 1500 |
300 |
| 1600 |
320 |
| 1700 |
350 |
| 1800 |
380 |
| 1900 |
400 |
| 2000 |
410 |
| 2100 |
430 |
| 2200 |
450 |
| 1400 |
280 |
| 2300 |
460 |
我们的目标是利用部分数据训练一个模型,然后评估它在从未见过的数据上预测价格的表现。
评估流程步骤
下面是我们应用标准流程的方式:
我们的房价预测示例评估流程的图示。
-
选择评估指标: 这是一个回归问题,我们将使用适合连续值的指标。我们选择平均绝对误差(MAE)、均方误差(MSE)和决定系数(R-平方或 R2)。它们将分别告诉我们平均误差、对较大误差的惩罚程度以及模型解释的价格方差比例。
-
划分数据: 我们需要将数据分成训练集和测试集。常见划分比例是80%用于训练,20%用于测试。我们将随机选择8套房屋用于训练,保留剩余2套用于测试。模型在训练期间绝不能看到测试数据,这一点很重要。
- 训练集 (8套房屋): 假设随机选择的房屋如下:(1500, 300), (1700, 350), (1800, 380), (1900, 400), (2000, 410), (2100, 430), (1400, 280), (2300, 460)。
- 测试集 (2套房屋): 剩余的房屋为:(1600, 320), (2200, 450)。
-
训练模型: 我们使用训练集(8套房屋)来训练我们的机器学习模型。假设我们使用一个简单的线性回归模型。训练过程会找到最适合训练数据点(面积与价格)的直线。在此示例中,我们假设训练好的模型学到了以下关系:
预测价格=0.2×面积+50
(注意:这是一个简化的模型方程,仅用于说明)。
-
生成预测: 现在,我们使用训练好的模型来预测测试集中房屋的价格。我们只向模型输入测试集中的面积数据(1600平方英尺和2200平方英尺),然后查看它预测的价格。
- 对于面积 = 1600 平方英尺:预测价格 = 0.2×1600+50=320+50=370 (37万美元)
- 对于面积 = 2200 平方英尺:预测价格 = 0.2×2200+50=440+50=490 (49万美元)
-
计算性能指标: 我们将模型的预测值(37万美元,49万美元)与测试集中的实际价格(32万美元,45万美元)进行比较。
- 误差:
- 房屋1:误差 = 预测值 - 实际值 = 370−320=50
- 房屋2:误差 = 预测值 - 实际值 = 490−450=40
- MAE(平均绝对误差): 绝对误差的平均值。
MAE=2∣50∣+∣40∣=250+40=290=45
- MSE(均方误差): 平方误差的平均值。
MSE=2502+402=22500+1600=24100=2050
- RMSE(均方根误差): MSE的平方根。
RMSE=2050≈45.28
- R-平方 (R2): 衡量方差的解释比例。这需要将模型的误差与测试集中实际目标值的方差进行比较。
- 实际测试价格的平均值:(320+450)/2=385
- 总平方和 (SST):实际价格与平均值之差的平方和。
SST=(320−385)2+(450−385)2=(−65)2+(65)2=4225+4225=8450
- 残差平方和 (SSE):平方误差之和(已在MSE分子中计算)。
SSE=502+402=2500+1600=4100
- 计算 R2:
R2=1−SSTSSE=1−84504100≈1−0.485=0.515
-
解读结果:
- MAE 为45。这意味着,平均而言,我们的模型在测试集上的价格预测误差为45,000美元。
- RMSE 约为45.28。这也给出了原始单位(千美元)中典型误差大小的一个概念,对较大误差的惩罚比MAE略大。此处,它与MAE非常接近,因为误差值(40和50)相似。
- R2 为0.515。这表明我们的简单模型(仅基于面积)解释了我们小测试集中约51.5%的房价变化。剩余的48.5%无法由该模型解释(可能由于地点、卧室数量、房龄等因素,或模型自身的不准确)。
测试集中两套房屋的预测价格与实际价格比较。虚线上的点代表理想预测。我们的模型对这两套测试房屋的预测价格都高于实际价格。
这个示例虽然使用了小型数据集和简化模型,但展示了基本步骤:划分数据,在其中一部分上训练,在另一部分上预测,并计算指标以评估其在未见过数据上的表现。这种结构化的过程帮助您了解模型在遇到新示例时可能表现如何。