当前位置:经济频道首页 > 国内经济新闻 > 正文

“996”码农的福音:AI辅助写代码(2)

2019-04-29 09:33:48    科技日报  参与评论()人

王巍表示,人的自然语言(如法语)是一个由字和词组成的序列,通过统计模型分析,能够根据上文来预测下文出现的概率,可以将其理解为更高级的联想输入法或打字提示。而面向机器的编程语言,一方面是一个由代码组成的序列,另一方面也有其内在的代码组织结构,通过对这两者的建模,在程序员输入代码的过程中,可以利用人工智能技术识别其意图并预测其可能将要输入的代码,从而辅助程序员简化新写代码的工作量。另外,通过模式识别,在程序员修改一部分代码时,AI可以识别出现有代码中其他需要做类似修改的相关代码模块,甚至直接提供代码更新方案的选项,从而大大减少程序员修改代码的工作量。

在AI术语中,预测下文或代码属于序列的学习和预测,而递归神经网络则是实现序列建模的一种解决方法。长短期记忆网络(LSTM)是目前比较流行的一种递归神经网络,谷歌在论文利用LSTM来对已有的代码建模,从而识别和预测复杂、动态的代码编辑序列。

能协助程序员完成哪些工作

王巍介绍,目前程序员编程使用的开发工具IDE(集成开发环境)已初步具备一些简单的提示功能,比如参数的自动填充、构造函数的自动初始化等,在实际操作中一定程度上提高了程序员的效率。而谷歌的研究是面向更为复杂的编辑序列模型,其方案对大规模代码编辑数据有更强的适用性。

如果该研究能够实现工业化应用,无疑对于一线程序员和科技公司来说是重大福音。在AI的预测和识别辅助下,程序员新写代码和修改代码过程中高度重复性的工作将大幅简化,机器的加入将直接降低程序员的工作量和疲劳感。

程序员的解放之路还有多远

王巍表示,谷歌的研究目前仍在试验阶段,距离大规模工业化应用仍有一定距离。另外,部分媒体对此报道也有一定炒作成分,谷歌研究的定位目前仍限于辅助编程,还远远无法完全代替人类。在可预见的未来,机器创造程序仍是科学幻想,编程只能由人来完成。

从技术角度上看,人工智能还无法完全理解人的复杂意图,也没有办法形成有效的创造力,目前也看不到解决这一问题的技术路径。另外,编程的目的是要形成产品并实现社会价值,其中存在责任界定问题,从社会层面看,人工智能也不应代替人做出决策。

然而,技术总是在短期内被高估,但是在长期内又被低估。长期来看,在AI辅助下,程序员繁重的机械劳动有望大幅减少,但创新性工作仍需人类智慧去完成。“码农”将成为“园艺师”,在AI辅助下解放更多时间,并将更多精力投入到创作之中,枯燥的“画匠”工作会变得更加有趣,程序员“996”工作制或许也会成为历史。

相关报道:

    404 提示信息
    404

    您访问的页面找不回来了!

    返回首页
      您感兴趣的信息加载中...

    相关新闻