多模态大模型技术原理和实战
前言与导读
书籍定位与读者群
写作目标(本书想解决的痛点)
本书会讲什么(Scope)
1) 统一的模型主线:Transformer → LLM → MLLM
2) 统一的训练主线:预训练 → 指令化 → 对齐 → 推理部署
3) 统一的工程主线:可控、可验证、可迭代
本书不讲什么(Non-goals)
适合谁读
阅读方式(建议路线)
方式 A:从“模型原理”一路读到“上线”
方式 B:按“你要解决的问题”跳读
章节质量声明(你如何判断“这一章值得信任”)
工程与研究结合的重要性
为什么大模型更需要“工程 × 研究”闭环?
1) 成本巨大:你无法靠试错“碰出来”
2) 失败模式多:指标提升并不等于可用
3) 系统即模型:推理栈会改变模型行为
一个可落地的工作流:把“研究问题”工程化
1) 明确问题定义(Definition)
2) 明确评测与失败标准(Evaluation)
3) 拆解成系统闭环(System Loop)
常见误区(非常容易踩坑)
误区 1:把“不可验证”的任务当作监督学习
误区 2:只追单一指标,忽略行为约束
误区 3:把推理性能当作“部署后再优化”
工程视角的“严谨性”:你需要哪些证据?
最小工程清单(建议作为章节/项目模板)
本章小结
第一部分:基础理论与背景
大模型概述
什么是大模型(Large Model / LLM)
你需要抓住的 3 个关键词
常见误解
大模型的发展历程
1) 预训练时代:从词向量到 Transformer
2) 规模化时代:Scaling Law 与通用能力
3) 指令化与对齐:从“会续写”到“可对话”
大模型的能力与局限
能力:为什么 LLM “看起来很通用”
局限:你必须显式防范的 5 类风险
一个工程视角的检查清单
多模态大模型简介
应用场景概览
低风险、可容错(优先落地)
中风险、需要校验(需要系统化)
高风险(强约束 + 人在回路)
本章小结
深度学习基础回顾
神经网络基础
线性层、非线性与表示能力
损失函数与训练信号
前向传播与反向传播
前向传播:从输入到损失
反向传播:链式法则 + 计算图
激活函数、正则化、优化器
激活函数:为什么 LLM 常用 GELU/SiLU
正则化:不要只想到 dropout
优化器:SGD → Adam → AdamW
常用深度学习框架介绍(PyTorch / TensorFlow)
GPU / 分布式训练基础
GPU:你真正需要理解的 3 件事
分布式:从数据并行到混合并行
本章小结
多模态基础
什么是多模态数据
多模态数据表示
连续表征:encoder 输出向量/序列
离散 token 化:把模态变成“可语言化”的符号
表示学习的目标:对齐与可分性
多模态融合方法
早期融合(Early Fusion)
晚期融合(Late Fusion)
交互式融合(Cross-Attention / Co-Attention)
多模态任务类型
工程落地:你需要优先解决的 4 个问题
本章小结
第二部分:核心模型架构
Transformer 架构详解
Transformer 的最小结构图
为什么 Attention 有效:一句话直觉
工程视角:Transformer 的关键瓶颈
📖 详细章节
Attention 机制
直觉:在做什么?
为什么要除以 (\sqrt{d_k})?
Mask:Transformer “自回归”的关键
复杂度:为什么推理会卡?
工程要点(你写代码时会踩的坑)
自注意力(Self-Attention)
Self-Attention 与“信息混合”
Causal Self-Attention(Decoder-only 的核心)
训练 vs 推理:为何 KV Cache 必不可少
多头注意力(Multi-Head Attention)
为什么多头有效:一个工程直觉
实现要点:QKV 打包与 reshape
注意:多头不是“越多越好”
Grouped-Query Attention(GQA)与 Multi-Query Attention(MQA)
前馈网络(FFN / MLP)
现代 LLM 常用的变体:SwiGLU / GeGLU
宽度(hidden size)为什么通常比 d 大?
工程优化点
LayerNorm 与残差连接
残差连接(Residual Connection)
LayerNorm(LN)
RMSNorm
工程细节:数值与性能
绝对位置编码
前言
公式
初衷
关键点
代码
RoPE 与 ALiBi(位置编码的两条主线)
RoPE:把位置变成“旋转”
ALiBi:在 logits 上加距离偏置
RoPE vs ALiBi:怎么选?
KV Cache 原理
为什么会慢:从“每步重算”说起
KV Cache 的做法
KV Cache 的代价:显存与带宽
常见工程优化
与“并发/吞吐/延迟”的关系
大模型架构设计
Decoder-only、Encoder-only、Encoder-Decoder 架构
Encoder-only(BERT 系):理解为主
Encoder-Decoder(T5 系):条件生成
Decoder-only(GPT 系):统一的生成接口
模型规模与参数量对比
参数量的粗估(以 Decoder-only Transformer 为例)
训练计算量(FLOPs)
激活/参数稀疏化与高效推理
参数稀疏化:MoE(Mixture of Experts)
激活稀疏化与结构化稀疏
Tokenization 与词表设计
BPE / SentencePiece 的核心直觉
工程建议
本章小结
多模态大模型架构
单塔 vs 双塔结构
双塔(Two-tower / Dual-encoder)
单塔(Single-tower / Unified)
融合策略
Cross-Attention
Co-Attention
多模态预训练任务
Masked Language Modeling
Image-Text Contrastive Learning
Vision-Language Generation
多模态理解 vs 多模态生成:目标、训练与评测的差异
多模态理解(Understanding):更强调“可验证的正确性”
多模态生成(Generation):更强调“表达能力与一致性”
一个工程结论:理解优先“结构化 + 可验证”,生成优先“证据化 + 可控”
典型模型案例
CLIP / BLIP / Flamingo
Qwen-VL 系列
InterVL 系列
DeepSeek 系列
本章小结
第三部分:训练方法与优化
数据准备与处理
多模态数据集收集
数据源类型
合规与隐私(必须前置)
数据清洗与标注
清洗:先解决“明显坏数据”
标注:把“任务定义”显式化
数据增强策略
图像增强
文本增强
对齐数据增强
Tokenization 与 Feature Extraction
文本端:tokenization 决定成本上限
视觉端:从像素到视觉 token
缓存与离线特征
工程检查清单(上线前逐条过)
本章小结
大规模训练技术
分布式训练基础
数据并行
模型并行
张量并行(Tensor Parallel, TP)
参数/状态分片(ZeRO / FSDP)
流水线并行
混合精度训练(FP16 / BF16)
FP16 vs BF16
Loss Scaling(主要针对 FP16)
梯度累积与梯度检查点
梯度累积(Gradient Accumulation)
梯度检查点(Activation Checkpointing)
超参数调优
工程落地建议:如何选并行策略(简化版决策树)
本章小结
强化学习与指令调优
指令微调 (Instruction Fine-Tuning, SFT)
1) 问题形式:把任务统一成条件生成
2) 数据:决定“助手长什么样”
3) 工程配方要点(最常见的坑)
强化学习策略
PPO 原理
1) 基本对象:policy / ref / reward
2) 目标:带 KL 正则的策略优化
3) PPO 的 clipped objective:限制每步更新幅度
4) 优势函数(Advantage):奖励如何分配到 token?
5) 工程实现要点(决定成败)
GRPO 原理
GRPO(Group Relative Policy Optimization)理解
Reward 模型与评价指标
1) Reward 的来源
2) 偏好数据与 RM 训练要点
3) 指标体系:离线与在线要区分
4) 一个实用原则:把“质量”拆成可审计子项
安全性与偏差控制
1) 安全对齐的基本策略
2) 偏差与公平性:不要只靠“过滤数据”
3) 安全上线清单(推荐最小集合)
本章小结
高效推理与部署
量化与剪枝
量化:最常见、性价比最高
剪枝:更依赖结构化与硬件支持
KV Cache、Attention 优化
KV Cache:decode 阶段的核心
FlashAttention:提升带宽利用率
GQA/MQA:降低 KV cache 体积
多模态推理优化策略
GPU / CPU / 推理加速库
GPU 推理
CPU 推理
你该如何选推理框架
推理框架:vLLM(原理与使用)
vLLM:原理与使用
1. 为什么 vLLM 能跑得快:问题从 KV Cache 说起
2. 核心原理一:Paged KV Cache(PagedAttention)
3. 核心原理二:Continuous Batching(持续动态拼 batch)
4. 使用方式(最常见三种)
5. 关键配置与调参(工程角度)
6. 常见坑位(你很可能会遇到)
本章小结
API 封装与部署方案
最小可用的服务组件
本章小结
第四部分:多模态应用与实战
证据化多模态 RAG
1. 任务定义
2. 系统设计(推荐架构)
3. 数据与预处理
PDF 解析
索引粒度建议
4. 模型与模块选型
5. 评测指标(强烈建议)
6. 常见失败模式与修复
7. 最小可复现 Demo(建议)
结构化抽取(表单 → JSON)
1. 任务定义
2. 系统设计(推荐流水线)
3. 模型与方法选择
4. 评测与验收
5. 常见坑位
6. 最小可复现 Demo(建议)
图文检索(CLIP)
1. 任务定义
2. 系统架构
3. 训练/微调(可选)
4. 评测指标
5. 常见工程坑位
指令式图像编辑
1. 任务定义
2. 系统架构(推荐)
3. 模型选择(工程可落地)
4. 评测指标(必须可验证)
5. 常见失败模式
6. 最小可复现 Demo(建议)
视频摘要系统
1. 任务定义
2. 系统设计(推荐三阶段)
3. 评测指标
4. 常见坑位
5. 最小可复现 Demo(建议)
随笔(阅读笔记 / 日常思考,与本书主线不直接相关)
随笔
2026.01.15
2026.01.05
端到端模型是否适合医疗医嘱生成
第一个致命问题:医嘱不是一个“函数值”
医嘱不是唯一解
医学决策是一个“多解、偏好、风险权衡问题”
第二个致命问题:医嘱的因果方向是反的
数据中的医嘱 ≠ 最优医嘱
端到端模型在学什么?
更糟糕的:confounding(混杂)
第三个致命问题:Reward 无法端到端定义
医疗没有“即时 reward”
端到端 LLM 的隐性 reward 是什么?
第四个致命问题:端到端模型天然不可控
无法插入“硬约束”
无法审计、无法追责
第五个致命问题:分布外(OOD)是常态,而不是例外
为什么“分层 / 非端到端”反而是正解?
一个反直觉但重要的观点
怎么做(工程落地原则)
多模态大模型技术原理和实战
索引
索引