AI Is Not AI
从ChatGPT到未来的deeplearning Ops
最近看到推特上聊的最多的话题是ChatGPT,很多人对它赞不绝口。对于一个创作者而言将人工智能用于自己的创作流程中,能够快速实现作品的原型,这在商业领域当然是一件很好的事情。chatGPT可以给编剧增加灵感,给找问题的人提供解决思路,给翻译人员提供更精准的语言翻译帮助。那么ChatGPT算不算真正意义上的AI,也就是说它能否通过图灵测试。虽然我们不知道答案,但我们可以确定ChatGPT肯定收集了海量的互联网数据来进行模型训练,最后模型的参数也是惊人的巨大。
首先参考OpenAI官网,我们看下OpenAI模型训练的过程:
训练模型采用了Reinforcement Learning From Human Feedback,首先OpenAI从题词数据库里面抽取样本,标记者会解释该问题的预期答案,然后将样本和预期答案通过GPT-3.5模型进行监督学习(A模型),然后收集对比数据,通过人工的方式将问题得到的多个答案进行排序打分,以此训练奖励模型(B模型),最后输入新的词条到A模型,其输出进入B模型中得到奖励评分,采用PPO方法优化A模型的参数。
我门再来看下OpenAI的DALL-E 2,通过语言描述来生成照片级的图像,当然还有开源版本的Stable Diffusion v2,也是类似的功能。其中采用的机器学习模型是diffusion models,通过连接语言描述与图像之间的关系,从无到有生成一张符合描述的完整的高分辨率图像,这也许在2D图像处理和3D模型制作中给创作者提供很大的帮助。
受到DALL-E工具的启发,Baker Lab的研究人员使用diffusion models来生成新的蛋白质结构,A diffusion model for protein design,通过新的方法研究人员能够快速的组装出具有功能性的蛋白质结构,而在使用diffusion models之前需要通过数以万计的分子进行测试。从文本生成,到文本图像生成,再到蛋白质结构生成,这里面涵盖了通用的模型设计,那么这些模型能否被称之为通用AI,不谈论创造性,我们可以将chatGPT理解为狭义通用AI,因为它的目标就是模仿人类,给出的答案尽量接近人类,比如一个智能搜索引擎,一个开放式的智能数据库,那么能否通过图灵测试,我猜测是不可能。
有了这么多具有启发性的应用之后,我们想象建立一个DeepL-Ops领域,为了保证生产环境的稳定性,我们会有一个chaos agent一直在搞破坏,比如关闭集群的某些服务,极度消耗服务器的网络流量,假装破坏硬盘,之后如果系统还可以正常对外工作,那么这个系统就是可靠的,这项工作我们称之为混沌工程。这里会出现一个问题,工程师无法100%去列举出哪些问题会导致服务异常,需要不断的依靠实际经验去积累,这样我们也就引入了DeepL-Ops训练机制。系统中存在一个chaos agent和一个order agent,前者是搞破坏使得系统故障,后者是修复系统使得系统正常工作,我们设计了一个机器学习模型,当chaos agent搞破坏的时候,order agent去努力修复系统,同时chaos agent也在进化,尽可能的破坏系统让order agent无法修复,如果order agent无法修复系统,agent会根据环境给予的反馈调整order rules generator模型,如果order agent修复了系统,chaos agent会根据现有环境更新chaos rules generator模型。当该模型训练完成之后我们把order agent放到系统中,当系统出现故障时,我们将故障信息输入到order rules generator模型中,从而让order agent去修复系统问题。