特征工程方案

Catalogue
  1. 1. 特征工程
    1. 1.1 定义
    2. 1.2 目的
    3. 1.3 特征处理、特征计算
      1. 1.3.1 特征处理
      2. 1.3.2 特征计算
  2. 2. 特征工程方案
    1. 2.1 特征提取(Feature Extraction)
    2. 2.2 特征构造(Feature Construction)
    3. 2.3 特征选择(Feature Selection)
    4. 2.4 特征变换(Feature Transformation)
    5. 2.5 类别特征处理(Categorical Feature Processing)
    6. 2.6 缺失值处理(Handling Missing Values)
    7. 2.7 异常值处理(Handling Outliers)
    8. 2.8 数据合成(Data Synthesis)
    9. 2.9 领域特定特征工程(Domain-Specific Feature Engineering)

1. 特征工程

1.1 定义

从原始数据中提取、构造和选择特征的过程。 主要包括以下活动:

  • 特征提取(Feature Extraction): 从原始数据中提取有用的信息。
  • 特征构造(Feature Construction):根据现有数据创建 新的特征(如 组合特征、交叉特征)
  • 特征选择(Feature Selection):选择对模型有显著影响的特征,去除冗余或无关的特征。
  • 特征变换(Feature Transformation):将特征转换为模型更易处理的形式(如使用主成分分析(PCA)来降维)

1.2 目的

创造出对机器学习模型有用的特征,能够有效地捕捉数据中的信息和模式。

1.3 特征处理、特征计算

1.3.1 特征处理

指 对特征数据进行预处理和转换的过程。通常包括(清洗、标准化、归一化等操作)

其目的是使特征数据符合模型的要求, 提升模型性能。

(特征处理) 是特征工程中一个具体步骤。 主要关注数据的 清晰和预处理。

主要的活动包括: 缺失值处理(填补或处理缺失值数据,如使用均值填补), 数据标准化和归一化(调整数据尺度,使得不同特征具有相似的尺度,例如:将数据缩放到0到1之间), 数据编码(将分类特征转换为数据值特征,例如:独热编码),异常值处理(检测并处理数据中的异常值,如截断或调整异常值)。

1.3.2 特征计算

根据现有数据计算特征值的过程。这通常包括对数据进行数学运算、统计计算或其他变换,以生成新的特征或调整现有特征。

(特征计算) 是特征工程的一部分, 专注于通过 数学运算或统计 方法生成或 调整特征。
特征计算可能在 特征构造和特征变换 阶段进行,是生成有用特征的关键操作之一。

总结
特征工程 是整个数据预处理和特征生成的过程,包括特征提取、构造、选择和变换。
特征处理 是特征工程中的具体步骤,处理数据质量问题,确保特征在模型训练前符合要求。
特征计算 是特征工程中的一个关键操作,通过数学和统计方法计算和生成特征,以支持特征提取和构造。

2. 特征工程方案

特征工程方案(Feature Engineering Approaches)指的是在数据科学和机器学习项目中,用于生成、选择和优化特征的各种方法和策略。这些方案通常根据具体任务、数据类型和模型需求来设计。以下是一些常见的特征工程方案和方法:

2.1 特征提取(Feature Extraction)

从原始数据中提取特征:
时间特征提取:从时间戳数据中提取日期、时间、星期几、季度等特征。
文本特征提取:从文本数据中提取词频、TF-IDF(词频-逆文档频率)、主题模型特征(如LDA)、词嵌入(如Word2Vec、BERT)等。
图像特征提取:使用卷积神经网络(CNN)提取图像的特征,如边缘、纹理、形状等。

2.2 特征构造(Feature Construction)

创建新的特征:
数学运算:对现有特征进行数学运算,如加法、乘法、平方根等。例如,创建“总消费金额”特征,作为“每次消费金额”与“消费次数”的乘积。
特征组合:组合多个特征生成新特征,如两个特征的交互项(特征A × 特征B)。
衍生特征:基于现有特征衍生新的特征,如通过对数变换、平方变换等。

2.3 特征选择(Feature Selection)

选择对模型最有帮助的特征:
过滤法(Filter Methods):使用统计方法(如卡方检验、相关系数)评估特征的重要性,并选择显著特征。
包裹法(Wrapper Methods):使用机器学习模型进行特征选择(如递归特征消除,RFE),通过模型性能评估特征的重要性。
嵌入法(Embedded Methods):特征选择与模型训练同时进行(如LASSO回归,决策树的重要性评分)。

2.4 特征变换(Feature Transformation)

对特征进行变换以优化模型性能:
标准化(Standardization):将特征调整为均值为0、方差为1的标准正态分布。
归一化(Normalization):将特征缩放到一个特定的范围(如0到1)。
主成分分析(PCA):通过线性变换将特征投影到主成分上,进行降维。
线性判别分析(LDA):进行特征降维,强调类别分离。

2.5 类别特征处理(Categorical Feature Processing)

将类别特征转换为数值特征:
独热编码(One-Hot Encoding):将类别特征转化为二进制向量。
标签编码(Label Encoding):将类别特征转化为整数。
目标编码(Target Encoding):根据目标变量的均值对类别特征进行编码。

2.6 缺失值处理(Handling Missing Values)

处理缺失数据以提高数据质量:
填补缺失值:使用均值、中位数、众数、插值法等方法填补缺失数据。
删除缺失值:删除包含缺失值的记录或特征(适用于缺失值比例较小的情况)。

2.7 异常值处理(Handling Outliers)

识别和处理异常值:
截断异常值:将异常值限制在一定范围内。
变换数据:使用对数变换或其他数学变换减少异常值的影响。
检测方法:使用统计方法(如Z-score、IQR)或模型方法(如孤立森林)检测异常值。

2.8 数据合成(Data Synthesis)

创建额外的数据以增强训练集:
数据增强(Data Augmentation):在图像数据中通过旋转、缩放、翻转等操作增强数据集。
合成少数类样本:使用SMOTE(Synthetic Minority Over-sampling Technique)等方法生成新的少数类样本以平衡类别分布。

2.9 领域特定特征工程(Domain-Specific Feature Engineering)

根据特定领域知识设计特征:
金融领域:创建“交易频率”、“账户余额波动”等特征。
医疗领域:从医疗记录中提取“病史”、“体征指标”等特征。
电商领域:提取“用户购物习惯”、“产品评分”等特征。

特征工程方案的选择和实施应根据数据类型、问题需求和模型要求来决定。特征工程是一个迭代的过程,需要不断实验和调整,以生成最能提升模型性能的特征。通过有效的特征工程,可以显著提高模型的预测能力和泛化性能。