### 201905—机器学习之特征工程—六天课程知识总结
#### 第一天:特征归一化
**一、特征归一化的概念**
- **结构化数据**:这种类型的数据可以视为关系型数据库中的表,其中每一列都有明确的定义,每一行代表一个样本。结构化数据主要包括数值型和类别型两种。
- **非结构化数据**:这类数据没有简单的数值表示或明确的类别定义,其大小各不相同,包括文本、图像、音频、视频等形式。
**二、特征归一化的必要性**
- **原因**:特征归一化的主要目的是消除数据特征之间的量纲影响,使不同指标之间具有可比性。在实际应用中,比如分析人体体重和身高对健康的影响时,如果没有进行归一化处理,分析结果可能会偏向数值差异较大的体重特征。
- **归一化的方法**:
- **线性函数归一化(Min-Max Scaling)**:通过线性变换将原始数据映射到[0,1]范围内,实现等比缩放。
- **零均值归一化(Z-Score Normalization)**:将原始数据映射到均值为0、标准差为1的分布上,主要用于处理离群值较多的数据集。
- **实例说明**:通过随机梯度下降法,我们可以看到归一化后的数据在迭代过程中收敛更快。例如,当两组数据的范围分别为[0,10]和[0,3]时,如果不进行归一化,则更新速度x_1 > x_2,需要更多的迭代次数才能达到最优解。而归一化后,两者的更新速度大致相同,更容易找到最优解。
**三、注意事项**
- 数据归一化并不是适用于所有情况。它主要适用于通过梯度下降法求解的模型,如线性回归、逻辑回归、支持向量机、神经网络等。而对于决策树模型则不适用,因为决策树在节点分裂时主要依据的是数据集关于特征的信息增益比,而这与特征是否归一化无关。
#### 第二天:类别型特征
**一、类别型特征定义**
- 类别型特征是指那些只在有限选项内取值的特征,如性别(男、女)、血型(A、AB、B、O)等。
**二、类别型特征处理**
- **处理方式**:某些模型(如决策树)可以直接处理类别型特征,但大多数模型(如逻辑回归、支持向量机)需要将这些特征转换成数值特征才能正常工作。
- **常见的处理方法**:
- **序号编码(Ordinal Encoding)**:适用于类别间具有大小关系的数据,如成绩等级。做法是按照大小关系赋予数值ID。
- **独热编码(One-Hot Encoding)**:适用于类别间没有大小关系的数据。例如,将血型转换为一个4维稀疏向量,每个类别对应向量中的一个维度。
- **二进制编码(Binary Encoding)**:首先给每个类别赋予一个类别ID,然后将该ID转换为其二进制表示,再进行编码。
**三、注意事项**
- 对于类别取值较多的情况,应考虑以下几点:
- 使用稀疏向量来节省存储空间。
- 结合特征选择技术降低维度,避免高维数据带来的问题,如K近邻算法中点间距离难以衡量、逻辑回归模型中参数数量增加导致的过拟合风险。
#### 第四天:组合特征
**一、组合特征的概念**
- 组合特征是指通过对现有特征进行组合或衍生出新的特征,从而提高模型性能的技术。例如,在之前的章节中讨论了降维方法的应用,这里将进一步探讨如何通过组合特征来提高模型的表现力。
通过以上内容,我们可以了解到特征工程在机器学习中的重要性和具体操作方法。特征归一化和类别型特征处理是两个关键步骤,能够显著提升模型的效果。同时,了解如何处理不同类型的特征以及何时使用何种方法对于构建高效的机器学习模型至关重要。