特征工程:从理论到实践
1. 特征工程简介
特征工程已成为开发任何数据解决方案的核心过程,其在机器学习解决方案开发中变得不可或缺,主要由两个因素驱动:
- 特征/变量集的增加 :随着技术进步,现在能够以极低的成本收集大量数据。为了提高建模输出,常将第三方、外部开源数据与内部数据合并,这为机器学习算法带来了庞大的特征集。但并非所有特征对机器学习都重要,也并非都需要用于达到模型预测的置信水平。
- 机器学习算法的时间和复杂性 :机器学习算法资源消耗大,模型中每增加一个特征,所需时间呈指数级增长。数据科学家需要在这种复杂性和最终模型准确性的收益之间找到平衡。
为全面理解特征工程概念,可将其拆分为两个相互支持的过程:
- 特征选择(或变量选择) :这一过程依赖大量统计分析,通过可量化和可比较的指标(独立于响应变量或与之相关),为机器学习算法提供某些特征或特征集重要性的实证依据。
- 业务/领域知识 :此过程侧重于运用业务逻辑,确保所选特征有意义,并能为业务提供所需的正确见解。
在很多情况下,业务逻辑优先于统计结果。当两者冲突时,业务需求会优先于统计推断。例如,在识别某地区贷款违约情况时,失业率在 95% 置信水平下可能不显著,但在 90% 置信水平下显著。若业务认为失业率是重要变量,那么在变量选择时可放宽统计约束纳入该变量。
稳健且结构化的变量选择带来的主要好处包括:
- 提高模型的预测性能
- 加快机器