到2040年大多数软件由机器来编写!(附论文)

2017 年 12 月 6 日 云头条
到2040年大多数软件由机器来编写!(附论文)

不过人们在编写代码方面仍会发挥作用。


美国能源部下属橡树岭国家实验室的研究人员推测,到2040年,机器学习和自然语言处理等人工智能(AI)学科领域迎来的进步将使编写大多数软件的主体由人类转为机器。


在一篇经由ArXiv发表的论文《人类在2040年是否还会编写代码,这对计算界的极端异质性而言意味着什么?》中,橡树岭国家实验室的几位研究人员杰伊•杰伊•比林斯(Jay Jay Billings)、亚历山大•麦卡斯基(Alexander McCaskey)、杰弗洛伊•瓦利(Geoffroy Vallee)和格雷格•沃特森(Greg Watson)表示,20年以后,机器将完成大部分编程工作。


这四位研究人员表示:“无论在研究机构还是在市场,都已经存在将帮助编写和采用机器生成的代码的主要技术。”


他们还预计,各有关方在努力提高生成代码的效率,可能会使编程变成一种相当平常的工作。


他们表示,如果人们果真需要编写一些代码,“他们可能会发现,使用自动完成和代码推荐功能比自己编写一行行新代码还要来得费时间。”


他们提到了表明当前研究趋势的几个例子:美国国防高级研究计划局(DARPA)推动机器学习的概率编程(PPAML)计划,该项目旨在让机器学习具有更广泛的可用性和适用性;DeepCoder和AutoML,这两个项目利用机器学习生成代码;用有限的输入来构建知识的本体生成工具,比如用于有向无环图的Dresden本体生成器(DOG4DAG);以及代码生成技术,比如Eclipse建模框架(Eclipse Modeling Framework)和Sirius。


他们还表示,面向科学代码库的应用编程接口(API)正在变得标准化,因而学术界只需要了解问题领域,不需要很精通使用API这方面。


无法保证未来肯定是这样,不过目前的DevOps(开发运维)实践/做法高度依赖自动化,由于AI方面的进展和人类程序员使管理大规模技术基础设施的工作实现系统化,将来只会更加依赖自动化。如今还在涌现出采用各种编程语言(比如Go)的工具,用于编写专门编写其他应用程序的应用软件。


这种系统面临的主要挑战之一将是,处理迥异不同的硬件架构和软件需求。研究人员预计机器学习系统会需要进一步的抽象层跨异构系统进行操作。不过他们提到了Facebook的最近研究项目,声称这表明机器也许可以彼此协商,传达各自的需求。


在无需码农即可编写代码这条路上面临的另一块绊脚石是,需要更深入地了解如何分配硬件资源,以便每个系统都得到最优化使用。只有在此基础上,自动化编程系统才可以利用IBM受人脑启发的神经形态芯片True North(这种芯片处理模式识别起来比双精度算法更胜一筹),选择算法和实现细节。然后,它可能转而使用量子计算机来优化代码。


比林斯、麦卡斯基、瓦利和沃特森认为自动化编码是专注于更高层问题的一条途径。 他们下结论道:“机器在人类指导下编写代码只会进一步提高我们探索宇宙、享受生活、高速传输Netflix视频流的能力,如果它让我们无需操心学习如何让极其不同的异构系统协同工作带来的麻烦,更是如此。”


卡内基•梅隆大学人机交互研究所的副教授杰夫•比格姆(Jeff Bigham)在发给IT外媒The Register的电子邮件中也表示,程序设计的性质在未来几年会发生变化,不过他对橡树岭国家实验室研究人员的一些假设提出了质疑。


他说:“到2040年,你仍需要懂得如何将问题分解成计算任务的人员(也就是计算思维方面的专家),但是那些人可能没必要像现在的程序员那样需要谙熟计算机语言、数据格式和API等方面的具体细节。”


他预计,23年后编程会变得更自然,高级语言能够适应句法上不正确的伪代码(pseudo code)。他把这个飞跃比作编程界在过去二十年所发生的变化。


他说:“1997年,我得知道几乎每个部分是如何工作的,我所能参考的是一些书,也许还有某个在线新闻组。而如今,我只要知道大体方向,然后我可以在Stack Overflow网站上找到具体细节。到2040年,机器学习将填补我目前希望有人在Stack Overflow上为我填补的空白。那将很了不起,不过还不是计算机真正为我编程。”


