一、特征工程:模型性能的隐形天花板
在机器学习项目中,特征工程决定了模型性能的上限,而算法只是在逼近这个上限。一个精心设计的特征集能让简单模型超越复杂模型。本文系统梳理特征工程全流程的最佳实践。
二、缺失值处理策略
- 删除法:缺失率>50%的特征直接删除;缺失率<5%的样本可删除
- 填充法:数值型用均值/中位数/众数填充;时间序列用前向/后向填充;使用模型预测缺失值(KNN/MICE)
- 编码法:将"是否缺失"作为一个新二值特征,保留缺失信息
三、类别特征编码
| 方法 | 适用场景 | 注意事项 |
|---|---|---|
| One-Hot编码 | 低基数类别(<10类) | 高基数导致维度爆炸 |
| Label Encoding | 有序类别 | 无序类别会引入虚假序关系 |
| Target Encoding | 高基数类别 | 需使用平滑和交叉验证防过拟合 |
| Count/Frequency Encoding | 高基数快速baseline | 丢失类别语义信息 |
四、数值特征处理
- 标准化(Standardization):Z-score归一化,适合基于距离的模型(SVM、KNN、神经网络)
- 归一化(Normalization):Min-Max缩放到[0,1],适合需要固定范围的场景
- 离散化(Binning):将连续值分箱,提升模型鲁棒性
- log变换/Box-Cox:处理长尾分布特征
五、特征选择与降维
过滤法(方差分析、卡方检验、互信息):计算速度快,独立于模型;包装法(递归特征消除RFE):效果好但计算成本高;嵌入法(Lasso、树模型特征重要性):兼顾效率和效果。实际项目中推荐嵌入法初筛 + 包装法精调的组合策略。
相关阅读:强化学习入门 | AutoML自动化机器学习
评论 (42)