趋近智
手动构建交互项、多项式特征或从日期中提取成分能带来显著改进,但这个过程通常高度依赖于专业知识、直觉和耗时的实验。随着数据集维度的增加,潜在特征组合的数量会变得非常庞大,使得详尽的手动处理不可行。这自然引出了一个问题:我们能否将这个创建过程的一部分自动化?
自动化特征生成指的是旨在系统地从现有特征中生成大量候选特征的算法和框架。您无需决定计算 或 ,这些工具会自动应用多种数学运算和转换。
其核心思想是定义一组基本构建块或操作(例如,加法、减法、乘法、除法、绝对值、对数、三角函数),并将它们应用于初始特征。这些新生成的特征随后可以作为后续操作的输入,通过多个步骤可能创建出高度复杂的特征。
例如,给定初始特征 和 ,自动化系统可能会生成以下特征:
此方面中一个广为人知的方法是深度特征合成(Deep Feature Synthesis, DFS),它在Python库Featuretools中得到了显著实现。DFS 在处理跨多个表的关系数据时表现出色。它会自动遍历这些表之间的关系,并应用预定义函数(称为“基元”)来聚合和转换数据,从而创建可能跨越数据集结构的有用特征。想象一下自动生成像“客户上次会话前一个月的平均购买金额”这样的特征。
其他技术,例如遗传编程(Genetic Programming),使用进化算法来“演化”数学表达式,这些表达式代表了可能有用的特征,并根据它们对模型预测性能的提升程度来优化这些表达式。
尽管功能强大,自动化特征生成也伴随着一系列考量:
MAX(transactions.amount) / SQRT(ABS(customer.age - MEAN(transactions.time_since_last))),与源自特定专业见解的特征相比,可能更难解释。自动化特征生成通常不能替代深思熟虑的、专业驱动的特征工程。相反,它是一种补充方法。它可以迅速考察广泛的可能性,可能会发现不那么显而易见的复杂交互或转换。生成的候选特征仍需要仔细评估、选择和验证,以确保它们提供真实的预测价值,并生成性能可靠的、可泛化的模型。本节对这一方面做了简要介绍;专门的库和技术通常需要进一步研究才能在实践中有效使用。
这部分内容有帮助吗?
Featuretools的基础。Featuretools Python库的官方文档,为实现深度特征合成提供了实用指导和示例。© 2026 ApX Machine LearningAI伦理与透明度•