目录
什么是LLM
原视频链接:https://www.youtube.com/watch?v=zjkBMFhNj_g
公众号文章:https://mp.weixin.qq.com/s/KdcJx6b-_flXdobpZXNzIQ
Large Language Model(大语言模型)
本质上由两部分组成:参数+执行程序
预训练阶段
参数怎么来
以LLAMA 270B为例
互联网抓取10TB文本数据,使用GPU集群,大约6000块GPU,花费12天时间,花费200万美元,可以生成140GB的参数文件,这个文件就是模型
由于10TB压缩到140GB(压缩比例大约是100:1),可以类比为zip压缩,但是zip是无损压缩,而这里是有损压缩
这个压缩文件内部的参数就是知识,是模型对于10TB数据的理解,有了这些内容,模型就可以工作了
如何运转
本质上就是一个预测下一个词的工具,你给AI一些连续的单词(问题句子),他来持续预测接下来要出现的一系列单词(回答句子)
需要注意的是,由于前面提到训练是一种有损压缩,神经网络给出的东西是不能保证100%准确的
AI生成的本质是通过模型参数来预测下一个要出现的词,这里有一个幻觉的问题,有可能生成的是符合语法规则看上去特别像正确答案的东西,但是不是真实存在的,例如生成一个ISBN书号、或者一个http网页链接,很有可能是不存在的
参数是什么
参数的本质就是知识,上面提到了本质是预测下一个词,如果模型本身没有正确的知识,那预测出来的词只能是看上去像人类的语言,但是语言的内容是杜撰的(幻觉)
下图中是维基百科一个页面,红色标记的词汇可以理解为知识,也就是包含了重要信息的词,例如页面中Ruth这个人的出生死亡日期、她的职业、做的事情等,模型必须把这些关键的词压缩到最终的模型中,才有可能生成正确的关于Ruth的回答内容
生成的过程
学了什么内容,就能生成类似的内容,下图中左侧是一个Java代码,中间像是一段亚马逊图书的信息,右侧像是一个维基百科页面
如果没有上面提到的正确的知识,生成的内容只能是像正确答案样式的杜撰信息,也就是一本正经的胡说八道
关于详细工作原理的说明
微调阶段
微调的目的
上一个阶段可以整体称作预训练,特点是使用的数据量比较大,且知识内容宽泛,缺乏特定领域或任务的细节数据,预训练的目的是给模型建立整体知识的世界观
如果想要完成特定领域的任务,就要进行第二阶段的微调(Fine Tuning),这个过程需要的数据量就没有第一阶段那么多,但是会更聚焦且准确
一般需要通过标注团队提供准确的问答内容预料,进行微调阶段的训练
整体过程
总体来说:第一阶段预训练,由大型企业来完成,一般几个月或一年更新一次,费用大约是几百万美金;第二阶段微调,这个可以1天或几天就完成,费用也大大降低,创业公司或小型公司也可以负担的起
下图是一个相对完整的训练过程
优化时做选择题而不是问答题
微调阶段雇佣人员协助准确完备的问题是好的,但是直接写问答这个过程对于现实执行是困难的,但是人来给两个不同的答案打标签,这个过程就更容易执行
这个阶段有个更好的做法是人机配合产生不同的答案,再由标注人员来标注更优的答案
模型评分
可预期的结果
未来展望
两套思考系统
人类有两套思考系统:系统一快思考,主要是应用在日常大多数情况下,更多的是本能、条件反射等;系统二是慢思考,更理性,花费更多时间和精力进行推理
比如在下国际象棋比赛时,人的思考方式就是系统二,大脑会花费更多的时间构建多种可能性,然后再做决策
而当前的大模型工作方式,是以系统一的模式在运行,如下图修建铁路的狗狗一样