机器学习项目怎么做才不流水账:加州房价五阶段全管道方法论
很多入门项目的通病是「调个模型看个分」,报告写出来像流水账。真正的 ML 项目是一条完整的证据链:每一步有依据、每个结论有数据。本文用加州房价数据集(20640 样本×8 特征)演示五阶段方法论,全部数字为真实运行结果。
一、P1 数据探查:动手前先回答四个问题
样本多少(20640)、特征多少(8)、有没有缺失(0)、目标长什么样(均值 2.069、中位数 1.797,右偏分布)。最后一点直接影响评估口径:右偏目标下 MSE 会被高价房主导,误差分析时要单独看尾部。
二、P2 特征工程:相关性筛选的取舍
一行np.corrcoef算出全部特征与目标的相关性,取 Top6:收入 MedInc 以 0.688 一枝独秀。筛掉弱特征能让线性模型更稳;但树模型天然抗噪,全特征也无妨——特征工程的效果要以模型为参照评估,这是流水账项目最常缺失的思考。
三、P3 五模型同切同尺对比
线性 0.575 / Ridge 0.575 / Lasso 0.481 / 随机森林0.802/ 梯度提升 0.751。同一份切分、同一份标准化,对比才公平。随机森林大幅领先说明非线性与特征交互是主要信号——这个结论直接决定 P4 该往哪调。
四、P4 网格调优
GridSearchCV 3 折扫n_estimators/max_depth/min_samples_leaf,最优 400/None/2,CV R2=0.7945。CV 分与测试分接近(0.7945 vs 0.8017)——没有过拟合的信号,比单看分数重要得多。
五、P5 误差分析:报告的档次就在这一段
残差 5%~95% 分位 [-0.69, 0.92];误差超 10 万美元的样本占 6.1%(集中在高价尾部);特征重要性收入 0.548、经纬度合计 0.267(地段效应,符合常识)。把「模型哪里错、错在谁身上」写清楚,报告立刻从流水账变成分析报告。
六、模板复用
五阶段全部代码约 120 行,换自己的数据只改一行加载逻辑。完整代码与 results.txt 见下方资源包
。