大语言模型如何学习和提取知识?

导读: 我们都知道,大语言模型 (LLM) 就像一个拥有海量知识的超级大脑,可以回答各种问题,例如“林肯的生日是什么时候?”。但它们真的是通过学习维基百科等知识库来回答这些问题吗?还是仅仅在训练过程中见过类似的问题,从而“作弊”得出答案呢?

这篇文章将深入探讨大语言模型是如何记忆提取知识的。我们将使用一个精心设计的人物传记数据集,并借助探针技术来揭示模型内部的知识表示和提取机制。

核心内容:

1. 混合训练≠真正的知识提取

我们首先尝试将人物传记和问答 (QA) 数据混合在一起训练模型。结果发现,模型能够回答关于未在训练集中出现过的人物的问题,但这更像是一种“应试教育”,模型只是学会了从问答数据中找到答案,而没有真正理解传记中的知识。

2-3. 指令微调无法保证知识提取 (除非数据增强)

接下来,我们只用人物传记预训练模型,然后使用部分人物的问答数据进行指令微调。结果发现,无论模型大小、预训练时间或微调参数如何,模型都难以回答关于其他人物的问题。

然而,如果在预训练数据中进行知识增强,例如改变写作风格或打乱句子顺序,模型的准确率就会显著提高。这表明预训练数据的多样性对于模型的知识提取能力至关重要。

4-5. 探针技术揭示模型内部机制

为了理解上述现象的原因,我们引入了位置探针 (P-probing)查询探针 (Q-probing) 技术来分析模型的隐藏状态。

结果发现,知识增强会促使模型将一个人的知识线性编码到该人物姓名对应的隐藏嵌入中。如果没有知识增强,模型会将知识分散编码到传记中的所有单词/标记中,这使得知识提取变得非常困难,甚至不可能。

6. “名人”数据可以帮助“少数群体”

即使只对一部分人物(例如拥有丰富在线传记信息的“名人”)进行知识增强,其他人物(没有知识增强)的测试准确率也会显著提高。这表明在预训练数据中包含名人数据可以提高模型对少数群体的知识提取能力。

7. 双向模型难以提取知识

最后,我们还研究了 BERT 等双向模型的知识提取能力。结果发现,除非知识是单个词或多个独立的词(如出生月、日、年),否则即使进行知识增强,双向模型也难以在预训练后提取知识。

结论:

这项研究表明,预训练数据的多样性对大语言模型的知识存储和提取能力至关重要。

对实践的启示:

  1. 在预训练阶段对重要但 infrequent 的数据进行改写 (增强),例如使用 ChatGPT、Llama-7B 或更小的辅助模型进行改写。

  2. 在预训练阶段加入更多指令微调数据,以帮助模型更有效地编码知识。

局限性和未来方向:

本研究使用了人工生成的传记数据集,未来的研究可以探索更真实的数据集。此外,我们只研究了事实性知识的提取,未来可以进一步研究模型对其他类型知识(例如程序性知识、概念性知识)的存储和提取能力。

读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉大模型视频和PDF合集👈

观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员二飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值