大模型知识分析、萃取与增强
大模型中蕴含着大量的知识,但是知识的类型、数量和质量并不可控。
知识分析实验表明,大模型自发学到了一些世界知识、常识知识,这些知识隐式地存储于模型参数中。
课程考试复习使用。
1.大模型的知识分析
1.1 知识探测
知识探测:探测预训练语言模型掌握的知识。
实现方式:将三元组或问答对形式的世界知识转化为自然语言填空的形式,从而判断语言模型掌握知识的准确性。
预训练模型知识探测的良好性能主要来源于:
- 提示语偏差,预测结果会受到提示词的影响,如 was born in [Mask] , 模型会猜测下一个词应该为地名。
- 类别指导,类似于few shot learning,模型已经见过类似的问题。
- 答案泄漏,基于上下文的推理。
1.2 知识定位
- 知识定位:分析预训练语言模型中的知识存储机制,可分为层粒度与神经元粒度。
- 大量事实知识存储在FNN模块中。
1.3 知识学习机理分析
分析影响预训练语言模型学习效果的因素。
- 长尾知识:信息出现次数非常少,甚至只出现了一次。LLM对长尾知识的掌握并不充分,回答问题的准确度就会降低,可以通过扩大模型规模(scaling low)、检索增强来解决该问题。
- 共现频率:LLM更加倾向于预测共现频率更高的答案。如,对于问题“加拿大的首都是?”,在预训练语料中,(加拿大,多伦多)共同出现的频率要大于(加拿大,渥太华)出现的频率,于是模型倾向于输出共现频率更高的“多伦多”,而不是正确答案“渥太华”。
- 逆转诅咒,模型很难逆转思考,如 A is B 不能推出 B is A.
2.大模型的知识萃取
知识萃取是指利用特定方式诱导大模型,从中萃取出有用的显式符号化知识。
3.大模型的知识增强
- 幻觉可以分为事实性现象(生成的内容不忠于既定的事实知识)和忠实性幻觉(生成的内容前后冲突)。
- 幻觉消除:清洗训练数据,解码方式改进,指令数据优化,外部知识增强。
- 知识增强:RAG,Fine-tuning。
- 关于幻觉的知识,可以查看文献综述:《Survey on Factuality in Large Language Models: Knowledge, Retrieval and Domain-Specificity》

3.1 RAG
- 检索知识源
- 文档:检索粒度粗,知识覆盖度高,存在冗余信息。
- 知识图谱:提供丰富的结构化信息,受限于图谱的覆盖度。
- 检索方式
- 稀疏检索:简单词汇匹配,缺少上下文理解能力(BM25)
- 稠密检索:将问题和文档编码为稠密向量,计算点积作为相似度(DPR)
- 生成检索:直接使用大模型为问题生成相关文档,而不需要检索库
- 检索时间
- 推理前检索一次:效率高,但相关度低
- 推理过程中自适应地检索:平衡知识和效率,但是难以判断模型何时需要知识
- 推理过程中每隔N个token检索一次:效率低,信息量大
- 利用检索得到的知识进行推理
- 输入增强:使用简单,受限于上下文长度
- 中间增强:需要重新训练模型,支持处理更多文档
- 输出增强:对输出进行后修改,需要两次推理模型:第一次,模型直接输出答案。第二次,根据问题和答案,进行检索,对输出答案进行修改。
- 知识拉锯战:由于错误信息,观点不同,以及知识进化的本质,知识冲突问题广泛存在于检索增强语言模型中。
- 知识冲突形式:
- 模型内部参数化知识和外部非参数化知识之间存在冲突。其中,使用外部知识回答的模型作为专家模型,依靠内部知识回答的模型作为业余模型。
- 非参数化知识中真实、虚假以及无关证据之间存在冲突。其中,通过指令微调,使用真实证据回答的模型作为专家模型,使用虚假证据回答的模型作为业余模型。
- Dunning-Kruger现象:人对于某些欠缺的能力反而会过度自信,对模型也同样适用。
4.大模型的工具增强
- 工具增强:让模型学会使用外部工具,以补充模型相关知识。
- 相关论文:
- Timo Schick, Toolformer: Language Models Can Teach Themselves to Use Tools, NeurIPS 2023。
- Yujia Qin, ToolLLM: Facilitating Large Language Models to Master 16000+ Real-world APIs, ICLR2024。
5.参考资料
中国科学院大学赵军老师 知识工程课程课件
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.