一 什么是特征工程
数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限。其本质是一项工程活动,目的是最大限度的从原始数据中提取特征以供算法和模型使用。什么是“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限”?就像我们学习一本书,书中的数据和从书中能够获得的所有知识是这本书的知识上限,而我们通过各种学习方法获得的知识是接近这个上限。数据和特征就像一本书中的知识的上限,而模型和算法就是逼近这个上限。
二 为什么进行特征工程
当你想要你的预测模型性能达到最佳时,你要做的不仅是要选取最好的算法,还要尽可能的从原始数据中获取更多的信息。
三 特征工程的过程
特征工程其实就是获取特征的一系列活动,当我们获取了原始数据,首先对原始数据进行了预处理之后,再进行提取特征,然后进行特征选择和特征降维,最后使用特征建立模型。如下图所示:
1 预处理
现实世界数据是“肮脏”的,好的数据能够带来好的结果,获得较好模型,进行较好的预测。对原始数据的清洗、过滤、缺失值处理、标准化、归一化等,使其更方便做后期的特征处理和机器学习。
常用预处理方法:
去重:去掉重复的数据;
过滤:把反常值(极高/极低)用平滑值代替;
标准化:把数据放缩到同样的范围。变换后各维特征有0均值,单位方差。也叫z-score规范化(零均值规范化)。计算方式是将特征