目录
1. 什么是特征工程
2. 什么是自动特征工程
2.1 自动方法有哪些
3. 文献说明
4、参考文献
1. 什么是特征工程
特征工程,是指用一系列工程化的方式从原始数据中提取出更好的数据特征,以提升模型的训练效果。特征工程是机器学习中不可或缺的一部分,尤其是在浅层机器学习领域中占有非常重要的地位。好的特征工程很好的混合了专业领域知识、直觉和基本的数学能力。特征工程通常包括数据预处理、特征选择、降维等环节。
2. 什么是自动特征工程
自动化特征工程能够对特征工作中存在的必要而繁琐的工作进行自动化处理,从而优化机器学习模型的构建和部署,使开发者能够更多地关注其他重要步骤,尽量减轻其在特征设计环节的工作。
主要有Featuretools、Cognito、H2O.ai等工具。所用到的典型方法除了早期以评价引导方式为代表的高搜索代价方法,近年比较有影响力的有DFS和LFE,这两类方法都是从学习的角度去考虑特征工程的自动化。
2.1 自动方法有哪些
深度特征合成(DFS:Deep Feature Synthesis)的基本概念,这个自动化特征工程方法创建的特征能够与数据科学家自己创建的特征媲美。DFS中将与数据集本身无关的操作,称之为“基元”。新的特征通常由先前获取的特征派生出来。基元是DFS的基石,它定义了输入和输出的类型,把基元组合起来就可以构造复杂特征。深度学习通常需要大量样本来学习复杂的结构,而DFS则是基于数据集的特点来构建潜在特征的。对于许多企业来说,不一定有足够的样本来做深度学习,DFS则提供了一种能够基于更小的数据集来进行特征工程的方法,而且这些特征更加容易被人类所解释。
LFE为代表的理由机器学习方法通过对大量的数据的特征工程进行学习,对新数据的特征工作操作方法进行预测。最初用于LR和RF两种模型上,现在提出用强化学习进行搜索的方法。LFE的方法发表在IJCAI-17。
在近年的AI会议上,对特征提取方法的研究比较多,但对特征工程自动化的研究相对较少,有微软基于Nas神经架构搜索的思想去做特征工程的。
总结起来,15-16年主要以DFS为代表的文章,提出的自动特征工程方法主要为预定义的特征变换,利用简单的搜索算法进行训练,能处理的数据多为一张表,没有考虑到多个关系数据库之间的连线。17年以来以IBM的UK等人主要以机器学习、深度学习和强化学习方法对自动特征工程进行研究,当前正在应用集成学习和强化学习对关系型多数据库表进行特征工程研究。
3. 文献说明
- (DFS)Kanter J M, Veeramachaneni K. Deep feature synthesis: Towards automating data science endeavors[C]//2015 IEEE International Conference on Data Science and Advanced Analytics (DSAA). IEEE, 2015: 1-10.
输入:非结构化数据,1张表,包含id和属性
输出:合成后的特征,该id下的多个新特征
处理:DFS中将与数据集本身无关的操作,称之为预定义“基元”。新的特征通常由先前获取的特征派生出来。基元是DFS的基石,它定义了输入和输出的类型,把基元组合起来就可以构造复杂特征。深度学习通常需要大量样本来学习复杂的结构,而DFS则是基于数据集的特点来构建潜在特征的。DFS则提供了一种能够基于更小的数据集来进行特征工程的方法,而且这些特征更加容易被人类所解释。 - (LFE)Nargesian F, Samulowitz H, Khurana U, et al. Learning Feature Engineering for Classification[C]//IJCAI. 2017: 2529-2535.
输入:非结构化数据,表格
输出:合成后的特征,该id下的多个新特征,或者对新数据推荐特征,类似特征筛选。
处理:LFE和DFS相似都是一系列简单的特征变换方法基础上对大量的数据的特征工程进行学习,通过相似性对新数据的特征工作操作方法进行推荐预测。最初用于LR和RF两种模型上。 - Lam H T, Minh T N, Sinn M, et al. Neural Feature Learning From Relational Database[J]. arXiv preprint arXiv:1801.05372, 2018.
输入:关系表,多张表
输出:合成新的特征
处理:和DFS类似,针对非数值数据,将多个关系表作为输入,通过LSTM深度神经网络学习数据与特征变换操作的关系,学得数据适应的变换。 - Khurana U, Samulowitz H, Turaga D. Feature engineering for predictive modeling using reinforcement learning[C]//Thirty-Second AAAI Conference on Artificial Intelligence. 2018.
输入:非结构化数据,表格
输出:合成的新特征
处理:对所有预定义的特征变换,通过一些规则组合成一系列的变换序列图,然后通过强化学习q-learning,输入数据对变换序列图进行训练,得到最好的特征变化序列。 - Khurana U, Turaga D, Samulowitz H, et al. Cognito: Automated feature engineering for supervised learning[C]//2016 IEEE 16th International Conference on Data Mining Workshops (ICDMW). IEEE, 2016: 1304-1307.
输入:关系性数据
输出:合成的新特征
处理:介绍Cognito系统,通过层级关系和非穷尽的方式,设计了大量的特征构建的方法,通过英语贪心搜索的策略,选出最优的特征变换方法,逐步最大化模型精度。 - Udayan Khurana, Horst Samulowitz, Deepak Turaga. Ensembles with Automated Feature Engineering. [C]//ICML AutoML workshop. 2018.
输入:关系性数据
输出:合成的新特征
处理:介绍了UK等人在特征工程中的最新工作,对特征工程中特征变换的搜索模型进行集成学习,利用强化学习去搜索最好的集成方式。该工作正在进行,没有在大的数据集上进行测试,只是有一个小实验。 - Nargesian F, Khurana U, Pedapati T, et al. Dataset Evolver: An Interactive Feature Engineering Notebook[C]//Thirty-Second AAAI Conference on Artificial Intelligence. 2018.
输入:关系性数据
输出:合成的新特征
处理:介绍了特征工程工具,利用LFE和强化学习等方法进行特征变换搜索,以jupyter notebook为基础,作为插件式的特征工程工具。
- de Melo V V, Banzhaf W. Automatic feature engineering for regression models with machine learning: An evolutionary computation and statistics hybrid[J]. Information Sciences, 2018, 430: 287-313.
- Chen X, Lin Q, Luo C, et al. Neural feature search: A neural architecture for automated feature engineering[C]//2019 IEEE International Conference on Data Mining (ICDM). IEEE, 2019: 71-80.
用强化学习,类似神经网络架构搜索的方法进行最适合的特征工程算子搜索
4、参考文献
- (DFS) Kanter J M, Veeramachaneni K. Deep feature synthesis: Towards automating data science endeavors[C]//2015 IEEE International Conference on Data Science and Advanced Analytics (DSAA). IEEE, 2015: 1-10.
- (LFE) Nargesian F, Samulowitz H, Khurana U, et al. Learning Feature Engineering for Classification[C]//IJCAI. 2017: 2529-2535.
- Lam H T, Minh T N, Sinn M, et al. Neural Feature Learning From Relational Database[J]. arXiv preprint arXiv:1801.05372, 2018.
- Khurana U, Samulowitz H, Turaga D. Feature engineering for predictive modeling using reinforcement learning[C]//Thirty-Second AAAI Conference on Artificial Intelligence. 2018.
- Khurana U, Turaga D, Samulowitz H, et al. Cognito: Automated feature engineering for supervised learning[C]//2016 IEEE 16th International Conference on Data Mining Workshops (ICDMW). IEEE, 2016: 1304-1307.
- Udayan Khurana, Horst Samulowitz, Deepak Turaga. Ensembles with Automated Feature Engineering. [C]//ICML AutoML workshop. 2018.
- Nargesian F, Khurana U, Pedapati T, et al. Dataset Evolver: An Interactive Feature Engineering Notebook[C]//Thirty-Second AAAI Conference on Artificial Intelligence. 2018.
- de Melo V V, Banzhaf W. Automatic feature engineering for regression models with machine learning: An evolutionary computation and statistics hybrid[J]. Information Sciences, 2018, 430: 287-313.
- Chen X, Lin Q, Luo C, et al. Neural feature search: A neural architecture for automated feature engineering[C]//2019 IEEE International Conference on Data Mining (ICDM). IEEE, 2019: 71-80.