热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >知识注入(一)

知识注入(一)

来源:互联网 更新时间:2026-07-30 13:48

写在前面

知识注入(一)

上篇文章介绍了垂类场景下RAG的目标与面临的挑战,同时指出知识注入在这个领域的重要性。没有读过前文的,可以翻回去看看。简单来说,后续的工作重点就是围绕知识注入展开的——这里所说的知识注入,特指知识定义类的学习(也有人叫它元知识学习、模型编辑,叫法不同,但核心一致),后续不再赘述。

解决方案思考

要让模型学会指定知识,从方法链条上梳理,大致有以下三类可能的路径:

  1. 从头训练一个大模型

    ,并把垂类知识嵌入其中。但问题是:如果这类定义知识数量很少(垂类领域里这类知识占比往往不高),数据不够用,这就变成了小样本学习范畴。反过来,如果数据足够多,这自然是一个可行的方案。
  2. 微调

    ,比如LoRA、Adapter等方法,正好对应方法一里提到的小样本学习场景。
  3. 知识引出与应用

    :如果垂类的深度没那么深,其实很多所谓的垂类数据早已被包含在预训练数据集里了。那么问题就变成了——如何把这些知识“引出来”,或者用在比较、过滤等环节中。

目前只想到这三类,如果读者有其他思路,欢迎补充。

部分方案尝试

在Qwen-7B上试了LoRA微调。知识定义类微调数据的构建形式如下:

// 直接定义描述
{
  "question": "介绍一下关于xx的信息",
  "answer": "xx是..."
}
// 测试的问题类似为:
{
  "test_question": "如果遇到xx的情况,能用哪些信息用来辅助"
}

除了直接描述,还试了多种数据构建方式,比如把问题写成定义知识的描述、举例说明等。核心标准是:测试问题是定义知识的泛化延伸。结果?效果远不及预期。私下反思,是LoRA方法本身的局限性,还是用法不对?如果读者有类似经验,不妨聊聊。

这一轮尝试后,开始埋头找资料,接下来要说的这篇微软论文值得精读。

论文解读

论文标题:Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMs

论文中有几个观点特别有启发:

If a model knows a fact, it can accurately and consistently answer questions about it. Furthermore, it can reliably distinguish between true and false statements related to this fact. We can then extend this definition to a whole knowledge base, not just a single fact.

如果一个模型真正“知道”一个事实,就能准确、一致地回答相关问题,还能可靠地区分与此事实相关的真假陈述。这个定义可以扩展到整个知识库,而不仅是单个事实。

One important distinction to make is between knowledge that the model has been exposed to before during pre-training as opposed to entirely new facts. Considering the size of modern LLM training sets, they cover a vast amount of information a vailable through web-sourced text. ...

关键区别在于:模型在预训练时就已经接触过的知识 vs. 完全新的事实。现代大模型训练集的规模巨大,覆盖了大量网络文本信息。因此,即便在小众领域,知识注入的目标不一定是教给模型全新事实,更多是通过诱导模型偏向特定领域来“刷新”它的记忆。这和我方案三的思考高度一致。

Instruction tuning has been shown to be very effective at improving the overall quality of the model, with a particular emphasis on its zero-shot and reasoning capabilities. However, despite these advantages, instruction tuning does not necessarily teach the model new knowledge...

指令调优在提升模型整体质量、零样本能力和推理能力方面很有效,但并不会真正教会模型新知识。所以单靠指令调优解决知识注入问题并不可行。论文还否定了RLHF、DPO、PPO这些路线。筛选下来,可选的路径已经很窄了。

看到这里,剩下来能尝试的似乎只有继续预训练了(对应之前方案一)。需要提醒的是,做这个探索的根本目的是提高检索质量、辅助检索器进行检索。最终环节会用大参数模型(比如GPT、Qwen-72B)作为RAG回答基座,而用小参数模型去辅助检索器——比如告诉检索器应该从哪些方面检索。

举个例子:

问题:我想知道牛奶A和牛奶B的区别是什么?

现有检索器处理query时,只会围绕“牛奶A”“牛奶B”“区别”这些词做权重、同义词扩展(比如牛奶A也叫牛奶AAA,区别还有差别),是词层面的扩展,而非语义扩展。如果恰好有篇文章介绍了二者的差别,最后生成质量取决于那篇文章的质量(而人性化文章往往带有主观偏向且质量不保证);如果没有类似文章,结果堪忧。

期望的效果是:让模型提前学习牛奶A、B的数据,然后告诉检索器去检索价格、产地等信息。如果真能实现这一步,会重塑现有搜索方式。

回到论文数据:微调后的模型在直接回答问题上总体优于base模型。那么关键就剩一个点:微调模型在检索指导上的收益指标具体是多少?这个收益会最终影响整体效果。接下来就是做实验验证。

这次梳理出的方案是继续预训练。下一篇文章会从知识编辑的角度探索可能的解决方案。等知识编辑梳理清楚后,再从可行方案中挑一个进行实验。

关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc