Skip to content
Stone
返回笔记列表
数据处理与特征工程

数据处理与特征工程

数据处理与特征工程 什么是数据增强(Data Augmentation),它如何提升模型鲁棒性

AI Knowledge Base

数据处理与特征工程

1. 什么是数据增强(Data Augmentation),它如何提升模型鲁棒性?

定义: 通过对原始数据进行变换,人工扩充训练数据集。

常见增强方法:

领域增强技术
图像旋转、翻转、裁剪、缩放、颜色变换、噪声添加
文本同义词替换、回译、随机删除/插入/交换
音频加噪、变速、变调、时间拉伸

为什么提升鲁棒性:

  1. 增加多样性: 模型见过更多变化
  2. 减少过拟合: 不依赖特定数据模式
  3. 隐式正则化: 增加训练难度

进阶方法:

  • Mixup: 混合两个样本及其标签
  • CutMix: 裁剪并粘贴图像区域
  • AutoAugment: 自动搜索最优增强策略

2. 特征工程(Feature Engineering)在深度学习时代还重要吗?

答案: 重要性降低,但未消失。

变化对比:

时代特征工程角色
传统ML核心,决定模型上限
深度学习辅助,端到端学习特征

仍然重要的场景:

场景原因
表格数据深度学习优势不明显
小数据集先验知识更有价值
特定领域领域专家知识无法自动学习
模型可解释性人工特征更易解释

现代特征工程:

  • 数据预处理仍是关键
  • 模型输入设计影响效果
  • 多模态特征融合策略
  • 自动特征工程工具 (AutoML)

3. 归一化(Normalization)和标准化(Standardization)有什么区别?

公式对比:

方法公式结果范围
归一化 (Min-Max)(x - min) / (max - min)[0, 1]
标准化 (Z-score)(x - μ) / σ均值0,标准差1

选择依据:

场景推荐方法
需要固定范围归一化
数据有异常值标准化(更鲁棒)
神经网络输入两者皆可,标准化更常用
图像像素值归一化到[0,1]或[-1,1]

重要原则:

  • 在训练集上计算统计量
  • 用相同参数处理验证/测试集
  • 不同特征独立处理

4. 独热编码(One-Hot Encoding)如何将类别变量转化为数字?

原理: 每个类别用一个二进制向量表示,只有对应位置为1。

示例:

类别: [红, 绿, 蓝]

红 → [1, 0, 0]
绿 → [0, 1, 0]
蓝 → [0, 0, 1]

优点:

  • 不引入虚假的大小关系
  • 兼容大多数算法
  • 简单直观

缺点:

  • 高维稀疏 (类别多时)
  • 无法表达类别间相似性
  • 增加特征维度

替代方法:

方法适用场景
Label Encoding有序类别
Target Encoding高基数类别
Embedding深度学习场景

5. 降维(Dimensionality Reduction)技术如何帮助处理高维数据?

高维数据的问题:

  • 维度灾难: 样本变得稀疏
  • 计算成本高
  • 过拟合风险增加
  • 难以可视化

降维方法分类:

类型方法特点
线性PCA, LDA保持线性关系
非线性t-SNE, UMAP保持局部结构
特征选择LASSO, 互信息选择重要特征

降维的收益:

  1. 降低计算复杂度
  2. 去除噪声和冗余
  3. 便于可视化
  4. 可能提升模型性能

注意事项: 降维可能丢失信息,需权衡维度和信息保留。


6. PCA(主成分分析)和t-SNE在降维时有什么不同的应用场景?

核心对比:

方面PCAt-SNE
类型线性非线性
目标最大化方差保持局部相似性
可逆性可逆不可逆
速度
确定性确定随机(需设种子)

应用场景:

场景推荐方法
特征预处理PCA
高维数据可视化t-SNE/UMAP
线性可分数据PCA
复杂非线性结构t-SNE
新数据投影PCA
聚类结构探索t-SNE

实践建议: 可视化时先用PCA降到50维,再用t-SNE降到2维。


7. 什么是数据标注(Data Annotation),为什么它在监督学习中如此关键?

定义: 为原始数据添加标签或注释,使其可用于监督学习。

标注类型:

任务标注形式
图像分类类别标签
目标检测边界框 + 类别
语义分割像素级标签
NLP分类文本类别
命名实体实体边界 + 类型

为什么关键:

  1. 监督学习的基础: 没有标签无法训练
  2. 决定模型上限: 标签质量决定模型质量
  3. 成本占比高: 往往是AI项目最大成本

标注质量保障:

  • 清晰的标注指南
  • 多人标注+一致性检查
  • 专家审核
  • 持续反馈改进

趋势: 半监督学习、自监督学习减少对标注的依赖


8. 如何处理数据集中的不平衡问题(Class Imbalance)?

问题: 某些类别样本远多于其他类别,模型倾向预测多数类。

解决策略:

数据层面:

方法说明
过采样增加少数类样本 (SMOTE)
欠采样减少多数类样本
数据增强对少数类进行增强

算法层面:

方法说明
类别权重少数类损失赋予更高权重
Focal Loss降低易分样本权重
代价敏感学习不同类别不同误分代价

评估指标选择:

  • 避免只看准确率
  • 使用F1、AUC-ROC、Precision-Recall曲线
  • 考虑业务需求选择阈值

9. 数据清洗(Data Cleaning)包括哪些关键步骤?

主要步骤:

步骤内容
缺失值处理删除、填充(均值/中位数/模型预测)
异常值检测Z-score、IQR、孤立森林
重复数据识别并去重
数据类型转换为正确类型
格式统一日期、文本格式标准化
错误修正拼写错误、逻辑错误

缺失值处理策略:

情况策略
随机缺失,占比小删除该行
整列大量缺失删除该特征
有规律的缺失作为特征
可推断模型填充

注意事项:

  • 在训练集上确定清洗规则
  • 记录所有清洗操作
  • 验证清洗后数据的分布变化

10. 向量数据库(Vector Database)为什么对RAG应用至关重要?

定义: 专门为存储和检索高维向量优化的数据库。

核心能力:

查询向量 → 向量数据库 → 最相似的Top-K向量

为什么对RAG至关重要:

RAG流程向量数据库作用
知识库构建存储文档的嵌入向量
语义检索快速找到与查询相关的文档
上下文增强将检索结果注入提示词

相比传统数据库:

能力传统DB向量DB
语义搜索不支持核心功能
相似度查询需额外处理原生支持
高维索引低效专门优化(HNSW, IVF)

主流产品: Pinecone, Milvus, Weaviate, Chroma, Qdrant, pgvector

典型规模: 可处理数十亿向量,毫秒级检索延迟