金磊 梦晨 发自 凹非寺
量子位 | 公众号 QbitAI

搞事情!

AI“看”了一眼GitHub上人类都是怎么提交更新(commit)的,然后就模仿人类程序员修改代码……

最终,这个AI还成功“调教”出了个智能体机器人:

没开玩笑,这种细思极恐的事情,在OpenAI最新发布的一项研究中,就真真的发生了……

原本呢,研究人员要解决的是一个遗传程序设计(GP)问题——让一个智能体机器人学会移动。

(GP是演化计算中的一个特殊领域,它主要针对自动构建程序去独立解决问题。)

但OpenAI剑走偏锋,把自家的大规模语言模型(LLM)放了进来,结果就是一个大大的“万万没想到”。

以前在智能体演进的过程中,人类研究员是需要参与进来做一些细节调整、确定演进方向等工作,让智能体往好的方向发展。

现在好了,这些活儿都让大模型给包揽了,自己学自己写代码自己去“调教”

这事一经论文一作Joel Lehman在网络曝光,瞬间引发了网友们的大量关注:

一位程序员网友在看完后直呼“跟不上(技术)发展的步伐”了:

甚至OpenAI自己都在研究中说:

弥合了进化算法在人类思想水平运行的鸿沟。

那么这件“魔幻”的事情,AI到底是怎么办到的?

看一眼GitHub,AI自己动手敲代码

在虚拟环境中设计可移动的机器人,是遗传算法研究中很火的一个项目。

特别是Sodarace竞赛因为需要的计算量少,过程方便可视化很受欢迎。

规则很简单,由“关节”和“肌肉”组成的机器人在各种地形上赛跑。

OpenAI还特意把整个竞赛程序从专用的遗传编码改写成了Python版本,为了展示新方法对现代编程语言的通用性。

比如这样一段Python代码,就可以作为初始种子机器人。

定义好一个正方形的四个顶点关节、终点关节,相互之间都用“肌肉”连接好后,结果如下。

不过这样方方正正的结构一动都不能动,接下来就需要靠遗传算法对代码做修改。

研究团队认为,用传统遗传算法修改代码VS人类程序员自己动手,在效率上还有两点差距:

一个是软件越来越复杂,人类可以搞模块化的代码复用来应对,而目前最先进的遗传算法也无法在人类使用的编程语言上做到这一点。

另一个是几乎所有遗传算法靠的都是随机突变(mutation),而人类程序员每一次修改代码都带有目的,或者是增加功能、或者是改进效率、又或者是修复bug。

那么有没有办法让AI学习到人类是如何修改代码的呢?

还真有,所需的训练数据都存在GitHub上。

优秀的程序员每次提交代码都会写好commit描述,说清楚这一次提交修改了什么内容。

commit描述配合上提交前后代码对比的diff数据,就是AI绝佳的学习材料。

研究人员筛选出一些描述意图明确、修改的代码量不大的提交数据来训练一个GPT-3架构的AI模型。

相当于让AI向人类程序员学习了如何有目的的修改一段代码。

这篇论文所用的模型也不需要完全版GPT-3的1750亿参数那么大,最高7.5亿参数就足以。

由此得到了基础的AI模型,将在遗传算法中扮演变异算子的角色。

接下来让AI自己设计新机器人的流程总共分三步。

第一步,先用经典的MAP-Elites算法生成一组初始机器人。

这是一种QD(质量多样性)算法,可以保证机器人行为不同且质量都很高。

第二步,用第一步产生的初始数据做预训练,让AI先学会设计出训练数据分布内的机器人。

也就是开头处那张在网上惊艳了众人的动图,展示了AI如何一步步把无法移动的“方块”改造成双腿交替弹跳移动机器人。

第三步,再结合上强化学习算法做微调,让AI能根据不同地形条件生成能适应环境的机器人。

最终,研究人员选取了从最初的三个种子进化而来的机器人做效果展示。

可以看出它们的结构和移动方式都完全不同。

网友惊呼“思路清奇”

这项研究一经公布,可谓是一石激起千层浪。

许多网友都惊叹于这种“大模型+演进算法”结合的新奇方式:

做过与之相关工作的研究人员也表示,从未想过能用大模型以diffs的形式来学习突变:

而除了对研究形式和本身的讨论之外,也有网友配上了这样图:

Emmm……是有点那种味了。

团队介绍

这项研究的团队成员均来自OpenAI。

论文一作是Joel Lehman,是一位机器学习科学家。其聚焦的领域包括人工智能安全、强化学习和开放式搜索算法。

与此同时,Joel Lehman此前基于对人工智能发展的思考合写过一本科学读物《为什么伟大不能被计划出来:客观的秘密》:

而对于这项研究的下一步,Joel Lehman本人表示:

还有一个重要问题,就是模型能够多大程度上应用到其它环境中。

GP中的突变功效现在可以通过ELM大幅提高,这将激发出一系列广泛的新应用和研究方向。

那么这项研究是否也对你产生了新的启发呢?

欢迎在评论区留言讨论~

参考链接:

[1]https://arxiv.org/abs/2206.08896
[2]https://twitter.com/joelbot3000/status/1538770905119150080?s=21&t=l8AASYjgC6RAEEimcQaFog

