特征工程入门与实践 —1 特征工程简介
第一章 特征工程简介
1.1 激动人心的例子:AI驱动的聊天
请求表示最终用户输入客服聊天框的内容;回复则表示客服对所收到消息的回复。
1.2 特征工程的重要性
准备数据:概念是比较模糊的,包括捕获数据、存储数据、清洗数据等等。清洗数据就是将数据转换为云系统和数据库可以轻松识别的形式。组织数据更为彻底,包括将数据集的格式转换为更干净的格式。
1.3 特征工程是什么?
特征工程就是这样的一个过程,将数据转换为能更好地表示潜在问题的特征,从而提高机器学习性能。
转换数据的过程:特征工程适合用于任何阶段的数据。要处理的数据经常是表格形式,数据会被组织成行和列(属性)。
特征:是对机器学习过程有用的数据属性。
更好的潜在特征:转换数据的目的是更好的表达更大的问题。
提高机器学习性能:特征工程的目的是让我们获得更好的数据,以便学习算法从中挖掘模式,取得更好的效果。
机器学习分为两类:监督学习、无监督学习
在监督学习中,我们一般将数据集中希望预测的属性(一般只有一个,但不尽然)叫做响应,其余属性叫做特征。监督学习的目的是预测,利用数据的特征对响应进行预测,提供有用的信息。
无监督学习没有响应,不做预测,所有的列都称为特征。
1.4 机器学习算法和特征的工程的评估
属性和列是有明显的区分。属性一般是表格数据的列,特征一般只指代对机器学习算法有益的属性。
对于任何机器学习流水线而言,如果没有使用一套标准指标评估其性能,那么它是没有用的,因此,特征工程不可能没有评估过程;
评估特征工程的步骤:
(1)在应用任何特征工程之前,得到机器学习模型的基准性能;
(2)应用一种或多种特征工程;
(3)对于每一种特征工程,获取一个性能指标,并与基准指标进行对比;
(4)如果性能的增量(变化)大于某个阈值(一般有我们定义),则认为这种特征工程是有益的,并在机器学习流水线上应用;
(5)性能的改变一般可以以百分比计算。
评估监督学习的算法:
分类(预测定性响应,主要使用准确率作为测量指标)、回归(预测定量响应,主要使用均方误差作为测量指标)
评估无监督学习的算法:
聚类(将数据按特征行为进行分类,主要用轮廓系数作为测量指标)
统计检验:用相关系数、t检验、卡方检验,以及其他方法评估并量化原始数据和转换后数据的效果。
1.5数据集里有什么?
结构化数据和非结构化数据;
数据的4个等级;
识别数据的缺失值;
探索性数据分析;
描述性统计;
数据可视化;
数据可视化、描述性统计和探索性数据分析都是特征工程的一部分。
1.6 特征增强:清洗数据
对非结构化数据进行结构化;
数据填充—在原先没有数据的位置填充(缺失)数据;
数据归一化:
标准化(z分数标准化);
极差法(min—max标准化);
L1和L2正则化 。
1.7 对坏属性说不
相关系数;
识别并移除多重共线性;
卡方检验;
方差分析;
理解p值;
迭代特征选择;
用机器学习测量熵和信息增益,