论文自动转代码!IBM印度大三实习生搞了个神奇研究(已中AAAI)

简介:
本文来自AI新媒体量子位(QbitAI)

深度学习的论文越来越多了~

多到什么程度?Google scholar的数据显示,2016年以来,人工智能领域新增的论文已经超过3.5万篇。arXiv上,AI相关的论文每天都不下百篇。

刚刚结束不久的计算机视觉会议ICCV上,发表了621篇论文;2018年的ICLR,有1004篇论文正在匿名开放评审;NIPS 2017共收到3240篇论文投稿。

研究成果极大丰富了,但离应用到产品中,还差一大步:把论文转化成代码。毕竟,作者顺便提供源码的是少数。

怎么办?

IBM印度研究院最近公布了一项新研究:DLPaper2Code,顾名思义,这个程序能够用深度学习技术,将论文转化成代码。

0194888b495e4082d99b2f090b98cbc5425147e7

 论文转代码的过程

这么神奇?!该不是看到一篇假研究?

坦白讲,相关论文DLPaper2Code: Auto-generation of Code from Deep Learning Research Papers已经被AAAI 2018接收为会议论文。

AAAI是人工智能顶会之一,明年就是第32届了,2月2-7日在美国路易斯安那州的新奥尔良召开。百度、京东是大会的黄金赞助商。

cd33ade2be895c369c2e16d97ecf33d4787e4264

深度学习论文自动转代码

这篇论文中指出,由于大部分深度学习论文都会用流程图来表示神经网络模型的设计模式,因此,在论文转换成代码的过程中,DLPaper2Code首先提取、理解论文中描述的深度学习设计流程图和表格,将它们转化成抽象的计算图。

然后,它会把抽取的计算图转换成Keras和Caffe框架下的可执行源代码。

IBM的这项研究,总共生成了5000篇arXiv深度学习论文的Caffe和Keras代码,还创建了一个网站,供同行们众包编辑这些代码。不过,这个网站的地址还没有公布,目前只能看到截图:

2a030c746e345b690215b55880a167f7b7d31edd

在提取流程图的过程中,IBM的研究员们遇到了一些障碍:他们需要让程序提取论文中所有图表之后,再进行一次分类,找出包含深度学习模型设计的那些,去掉那些和模型相关性不大的描述性图片和展示结果的表格。

但是,论文中介绍深度学习模型设计的图千奇百怪,表格的结构也各不相同。

怎样让程序自动找出有用的图表呢?IBM研究员们人肉处理了论文中的3万张图,将深度学习模型设计图分成了5大类:

f65b2d78e134a30b3dacc02d7dfb7f7e9e0d877f

 5大类深度学习模型设计图

1. 神经元分布图;

2. 2D Box:将每个隐藏层表示为一个2D方块;

3. Stacked2D Box:将神经网络每一层表示为堆叠的2D方块,表示层的深度;

4. 3D Box:将每个隐藏层表示为一个3D立方体结构;

5. 表示整个流程的Pipeline plot。

而表格,主要包括横排表示模型设计流程和纵列表示模型设计流程两类。

在此基础上,他们构建了一个细粒度的分类器,来把图表分到上面提到的5类图2类表之中,然后就可以使用OCR等工具将图表中的内容提取出来。

cd95c04a37965fcd847767865e267b9028e31512

 从图中提取内容的过程

图表内容提取出来之后,就可以根据这些信息构建计算图并生成源代码了。

e000b6c4a2a507348c67a1108ea6a463840bd150

 池化2D层对应的计算图、Caffe(Protobuf)和Keras(Python)代码

自动生成的代码究竟怎么样呢?

为了对DLPaper2Code进行评估,IBM研究员们创建了一个包含21.6万份设计可视化图的模拟数据集,在这些数据集上的实验显示,上面讲的模型,在流程图内容提取上准确率可达93%。

AI自动化畅想曲

上面这个研究。来自IBM印度研究院。

共有五位署名作者:Akshay Sethi、Anush Sankaran、Naveen Panwar、Shreya Khare、Senthil Mani。其中第一作者Akshay Sethi,明年才会本科毕业。目前是IBM印度研究院的实习生。

嗯,实习生又开挂了。中外概莫能外~

