acm-header
登录

ACM通信

的观点

编程的过早死亡


键盘上的蓝色玫瑰

信贷:Yanishevska

深度学习(DL)已经到来,不仅用于自然语言、语音和图像处理,还用于编码,我将其称为深度编程(DP)。DP用于检测相似的程序,查找相关代码,将程序从一种语言翻译成另一种语言,发现软件缺陷,并从自然语言描述合成程序。大型转换器语言模型的出现10现在正被应用到项目中,结果令人鼓舞。就像DL是由互联网上大量可用的文本和图像数据支持的一样,DP是由开源存储库(如GitHub)中大量可用的代码支持的,以及通过npm和pip等现代包管理器重用库的能力。OpenAI的Codex是两个开创性的基于变压器的DP系统8以及Deepmind的阿尔法代码。18前者用于Github Copilot项目14并与开发环境集成,自动向开发人员推荐代码。后者生成代码来解决编程比赛中出现的问题。两者都取得了惊人的效果。目前正在进行多项努力,以建立用于DP基准测试的代码存储库,例如CodeXGLUE19和CodeNET。20.

DP系统的出现已经导致了一些耸人听闻的头条新闻,宣称在不久的将来编码将由计算机完成,而不是人类。1随着DL技术越来越好,越来越多的代码被存入公共存储库,程序员将被规范编写者所取代,他们将用自然语言列出他们想要的代码,然后代码就出现了。这种观点认为,DP将影响软件工程和编程,其影响将比目前的炒作所暗示的更大。为了远离炒作,我对这个问题进行了仔细的分析。我还认为,为了扩大DP的影响力,它需要采取更多学科的方法,结合软件工程、程序综合和符号推理等技术。注意,我并不反对DL将被用来解决许多今天由传统编程方法解决的问题16软件工程将不断发展,使这些系统更加健壮。17在这个观点中,我正在解决使用DL来综合程序本身的正交问题。


没有找到条目

登录阅读全文

登录

如果您是ACM会员、通信订阅者或数字图书馆订阅者,则使用您的ACM Web帐户用户名和密码登录以访问优质内容。

需要访问吗?

请选择以下其中一个选项以访问优质内容和功能。

创建一个网络帐户

如果您已经是ACM会员,通信订阅用户,或数码图书馆订阅用户,请设立网上帐户,以便阅览本网站的优质内容。

加入ACM

成为ACM会员可以充分利用ACM卓越的计算信息资源、网络机会和其他优势。

订阅ACM杂志通讯

获得完全访问超过50年的CACM内容,并每月收到印刷版杂志。

购买物品

非会员可以购买这篇文章或它出现的杂志的副本。
登录全面存取
忘记密码? »创建ACM Web帐户
Baidu
map