数据、结构与信息
⭐ 核心路径 — 数据是 AI 系统的基石。不理解数据的本质,就无法设计有效的模型。本讲从第一性原理出发,剖析数据模态、采集策略、训练目标与泛化之间的关系。
学习目标
完成本讲后,你应该能够:
- 识别 常见数据模态的结构特征和固有挑战
- 区分 不同的数据采集策略及其适用场景
- 解释 训练目标函数如何影响模型的泛化行为
- 理解 数据结构如何决定(或启示)模型架构的设计选择
- 批判性评估 一个 AI 系统所依赖的数据假设和局限性
数据模态概览
什么是数据模态?
数据模态(modality)是信息的呈现形式。现实世界中的信息以多种模态进入我们的感知系统——文字、图像、声音、触觉等。对于 AI 系统来说,每种模态都有其独特的数据结构和统计特性,这些特性从根本上决定了什么样的模型架构是合理的。
数据模态的结构决定模型架构的选择。这不是一个技术细节问题,而是一个第一性原理问题。
主要数据模态对比
| 模态 | 数据结构 | 数据维数 | 典型示例 | 核心挑战 |
|---|---|---|---|---|
| 文本 | 离散符号序列 | 1D(序列) | 文档、对话、代码 | 长程依赖、语义歧义、离散不可微 |
| 图像 | 规则像素网格 | 2D(空间) | 照片、医学影像、卫星图 | 高维稀疏、光照/视角变化、语义鸿沟 |
| 视频 | 像素网格+时序 | 3D(空间+时间) | 监控、电影、运动分析 | 数据量大、时序对齐、计算昂贵 |
| 音频 | 一维波形/频谱 | 1D(时序) | 语音、音乐、环境声 | 时序对齐、背景噪声、说话人变异 |
| 传感器 | 多维时间序列 | 1D 多通道 | 加速度计、GPS、温度 | 异构采样率、缺失值、校准漂移 |
| 3D 数据 | 点云/网格/体素 | 3D(空间) | LiDAR、CT、CAD 模型 | 稀疏非结构化、旋转不变性、存储大 |
| 医疗 | 结构化+影像+时序 | 混合 | MRI、ECG、基因序列 | 标注困难、隐私限制、样本量小 |
| 图数据 | 节点+边(拓扑) | 非欧几里得 | 社交网络、分子结构 | 非规则结构、尺度变化、归纳学习 |
| 表格 | 结构化行-列 | 2D(混合) | 数据库、电子表格、日志 | 缺失值、类别编码、特征交互 |
理解要点:上表中最关键的维度是"数据结构"和"数据维数"。它们是选择模型架构的第一依据。例如,1D 序列数据天然适合 [[02-基础/02-03-模型架构|循环或卷积架构]],而 2D 网格数据则更适合卷积神经网络或 Vision Transformer。
模态的本质差异
不同模态之间的差异不仅仅是"表现形式不同",它们在数学结构上有本质的区别:
离散 vs. 连续
- 文本是离散符号(词汇表有限),每个 token 是一个分类变量
- 图像是连续值(像素强度),是一个高维连续空间中的点
- 音频信号在时域上是连续的,在频域上则具有周期性结构
- 意义:离散数据需要嵌入层(embedding)将符号映射到连续空间;连续数据则需要处理动态范围和高频噪声
结构规则性
- 图像在 2D 网格上具有平移不变性(translation invariance)——猫在图片左边还是右边不影响它是猫
- 文本在序列维度上具有顺序依赖性——"猫追狗"和"狗追猫"意思完全不同
- 传感器数据在时间轴上具有因果性——未来不能影响过去
- 意义:模型架构需要利用(或编码)这些结构先验。卷积利用平移不变性,RNN 利用时序因果性,Transformer 利用位置编码
语义粒度
- 文本的语义粒度相对清晰:词 → 短语 → 句子 → 段落
- 图像的语义粒度模糊:像素 → 边缘 → 纹理 → 物体 → 场景
- 音频的语义粒度因任务而异:音素 → 词 → 语义(语音),或节拍 → 旋律 → 情感(音乐)
- 意义:不同任务需要模型在不同层次上提取特征,这直接决定了网络的深度和层次设计
数据采集策略
数据从哪里来?
构建 AI 系统的第一步是获取数据。不同的采集策略决定了数据的质量、规模和偏见:
| 策略 | 描述 | 优点 | 缺点 | 典型例子 |
|---|---|---|---|---|
| 人工标注 | 专家或众包工人手动标注数据 | 质量高、语义准确 | 成本高、速度慢、规模有限 | ImageNet、COCO |
| 网络爬取 | 从互联网自动抓取数据 | 规模巨大、成本低 | 噪声多、偏见不可控 | Common Crawl、LAION-5B |
| 传感器采集 | 物理传感器直接记录 | 真实、时序连续 | 校准困难、隐私问题 | 自动驾驶数据集 |
| 模拟生成 | 在虚拟环境中渲染数据 | 完全可控、无限量 | 模拟-真实差距 | CARLA、Habitat |
| 数据增强 | 对已有数据进行变换 | 无成本增加多样性 | 只能覆盖有限变换 | 旋转/裁剪/加噪 |
| 自监督采集 | 利用数据本身的结构产生标签 | 免人工标注、天然大规模 | 代理任务需精心设计 | 文本预测、对比学习 |
| 主动学习 | 模型选择最"有用"的样本请求标注 | 标注效率高 | 需要迭代、计算开销 | 医疗影像标注 |
数据质量 vs. 数据规模
一个常见的错误是认为"数据越多越好"。实际上,数据质量和数据规模之间需要权衡:
- 低质量大规模:网络爬取的数据通常规模巨大但充满噪声、偏见和冗余。大模型(如 LLM)在一定程度上能忍受噪声,但偏见会直接编码进模型
- 高质量小规模:精心标注的小数据集(如 ImageNet 1000 类、每类千张)推动了整个深度学习革命。但对于当前的基础模型范式来说,规模往往不够
数据偏见的来源
数据的偏见来自数据采集的每个环节:
- 采样偏差:采集的数据不能代表目标分布(例如,自动驾驶数据只来自晴天,模型无法应对雨雪)
- 标注偏差:标注者之间的一致性、标注者的主观判断
- 历史偏差:历史数据中编码了过去的歧视和不平等(如招聘数据)
- 测量偏差:传感器的精度和校准方式不同导致的偏差
- 聚合偏差:将不同群体的数据混合导致丢失子群体特征
数据偏见是 AI 系统中的[[05-人机交互/05-02-人机交互|安全与公平]]问题的根源之一。
训练目标与泛化
从数据到学习:训练目标的角色
AI 学习的本质是:给定一个数据集 $\mathcal{D} = {(x_i, y_i)}$,找到一个函数 $f$ 使得在未见数据上的表现最优。训练目标(损失函数)就是将"表现好坏"形式化:
| 任务类型 | 常用损失函数 | 语义含义 |
|---|---|---|
| 分类 | Cross-Entropy Loss | 预测概率分布与真实分布的差异 |
| 回归 | Mean Squared Error (MSE) | 预测值与真实值的欧氏距离 |
| 排序 | Contrastive / Triplet Loss | 正样本对的距离 < 负样本对的距离 |
| 生成 | Negative Log-Likelihood (NLL) | 模型赋予真实数据的概率 |
| 自监督 | Reconstruction / Prediction Loss | 模型恢复/预测被遮盖部分的能力 |
泛化的本质
泛化(generalization)是指模型在训练数据之外的新数据上表现良好的能力。理解泛化是理解 AI 的核心:
为什么模型能泛化?
这是一个深度学习尚未完全解答的开放问题,但我们可以直观理解几个关键因素:
- 数据的内在结构:真实世界的数据服从一个低维流形(manifold)——虽然原始空间(如 256×256 像素图像)是 65536 维,但自然图像的分布只占据其中极小的一个子空间
- 模型的归纳偏置:模型架构编码了对数据结构的先验假设——CNN 的平移不变性、RNN 的时序因果性、Transformer 的排列不变性(通过位置编码弥补)
- 隐式正则化:随机梯度下降(SGD)本身有隐式地选择"简单"解的倾向,这被称为隐式偏差(implicit bias)
什么时候泛化会失败?
| 失败模式 | 描述 | 原因 | 对策 |
|---|---|---|---|
| 欠拟合 | 模型无法学习训练数据 | 模型容量不足 / 训练不充分 | 增大模型、延长训练、降低正则化 |
| 过拟合 | 模型记住训练数据,无法泛化到新数据 | 模型容量>数据量 / 数据噪声 | 增加数据、正则化(Dropout/L1/L2)、早停 |
| 分布偏移 | 训练和测试数据来自不同分布 | 数据采集/环境变化 | 域适应(domain adaptation)、数据增强 |
| 捷径学习 | 模型利用虚假相关性 | 数据中存在混淆变量 | 反事实推理、数据去偏 |
| 灾难性遗忘 | 学习新任务时忘记旧任务 | 连续学习中的稳定性-可塑性困境 | 经验重放、弹性权重巩固(EWC) |
数据量、模型容量与泛化
三者之间存在一个经典关系:数据量决定模型的上限,模型容量决定逼近这个上限的能力。
─────────────────────────────────────► 数据量
│ 欠拟合区 │ 最优区 │ 过拟合区
│ 高偏差 │ 平衡 │ 高方差
└────────────────┴────────────┴────────────────
泛化误差最低点当数据量很小时,增加模型容量会导致过拟合;当数据量很大时,更大容量的模型可以带来更好的泛化(这也是"大模型+大数据"范式的理论基础)。但数据并非"越多越好"——数据的质量、多样性、代表性比纯规模更重要。
数据结构对模型设计的启示
核心命题
数据的结构决定了模型应该具有什么样的结构。
这不是一个抽象哲学命题,而是有具体工程含义的设计原则:
| 数据特性 | 对应的模型设计 | 举例 |
|---|---|---|
| 平移不变性(图像) | 卷积 + 权值共享 | CNN、ResNet |
| 时序因果性(序列) | 自回归、因果掩码 | RNN、GPT |
| 层次结构(语言/图像) | 多层堆叠、下采样/上采样 | U-Net、Transformer |
| 局部性(图像/音频) | 局部感受野 | CNN 的卷积核 |
| 全局依赖(文本/图) | 全局注意力机制 | Transformer、GAT |
| 等变性(旋转/缩放) | 群卷积(Group Conv) | GCN、Spherical CNN |
| 多尺度(自然信号) | 金字塔结构 | FPN、U-Net++ |
统一视角:数据结构作为归纳偏置
所有的模型架构本质上都是对人类先验知识的编码:
- CNN 编码了"空间局部性"和"平移不变性"
- RNN 编码了"时序因果性"
- Transformer 编码了"排列不变性(需位置编码补充)"和"全局依赖"
- GNN 编码了"拓扑邻居性"
当我们为某个任务选择模型时,我们实际上是在问:这个数据模态的先验结构是什么?哪种模型架构的归纳偏置和它最匹配?
数据驱动模型设计的演进
历史上,模型架构和数据之间的关系经历了一个范式转变:
- 手工特征时代(~2012):人类仔细设计特征提取器,数据用于拟合分类器
- 端到端学习时代(2012-2018):模型从原始数据自动学习特征,架构由人类设计
- 基础模型时代(2018-至今):模型架构高度统一(Transformer),数据规模和质量成为核心差异化因素
有趣的是,尽管 Transformer 被设计为"对结构尽可能少的假设"(除了置换不变性+位置编码),但不同的数据模态仍然需要不同的数据预处理和编码策略——这正是 [[03-多模态/03-01-连接与对齐|多模态对齐]] 的核心挑战之一。
一个具体例子:文本 vs. 图像的数据结构如何决定模型
| 维度 | 文本(语言) | 图像(视觉) |
|---|---|---|
| 基础结构 | 离散符号序列 | 连续像素矩阵 |
| 变换敏感性 | 顺序不可逆(置换破坏语义) | 可平移(猫在左边或右边仍是猫) |
| 局部性 | 滑动窗口 n-gram | 局部感受野 |
| 长程依赖 | 关键词可距离很远 | 物体各部位集聚 |
| 语义密度 | 高(每个词有明确的语义) | 低(大部分像素是冗余背景) |
| 典型模型 | Transformer → 语言模型 | CNN / ViT → 视觉模型 |
| 统一趋势 | ViT 将图像分割成"图像词"的序列,用 Transformer 处理 | GPT 将文本建模为"下一个 token 预测",用同样的自回归损失 |
这种对比也解释了为什么 [[04-大模型/04-02-多模态大模型|多模态大模型]] 需要找到一种方式将不同结构的数据映射到共享的表示空间中。
关键概念
| 概念 | 定义 |
|---|---|
| 模态(Modality) | 信息的呈现形式,每种模态有其独特的数据结构和统计特性 |
| 归纳偏置(Inductive Bias) | 模型架构编码的对数据结构的先验假设 |
| 泛化(Generalization) | 模型在未见数据上的表现能力 |
| 过拟合(Overfitting) | 模型记忆训练数据而无法泛化 |
| 分布偏移(Distribution Shift) | 训练集与测试集的数据分布不同 |
| 捷径学习(Shortcut Learning) | 模型学到虚假的相关性而非真正的因果关系 |
| 隐式偏差(Implicit Bias) | 优化过程(如 SGD)自带的选择"简单"解的倾向 |
| 流形假设(Manifold Hypothesis) | 高维数据实际上集中在低维流形上 |
| 自监督学习(Self-Supervised Learning) | 利用数据自身的结构产生监督信号,无需人工标注 |
讨论问题
- 你工作中最常见的数据模态是什么?它的数据结构有什么独特之处?如果你的数据模态换成另一种(比如从文本换成传感器数据),模型架构需要做怎样的调整?
- "过拟合"和"泛化"之间是对立关系吗?请结合具体例子说明你的观点。
- 在当前基础模型范式下,我们应该更关注"获取更多数据"还是"获取更好的数据"?为什么?
- 如果一个 AI 系统在你的领域失败了,你会先怀疑"数据问题"还是"模型问题"?怎么诊断?
- 数据结构决定了模型架构——这种观点是否有例外?你能想到哪些"跨模态架构"成功的例子?
延伸阅读
- 必读:Guide to Data Modalities for AI — Lilian Weng 的数据模态综述
- 推荐:Generalization in Deep Learning — Zhang et al. 关于深度学习中泛化的经典论文,揭示过拟合与泛化的反直觉行为
- 推荐:A Framework for Understanding Data in AI
- 推荐:Shortcut Learning in Deep Neural Networks — 关于捷径学习的综述
- 项目参考:The Data Cards Playbook — Google 的数据文档最佳实践
相关笔记
- [[01-AI导论/01-01-AI导论|AI导论]] — 模态概念的基础介绍
- [[02-基础/02-02-实用AI工具|实用AI工具]] — 数据处理工具链
- [[02-基础/02-03-模型架构|模型架构]] — 模型设计如何响应数据结构
- [[02-基础/02-04-本周阅读|本周阅读]]
- [[03-多模态/03-01-连接与对齐|连接与对齐]] — 跨模态数据结构对齐的核心挑战
- [[03-多模态/03-02-交互与融合|交互与融合]] — 多模态融合中的结构问题
- [[05-人机交互/05-02-人机交互|人机交互]] — AI 系统的安全性与数据偏见
