特征工程(一)
什么是特征工程
简单来讲将数据转换为能更好地表示潜在问题的特征,从而提高机器学习性能
特征工程包含的内容
- 转换数据的过程
- 特征
- 更好地表示潜在问题
- 提高机器学习性能
数据和机器学习的基础知识
数据基础
以下为数据的一个实例
其中,每行都是一个观察值,包含四个属性,其中每个属性都有属于自己的特性和变化趋势
特征工程需要接受处理多或少、宽或窄、完整或稀疏的数据,并准备好在机器学习中应用这些数据。
机器学习基础
1.监督学习
一般来说,绝大部分都是在监督学习(也可以成为预测分析)的特定上下文中提到的特征工程。监督学习算法是专门处理预测一个值的任务,通常是使用数据中的其他属性来预测余下的一个属性。
例如上面的实例中,使用其他数据,来预测FIT201
。
在监督学习中,我们一般将数据集中希望预测的属性(一般是一个,也存在多个)叫做标签(label),其余属性叫做特征(feature)。
2.无监督学习
监督学习的目的是预测,我们利用数据的特征对label进行预测,提供有效信息。如果不是要通过探索结构进行预测,那想要从数据中提取结构。要做到后者,一般对数据的数值矩阵或迭代过程应用数学变换,提取新的特征。具体来讲,就是将数据集细分为不同的类型或类别,以供后续任务进行分析与应用。
机器学习算法和特征工程的评估
注意,在很多地方,特征和属性通常有明显的区分。属性一般是表格数据的列,特征则一般只指代对机器学习算法有益的属性。换句话说,就是存在有些属性对机器学习系统不一定有益,甚至有害。
特征工程的评估步骤
- 在应用任何特征之前,得到机器学习模型的基准;
- 应用在一种或多种特征工程;
- 对于每种特征工程,获取一个性能指标,并与基准性能进行对比;
- 如果性能的增量(变化)大于某个阈值(一般由我们定义),则认为这种特征工程是有益的,并在机器学习流水线上使用;
- 性能的改变一般以百分比计算(如果基准性能从40%的准确率提高到76%的准确率,那么改变是90%)
评估监督学习算法
当进行监督学习是,性能直接与模型利用数据结构的能力,以及使用数据结构进行恰当预测的能力,一般而言,可以将监督学习分为两种更具体的类型:分类(classification)、回归(regression)
- 分类的评估指标:
常见的评价指标有准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1 score、ROC曲线(Receiver Operating Characteristic Curve)等 - 回归的评估指标:
平均绝对误差(MAE, Mean Absolute Error)这个指标是对绝对误差损失的预期值
平均绝对百分比误差(MAPE, Mean Absolute Percentage Error)这个指标是对相对误差损失的预期值.所谓相对误差,就是绝对误差和真值的百分比.
均方误差(MSE, Mean Squared Error)该指标对应于平方(二次)误差的期望.均方误差根或均方根误差(RMSE, Root Mean Squared Error)该指标对应于平方(二次)误差的期望.
R Squared(r2 score)R Squared又叫可决系数(coefficient of determination)也叫拟合优度,反映的是自变量x对因变量y的变动的解释的程度.越接近于1,说明模型拟合得越好.
这里暂时不详细展开,等后续补充
评估无监督学习算法
常见无监督聚类算法,使用轮廓系数作为测量指标。再此之外,还存在其他的评估方法,在此暂不展开。