比格姆表示,自然语言处理异常困难,计算机仍然不是很擅长这方面。


他还对论文中提出的这一个问题提出了质疑:“给我一杯早晨的星巴克咖啡,按照标准假设,十分钟后咖啡温度是多少?”


该论文提出这个问题好比可通过自动化代码来加以克服的某种编程挑战。


比格姆表示,不应该作出这样的“标准假设”,因为这样一来掩盖掉了原本可以顺利编写出咖啡温度预测算法的好多问题,比如杯子材料、外面的温度、咖啡冷下来后有没有被喝掉,等等。


他说:“如果你认为现在程序员的角色是拿来一个完全明确的问题作为输入内容,然后把它变成机器可以理解的一种语言,那么到2040年,这样的程序员可能为数不多。即便是如今编写得最好的规范,也包含许多未明确说明的常识性假设。”


论文:


相关阅读:

中高端IT圈人群,欢迎加入!

赏金制:欢迎来爆料!长期有效!



登录查看更多
4

相关内容

随着开放科学和开放资源的双重运动将越来越多的科学过程带入数字领域,科学本身的元科学研究(包括数据科学和统计)出现了新的机会。未来的科学很可能看到机器在处理、组织甚至创造科学知识方面发挥积极作用。为了使这成为可能,必须进行大量的工程努力来将科学工件转化为有用的计算资源,并且必须在科学理论、模型、实验和数据的组织方面取得概念上的进展。本论文的目标是将数据科学的两大主要产物——统计模型和数据分析——数字化和系统化。使用来自代数的工具,特别是分类逻辑,在统计和逻辑的模型之间进行了精确的类比,使统计模型在逻辑意义上被视为理论的模型。统计理论,作为代数结构,服从机器表示,并配备了形式化不同统计方法之间的关系的形态。从数学转向工程,设计和实现了一个软件系统,用于以Python或R程序的形式创建数据分析的机器表示。表示的目的是捕获数据分析的语义,独立于实现它们的编程语言和库。

https://arxiv.org/abs/2006.08945

成为VIP会员查看完整内容
0
24
小贴士
相关资讯
相关VIP内容
专知会员服务
113+阅读 · 2020年6月10日
专知会员服务
105+阅读 · 2020年5月17日
专知会员服务
50+阅读 · 2020年3月26日
专知会员服务
17+阅读 · 2020年1月10日
专知会员服务
43+阅读 · 2020年1月10日
医疗知识图谱构建与应用
专知会员服务
169+阅读 · 2019年9月25日
相关论文
Text-to-Image Synthesis Based on Machine Generated Captions
Marco Menardi,Alex Falcon,Saida S. Mohamed,Lorenzo Seidenari,Giuseppe Serra,Alberto Del Bimbo,Carlo Tasso
3+阅读 · 2019年10月9日
Zi-Yuan Chen,Chih-Hung Chang,Yi-Pei Chen,Jijnasa Nayak,Lun-Wei Ku
3+阅读 · 2019年4月2日
Junlang Zhan,Hai Zhao
3+阅读 · 2019年3月1日
Data Augmentation of Room Classifiers using Generative Adversarial Networks
Constantinos Papayiannis,Christine Evers,Patrick A. Naylor
4+阅读 · 2019年1月10日
Di Lu,Spencer Whitehead,Lifu Huang,Heng Ji,Shih-Fu Chang
4+阅读 · 2018年11月7日
Shi Yan,Xue-cheng Tai,Jun Liu,Hai-yang Huang
4+阅读 · 2018年5月22日
Jianxin Lin,Yingce Xia,Tao Qin,Zhibo Chen,Tie-Yan Liu
3+阅读 · 2018年5月1日
Kaiming He,Georgia Gkioxari,Piotr Dollár,Ross Girshick
7+阅读 · 2018年1月24日
Xiaoqiang Lu,Binqiang Wang,Xiangtao Zheng,Xuelong Li
11+阅读 · 2017年12月21日
Anastasia Pentina,Christoph H. Lampert
3+阅读 · 2017年6月8日
Top