但这么一篇清新脱俗的研究,真能在实践中应用么?

在reddit上,不少人还是对这篇论文有点心生疑虑。比方有人觉得这个论文很有意思,但是细细读下来,还是有些地方比较奇怪。但也有人觉得虽然标题有点唬人,但这项研究感觉还是不错。当然也有人直言:浪费时间。

更多的结论还有待时间考验,但归根结底,这些都是AI自动化方向的一种探索。让AI自己搞定AI,让软件自己编写软件,一直都是研究人员追逐的目标。

比方今年5月,Google发布了AutoML。对,就是跟今天正式推出的TensorFlow Lite同天发布的AutoML。

AutoML就是要让神经网络去设计神经网络。谷歌希望能借AutoML来促进深度学习开发者规模的扩张,让设计神经网络的人,从供不应求的PhD,变成成千上万的普通工程师。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

也是在今年,MIT学者开发出一套系统,能够自动给代码打补丁。

听起来,以后码农越来越好干了呢。其实不是。

要知道,微软和剑桥联合开发了一个系统:DeepCoder。就能够通过搜索一系列代码建立一个完整的程序,可达到编程比赛的水平。而且,这个系统还能通过自我训练能够变得更聪明。未来程序员的饭碗也不是很铁了。

还记得量子位昨天发的那篇报道么?《深度学习蚕食软件,十年内大部分软件工作不再涉及编程》。

前端也别笑。有家公司正在开发和完善一套“pix2code”的深度学习系统。正这个系统能够根据输入的图形用户界面(GUI)截图直接输出对应的代码,从而省去前端手动编写代码的过程。不信?传送门在此

640?wx_fmt=png&wxfrom=5&wx_lazy=1

嗯,一个新时代真的来了。

论文获取

f97f99e87f4a408d1aec3b807462dd73fd3937a8

想要下载这篇论文,可以在量子位微信公众号(ID:QbitAI)后台对话界面,回复:“p2c”三个字符即可。

本文作者:李林 岳排槐
原文发布时间:2017-11-15 
相关文章
|
11月前
|
开发工具
IBM Watson提供的认知计算服务介绍
IBM Watson提供的认知计算服务介绍
|
传感器 人工智能 自然语言处理
IBM Watson 持续扩张,认知计算正悄然改变我们的生活
在去年 IBM 发布的一则很有创意的广告中,Watson 用 IBM 最新的认知计算机咨询单元与 Bob Dylan 聊了半分钟。Watson 说它每秒能读 8 亿页,并识别出 Dylan 作品中常用的主题,比如时间流逝和爱情消逝。
295 0
|
物联网 区块链 网络架构
带你读《基于区块链的物联网项目开发》之一:了解物联网并在IBM Watson物联网平台上开发
本书首先概述当前业务场景中的物联网概念,帮助读者在IBM Watson物联网平台上开发自己的设备,并使用Watson和Intel Edison创建物联网解决方案。之后介绍如何利用Hyperledger框架开发区块链网络,以及如何创建自己的集成区块链和物联网解决方案。接下来的章节讲述了如何在IBM Cloud平台利用物联网来实现端到端的区块链解决方案。最后,你将掌握如何将物联网和区块链技术融合,利用实践和驱动程序来开发实用集成解决方案。
|
人工智能
IBM Watson被曝给出错误癌症治疗建议,是悲剧还是误会?丨科技云·视角
曾经是公众心目中“人工智能”代名词的IBM Watson,在近4年砸下几百亿美元的研发投入后,前景反而愈发暗淡。医生抱怨Watson给出错误判断,多家医院终止了与Watson肿瘤相关项目,Watson真的能治病吗? 近日,外媒Stat News爆出了IBM的一份内部文件,其中提及Watson计算机经常给出错误的癌症治疗建议,比如给一个已经大出血的癌症病人开了有可能会导致出血的药。
9326 0
|
人工智能
IBM Watson健康部门裁员:花重金收购的医疗科技公司成重灾区
消息人士称,IBM Watson Health正在裁员50%至70%,之前收购的三家医疗科技公司的员工成为这次裁员的重灾区。同时,AI医疗行业数据不完整、隐私等问题,以及巨头之间的竞争,都给IBM Watson Health造成了压力。
1679 0