从费曼技巧,到GPT生成式模型的本质

文章探讨了生成式模型如GPT的工作原理与费曼学习技巧之间的相似性,强调两者都涉及学习、反馈、更新和压缩的过程。生成式模型通过预测下一个字符来学习语言模式,而费曼技巧通过教别人来深化自己的理解。两者都强调了知识的无损压缩和泛化能力的重要性,揭示了模型与人类学习过程中的共通之处。
摘要由CSDN通过智能技术生成

生成式语言大模型(Generative Pretraining Transformer简称GPT-LLM)如此火爆,可是它是如何通过学习海量数据变得如此强大? 而生成式模型的训练,和人类学习中常用的”费曼技巧“之间有什么关联? 我们通过将两个似乎无关的概念联系在一起,看看能有什么启发。

先说费曼技巧

费曼的全名叫理查德·费曼。他是非常著名的理论物理学家,“费曼技巧”就是他提出来的一种学习方法。

f92e951092ff542ac836f56954b08500.png

费曼技巧,并不复杂。就是用自己的语言把所学进行重新表述和整合,写作,或是讲给别人听。进而逼迫你自觉,有意识地主动学习。因为如果没有真正理解,必然给别人讲不清楚,别人一问问题,就瞬间蒙圈了。 

费曼技巧通常分成四个步骤:

  1. 学习:选择目标领域,大量阅读,将所有的概念厘清

  2. 反馈:向别人复述讲解,并在其中发现理解的缺点和不足

  3. 更新: 带着刚才的问题继续学习,巩固并复述

  4. 提炼:将问题和答案进行精简,力图准确简洁地表达知识。

表面上你是在教别人,其实你是在以教的方式“逼”自己查漏补缺。

再谈谈生成式大模型

什么是生成式模型?算法工程师面试题里,最常见的问题是:判别式和生成式模型的区别。

从数学上来说,判别模型基于条件概率P(Y|X),即已知X求Y,Y属于多个分类里的一种。 为保证模型的可控输出,它几乎不给算法决策空间,而将其嵌入在具体的业务逻辑中,比如预测点击率,判断贷款逾期。只求结果,难求原因,把模型纯当工具人。

生成式模型则是建模联合概率P(X,Y),可以理解为学习出如何“生成”概率分布P(X,Y)的样本。生成式方法更基本,因为它通过条件就能转化为判别方法, 而反过来则不然,还能生成新的数据,但需要大量的训练数据。典型的例如贝叶斯方法,生成对抗网络(GAN)和GPT等等。

在LLM中,面对海量的无标注文本训练数据,核心就是让模型学一件事:“预测下一个字符(Token)是什么”, 即Next Token Prediction(NTP)。 比如“你是一个好?”,脱口而出“人”。 想想,就这么简单粗暴的任务,迫使模型不断地预测下一个字符,直到输出完整的句子。 好像和小学生摇头晃脑背课文没什么区别。 可是,刨去训练的细节,GPT模型结构本身并不复杂,再加上这么简单的任务,却让大模型学会了跟人闲聊,做游戏,做逻辑推理,有那么令人惊叹的涌现能力! 让人感叹“大道至简”!

d145d4bc6c98112b060bfc63210bf21c.png

GPT本身的模型结构并不复杂

在GPT类模型兴起之前,判别式模型在工业界举足轻重。然而在2022年之后,生成式AI在AIGC和NLP领域火得一塌糊涂。 在算力和数据达到一定规模后,生成式模型似乎瞬间反超,一飞冲天。这里面有什么玄机吗?

两者的共性是什么呢?

生成式大模型通过Next Token Prediction生成内容,而费曼技巧,要点则是高质量的分享和表达出来。尽管深度学习模型和人脑工作方式有巨大的差异,但不妨碍去做类比,将其拆解为四个阶段:

学习:为了获得大量的知识,我们必须查阅大量资料;为了做到逻辑自洽,就必须先自己理解内容。同样的,大模型同样需要阅读万亿级token,高质量的语料对于训练效果至关重要,数据直接决定了上限。

