让我们先把OpenAI管理层内部的极地大乱斗放在一边,聊一聊这家公司最新的传言——Q*。
OpenAI在11月22号的时候给员工发了一封内部信,承认了Q*,并将这个项目描述为“超越人类的自主系统”。着实让人感觉到有一丝丝可怕。
虽然OpenAI官方没有放出任何有关Q*的消息,但是我们还是能浅浅了解。
首先第一步,我们要认识Q*的读法,官方正式名称叫做Q-Star,翻译过来就是Q星。对,你没看错,即便深度学习中,区块之间是通过乘积来求解的,但是在Q*里,“*”并不是乘的意思,而是“星号”。“Q”这个字母在强化学习中表示一个动作的期望奖励。
在人工智能领域里,但凡跟大写Q沾边的,本质都是Q学习。Q学习以现在的评判标准可以算是强化学习的一种,指的是在训练的过程中,以记录训练历史奖励值的方式,告诉智能体下一步怎么样选才能跟历史最高奖励值相同。但请注意,历史最大奖励值并不代表模型的最大奖励值,有可能是,也有很大可能不是,甚至还有可能八竿子打不着。
换句话说,Q学习和智能体就像是一支球队的分析师和教练之间的关系。教练负责指导球队,分析师则用来辅佐教练。
在强化学习的过程中,智能体输出的决策是要反馈到环境中才能得到奖励值。而Q学习因为只记录奖励值,因此它不需要对环境进行建模,相当于“结果好,一切就好”。
不过这样看下来,好像Q学习还不如现在人工智能,尤其是大模型常用的深度学习模型。像现在这种动不动几十亿几百亿这么多参数下,Q学习不仅对模型没什么帮助,反倒还增加了复杂性,从而降低了鲁棒性。
别急,其实这是因为上述Q学习背后的思路本身只是一个诞生于1989年的基本概念。
DeepMind在2013年的时候曾经通过改进Q学习,推出过一个算法叫做深度Q学习,其最鲜明的特点就是使用经历回放,从过去多个结果中进行采样,再使用Q学习,进而达到提高模型的稳定性,降低模型因为某一次结果导致训练方向过于发散。
然而实话实说,这个概念一直没有走红也是有原因的,而从实际意义来看,深度Q学习此前在学界看来最大的作用就是开发出了DQN。
DQN是指深度Q网络,诞生于深度Q学习。DQN的思路和Q学习是一模一样的,但是在求得Q学习中最大奖励值的过程,是用神经网络来实现的。这一下子就fashion了起来。
DQN同一时间只会生成一个节点。与此同时,DQN会生成一个优先级队列,然后再把剩下的节点和动作的元祖存到优先级队列里。显而易见,一个节点肯定不够用,如果全程就一个节点那最后求解的答案一定错得离谱。当节点和动作元祖从队列中移出来的时候,就会根据这个动作应用到已经生成的那个节点得出来的关联性进而生成一个新节点,以此类推。
稍微懂点人工智能发展史的人会觉得越看越眼熟,这不就是高配版弗洛伊德求边长?
现代计算机中,处理器所使用的核心原理就是弗洛伊德算法,通过与历史最优值比对,求得两点之间最短的路径。内存的作用就是将计算以优先级的方式存储,每当处理器完成一次计算后,内存再把下一条计算扔给处理器。
DQN本质没什么区别。
这基本就是Q的意思,那么*又是指什么呢?
从诸多的业内人士分析来看,*很有可能指代的是A*算法。
这是一种启发式算法。先不着急讲启发式算法是什么,我来讲个笑话:
A问B说“快速求出1928749189571*1982379176的乘积”,B立马就回答A说:“32”。这个A听了就很纳闷,这么大的两个数相乘,不可能答案是两位数。B反问A:“你就说快不快?”。
看起来离谱,但启发式算法也是同理。
它的本质就是估算,在效率和正解之间只能选择一个。要不然就非常讲究效率,可有时候会出错;要不然就非常讲究正确性,可耗时有时候会很长。A*算法则是先通过启发式算法估算一个大概其的值,当然这个值很有可能极其偏离正解。估算完成后就会开始循环遍历,如果怎么都没办法求解那就重新估值,直到开始出现解。如此反复,最终得出最佳解。
虽然能得到最佳解,然而A*就是上文提到的第二种,答案对,耗时比较长。放在实验室环境还好,这种算法要是放在个人设备上,有可能会导致内存溢出,产生系统问题,比如蓝屏。
因此这样的局限性使得过往A*算法往往应用于一些不太复杂的模型,最典型的就是网络游戏中角色寻路。一些大型游戏中,角色在寻路开始的那一刹那出现卡顿,就是因为A*算法。
综合来看,目前人工智能圈的共识是,OpenAI内部信中提到的Q*算法,大抵是Q学习和A两者的取长补短,即节省算力、节省内存,并得到最佳解——因为它总不可能是又多花费算力,又浪费内存,最后还得不到最佳解吧!那不成累傻小子了吗!
而且,就像OpenAI把基础模型这件事最终做成了一样,它同样早已存在,甚至也一度被人们冷落,直到OpenAI用具体的创新的方法把它的潜力重新发掘出来。今天人们自然有理由相信在Q和A这两个早就存在的算法思路里,OpenAI能故技重施再次创造奇迹——当然,对于这奇迹可能对人类带来的危害也因为最近OpenAI的闹剧而让更多人忧心忡忡。
所以,回到这个算法,Q*最有可能的样子是,利用Q学习快速找到接近最优解的估值,再利用A*算法在小范围内求解,省去了大量没有意义的计算过程,以此达到快速求得最佳解的效果。但是OpenAI具体要怎么做,还得等公开论文(如果能等到的话)。
Q*的出现其实说明了一个问题,人工智能头部公司意识到当下人工智能发展中求解的过程比求解更有意义。因为现在只追求答案的正确性不再能满足人们对人工智能的需求。比如OpenCompass上,即便是平均分数差10分、20分,但是如果从理解的准确率上看,最好的模型和最差的模型也没有很大的差距。
在人们的猜测和恐慌中,一个关于Q*的说法是,Q*可以解决非常高级的数学问题。萨里以人为本人工智能研究所所长安德鲁·罗戈斯基表示“我们知道现有的人工智能已被证明能够进行本科水平的数学运算,但无法处理更高级的数学问题。但是Q*极有可能用来解决高难度的数学问题。”说不定等到Q*出来的那一天,还可以考考它哥德巴赫猜想。而数学被认为是人类智慧的最大结晶之一,因此Q*只是一个代号就引发了全网的恐慌。
而且Q*背后还被与OpenAI的那个使命相联系——那就是对通用人工智能(AGI),甚至是超级智能的探索。OpenAI 将 AGI 定义为在最具经济价值的任务中超越人类的自主系统,Q*就是OpenAI迈向的AGI的一步。
目前OpenAI对于Q*和内部信泄露事件没有对外发表任何置评,可我却喜忧参半。对Q*拥有强大能力表示开心,人工智能领域发展将会更进一步。同时也比较担心Q*噱头大于实际,最后真到发布的那一天测试结果也就那么回事,让我被哐哐打脸。
欢迎加入这个星球,见证硅基时代发展↓