今天,TNW一则热门新闻炸开了锅:google AutoML 系统近日居然自己写了一串机器学习代码,其效率竟然超过了专业的研发工程师。这让我们人类的优越感何存?你们这些机器人学生啊,学习能力不要太强哦

作者 | 周翔

人工智能可谓是目前最热门的行业,与此同时,相关人才的身价也跟着水涨船高。根据拉勾网的数据,2017 年,人工智能招聘领域,2000 人以上大公司平均薪酬 25.2k。

而领英的数据则显示,截至 2017 年一季度,基于领英平台的全球AI领域技术人才数量已经超过 190 万,排名全球第一的美国相关人才总数超 85 万,相较而言,位列第七的中国只有 5 万人左右,缺口巨大。

在高需求和高薪资的双重刺激下,不管是学生物的,还是学材料的,想要转战 AI 的人越来越多,这也从侧面验证了为什么吴恩达等 AI 大牛每次推出新的在线课程都能引发一轮“集体高潮”。

不过,想要转行的同学要抓紧了,AI 既然可以速记员,取代翻译,未来有没有可能取代程序员呢?

5 个月前,谷歌开发出的 AI 自主设计的深度学习模型已经比创造它的工程师还要好了,如今这个 AI 系统又更进一步,在某些复杂任务上的表现也超越了人类工程师。

对此,你怎么看?


在人工智能的浪潮下,深度学习模型已经广泛应用于语音识别、机器翻译、图像识别等诸多领域,并取得了非常不错的成果。但是深度学习模型的设计却是一个艰辛且繁复的过程,因为所有可能组合模型背后的搜索空间非常庞大,比如一个典型的 10 层神经网络就有种神经网络组合,为了应对这样庞大的数量级,神经网络的设计不仅耗时,而且需要机器学习专家积累大量的先验知识。

GoogleNet 架构,从最初的卷积架构开始,这种神经网络的设计需要进行多年的细心试验和调试。

在人工智能顶级人才匮乏的情况下,为了让机器学习模型的设计过程更加简单,提升研发效率,谷歌于今年 5 月推出了“AutoML”,顾名思义,AutoML 实际上就是一种让模型设计过程自动化的机器学习软件,该系统会进行数千次模拟来确定代码的哪些方面可以作出改进,并在改变后继续该过程,直到达成目标。

为了测试 AutoML,谷歌将其自行设计的模型用在了专注图像识别的 CIFAR-10 与语言建模的 Penn Treebank 两大数据集上。实验证明,AutoML 设计的模型的性能表现与目前机器学习专家所设计的先进模型不相上下。令人尴尬的是,有些模型甚至还是 AutoML 团队的成员设计的,也就是说,AutoML 在某种程度上超越了自己的缔造者。

5 个月过后,AutoML 又往前迈进了一部。据外媒 TheNextWeb 报导,在某个图像识别任务中,AutoML 设计的模型实现了创纪录的 82% 的准确率。即使在一些复杂的人工智能任务中,其自创建的代码也比人类程序员更好,比如,在为图像标记多个对象的位置这一任务中,它的准确率达到了 42%;作为对比,人类打造的软件只有 39% 。

AutoML 的进展超出了很多人的预期,那么为何机器在设计深度学习模型这一任务上表现的如此出色?先让我们来了解下 AutoML 的工作原理。

AutoML 是如何设计模型的?

作为 AI 领域的领头羊,谷歌其实暗地里做了不少尝试,包括进化算法(evolutionary algorithms)和强化学习算法(reinforcement learning algorithms)等,并且都展现了不错的前景,而 AutoML 则是谷歌大脑团队利用强化学习取得的成果。

在 AutoML 架构中,有一个名为“the controller(控制器)”的 RNN(循环神经网络),它可以设计出一种被称为“child”的模型架构(子模型),而这个“子模型”在训练后可以通过特定任务来进行质量评估。随后,反馈的结果返回到控制器中,以此来帮助提升下一次循环中的训练设定。如下图所示:

生成新的架构、测试、把反馈传送给控制器以吸取经验——这一过程将重复几千次,最终,控制器会倾向于设计那些在数据集上取得更好的准确性的架构。

AI工程师古筱凡表示,AutoML 的运作过程实际上可以分成以下两部分:

  1. 元学习的热启动:在机器学习框架中寻找效果好的算法;计算不同数据集之间的相似度,相似的数据可以采取类似的超参数。

  2. 超参数优化,算法包括:Hyperopt(TPE 算法);SMAC(基于随机森林);Spearmint。输入不同的超参数为,以损失函数为准确率,调优器会在随机选择一些值的基础上,利用贪心算法去寻优。

