特征工程是监督式机器学习和统计建模中的一个预处理步骤,它将原始数据转换为更有效的输入集。每个输入包含多个属性,称为特征。通过为模型提供相关信息,特征工程显著提高了其预测准确性和决策能力。其原理不仅限于机器学习,还扩展到物理学等科学领域,例如流体动力学中的雷诺数、热传递中的努塞尔数和沉降中的阿基米德数等无量纲数,以及作为一阶近似而发展的材料强度解析解。
聚类应用
特征工程广泛用于对数据集中的特征对象或样本对象进行聚类。基于矩阵分解的方法,尤其是对特征系数施加非负约束的方法,被广泛应用。这些方法包括非负矩阵分解(NMF)、非负矩阵三因子分解(NMTF)以及非负张量分解/因子化(NTF/NTD)。非负约束产生基于部分的表示,不同的因子矩阵表现出自然的聚类特性。扩展包括用于硬聚类的正交约束分解和用于解决固有算法问题的流形学习。
其他方法利用多个相关数据集之间的共同隐藏结构来获得共识聚类。基于共识矩阵分解的多视图分类(MCMD)挖掘跨数据集的共同聚类方案,输出尺度可变和尺度不变的类别标签,对缺失信息具有鲁棒性,能够检测基于形状和尺度的异常值,并有效处理高维数据。耦合矩阵和张量分解在多视图特征工程中很流行。
预测建模
在机器学习和统计建模中,特征工程涉及选择、创建、转换和提取特征。关键组成部分包括从现有数据中创建特征、转换和填补缺失或无效的特征、通过主成分分析(PCA)、独立成分分析(ICA)和线性判别分析(LDA)等方法降低维度,以及根据重要性得分和相关矩阵选择相关特征。
特征的重要性各不相同;即使是相对不重要的特征也可能对模型有所贡献。特征选择可以减少特征数量以防止过拟合。当识别出的特征数量过多,导致模型估计困难时,就会发生特征爆炸,这通常是由于特征模板或特征组合无法用线性系统表示所致。可以通过正则化、核方法和特征选择来限制特征爆炸。
特征模板
特征模板是特征的抽象规范,用于从训练集和测试集中的每个实例自动填充特征集。它们允许自动生成大量特定特征,从而减少手动编码工作量。
自动化
特征工程的自动化自20世纪90年代以来一直是一个研究课题,商业机器学习软件自2016年起已将其纳入。学术文献将其分为两种主要类型:多关系决策树学习(MRDTL)和深度特征合成。
多关系决策树学习(MRDTL)
MRDTL将传统的决策树方法扩展到关系数据库,处理跨表的复杂数据关系。它使用选择图作为决策节点,并系统地细化,直到达到终止标准。大多数实现基于关系数据库,导致冗余操作,可以通过元组id传播等技术来减少。
开源实现
有几个开源库可以自动化关系数据和时间序列的特征工程:
- featuretools:用于将时间序列和关系数据转换为特征矩阵的Python库。
- MCMD:用于多个数据集联合聚类的开源算法。
- OneBM(一键机器):结合了关系数据的特征转换和选择,减少了数据探索时间。
- getML community:带有Python接口的C/C++工具,速度至少比tsflex、tsfresh、tsfel、featuretools或kats快60倍。
- tsfresh:用于时间序列特征提取的Python库,通过假设检验评估特征质量。
- tsflex:用于时间序列特征的Python库,比tsfresh、seglearn或tsfel更快且更节省内存。
- seglearn:用于多变量、顺序时间序列数据对scikit-learn的扩展。
- tsfel:用于时间序列特征提取的Python包。
- kats:用于时间序列分析的Python工具包。
深度特征合成
深度特征合成(DFS)算法在竞赛中击败了906个人类团队中的615个,证明了其有效性。
特征存储
特征存储是一个中央存储库,其中存储和组织特征,以明确用于训练模型或进行预测。它允许数据科学家创建或更新特征组,确保跨不同模型和应用程序的一致性和可重用性。
参见
- 机器学习
- 人工智能
- 深度学习
- 神经网络
- 大型语言模型
- Transformer
- 生成式人工智能
- OpenAI
- Anthropic
- Google DeepMind
- Amazon Web Services
- Azure
- Google Cloud
- Oracle Cloud
- CoreWeave
- Cerebras
- Groq
- SambaNova
- Graphcore
- Xerox PARC
- MIT CSAIL
- 斯坦福人工智能实验室
- 多伦多大学
- 卡内基梅隆大学
- 伯克利人工智能研究
- 牛津大学
- Thomas Dietterich
- Michael Jordan
- Daphne Koller
- Anima Anandkumar
- Samy Bengio
- Joshua Tenenbaum
- Brendan Lake
- Melanie Mitchell
- Aaron Courville
- Aleksander Madry
- Alexei Efros
- Ali Rahimi
- Bernard Widrow
- Chris Bishop
- Christopher Bishop
- Craig Boutilier
- Elaine Rich
- Carlos Guestrin
- Daphne Leon
- David Ha
- David Winger
- Deepak Kumar
- Drew Puckett
- Eilon Reshef
- Freddie Sulit
- Jakob Uszkoreit
- Lukasz Kaiser
- Niki Parmar
- Barret Zoph
- Mark Chen
- Brad Lightcap
- Jacob Steinhardt
- David Kaplan
- Ryan Lowe
- Jack Clark
- Shan Carter
- David Luan
- Chen Wu
- Ashish Kumar
- Karen Simonyan
- Koray Kavukcuoglu
- Alan Perlis
- Andrew Lloyd Brown
- Ani Bhattacharya
- Anna Patterson
- Anna Ritter
- Anubhav Sinha
- Arakawa Ryota
- Arka Dutta
- Arthur Franz
- Ben Goertzel
- Brian Cheung
- Brian Christian
- Brian Lilly White
- Calvo Rafael
- Catherine Flick
- Chad Mirkin
- Chin Yen Chiu
- Craig Ku
- Dafna Sharon
- David Froitzheim
- David Martin
- Deepak Kumar
- Drew Puckett
- Elaine Rich
- Eilon Reshef