1934 words
10 minutes
大模型技术知识点 3
大模型的一些应知知识点。
16. SFT 训练到什么程度,才适合做 RL?
- SFT 训练的是模型补充文本的基础能力 (token-level),RL 训练的是模型在特定任务上的表现能力 (sequence-level)。
- RL 的训练需要有正向奖励,当模型本身的基础能力不足时,模型可能只能得到负向反馈,导致 RL 训练效果不佳。
- RL 的好处在于不需要大量人工标注的数据,只需要给出人类的偏好反馈即可进行训练。
- 当模型具有稳定的指令跟随能力和较好的生成质量时,就可以考虑使用 RL 进行进一步优化。
- 如果模型对一个 prompt 采样出来的回答 reward 分布已经相对均匀 (不是都是低分负反馈),同时接下来的训练目标是在多个候选答案中选优,而不是让模型的回答遵循固定的格式,当算力允许时 (RL 通常需要 2~4 倍 SFT 的算力),就可以考虑使用 RL 进行训练。
17. 在什么场景下,传统的 RAG 已经不够用了,必须要用上 GraphRAG?
- 传统 RAG (Vector-based): 擅长语义相似度匹配。比如问“苹果公司的财报”,它能找到包含“苹果”、“财报”、“收入”等词义相近的片段。
- 痛点: 它是“断章取义”的。如果答案分散在三篇不同的文档里,需要通过逻辑串联才能得出,传统 RAG 往往只能返回这三个片段,让大模型去“猜”关系,容易幻觉或遗漏。
- GraphRAG (Knowledge Graph-based): 擅长结构化推理和全局理解。它先构建图谱(实体+关系),检索时不仅看语义,还走“路径”。
- 优势: 它能发现“隐藏连接”。比如 A 公司投资了 B,B 公司的 CEO 是 C,C 曾就读于 D 大学。传统 RAG 很难一次性把这条链找全,但 GraphRAG 可以通过图遍历直接锁定这条路径。
当应用场景出现以下特征时,传统 RAG 通常不够用,必须引入 GraphRAG:
场景一:多跳推理查询 (Multi-hop Reasoning)
- 问题示例: “哪些由‘红杉资本’投资的‘人工智能’公司,其创始人在‘斯坦福大学’读过书,且该公司在 2024 年有过并购行为?”
- 传统 RAG 表现: 可能会分别搜到“红杉投资列表”、“斯坦福校友名单”、“2024 并购新闻”,但很难将这三者精准交集在一起,因为它不知道这些碎片属于同一个实体链条。
- GraphRAG 表现: 直接在图谱上执行多跳查询(Red Sequoia -> invests -> AI Company -> founded by -> Person -> educated at -> Stanford AND Company -> acquired -> 2024)。这是图数据库的强项。
场景二:全局性/宏观总结查询 (Global Understanding)
- 问题示例: “这份包含 10,000 份警方笔录的数据集中,主要的犯罪团伙结构是怎样的?他们之间的核心联系纽带是什么?”
- 传统 RAG 表现: 只能返回几个最相似的笔录片段。它无法回答“整体结构”或“主要趋势”,因为它没有全局视图(Global View)。
- GraphRAG 表现: 利用你提到的局部 Summary (Community Summaries) 机制。GraphRAG 会将图谱聚类成不同的社区(Community),为每个社区生成摘要。回答宏观问题时,它直接调用这些高层级的摘要,而不是去读原始的 10,000 个片段。这是 Microsoft GraphRAG 论文中最核心的创新点之一。
场景三:实体消歧与精确关系查找
- 问题示例: “马斯克 (Elon Musk) 和 马斯克 (Justine Musk) 现在的关系状态及其共同涉及的商业实体有哪些?”
- 传统 RAG 表现: 容易混淆同名实体,或者因为文本中只写了“马斯克”而无法区分指代谁,导致检索出大量无关信息。
- GraphRAG 表现: 在构建图谱阶段就已经完成了实体解析 (Entity Resolution),明确了两个不同的节点。查询时直接定位到特定节点及其边,精度极高。
场景四:动态更新与溯源要求极高的场景
- 问题示例: 金融风控、法律案件分析、医疗药物相互作用。
- 需求: 不仅需要答案,还需要清晰的证据链。
- GraphRAG 表现: 可以清晰地展示推理路径(Path),告诉用户:“结论是基于 A->B->C 这条关系链得出的”,可信度远高于传统 RAG 的“基于相似度匹配的几段文字”。
虽然 GraphRAG 在上述场景无敌,但并不是所有场景都要用它,因为它的成本较高:
- 构建成本高: 需要额外的 LLM 调用次数来抽取实体、关系和生成社区摘要。索引构建时间比传统 RAG 慢得多(可能是几十倍)。
- 实时性挑战: 如果数据每秒都在变,维护一个实时的知识图谱比更新向量索引要复杂得多(尽管增量更新技术正在进步)。
- 简单问答杀鸡用牛刀: 如果用户只是问“文档里关于‘休假政策’是怎么说的?”,传统 RAG 响应更快、成本更低,效果也足够好。
目前业界的主流架构往往是 Hybrid RAG (混合模式):同时保留向量索引和图索引,根据问题的复杂度路由到不同的检索路径,或者将两者的结果进行重排序 (Re-ranking),以兼顾成本和效果。
18. 为什么大部分神经网路模型都有升维降维操作?为什么升维通常是升到原来维度的 4 倍?
升维的本质是为了增强模型的自由度和表达能力。通过将特征投影到更高维的空间,模型可以:
- 学习更复杂的特征组合
- 捕捉更丰富的非线性关系
- 类似于传统 MLP 中扩展隐藏层以增强模型容量的思路
降维的目的
- 保持残差连接的维度一致性:Transformer 中有残差连接(Residual Connection),输入和输出维度必须相同才能相加
- 控制计算复杂度:避免维度爆炸,让模型可以堆叠更多层
- 信息压缩与提炼:将高维空间中学习到的特征重新投影回原始空间,供下一层使用
为什么通常是 4 倍?
| 原因 | 解释 |
|---|---|
| 激活函数导致的秩损失 | 使用 ReLU/GELU 等激活函数时,部分神经元会输出 0,导致矩阵降秩。研究表明,为了保证降维后矩阵秩不低于输入维度,中间维度需要至少是输入的 2 倍以上,4 倍是经验上的安全值 |
| 表达力与效率的平衡 | 2 倍可能不够充分,8 倍计算成本太高,4 倍是在模型容量和计算开销之间的经验最优解 |
| 历史沿袭 | 原始 Transformer 论文(Attention Is All You Need, 2017)设定为 4 倍,后续模型(BERT、GPT 系列等)沿用这一设计,成为行业惯例 |
值得注意的是,4 倍并不是绝对标准,最新模型有不同设计:
| 模型 | FFN 维度比例 | 说明 |
|---|---|---|
| 原始 Transformer | 4× | 确立基本架构 |
| BERT | 4× | 使用 GELU 替代 ReLU |
| LLaMA | 8/3 × 2 (约 5.3×) | 使用 SwiGLU 激活函数,更高效的维度利用 |
| GPT-4 | MoE 架构 | 多个专家网络,极大增加容量 |
| 某些高效模型 | 2×~3× | 在资源受限场景下压缩维度 |

