嘿,大家好,欢迎回到 Information Bottleneck 播客。
今天我们有位特别嘉宾,Yongjun Tian。
嘿 Yongjun,谢谢你加入我们。
嘿 Ravid。
嗯,嘿 Alan。
谢谢你们的邀请。
所以 Yongjun,你在 Meta 的 FAIR 待了很长时间,最近你又是 Recursive Superintelligence 的联合创始人,这家公司专注于自我递归和自动化研究。
这些我们待会儿会聊到,但让我们先从最开始说起吧。
比如,你是怎么开始进入深度学习和机器学习的?
是怎么开始的?
嗯,谢谢你的问题。
其实我是 2008 年来到美国的,对吧?
那时候是机器人研究所的博士生,对吧?
所以 2008 年的时候,我当时真的非常痴迷机器学习。
那个时候,我觉得人们其实并不认为机器学习是一条可行的路。
大家真的会反驳这个概念,说,哦,机器学习没那么好用,因为它会过拟合,根本不懂到底发生了什么。
但我还是在博士期间做了一些优化和机器学习的工作。
基本就是在计算机视觉领域里,研究一些复杂的非线性非凸优化问题。
而且我成功证明了一些有趣的定理,表明即使问题是非凸的,你仍然可以通过增加数据,在某种程度上证明它的最优性。
所以这是数据驱动方法和优化的一种很有意思的结合。
到现在我仍然为这类工作感到非常自豪。
然后我快要毕业的时候,2013 年,或者说 2012 年,我看到了一个大新闻,对吧?
AlexNet 出现了,大概是在 2012 年的时候。
我当时真的给 Alex 发了封邮件,要他的代码库,然后稍微玩了一下。
当然啦,那时候我完全不知道 CUDA 编程是什么。
然后我就觉得,哦,这真的很棒,而且它跟数据的分层处理有关。
用神经网络来处理数据,它确实会给你一些有趣的中间表示,也会给你一些不错的结果。
所以当时我在想,哦,也许这就是我在追寻的东西,只是换了一种形式。
因为在我读博的时候,我做的论文课题之一,就是用一种分层的方式来优化计算机视觉里的一些非凸优化问题。
基本上,我就是试图去除水导致的图像畸变。
所以这种大的方向。
所以我尝试用分层的方法来做这件事,并且实际上证明我们在理论上可以做得更好。
从经验上看,效果也真的很好。
所以这就建立了这些联系,而那也是我对深度学习最初信念的来源。
但那时候,我得说有很多有趣的事情在发生,因为人们并不相信那个。
人们会说,‘哦,这不过是过拟合而已。’
所以大家来到办公室,我们在CMU的Smith Hall里进行了很多激烈的辩论,讨论AlexNet的结果到底是胡扯还是真正的突破。
所以当时这件事刚发生,大多数人就说那只是胡扯,因为它根本说不通。
但我觉得当时我其实在想,也许我应该转向深度学习。
所以我面试了几个地方,包括一些真的给我发了offer的地方,比如NEC Labs。
我想做深度学习,但最后去了谷歌自动驾驶汽车团队。
因为首先,那是一个非常有名的地方。
其次,我有好朋友在那里,他们推荐了我,我觉得在某种程度上不应该破坏这种联系。
所以我去了那里,而且我当时也确实想做深度学习。
但不幸的是,在那一年零三个月的时间里,我没有机会做那个,因为那更像是一个创业公司,你真的得让Zeppelin汽车跑起来,对吧?
所以最好是用一些非常成熟的方法,而科学探索可能不是我刚加入时该做的事。
所以我决定跳槽,对吧?
所以我搬到了FAIR。
那其实是我当时最好的选择之一,我会这么说。
嗯。
所以我到了FAIR之后就开始做研究,真的非常有趣也非常好。
我想我是从这个用深度学习做计算机围棋的项目开始的,对吧?
那个项目其实在某种程度上相当成功,因为我们在AlphaGo之前就取得了一些非常好的成果。
2015年,我们做出了第一个叫Dark Forest的机器人,它能用卷积神经网络击败网上的顶尖业余棋手。
所以那其实挺有意思的。
当然,我是说,AlphaGo就要来了——它是在2016年春天出现的,对吧?
而且它击败了职业棋手。
当然,那非常非常好。
而那时候,我想我的团队只有两个人,对吧?
我自己加一个实习生。
但是你看AlphaGo的时候,你有没有想过,怎么说呢,就是我怎么没想到这个?
或者就是,哦,它们就是AI而已。
首先,我觉得AlphaGo确实有很多创新,对吧?
其中一个他们有而我们没有的东西,就是value network,对吧?
当时我们只有policy network。
而他们有value network。
所以这让下棋的水平强了很多。
这是优势之一。
第二个区别是,我基本上没有任何reinforcement learning的背景。
基本就是边做边学。
那是一段非常有趣的经历。
就是自己边做边学reinforcement learning?
对。
对。
所以那是一段很有意思的经历。
所以这就是为什么我现在——那之后我基本上转向了reinforcement learning这边,之后做了很多reinforcement方面的工作。
对。
但那时候,我还想再花一分钟说说这个。
所以当时,这件事让你惊讶吗?
因为reinforcement learning在很长一段时间里都是那种——对,它确实是个很酷的想法,对吧?
但它其实不太管用,我们只能解决一些玩具式的问题。
但对你来说,这让你惊讶吗?
我觉得我们之所以选这个课题,是因为我感觉到convolutional neural network确实能捕捉棋盘上的很多模式。
而这些模式正是人类下棋、玩这个游戏时会利用的东西。
所以从某种程度上说,这并不那么令人惊讶。
但真正让人惊讶的是,它居然能击败职业棋手。
那才是让人惊讶的部分,对吧?
所以如果你真的去看这个方法、这套方法论,它其实并没有那么疯狂。
所以它算是convolutional network成功的一个自然结果。
我很好奇,你觉得那个年代有没有什么方法,在今天被忽视了?
对,有很多方法,对吧?
所以在那个时候,我认为人们开发了很多关于强化学习的东西,对吧?
这些方法中很多在今天的的大模型时代可能还没有被充分利用。
所以例如,人们正在考虑使用来自未来的更密集的奖励,对吧?
这叫做 distributed RL,对吧?
所以不仅仅是得到一个单一的数字,而是希望得到所有奖励的分布,然后利用它来调整你的模型。
所以我认为当前的 RL 可能也在使用类似的方法,只是形式不同,对吧?
所以例如,他们使用语言而不是传播回来的标量奖励,对吧?
所以还有很多不同的想法。
并且也有人在使用 Q-learning,对吧?
他们使用不同的公式。
但现在,大多数时候我们主要使用 policy gradient,对吧?
所以这是非常不同的领域。
所以是的,回到2016年,然后在2018年,我们实际上复现了 AlphaZero。
你可能知道 AlphaZero,这意味着没有人类玩家参与。
基本上从一开始就是自我对弈,对吧?
我们确实复现了它,并且在某种程度上使其更高效,创建了一个名为 OpenGo 的机器人。
那个机器人实际上轻松击败了专业玩家。
我们与韩国围棋协会进行了一场正式比赛。
我们以5比0击败了他们的4名选手,这意味着他们连一局都没赢,即使我们只用一个GPU(V100)来运行这个游戏。
那,我认为那可能是第一次,人们使用单个GPU击败专业玩家。
嗯,就是这样。
你当时感到惊讶吗?
比如,你是否认为,嗯,当你参加这种比赛时,你是否觉得我们肯定会击败所有人,我们就是比他们强很多,还是说你有过怀疑?
是的,在我们正式开始这场正式比赛之前,我们实际上找了一些同样是职业玩家的朋友,嗯,都是半职业玩家,来评估这个机器人的实力。
然后他们,我的意思是,这个过程其实非常有趣。
一开始还好。
之后,就没人知道发生了什么了。
他们会说,哦是的,这看起来非常强,非常强。
但我不知道它到底强不强,因为我看不太懂。
所以那时我会说,好吧,我们打个赌。
让我们真的和Korean Go Association的专业棋手对弈,因为我们在那边有一些人脉。
结果发现质量真的非常好。
那么你——我很好奇,你对gradient-free优化方法的看法是什么?
我倾向于认为那是一组在历史上有点被忽视的技术,甚至到今天也是如此,尤其是。
是的,
我觉得这其实和我之前在FAIR的一个研究方向有关,对吧?
在reinforcement learning、游戏之类的方向之后。
我们试图思考如何让reinforcement learning在更实际的问题上更具通用性。
这实际上意味着我们也可能会探索一些gradient-free的方法。
因为reinforcement learning,你可以把它看作是一种基于gradient的方法。
但当然信号非常稀疏,很难高效地获取信号。
所以我们想着也许这个局限,也许我们应该超越它。
对于gradient-free方法,我觉得它肯定提供了更多的灵活性。
而且随着当前更大的语言模型,它可能有更多潜力,因为更大的模型现在对系统、对要优化的目标函数有更好的高层次理解。
所以这种高层次的理解实际上比局部gradient信息更有信息量。
所以。
在gradient-free方法中到底发生了什么?
是的,我觉得这取决于你所说的gradient-free方法是什么。
所以,好的,如果你只是说。
关于。
零阶,比如零阶,evolutionary algorithms,零阶,那么没有任何高层次信息,实际发生的是你在gradient不太有信息量的地方进行探索。
所以当函数非常不光滑,对吧?
所以,好的。
所以你可能会有有趣的局部最优突然出现。
那里没有gradient指向那个方向。
在这种情况下,gradient信息可能非常有误导性,对吧?
所以它会给你错误的方向,让你陷入local minima。
但通常gradient-free方法会提出探索技术,对吧?
所以这是我们实际讨论的内容,比如open-ended search,对吧?
我们既有探索,也有利用。
利用呢,就是说我们实际上是在按照某种贪婪的信息走。
探索呢,就是说,哦对,也许局部搜索真的没那么好。
所以让我,让我们试试不一样的东西。
对。
所以这种跳跃,是贪婪方法从来不会用的。
这是巨大的优势。
对。
对。
所以呢,我早期学习神经网络怎么运作时,很多尝试都是从零开始写代码,然后发现我根本没希望从零开始做自动微分或者通用情况的反向传播。
所以我就想,好吧,那就看看只基于前向传播的方法。
然后我开始发现你提到的所有这些事情,比如如果你不假设值或奖励的形状,那就能得到很好的探索。
我其实非常在意创造力。
所以我想问的是,你觉得这些无梯度的方法是不是让我们得到了,或者说,带来了更多样化的结果?
另外,你信不信——我知道扩散模型里有梯度,但我认为当你观察它们的优化方式时,比如去噪器,我的理解是其中有很多无梯度的方法。
所以呢,我认为,扩散模型和扩散语言模型,我听很多人说它们更多样化。
那么你觉得,如果这是真的,它和无梯度方法在多样性上更优之间有没有关联?
我明白了。
我觉得对于基于扩散的方法,首先,我不是这方面的专家,对吧?
其次,我目前的理解是,扩散方法好是因为它用了很多不同的掩码来训练模型,对吧?
所以你可以把自回归方法看作是一种特例,对吧?
基本上就是只以特定方式使用注意力掩码,让它变成因果的,然后你学习一些模式,对吧?
但如果你用基于扩散的方法,通常掩码是随机生成的,对吧?
所以你生成掩码,然后试图填补空白,对吧?
所以这当然会带来一种优势,就是你在强迫自己预测中间的内容,即使这些信息在自回归的对应方法中已经提供了。
所以我认为,因为这种打乱,你可能能学到数据中隐藏的更多关联。
所以这可能给你带来优势。
但当然,扩散模型本身还是通过梯度下降训练的。
所以不一样。
好。
所以你就花时间在理解和开发更好的围棋棋手上,对吧?好像是在2018年那会儿,对吗?
是的。
那时候,基本上语言模型还挺没用的,对吧?
从某种意义上说,对吧?
嗯,我知道。
但我觉得当时普遍的认知是,深度学习在视觉方面非常强,比如在视觉上,而我们还在等待。
等待它应用到文本和语言上,对吧?
嗯哼。
是的。
好的。
然后接下来,你说,好吧,围棋确实是个有趣的游戏,我们开发了一些强化学习的方法去尝试打败它。
然后你们尝试去其他领域推广,把它泛化到不同的强化学习任务中吗?
是的,我觉得那之后确实有两个方向。
一个是,在游戏上的强化学习在某种程度上已经被解决了,因为你总是可以设定奖励,让它运行,然后它会给你一些结果,这很不错。
我觉得在2018、19年左右,人们在这方面已经达成了共识。
我的意思是,当然有两条路。
一条路是,我们做搜索优化怎么样?
强化学习是其中一部分,对吧?
然后应用于真正困难的现实世界问题,对吧?
而现实问题可能很难处理,对吧?
所以我们实际上花了很多时间在这上面。
因为后来我们发现,对于现实世界问题,如果你把强化学习应用上去,真正重要的并不是算法。
有意思。
重要的是动作空间和状态空间的设计。
这是我们一直在研究的一些东西,对吧?
所以如果你看我的简历,看我的Google Scholar,你会看到一堆神经架构搜索的论文,对吧?
你仍然需要搜索这个巨大的空间,但这种搜索可能不遵循强化学习。
它可能遵循其他类型的方法,比如你刚才提到的无梯度方法,对吧?
但真正的问题是,我们如何自动学习设计状态和动作空间的方式,使搜索变得更加高效?
所以在这个方向上,我们确实有很多相关工作,对吧?
但这里的想法是,我们能不能自动找到正确的动作空间,从而更有效地搜索整个路径、整个目标函数。
我给你举一个例子。
比如说,如果你考虑架构搜索,人类会说,好吧,我们都知道深度很重要。
所以浅层网络相比深层神经网络,表现确实不太好。
我们知道这有点像是一个我们想要在搜索中强加的启发式方法。
但另一方面,AI可能不知道。
如果AI从搜索这些小细节开始,那它永远给不了你有意义的东西。
假设AI从搜索卷积设置中神经网络第一层的核大小开始,那影响不大,因为无论你怎么搜索,除非你遇到像1这样的极端数字,否则性能可能都差不多。
在这种情况下,你所有的搜索分支都差不多。
如果你在此基础上计算很多价值函数,它们得出的结论都是一样的。
那你就得真正深入每一个分支。
这会导致搜索空间呈指数级爆炸。
所以在这种情况下,你用什么算法都不重要。
你可以用强化学习,也可以用任何无梯度的方法。
这不会给你带来什么有用的东西,因为你面对的是指数级的搜索空间。
但如果你有一个想法,基本上是重新组合你的动作空间,然后你神奇地发现深度很重要。
然后突然间,你确实会看到深度网络和浅层网络之间非常鲜明的对比,对吧?
所以你不需要遍历所有路径。
你只需要几次 rollout。
然后你就能清楚地看到有很大的不同。
然后你就会走深度路径,这样你的搜索就取得了进展。
所以这个想法可以实现,而且实际上可以用一个数学公式来表达。
这是我们开发的一种方法,叫做潜在空间蒙特卡洛树搜索。
对于这个想法,你要做的是找到什么样的动作空间能带来最具区分度的搜索子空间。
你可以凭直觉做到这一点。
一旦你找到了,突然间你会发现一个很好的动作空间,而且保证能取得良好的进展。
你觉得在这个时期,我们几周前和 Frank Krueger 聊过,他非常热衷于 AutoML,对吧?
就是那种可以找到超参数的想法,对吧?
而且是自动地。
那你怎么看?
你觉得,至少在那个时期,真正需要搜索的重要组件是什么?
对你的结果影响最大的组件有哪些?
那时候,重要的组件仍然是在动作空间里进行手工设计。
比如说,如果你去看Google的AutoML工作,通常他们做的事情是,哦,我想设计这些非常漂亮的cell。
然后这个cell有六到七种不同的动作序列。
然后你复制它,基本上就是把这些cell堆叠起来,就得到一个神经网络。
所以堆叠的方式是固定的。
然后关键就是设计这种能够考虑到、并且有潜在可训练组件的cell。
那你可能会说,为什么不是8个或9个呢?
答案当然是,我猜这样会呈指数级地昂贵,所以就做不到了。
所以这些允许采取的小动作,基本上需要大量的人工设计,才能真正把它做出来。
所以通常情况就是这样。
那说到动作空间,你认为要获得好的机器人和物理AI系统,路径是什么?
而且我想特别强调一下,你确实有一篇论文是关于连续空间中的推理。
我在试着回忆它的确切名字。
这是你的一个——
对,对。
就是那篇Coconut论文。
对,Coconut。
对,Coconut,没错。
我想指出,Yann LeCun和其他人都在谈论JEPA,以及在潜在空间而不是token空间里推理,等等这些。
所以我非常好奇你对这些的看法。
嗯,我觉得这篇论文——Coconut论文其实是我实习生做的。
他一直来Meta,然后我们一起头脑风暴了一些天马行空的想法和思路。
然后我认为我的一个论点是,我在思考的时候,从来不用语言来思考。
我能清楚地感觉到,当我在思考时,我用的是大脑的不同部分,然后我得把想法转化成语言,才能很自如地和别人交流。
对吧。
所以这就是我思考的方式。
所以我感觉这基本上是基于我的直觉。
对吧?
所以,然后这就带出了这个想法:哦,那我们干脆把token整个去掉,对吧?
所以我们只用latent space来做思考,因为显然latent space是一个我们应该采用的很有意思的representation。
然后在这个火花之后,我实际上开始做一些理论推导,那些推导确实给了你一些很好的直觉。
也许latent space的representation有点像是一种interposition,它是多种想法的superposition,然后用这个superposition来思考,你可能会得到指数级的优势,对吧?
所以如果你遍历某个graph,对吧?
所以就是类似这样的想法,对吧?
当然它可能不是指数级的,但至少它给你一些优势。
然后呢,后来我们的实习生,对,就是Shibo,他来了,对吧?
他一直在努力实现那个想法,我们发现了一些初步的迹象,表明那是可行的。
当你提到你的直觉,就是你知道,你不会把大部分想法用语言表达出来,我要指出的是,我也不会在说话之前把所有事情都语言化。
也许这就是为什么我话说得太多,事前想得不够的原因之类的。
但我觉得人类有巨大的多样性,对吧?
比如,我认识很多人,他们确实会把大部分,甚至所有想法都语言化。
他们称之为internal monologue。
对。
有些人有时会这样。
类似地,图像方面也是,对吧?
有些人能很好地想象图像,还能旋转形状。
其他人做不到。
有些做不到的人却是很棒的艺术家,对吧?
所以我很好奇这一点,比如这种ontological diversity,以及你觉得这和什么相关。
这是不是意味着,我猜,如果人类如此多元,我们应该假设AI也会有很多不同的路径来达到同样类型的结果?
对,我觉得完全是这样。
所以有可能会有一些底层的learning mechanisms,但不同的人可能有不同的方式来表达他们的想法,对吧?
所以这些想法在内部可能会以不同的modalities呈现,对吧?
对我来说,我仍然觉得有时候我在思考的时候,我其实是在用图像的方式,或者说视觉的方式在想。
有时候那是一种很奇怪的感觉,对吧?
然后你突然就跳进去,然后你有了一个想法。
哦,你有了一个想法。
然后那个想法基本上会被外化成语言。
但如果真是这样,那我觉得最好的选择还是内部隐藏表征,因为它可能涵盖了所有模态和所有可能性。
所以我会押注这个。
但最后,这个想法没流行起来,对吧?
比如现在,前沿模型都不是用连续的思维链来训练的。
你觉得为什么会这样?
首先,数据不够,对吧?
就是说,你有大量的语言,大量的思维想法、思维模式都是通过语言来体现的,对吧?
所以呢,这是你能交流的方式,也是能把人的想法以文字形式存储下来的方式。
正因为如此,你拥有的数据比潜空间那边的数据要多得多得多。
所以显然你得想办法去利用这些数据。
所以那是一种做法。
其次,潜在表征可能是个性化的。
我的意思是,每个人都在某种程度上使用自己的潜在表征。
就像艾伦说的,人们在这方面有很多差异。
所以在这种情况下,学习起来会很棘手,因为人类的学习效率比计算机和我们的大模型要高得多,这点我得说,对吧?
所以如果我们的大模型没有这么高的新概念学习效率,那我们就得用语言作为替代品来让模型学习。
但你觉得这跟JEPA的问题有关吗?比如说。
就是说,连续空间最终真的是很难正则化,对吧?
就像所有自监督学习方法的主要问题是,你需要一个好的正则化器,有不同的方法来做,但哪种是正确的做法并不明确。
这有点像那种定义不清的问题,基本上,你知道,你没法在一些非常明确、定义好的指标上进行爬山优化。
你觉得这里也是同样的问题吗?
是的,在某种程度上是这样。
我觉得有两个事实,对吧?
首先,梯度学习可能效率不高。
所以你需要大量数据。
如果没有那么多数据,那就会正则化不足,对吧?
所以你得加正则化器。
但问题在于,你需要用哪些正则化器?
有太多种正则化器了。
每一种都会给你带来一些不同的表征。
所以也许它们中没有一个是真正正确的做法。
所以这实际上给那个带来了问题。
第二个问题是,我们实际上并不理解什么是表征,以及表征是如何随着时间形成的。
这才是真正的问题。
而这可能正是无梯度方法非常有用的原因,因为我们在这种元层面上,被梯度下降的解困在了局部最小值里。
所以我们或许应该用一些不同的方式去学习表征。
你认为存在一种最优的表征吗?
你觉得是不是有点像柏拉图式的表征范式?
是啊。
我想说,这目前仍然是一个未解的问题。
因为你可以用很多不同的方式来表征世界。
我认为可能存在某种方式比其他方式更好。
比如说,有些方式占用的比特数更少,对吧?
比如压缩,对吧?
有些方式可能能更好地泛化事物。
真正的问题在于,梯度下降,也就是当前神经网络的学习方式,要怎样才能学到那种表征。
还有这些学习范式的局限性是什么?
可能存在某种非常好的表征,但当前的梯度下降方法无法学到它。
我们现在还不知道边界在哪里。
现在我们只是说,好吧,看起来它是有效的。
然后我们就把它当作我们的系统来用。
对吧?
但从科学的角度看,我们完全不知道边界是什么,也不知道怎样才能到达那个边界。
是的。
这正是我做可解释性研究、去理解神经网络的真正动力。
你觉得这会成功吗?
就是,你认为我们会在某个时刻获得这种理解吗?
是的,我认为在某个时刻我们应该有信心,理解终将到来,对吧?
这就像是炼金术和化学之间的比较,对吧?
差不多就是这么个故事,对吧?
所以这个故事还在。
但是当然,因为当前的模型非常非常强,人们会去追求模型的效果,我们可能没有足够的时间,也没有足够的精力去关注那个方向。
但我一直说,从长远来看,这会对人类,也许对AI来说,也是一个非常困难、非常重要的问题。
所以我想问你一个更个人化的问题,因为你在深度学习、视觉和强化学习方面工作了很长时间。
然后突然,对吧,大概在2022年、2023年差不多这个时候,突然我们所有人都明白了。
就是,嗯,语言和文本模型已经站稳脚跟了,而且会是下一个大事件。
你是怎么应对这个的?
这种转变,你如何调整你的,怎么说呢,工作,以及你在工作中真正关心的那些东西?
嗯,我觉得首先,我大概从2018年、2019年左右就开始做可解释性研究了,那时候我试图对深度神经网络做一些梯度动态分析,对吧?
所以从某种意义上说,这有点像我一直非常坚持推进的那些线索。
而且那条线索在某种意义上非常连贯,对吧?
所以对于大模型,你仍然可以做同样的事情,对吧?
你改变了模型,但做分析的方式是相似的,对吧?
所以在这种情况下,它并不具有颠覆性。
主要来说,你还是在做自己真正想做的事情。
但当然,另一方面,在实证层面,这会变得棘手,因为现在作为研究者,我们不得不彻底改变我们的思维方式。
对。
所以以前,通常对于研究者来说,我们提出自己的想法,然后用实验来检验这些想法,然后得到一些结论,对吧?
这个过程可能跟100年前有点像,那时候人们自己写论文做研究,自己做实验,对吧?
但考虑到大模型,我觉得通常因为当模型变得越来越强时,它本身就能给你一些想法。
所以研究者们可能被迫要在元层面上思考,而不是仅仅花时间提出一个个具体的假设。
所以这是人们需要面对的第一个挑战,对吧?
是的。
第二个挑战,我觉得当时是,首先我们需要强调,卓越的工程能力也非常重要。
与研究方向并行,对吧?
因为大模型时代很多好的工作,都像是半研究、半工程。
因为如果你不擅长把想法工程化,你的结果可能就不会很好。
那么人们可能就不会把它当作严肃的成果,对吧?
所以这其实是当前研究者面临的另一个挑战,对吧?
所以我觉得从2020年到2022年,再到大概一年前,情况就是这样。
但是现在,因为我们都在用AI编程代理,所以情况可能会有点不一样了。
但是因为有了AI编程代理的帮助,那些有丰富实践经验和知识的研究者,他们可能能想出很好的想法,然后让代理非常非常快地实现出来,再找到关键问题并解决它们。
所以突然间,这些研究者就有了超能力,可以去探索一些真正深层次的东西。
所以会有一些来回的过程。
好的。
我觉得这正是讨论递归自我改进的好时机。
就像我们看到超级用户或超级工程师一样,我们会有能够自我改进的超级代理吗?
是的,我觉得理想情况下这就是目标,对吧?
对。
那告诉我,这会发生吗?
会,我觉得会。
首先,我想告诉你为什么我觉得现在是时候开一家公司了。
关于这个,我在Meta的最后一篇论文是我和GPT-5合作完成的。
这篇论文是关于研究神经网络中的grokking现象。
基本上,网络会从记忆开始,然后训练、训练、训练、训练、训练,突然之间就变得泛化了,对吧?
这种grokking现象非常非常迷人,也很有趣。
那篇论文,我和GPT-5合作,问了很多问题,还给它们布置了作业。
我就说,请证明这个定理,请确保这个定理是正确的。
请帮我头脑风暴一些想法和思路。
我发现这实际上比我以前处理类似问题的方式有效得多,对吧?
我觉得它实际上给了我大概六到十倍的提升。
在效率方面,对吧?
而且这个估计其实还是保守的,因为那时候我还是靠自己写代码,但现在我觉得代码编写和实现当然也可以交给一个强大的AI代理来做,对吧?
所以这会让事情变得快得多得多。
对。
所以我完成这个项目之后,得到了一些不错的有趣的结果。
我突然意识到,哦,好吧,也许我的工作在五年内就会被取代。
对吧?
所以很明显我很快就会失去我的工作了。
所以与其被动地失去工作,我觉得不如就朝这个方向开一家公司。
好的。
所以这就是为什么你会看到这种情况,对吧?
所以通常研究员可能不太愿意去小公司当联合创始人,因为有很多事情,很多工程上的活儿。
你需要操心研究之外的很多事情。
但我觉得现在是一个阶段性的转变。
如果我不采取任何行动,那以后我可能就无关紧要了。
是啊。
你知道,你知道,我在镜头外有时候会和Raveed进行一些激烈的争论。
而且,你知道,当然在我状态不太好的时候,我也会说类似的话,主要是惊叹于编程智能体已经变得多厉害,同时也非常看衰我自己,你知道,大概到2040年代,感觉最终AI得找我谈一次话,然后说,你知道,如果所有prompt都由我来做,可能会好一点。
而且我对此非常担忧。
最糟糕的是,我觉得你对此的回应——你知道,去成立自己的公司——是正确的回应。
我的回应则是去试着学习怎么动手干活。
而且我并不擅长动手干活。
所以当奇点来临时,我就完蛋了。
我只想说,这个你到处都能看到,对吧?
比如软件工程,对软件工程师的需求一直在往上涨,对吧?
而且我们到处都能看到这一点。
就像,你知道,并不是说有更好的产品就这么出现了,对吧?
或者说有更好的应用之类的东西。
我们——也许在某个时候模型会变得更好,然后它们就不需要我们了,对吧?
但至少现在,我们还没看到这种情况。
我们没看到。
而且,端到端地做出好产品,现在还是做不到的,对吧?
所以首先,你觉得,你同意这一点吗?
然后你觉得,如果同意的话,你认为这会改变吗?
是的,首先我想说,现在仍然处于一个还没有自动化的阶段,对吧?
所以我不认为目前的模型可以在没有任何人工干预的情况下给你非常好的结果。
我认为还没到那个阶段。
但即使是我在Meta做的那篇论文,我也是给出高层次的想法、高层次的思路,让模型去跟随,而不是让模型提出自己的想法。
因为那部分非常难,因为如果你没有任何想法,它就会给你非常机械、平庸的想法。
基本上所有人都知道,而且这不是一个多有意思的研究方向。
对。
所以我觉得,到目前为止,模型还是在这么做。
没有——我们还是需要人类去发起,需要人类去思考哪些是重要的事情、该做什么。
所以这是我们必须要做的。
而且我们也需要人类来验证,对吧?
就是解决方案提出来的那些问题是什么?它们长什么样?
所以这些其实就是我们正在面对的问题。
希望在未来,如果agent有更多自动化——我是说模型——人类在重复性工作上花的时间会越来越少,更多时间花在更有创造性的方向上。
而且人类在未来也可以有更宏大的目标。
人类会说,哦,也许我哪天该去趟土星。
然后我会把我很多执行类的工程工作委派给我的工程师、我的agents。
他们会想出怎么造火箭的办法。
但你怎么看待所有这些——现在有很多论文和工作都在研究自我改进、递归自我改进。
你给一个agent两个小时和两块GPU,让它做post-training,或者就是试着改进某个指标——比如NeurMotron之类的。
至少据我所知,这些工作大多表明,当然,agents什么都能做,对吧?
它们无所不能。
任何你想要的优化之类的事情,但它们想出来的想法空间非常狭窄。
到头来,它们在想法上效率很低,而且它们并不真正知道怎么泛化问题,它们就是在过拟合那个指标。
现在很多Kaggle比赛都在尝试用agents,它们会克隆代码来改进,看起来就像是在过拟合训练集或验证集的指标。
你怎么看?
你觉得这是不是——首先,还是先问,你同意吗?
你觉得这是我们不知道该怎么衡量的问题,还是说这是个暂时性问题、很快就能解决?
是的,我觉得在某种程度上它们是暂时的,因为你总有办法让agent去关注——让模型去关注更高层次的问题。
对。
所以你可以这么做。
我觉得当前模型之所以做不好,是因为模型被要求去做那些细节的东西。
没有上下文。
如果模型有更多上下文,它可能会提出一些更有趣的想法,而不仅仅是微调参数、调超参数、改函数配置这些。
但我觉得给模型加更多上下文很可能只是一个临时的解决办法。
它可能会给你一些提升,但未来我们可能需要比当前基础的transformer架构要好得多的东西。
好的。
所以我觉得现在的关键区别在于,当前的模型都是在大量数据上训练的,而这些数据都来自互联网,对吧?
而且这些数据包含了很多重复性的工作,对吧?
对于重复性的工作,我觉得模型做得非常好,对吧?
所以它实际上有足够的数据来了解情况,也有足够的数据来提出新想法。
但展望未来,如果你想让模型做非常有创意的事情,一些我认为是跳出常规的事情,那模型可能就没有足够的数据来做了,这时候你可能需要思考什么样的新架构能够带来更高效的学习,并且能通过极少的数据快速捕捉新信号。
所以基本上就是两个阶段。
从我刚才说的常规、重复性工作,到下一个层次,我觉得我们需要一个大的跳跃,但当前的范式仍然会存在很长时间。
因为总有很多补丁可以用来让模型更强。
这就是我的感觉。
那么让模型变得更好,最重要的是什么?预训练、后训练、甚至推理时优化,所有这些可能的改进方式,你如何看待?
或者也许是不同的架构,对吧?
完全不同的架构、优化器。
嗯。
没错。
是的。
所以是完全不同的架构、优化器,对吧?
还有数据混合等等。
所以这会非常有趣,并且可以成为自我改进的主题。
这实际上就是我们现在在做的事情。
那你怎么看?
因为,到现在为止,有很多公司、个人和创业公司试图提出不同的架构,对吧?
比如Transformer,有些在小规模问题上确实展示了不错的结果,但从来没有真正扩展到更大的模型上。
你觉得这是为什么?你觉得这是你能解决的问题吗?
嗯,这是个好问题。
首先,为什么你会看到很多在小规模上效果不错,但在大规模上却不行?因为通常在小规模上你缺少数据,对吧?
所以你基本上需要在架构中额外添加一些归纳偏置。
而这些偏置在小规模上效果很好,因为你没有足够的数据。
但在大规模上,因为数据很多,最好的做法就是基本上让模型自己去弄清楚发生了什么,对吧?
所以我觉得一个非常有趣的例子就是这些 Vision Transformers,对吧?
那么当这种情况发生的时候,通常如果你读论文的话,你会发现,如果你用一些 ImageNet 级别的数据来训练模型,vision transformer 可能没有卷积网络那么强。
但是当你拥有更多的数据,比如两亿或者五亿,那么最终你会发现 transformer 会比卷积网络好得多,因为卷积网络有这种归纳偏置,基本上就是说——
你确定 Yann 会同意你的看法吗?
我不确定。
嗯。
你不用回答。
没关系。
嗯。
我觉得现在的直觉大概是这样的:transformer 基本上,你可以让它关注局部,也可以让它关注非局部的数据。
对。
但是对于卷积网络,你必须先关注局部的东西,然后逐渐构建。
所以这两者是非常不同的。
但我的问题是,你想要怎么做,你的策略是什么,对吧?
你觉得我们实际上应该从……现在,对,你刚才说了,是的,我对不同的范式有一个新想法。
那么现在我会从小规模实验开始,然后试着从那里扩展。
或者你觉得从一开始就……值得吗?你知道多少?
比如说,我不知道,从一开始就搞一个一万亿参数的模型,然后在这个模型上迭代。
我觉得,当然,你需要先从小规模开始尝试,然后逐渐走向更大规模。
但我认为真正重要的是,这是我个人的看法,我们在某种程度上真的需要知道网络内部发生了什么,对吧?
所以有某种可解释性的成分。
是不是我们知道它能在更大规模上很好地泛化?
这可能是我们需要考虑的额外因素之一。
对。
而且我们知道,有一些有趣的见解是可以扩展到更大规模的,对吧?
这样我们就有信心这能很好地工作。
否则,如果我们盲目遵循 scaling laws,那么发生的情况是,你永远无法证明任何在小规模上有效的东西能泛化到大规模。如果你不这样做,如果你没有这种信心,那么当然只有拥有最大计算量的公司才会赢。
那是唯一的解决办法。
但如果你真的在小规模实验中看到了深刻的东西,那么你有可能让某些东西在大规模上奏效。
也一样。
所以如果你看这个循环,从想法到代码,运行然后分析。
哪一部分最难自动化?
我觉得,我的意思是,想法可能非常非常重要,也非常难,对吧?
所以如果你问一个模型要想法,它会给一些比较平庸的想法,对吧?
所以当你把这两件事结合起来,检查什么有效什么无效,把所有东西组合在一起,做消融实验,对吧?
这些其实不是特别有趣的想法。
而且我猜其他人也会想到同样的事情,对吧?
所以真正的问题是,什么才是产生正确想法的正确方法?
而这个想法要指向正确的洞见,对吧?
那非常重要,对吧?
当然,你也可以做迁移,对吧?
如果你有一些来自不同领域的好想法,也许你可以把它迁移到你一直在研究的领域。
那样的话,可能会非常有效。
我看到了最近的突破,比如说来自数学领域的,对吧?
就是AI for math。
很多这些想法都是从一个领域迁移到另一个领域,然后发现这个想法确实有效。
比如,你之前尝试了跑NanoGPT speedrun,对吧?
对。
那你觉得这类竞赛,现在你甚至把纪录缩短了两秒,对吧?
你觉得这是真正的发现,还是只是在一些已知技巧上做了很好的搜索,而这些技巧其实更容易被发现?
对,我觉得从某种意义上说,这是有趣的发现和之前方法的结合,对吧?
比如,加入了bigram和unigram,对吧?
在架构上,这从某种意义上说很有趣。
当然,有些人会说,哦,这可能来自DeepSeek,来自别的地方,也可能是Gemma 3的做法,对吧?
而且实际上,我们所有人——当我在Meta的时候,我们也有一篇叫STEM的论文,也遵循了非常类似的想法,对吧?
所以这是一种向这个实际竞赛的过渡,而且这确实会提升性能。
所以我觉得这基本上是现有想法的迁移,再加上一些创造力,把它们粘合在一起,让它们能很好地工作。
比如,每一层可能都有不同的embedding表,对吧?
而且基本上组合方式也不同。
那么AI的未来是什么?
我的意思是,我们讨论了一些可能的候选,比如 world models,另外我们还提到了 recursive self-improvement。
我们还提到了 physical AI。
那对于未来,我们是不是还漏掉了什么?
更多的 scaling?
我是说,我觉得 scaling 大概现在就是常识,对吧?
所以人们会说,哦对,scale, scale, scale。
但我觉得,正因为是常识,我们才想考虑一些不同于常识的东西,对吧?
所以作为一种新的替代探索,对吧?
所以我的意思是,recursive self-improvement 之所以重要,是因为模型现在已经达到了某种程度,在一定程度上理解了自身内部在发生什么,对吧?
所以即使这种理解很浅,但仍然是理解,我们可以利用它来做 self-improvement。
所以现在就是那个时机。
而且它还有非常实际的使用场景,就像我们在很多场景中展示的那样,比如 kernel optimization,对吧?
所以这是其一。
当然,我常说,未来可能仍然是要找到新的架构。
找到新的学习方式,找到更好的方法来匹配人类的数据效率。
所以我们在哪个 modality 上工作并不重要。
我们研究什么问题也不重要。
我认为关键仍然是这些神经网络中的学习机制和学习算法。
那大概就是关键点。
所以一旦我们突破了这一点,对吧?
假设我们现在有一种新算法,它的学习效率和人类一样高。
人类大概用二三十瓦的计算,而且人类只用了大约千分之一——基本上就是,对,0.1% 的数据。
而人类可以在非常短的时间内搞清楚事物。
所以如果我们有了那种学习机制,那么一下子所有问题都能很好解决。
所以 robotics,现在我觉得 robotics 的问题确实是,你会说,好吧,需要大量数据。
我觉得 Fei-Fei 确实提到过,我们在 robotics 上需要大量数据,但这只是针对当前的 paradigm。
当前的 paradigm,因为你需要大量数据,所以我们真的需要提供大量数据。
但如果你想想人类是怎么做的,所有的猫、狗,所有生物,它们都在做 embodied AI,它们并不需要大量数据,对吧?
它们只有很烂的处理器,但同时它们能在这么复杂的世界里生存。
这里面一定有新的算法。
所以我觉得这是关键。
而且我相信强化学习、自我改进可能是到达那里的更快方式。
所以最后几个问题。
你觉得,像 Anthropic 和其他机构,现在对于限制最新模型有很多讨论,对吧?
他们呼吁围绕递归自我改进进行协调。
你怎么看这件事?
我想非常坦诚地说,因为我觉得很难阻止人们这么做,对吧?
所以这个界限很模糊,对吧?
你和你的编程代理对话,带着新想法,让它们在新想法上迭代,那你就是在做自我改进。
在某种程度上,你和别人交流,他们产生想法,然后和你一起写论文。
那也是自我改进。
所以很难划出这么一条线说,哦,你不能做这个,因为这是自我改进。
所以这很难做到。
我的意思是,执行起来也很难。
那界限在哪里呢?
而且现在我们还有各种开源模型。
这些开源模型都非常非常好,非常强。
你也可以用它们来做一些研究、一些学习,对吧?
那这能叫做自我改进吗?
你怎么去管控它们?
这些问题会很难回答。
所以并不是。
那你对开源怎么看?
比如,你们会开源自己的模型吗?
我——
我的意思是,对于我们的研究成果,我们打算开源,对吧?
比如我们之前的博客文章,我们开源了所有的 kernels,也开源了训练这些 Nanochat 和 NanoSpeedruns 的全部配方。
所以基本上,我们系统的成果,我们会开源。
这很重要。
首先,其他人可以检查,并且可以在其基础上继续构建。
那很好。
而且我认为开源对整个社区实际上是非常好的。
所以最糟糕的情况可能是,一小部分精英人士控制着世界上最大最强的模型,然后说其他所有人使用它都需要支付高昂的费用。
这对整个社会来说可能不是什么好事,对吧?
所以我们真的想把AI的力量民主化,让每个人都有平等的机会去做好的工作,并用这些工具来提升自己。
你觉得未来我们会看到开源模型和闭源模型达到同样的水平吗?
闭源的那些?
是的,我觉得现在已经很不错了。
比如Kimi K3就非常好。
他们能做好多有用的工作。
当然,思考过程可能比现在的闭源模型要长一些,但仍然是可用的,而且你可以在很多不同的领域利用它。
所以我觉得未来开源模型会变得越来越强大。
所以这根本不是问题。
而且,作为一个编程代理,你不会真的期望AI Newton或AI Einstein来帮你写代码。
所以其实是有一个边界的。
所以有一条线,只要模型跨过了那条线,它就是可用的,你就愿意使用它。
所以我觉得,你知道的,很多前沿实验室已经跨过了那条线。
而现在开源模型也开始跨过那条线了。
我觉得将来会有越来越多的人,越来越多的模型跨过那条线。
一旦达到那个程度,它就会被商品化,每个人都会使用自己最喜欢的模型,并且会非常开心。
是的。
所以最终这会发生。
所以真正的问题是,我们如何利用所有这些模型来做更好更大的事情?
好的。
Yandong,你还有什么想补充的吗?
我想基本上就是这样了。
你们在招人吗?
你想宣传一下你的公司吗?—— 是的,
我觉得我会说,是的,如果你对我们公司感兴趣,欢迎随时给我们发送简历,对吧?
所以我们的邮箱是 [email protected],所有感兴趣的人,请发送给我们。
你们在哪里招人?
是的,我们有一个地方——我们的主要地点是旧金山。
还有伦敦。
所以我们三分之二的员工在旧金山,三分之一在伦敦。
好的。
非常感谢你加入我们。
非常荣幸。
是的,真的很荣幸。
谢谢。
是啊。
非常感谢你采访我,我希望人们能从这些讨论和有趣的头脑风暴中受益。
是的。
好的。