常见的特征工程:数值型、类别型特征处理;特征构造、选择、文本特征处理、缺失值处理

特征工程的常用方法

  1. 为什么要做特征构造?

    原始特征无法直接表达业务规律,构造特征可以显式化非线性、交互、时间周期等信息,显著提升模型的表达能力泛化性能

  2. 特征构造的常用坑有哪些?

    • 信息泄露(使用未来标签统计)
    • 维度灾难(交叉特征未做hash或者降维)
    • 业务不合理(特征解释性差、难以落地)
  3. 模型效果不提示,怎么办?

    • 检查特征质量(是否与目标强相关)
    • 特征选择(L1正则化、树模型重要性)
    • 模型升级(采用更加复杂的模型)

特征工程是机器学习中数据预处理的核心环节,直接影响模型效果。面试中常被问及以下方法:

数值型特征处理

  • 标准化(Z-Score):将数据转换为均值为0、方差为1的分布,公式为 x ′ = x − μ σ x' = \frac{x - \mu}{\sigma} x′=σx−μ
  • 归一化(Min-Max):将数据线性映射到[0,1]区间,公式为 x ′ = x − x m i n x m a x − x m i n x' = \frac{x - x_{min}}{x_{max} - x_{min}} x′=xmax−xminx−xmin
  • 鲁棒缩放(Robust Scaling):使用中位数和四分位数,适用于存在异常值的数据

类别型特征编码

One-Hot 编码: 类别数量较少(<15个);模型对数值敏感(如线性回归、SVM)。

  • 优点:避免引入数值大小关系,适用于无序类别特征;兼容大多数机器学习模型。
  • 缺点:维度爆炸(高基数特征时内存消耗大);可能引入稀疏性问题。

标签编码(Label Encoding):类别存在内在顺序(如学历等级)。

  • 优点:节省内存,仅用一列数值表示类别;适合树模型(如决策树、随机森林)。
  • 缺点:可能引入虚假顺序关系,影响线性模型或距离类模型(如KNN、回归)。

频率编码(Frequency Encoding):高基数特征(如邮政编码);需保留统计信息的场景。

  • 优点:保留类别分布信息,适用于高基数特征;减少维度。
  • 缺点:相同频率的类别无法区分;可能引入过拟合风险。

目标编码(Target Encoding):分类任务且类别分布不均衡;需增强特征与目标关联性。

  • 优点:结合目标变量信息,提升模型表现;适用于高基数分类问题。
  • 缺点:需防范数据泄漏(需严格划分训练/测试集);可能过拟合小类别。

哈希编码(Hashing Encoding):实时处理或内存受限场景;类别基数极高(>1000)。

  • 优点:有效降维,适用于极高基数特征;内存效率高。
  • 缺点:可能发生哈希冲突;可解释性差。

注意事项

  • 树模型(如XGBoost)通常对编码方式不敏感,但线性模型需谨慎选择。
  • 高基数特征优先测试频率/目标编码,避免One-Hot的维度灾难。

特征构造

  • 多项式特征:通过特征相乘或平方构造非线性特征
  • 离散化/分箱(Binning):将连续变量离散化,如年龄分段
  • 时间特征:从时间戳提取小时、星期等周期性特征
  • 统计聚合特征:group by->count、均值、最大值、最小值、方差
  • 交叉/组合特征:两特征相乘、拼接字符串

特征选择

  • 方差阈值:移除方差低于阈值的低方差特征
  • 卡方检验:筛选与目标变量相关性高的分类特征
  • 基于模型:使用树模型的特征重要性或L1正则化进行筛选

文本特征处理

  • 词袋模型(Bag of Words):统计词频生成向量
  • TF-IDF:衡量词语在文档中的重要程度
  • Word2Vec/GloVe:将词语映射为稠密向量

缺失值处理

  • 删除:直接移除缺失值过多的特征或样本
  • 填充:用均值、中位数或预测值进行填补
  • 标志位:新增二进制列标记是否存在缺失
相关推荐
小鸡吃米…4 小时前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫5 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)5 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan5 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维5 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS5 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd6 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
水如烟6 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能
Carl_奕然6 小时前
【数据挖掘】数据挖掘必会技能之:A/B测试
人工智能·python·数据挖掘·数据分析
旅途中的宽~6 小时前
《European Radiology》:2024血管瘤分割—基于MRI T1序列的分割算法
人工智能·计算机视觉·mri·sci一区top·血管瘤·t1