—  —

「量子位·视点」直播报名

随着生物识别技术的发展,数字时代的增强身份认证如何打造?既有安全又有隐私的电子证照如何实现?而人工智能的本质和真正价值将会如何在产业数字化中体现?

6月23日周四,参与直播,为你解答~

点这里

AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了相关推荐

  1. 【Nature重磅】OpenAI科学家提出全新强化学习算法,推动AI向智能体进化

    深度强化学习实验室 官网:http://www.neurondance.com/ 论坛:http://deeprl.neurondance.com/ 编辑:DeepRL 近年来,人工智能(AI)在强化 ...

  2. 基于python编码实现多智能体进化算法求解带硬时间窗约束的VRP问题(适配版)

    作者:Logintern09 发布时间:2022年10月23日16时 出处:CSDN博客 专栏:<智能优化算法> 书接上回:多智能体进化算法求解带硬时间窗约束的VRP问题(附完整pytho ...

  3. 多智能体进化算法求解带时间窗的VRP问题(python)

    作者:Logintern09 发布时间:2022年8月19日12时 出处:CSDN博客 专栏:<智能优化算法> 前言:研究学习文献<带时间窗VRP问题的多智能体进化算法>,掌握 ...

  4. AI免费写代码chatGPT软件Build Software. Fast

    AI免费写代码chatGPT软件Build Software. Fast 文章目录 AI免费写代码chatGPT软件Build Software. Fast 1.软件简介 2.软件安装 3.使用教程 ...

  5. 教机器写代码:增强拓扑进化网络(NEAT)

    教机器写代码:增强拓扑进化网络(NEAT) 在这篇文章中,我将向大家介绍一种名为增强拓扑进化网络(NEAT)的机器学习方法. 介绍 我喜欢学习.每当遇到从未接触过的书籍或论文,并开始阅读的时候,我都会 ...

  6. 不用写代码,就能训练测试深度学习模型!Uber开源AI工具箱Ludwig

    乾明 发自 凹非寺  量子位 报道 | 公众号 QbitAI 让代码的归代码,让AI的归AI. 在不写代码就能进行AI开发的道路上,Uber今日又往前踏了一步. 刚刚,Uber宣布开源Ludwig,一 ...

  7. python在哪里写代码比较适合-AI辅助写代码,Python之父都爱不释手的工具

    我刚看到这个工具的时候,也是一脸懵x,AI?机器学习?辅助?如果能全自动写出代码得多好,不过真要是这样,在座各位的就业危机就彻底来了. 言归正传,这个工具是-- kite 这是一款IDE插件,使用机器 ...

  8. AI绘画最强工具:集成所有国内外主流大模型AI绘画能力文生图、图生图、图修复和超分辨率能力。

    AIGC(Artificial Intelligence Generated Content)登上舞台,以高效.精准.定制化等能力特征,重新定义了内容生产方式. 只需通过4行代码就能实现强大的文图生成 ...

  9. AI博弈论:DeepMind让智能体在非对称博弈中找纳什均衡

    Root 林鳞 编译自 DeepMind官方博客 量子位 出品 | 公众号 QbitAI 随着人工智能系统在现实世界中扮演越来越重要的角色,理解不同的系统如何相互作用至关重要. 刚刚,DeepMind ...

最新文章

  1. Lucene4 入门(2)–Field类及辅助类说明
  2. 聊聊 SpringCloud 中的父子容器
  3. 各个系统动态多路径软件识别LUN的方法
  4. Docker搭建Nacos1.3+Seata1.4+MySQL8分布式事务(服务端)
  5. 分布式消息通信ActiveMQ原理-消费消息策略-笔记
  6. js 日期星期 带农历
  7. 网页版blast构建
  8. oracle 并行执行脚本,批量执行Oracle脚本
  9. 【codevs1079】回家
  10. 创业者创业之前,应该思考如下这些问题
  11. LINUX下opencv的编译安装
  12. 推荐系统实践(四)----基于标签的推荐算法
  13. 理解 CMOS IMAGE Sensor
  14. Java打印斐波那契数列
  15. iOS 13 苹果登录实践 Sign In with Apple
  16. 依图科技发布语音开放平台,联袂微软、华为撬动语音市场
  17. 百度云盘停止服务器,又一家网盘关闭!不要再问为什么百度网盘要收费了
  18. SuperMap BIM+GIS-Revit模型处理-背景
  19. 区块链开发如何选择底层平台和开发语言?
  20. 学计算机在职硕士,计算机在职研究生的学习方式有哪些?

热门文章

  1. 二手书店APP软件开发定制
  2. Android 直播中弹幕、带货和键盘的交互
  3. 2022数学建模国赛ABC题思路
  4. 认知科学早期的计算机隐喻理论是什么,相对于认知科学,首先我们得从这六个问题着手...
  5. 使用约会应用Tinder时没人关注你?花钱就能插队露脸半小时
  6. “2019年新出的境外云闪付是什么?
  7. 关于香港高防IP需要关注的几个问题
  8. 乔布斯逝去十年 苹果坠入凡间?
  9. P4414 [COCI2006-2007#2] ABC
  10. 全自动软化水设备:全自动软化水设备选型要点说明