下图的两个模型是基于 Penn Treebank 数据集设计的预测模型,其中左边是人类专家设计的,右边则是 AutoML 设计的。

谷歌团队表示,机器自行选择架构的过程其实和人类设计模型架构的过程是有共通之处的,比如两者都采用了合并输入,并借鉴了前向的隐藏层。不过,AutoML 也有一些值得一提的亮点,比如机器选择的架构包含了乘法组合( multiplicative combination),比如上图中 AutoML 设计的模型的最左边的“elem_mult”。对 RNN 而言,出现这种组合的情况并不常见,可能是因为研究人员并没有发现这种组合有什么明显优势。但是有意思的地方在于,近来正好有人提议过这种方法,并认为乘法组合能够有效缓解梯度消失/爆炸的问题。这意味着,机器选择的架构对探索新的神经网络架构有很大的帮助。

此外,这种方法或许还能教会人类:为何某些特定类型神经网络的效果更好?比如上图右边的架构有非常多的 channels,因此梯度可以向后传递,这也解释了为何 LSTM RNNs 的表现比标准 RNNs 的性能更好。

AutoML 开源地址是 https://github.com/automl,感兴趣的读者可以自己动手尝试一下。

AutoML 会取代 AI 工程师吗?

AutoML 能在短时内取得显著进步,证明了用机器设计模型这个方向是有前途的,但是 AutoML 的终极目的是为了取代 AI 工程师吗?

现如今,AI 专家必须通过本能和试错来不断调试神经网络的内部架构。加州大学伯克利分校研究员 Roberto Calandra 表示 :“工程师的很大一部分工作本质上非常无聊,需要尝试各种配置来看哪些(神经网络)效果更好。”Calandra 认为,因为要解决的问题越来越难,神经网络也越来越深,未来设计一个深度学习模型的将会是一个艰巨的挑战。

而从理论上来讲,AutoML 未来设计一个深度神经网络所耗费的时间,与人类专家相比几乎可以忽略不计,而且这个由机器设计的模型的效果也会更好,显然 AutoML 将大有可为。

但是,这并不意味着 AutoML 会将人类从 AI 系统的开发过程中剔除出去。

实际上,AutoML 的主要目的会降低机器学习的门槛,促进 AI 的民主化。要知道,即便实力雄厚如谷歌,也不敢说自己已经拥有足够的 AI 人才,因此降低门槛,提高效率,对 AI 行业的发展至关重要。

谷歌首席执行官 Sundar Pichai 在上周的发布会上表示:“如今,这些(AI 系统)都是机器学习专家亲手搭建的,而全世界只有几千名科学家能够做到这一点。我们希望让成千上万的开发者也能够做到这一点。”

因此,虽然 AutoML 可能没有继承谷歌顶尖工程师的理论基础和数学才华,但是它却可以帮助 AI 工程师节省时间,或者启发他们,为他们提供灵感。

古筱凡也认为,AutoML 是真正的机器学习,它把经验性的工作自动化,现在的机器学习只是半成品。AutoML 能极大地降低未来机器学习的门槛,将是普通人使用机器学习的利器。

据悉,AutoML 团队将会对机器所设计的架构进行深入的分析和测试,帮助 AI 工程师重新审视自身对这些架构的理解。如果谷歌成功,这意味着 AutoML 将有可能引发新的神经网络类型的诞生,也能让一些非专业研究人员根据自己的需要创造神经网络,造福全人类。

AutoML 可能不会取代 AI 工程师,但是机器都这么努力了,你还有什么借口偷懒!

就在这篇文章的留言区,营长找到了好几条评论称:“作为AI工程师的我,感到了深深的压力。机器学习能力照着么发展下去,没准饭碗儿就真丢了......”

参考资料:

https://research.googleblog.com/2017/05/using-machine-learning-to-explore.html

https://thenextweb.com/artificial-intelligence/2017/10/16/googles-ai-can-create-better-machine-learning-code-than-the-researchers-who-made-it/#

https://zhuanlan.zhihu.com/p/27792859

https://www.wired.com/story/googles-learning-software-learns-to-write-learning-software/

营长互动时刻:

同学,你觉得AI工程师的未来之路,到底是越来越难了,还是越来越容易了呢?请在留言区发表高见告诉营长哦