反馈:为了理解概念中的不足,我们把知识和想法给同伴分享。在表达时,会发现自己讲不清楚的地方,或者同伴会提出来很多问题。 同样的,在训练集的Token预测错误时,LLM就会产生交叉熵损失(loss),用于衡量生成文本与真实文本之间的差异。

更新: 为了给别人讲清楚,就必须非常清晰地理解概念,为此我们逐步探查之前思维的漏洞,查漏补缺。同样的,通过NTP的经验风险最小化,反向梯度回传,层层接力,大模型优化模型权重 。反复迭代降低测试集损失,就是模型训练千方百计做的事情。

无损压缩:为了使得回答简洁明快,就必须不断地压缩重构。人是记不住那么多复杂细节的,就必须知道什么是重点,哪些只是枝杈。在人类视角即“抽象”,在机器学习视角即“泛化”。 所谓泛化,就是如何从已经观察到的数据中,了解到关于可观察数据外数据的规律。

在整体上,根据一篇讨论涌现原理的论文[8],模型在训练中也能够分为四个明显阶段:

  • 记忆化(memorization):第一阶段,训练loss迅速下降,而验证loss甚至稍有上涨,主要进行记忆,可类比于学习阶段。 

  • 回路竞争(circuit formation):在训练的第二阶段,模型产生相变,验证集loss和正则化(restricted loss)开始下降。模型开始进入压缩泛化阶段。 可以想象模型在复杂的迷宫中,寻找正确的规律和路径。这一点在下一节会展开。

  • 清理(cleanup): 验证集和评估loss显著降低,压缩关键时期,泛化性大幅度提升,产生所谓涌现性。 

  • 稳定期(stable phrase): 压缩泛化基本结束。

5b8e86dd9bbcc6ab04a68c0effd8e514.png

图来源:论文[8]

读者这里就能看到费曼技巧和生成式模型的联系了:

如果只是简单的判断一个事情的结果,如同判别式模型,如同只需谈论对错,虽然看似很容易,下限却很低,至于为什么这么判断就是黑盒,看似简单快速,可是浮于表面,那些真正重要的,深层次的认知,反而被忽略了。因此,知道的不代表理解,理解不代表领悟,而领悟又不代表行动。 理解的概念形不成通路,就难于发挥应有的作用。

孩子画画,我们写作,给别人分享想法,都是生成的过程。生成和复述看似很难,需要更多的数据和算力,但却提供了高得多的上限。为什么生成式方法弯道超车,是因为上限高,才能获得涌现的能力。

但笔者认为,GPT生成式方法的关键问题之一,在本文的下一部分。

那为什么要强调无损?

2023年2月28日,OpenAI 的核心研发人员 Jack Rae在一次斯坦福的分享[7]中提出两个重要的观点: 压缩即智能,而LLM的NTP本质就是做无损压缩。 越聪明,你需要记住的东西就越少。 

聪明的你肯定会问,所谓的“学习-反馈-更新-压缩”循环,判别式模型也是有的啊? 生成式模型的关键区别在哪里呢? 其关键在于“无损”。 Next Token Prediction看似简单,但是却可以用压缩理论完美地解释,要想NTP学得好,就必须无损!  同时,压缩理论也印证了,为什么 BERT 的 “预测中间词” 从最终应用效果上比不上 GPT 系列始终坚持的“预测下一个词”[7]+ 自回归。  

那为什么BERT的MLM就不是无损压缩呢?这个问题太难了。一方面它不像GPT的NTP负对数求和那样有漂亮的理论解释; 同时笔者猜测,MLM能看到序列的两边,是双向的,其任务难度还是要比“单向的,只能看到前面,自回归且能对句子建模”的GPT容易很多。“风浪越大,鱼越贵”。

