推荐《安克创新访谈》,谈大模型的未来和应用

柏舟   新冠5年 07-02

这个视频是老石谈芯访谈安克创新的CEO——阳萌的视频。刷B站偶然看到的,非常精彩。

访谈概要

机器学习范式转变:从分治到端到端

阳萌首先回顾了机器学习范式的转变,他总结道,过去我们解决问题主要是通过分治法,将一个大的问题分解成一个个小的子问题,然后一个个解决。但是事物之前有一些隐性的连接,就会导致问题数量极度膨胀,随着问题的细化,需要越来越多的工程师解决各个子问题。这最终导致在开始的时候,问题能够较好的解决,但是到达一定程度之后,精度难以提升。是不是从方法论上就走了弯路?

而目前大语言模型(LLM)是一个完全端到端的模型,没有对中间过程进行分解,而是使用模型和数据训练解决。他提到LLM的实现与GPU硬件的出现是紧密相关的,正是由于GPU的快速发展和互联网几十年数据的积累,才成功实现LLM。

但是GPU是一个好的架构吗?过去的冯诺依曼架构区分了逻辑处理器和存储器,是一种分治的思路,也适合解决分治的问题(特别是if和else)。但是对于神经网络,800亿参数一个都不能少,它是一种端到端的思路。目前的LLM仍在冯诺依曼架构上训练和部署,所以LLM只是一个中间形态,它必须分别训练和部署,使用能耗很高,效果也不佳。从仿生的角度看,未来的模型和计算应该更加贴近人脑,从硬件上支持存算训一体的模型,能够不断根据输入进化。

但是阳萌非常反对存算训一体的模型,因为目前大模型的部署需要大量团队花长时间的对齐,否则模型具有攻击性,难以满足合规要求。(就我了解目前主流的实践是使用GAN的方式生成文本进行清洗)。但是对于存算训一体的模型自我进化是完全不可控的,可能真的会出现机器觉醒。

大模型的未来

接下来在第二个视频中讨论了大模型的未来。首先是大模型目前在通用领域拥有较强的能力,但是在专有领域能力很弱,目前学界主要有以下的解决思路:

  1. 重新训练:使用领域知识重新训练模型。(由于硬件的限制基本不可行)
  2. 微调:在已有的模型基础上使用领域知识微调。(有灾难性遗忘的问题)
  3. RAG:建立外挂知识库,输入提示词时检索,将知识作为Context输入模型中。
  4. 提示词工程:仅通过增加提示词,对问题进行分治,降低模型处理复杂问题的难度。(信息量存在限制)
  5. Long Context:假如拥有无限长的context,就能够将世界上所有知识输入进去,从某种意义上也实现了通用人工智能。

他重点讨论了Long Context的思路,比如在手机中部署大模型,将你所有看到过的资料全部压缩进Context中,就能赋予LLM你已有的专业知识解决所有的问题。

接下来讨论了一些问题,比如

总的来说,阳萌对大模型的看法非常精到,对于我这种有一点了解并长期使用的人来说收获很大。

感受

分治法

阳萌认为解决事情的通用模式是分治法。但是我对这个问题的第一想法则完全不同。一种现代的哲学观点是还原论和系统论,我个人觉得这个观点比较low:虽然大体说得没错,但是太笼统了。现代物理学的思考方式主要有两个角度:

  1. 牛顿以来使用微分的思路,通过分析局部的特点积分获得物体整体的性质。积分可以是对体积积分,比如绳子线积分、电荷面积分、材料体积分,获得宏观物体的性质。虽然这个思路没有问题,但是在实践中,计算微分时会近似,然后舍去了各种高阶小项,面对一些复杂问题时存在问题。
  2. 20世纪以来物理范式的改变。通过诺特定理,根据空间、时间上物理定律的不变性,获得哈密顿力学的形式。它的范式突破建立在拓扑、微分几何的发展,让人获得了从整体上定量分析边界的能力。

总的来说,我觉得分治法是一种古典的方法。虽然说端到端的方法和系统的方法有一点类似,都是对系统的边界,输入和输出进行研究和处理。但是系统的方法是可以在数学上直接导出微分形式的,换句话说系统的局部和整体是分形的结构,边界更像是微分积分后涌现的形式。

超越冯诺依曼架构的架构

阳萌提到目前的GPU是一种近存计算,虽然将内存直接封装在GPU旁边,但是仍然是基于冯诺依曼架构,这与神经网络的端到端的思路不是很相符。那么有没有更好的思路呢?

首先我想到的是模拟计算,就像当年工业过程控制和飞控都是用运算放大器搭建的(运算放大器是一种模拟器件,通过组合能够对电压进行加减、积分、微分等运算)。目前也有忆阻器等存算一体的研究。

计算的本质是什么?这里暂且不谈图灵的哪些问题是可计算的,除了硅基芯片,那些DNA计算机,量子计算机有什么相似之处吗?由于我看不懂这些,只能大致介绍一下,可能不对。DNA计算是通过把问题编码成DNA,然后随机合成所有可能的答案的DNA序列,DNA最后由于分子作用力,会吸引在一起,将答案DNA解码就能获得问题的答案。量子计算完全看不懂。

试想这样一个问题:我们知道从山顶放一个小球,小球会自发的滚到山底,那么如果我们能把问题编码成山的地形,将问题的答案编码成小球滚动的时间或者速度,那么我们就可以通过做实验和测量的方式来进行计算了。所以问题的关键就变成了哪些问题是可以编码的,以及怎样编码,还有选择哪些测量量。我猜量子计算只是使用量子的原理替换了小球而已,DNA、化学、经典力学当然都可以通过做实验的方式进行计算,只不过不是所有问题都可以编码。至于神经网络的可编码性,还有一些非凸问题,我再研究研究。

存算训一体的模型意味着什么?

目前的模型的训练是更新模型的权重,但是模型的结构是不变的,但是存算训一体完全可以打破这个限制。试想模型自己生成模型自己的代码,甚至自己制造底层芯片,自己创造汇编语言。这才是真正的550W。所以你觉得这个模型中不断改变的是什么?不变的又是什么?那人又有什么不变的东西吗?

这篇文章就写到这里吧,LLM相关的话题可以单独写好几期。这个视频看得我很爽。