惊呆!谷歌AI自动编程效率超研发工程师,作为AI工程师的我感到了森森的压力相关推荐

  1. Comate代码助手推出,现场生成了贪吃蛇游戏,我们距离AI自动编程还有多远?

    Comate代码助手推出,现场生成了贪吃蛇游戏,我们距离AI自动编程还有多远? 百度智能云推出"Comate"代码助手,并正式开放邀测,不算很意外. 毕竟让AI写代码,跑一跑贪吃蛇 ...

  2. 弹幕炸了!OpenAI直播大秀语音指挥AI自动编程,也就比老罗TNT强亿点点

    金磊 梦晨 明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 刚刚,OpenAI又玩出了一个新高度. 只输入自然语句,AI就自动做了个小游戏! 划重点:不! 用! 你! 编! 程! 来,感受 ...

  3. OpenAI 直播大秀语音指挥 AI 自动编程

    本文转载自IT之家 刚刚,OpenAI 又玩出了一个新高度. 只输入自然语句,AI 就自动做了个小游戏! 划重点:不! 用! 你! 编! 程! 来,感受一下这个 feel. 第一步,"小人儿 ...

  4. Copilot 自动编程AI工具

    OpenAI与GitHub联合构建的AI自动编程工具Copilot,Copilot基于自然语言处理模型GPT-3搭建而成,Copilot预览版已经正式上线Visual Studio Code平台 Op ...

  5. 关于AI自动写作的资料

    AI 自动写作 · 产品调研 第一种是AI新闻时事类写作,核心场景是在内容平台通过人-机混编的方式,机器帮助编辑(内容创作者)减少重复劳动,提高生产效率,主要调研了今日头条的xiaomingbot.腾 ...

  6. 写文章很难,ai自动生成文章为你来排忧

    常常听到有人说写文章难,一篇文章不知如何开头,一篇文章写了又删,删了又写,一篇文章要写几个小时等等问题,对于那些不喜欢写作的人来说,写文章确实挺难的.但是由于工作中的原因有时候又不得不写,写又写不出内 ...

  7. JAVA--AI编程助手【代码智能补全工具】盘点,让AI提高你的编程效率

    1. 什么是AI编程助手 近几年,随着人工智能的迅速发展,AI在各行各业都有所应用. 特别是近两年,面向开发者的AI开发工具也是层出不穷,如GitHub Copilot.Codota.TabNine. ...

  8. AI自动写作辅助工具网站推荐,轻松提升写作效率

    给大家推荐几个AI自动写作的素材网站,可以帮助我们适当提升写作效率,也可以用来当作写作的参考,多利用工具并不就是偷懒. 1.Get写作‍ 地址传送:https://getgetai.com/ Get写 ...

  9. Copilot使用教程:让AI助手提升你的编程效率

    OpenAI推出的Copilot是一个基于GPT-4的代码生成器,它可以帮助你在编写代码时给出智能建议,从而提高你的编程效率. 文章目录 什么是Copilot Copilot的安装与配置 Copilo ...

最新文章

  1. Numpy入门教程:练习作业02
  2. 20145222黄亚奇《Java程序设计》第8周学习总结
  3. 堆、栈、方法区、直接内存
  4. 《Spark快速大数据分析》—— 第三章 RDD编程
  5. WinForm 里面ListBox的问题
  6. Android Service下载文件并自定义通知提示下载
  7. IntelliJ IDEA启动Tomcat后,却无法访问Tomcat主页
  8. python应用实战案例:python如何实现异步爬虫?
  9. python app服务器_Python应用02 Python服务器进化
  10. Product文本格式说明
  11. SVN钩子HOOK设置自动备份,服务本地可以看到所有更新内容。
  12. OpenShift 4 - DevSecOps Workshop (Jenkins版)
  13. html在线拖拽环绕,用HTML5原生实现拖放或排序
  14. CPU负载均衡之cpufreq使用
  15. 【IT基础】如何休息(每天都很累,但你真的会正确的休息方式么)
  16. 穿越“宽带接入”的迷雾 :WAN接入关键技术详解(以及 cisco 路由器产品基础知识)...
  17. Windows10关闭自动更新
  18. pe计算机找桌面文件,如何在Windows pe打开桌面文件夹?找不到原桌面文件夹怎么办?...
  19. 系统漏洞利用与提权攻击机场景
  20. 斐波那契螺旋线系列一:斐波那契数列介绍

热门文章

  1. #pragma pack 内存对齐
  2. 介绍ABC 蜂群算法网站
  3. Centos 7 意外断电如何处理
  4. html css 布局知识概况
  5. 快速入门linux系统的iptables防火墙 1 本机与外界的基本通信管理
  6. socket通信——通过Udp传输方式,将一段文字数据发送出去
  7. c# Pdf 转换图片
  8. 【MATLAB】符号数学计算(一):符号对象的创建
  9. 再一次输给了AI,弯道急速超车、登上 Nature 封面
  10. 大厂的面试官是如何挑人的?