什么是无损?为什么强调无损? 就是必须发现其本质的规律,有损方法千千万,而无损规律屈指可数。如果规律稍微有错,是不可能做到无损压缩的! 

  • Huffman编码是无损压缩,因为它已经先验的知道了每个n-gram的频率,并将这种频次组成了二叉树。树构造得稍有不对,结果全错。

  • 42+10=52, 41-32=9, 12+3=15... 在较少的存储单元下,还能记住海量类似这样的式子的结果,就必须知道四则运算的定义,并真正透彻的理解它,否则结果全错。

  • Python,C#,JAVA代码数亿行。而关键的语法规则,却只有几页纸。一个NB的程序员,看一小会儿几百个文件的框架代码,就能基本实现出来。这也是基本上是无损压缩! 

  • 各行各业的知识与概念,不同个体的情感模式,但总能抽象出基本规律。“大道至简”四个字描述了多少道理。只要摸透了网文小说的模式,再写一个类似的轻轻松松。

从上面的四个例子,逐级递进。可见规律是有层级的,越是本质的规律,其压缩和泛化能力越强!

同样的,根据目前论文[9]的一些研究,大模型底层更多是多语义神经元,阐述多样性和细节,分配给不重要特征。上层是单语义神经元,强调抽象性和压缩,如前文提到的加减法。 为了让模型尽快地降低loss, 模型倾向于将最重要的特征分配给单语义神经元, 模型必须“强迫”自己学到最本质的规律。 当然,为什么现在大模型依然在常识问题上漏洞百出,因为它还没达到理想的“无损压缩”。

我们收获了什么?

生成式大模型对我们的学习工作有什么启发吗?这里的关键就是:分享和压缩。 为了获得自身和他人的反馈并及时修正,就需要分享,如写作或讲述,即"NTP"; 而语言本身有长度限制,我们也无法记住那么多细节,那就必须压缩和提炼,从中我们发现了概念间的联系,进一步深挖其本质。真正理解,才是创新创造的基础。

因此,写作YYDS!GPT YYDS! 

最后的一些个人碎碎念:有这个想法,不代表会写这个文章。虽然我可以用三秒钟判别式地回答: 生成式模型和费曼技巧有联系!但这是一定肤浅的。

为了"生成"这篇文章,我不得不反复阅读了所有的参考文献,意识到了大量之前有所忽略的问题, 试图找出它们内在的关系,并思考怎么更好地表达,删除那些复杂的公式,让没有背景的人也能理解核心观念,前前后后花了20个小时。

但本文依然是非常肤浅的。因为大模型的原理,到现在我都只是研究了个皮毛,也是笔者特别感兴趣的方向,后续会再写一系列文章。  这里会包含:

  • 大模型中的回路竞争策略[3]究竟如何? 不同于MOE的专家选择层,复杂模型中其策略函数究竟如何? 一旦能搞清楚,就能更好地指导prompts的设计,帮助大模型实现稀疏化,甚至“缓存”执行上下文,避免ICL(in context learning)重启后需要重新学习。

  • 大模型运行原理和图灵机和CPU的区别?CPU通过缓存和内存实现堆栈,通过PC(指令计数器)指定下一步执行位置,而大模型ICL中的运行时信息,是存储在模型何处呢?又如何控制大模型实现循环,递归,和回退等概念呢? 

  • 涌现的本质是什么? 它有哪些的必要条件?

  • 通信领域的信道编码,也是去做无损压缩。而新一代的信道编码则会考虑语义,即语义通信。 因此“压缩即智能”,在AI领域可能如醍醐灌顶,但在通信界可能接受度已经很高了。大模型会在语义通信中起到怎样的作用呢?

关于写作,沙漠君还有之前的一些文章:

写作如烧烤

千万别把知识付费当饭吃

深度工作:充分使用每一份脑力

参考文献

[1] Dissecting Recall of Factual Associations in Auto-Regressive Language Models [2] Language models can explain neurons in language models [3]:  世界的参数倒影:为何GPT通过Next Token Prediction可以产生智能 https://zhuanlan.zhihu.com/p/632795115

[4] In-context Learning and Induction Heads [5] OpenAI前核心员工揭开注意力头协同工作机理,破解Transformer https://hub.baai.ac.cn/view/23587

[6] Emergent Abilities of Large Language Models

[7] Compression for AGI - Jack Rae | Stanford MLSys #76 [https://www.youtube.com/@StanfordMLSysSeminars]

[8] PROGRESS MEASURES FOR GROKKING VIA MECHANISTIC INTERPRETABILITY 

[9] Toy Models of Superposition 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值