开发商的坏消息? 这个 AI 越来越擅长写代码

2023-05-22 0 464

开发商的坏消息? 这个 AI 越来越擅长写代码

决定学习哪种编程语言对当今的开发人员来说是一个大问题,因为这需要投入大量时间。 但在未来,人工智能 (AI) 模型通过理解问题的描述和编写解决方案来完成所有繁重的工作,这个问题可能会变得多余。

谷歌专注于人工智能的部门 DeepMind 的研究人员声称其 AlphaCode 系统可以用代码表达问题的解决方案,这些代码在新程序员参加的编程竞赛中获得中等分数。 这些竞赛要求人类理解用自然语言描述的问题,然后高效地编写算法代码。

在一篇新的非同行评审论文中,DeepMind 研究人员详细介绍了 AlphaCode 如何在之前举办的 10 场编程竞赛中平均排名前 54.3%,参赛人数超过 5000 人。 比赛在Codeforces代码竞赛平台上举办。

参见:随着需求激增,雇主迫切需要数据科学家

DeepMind 声称 AlphaCode 是第一个 AI 代码生成系统,在人类开发人员的代码竞赛中表现出竞争水平。 该研究可以提高程序员的生产力,并可以帮助非程序员在不知道如何编写代码的情况下表达解决方案。

因此,人类参赛者和 AlphaCode 需要解析对挑战或谜题的描述,并快速编写程序来解决它们。 这比使用 GitHub 数据训练模型来解决简单的编码挑战更困难。

与人类一样,AlphaCode 需要理解问题的多段自然语言描述、背景叙述细节以及在输入和输出方面对所需解决方案的描述。

为了解决这个问题,竞争对手需要创建一个算法,然后有效地实施该算法,这可能需要他们选择一种更快的编程语言,比如 C++ 而不是 Python 来克服这些限制。

AlphaCode 的预训练数据集包括 715 GB 的代码,这些代码取自 GitHub 存储库中使用 C++、C#、Go、Java、JavaScript/TypeScript、Lua、Python、PHP、Ruby、Rust 和 Scala 编写的文件。 该团队使用从 Codeforces 和类似数据集中收集的竞争性编程问题数据集对模型进行了微调。

DeepMind 给 AlphaCode 的提升是通过结合大规模的 Transformer 模型实现的。 这方面的例子包括 OpenAI 的 GPT-3 和谷歌的 BERT 语言模型。 DeepMind 使用基于转换器的语言模型生成代码,然后将输出过滤为一小组提交评估的“有前途的程序”。

“在评估时,我们为每个问题创建了大量的 C++ 和 Python 程序,比以前的工作大几个数量级,”DeepMind 的 AlphaCode 团队在一篇博文中解释道。

“然后我们将这些解决方案过滤、聚类并重新排序为我们提交给外部评估的一小组 10 个候选程序。这个自动化系统取代了竞争对手调试、编译、通过测试并最终 提交。”

DeepMind 在此处演示了 AlphaCode 如何为给定问题编写解决方案。

DeepMind 考虑了它试图实现的目标的一些潜在缺点。 例如,模型可以生成具有可利用弱点的代码,包括“来自过时代码的无意漏洞或恶意行为者有意注入训练集中的漏洞”。

SEE:Web 开发人员或 CTO,哪些技术职位的薪水增长最快?

此外,还有环境成本。 在谷歌的数据中心训练模型需要“数百 petaFLOPS 天”。 但从长远来看,人工智能代码生成“可能会导致系统能够递归地编写和改进自己,从而迅速导致越来越先进的系统。”

自动化存在降低对开发人员需求的风险,但 DeepMind 指出当今代码完成工具的局限性,这些工具极大地提高了编程生产力,但直到最近还仅限于单行建议并仅限于某些语言或短代码片段。

然而,DeepMind 强调它的工作远未对人类程序员构成威胁,但它的系统需要能够开发解决问题的能力来帮助人类。

“我们对代码生成的探索留下了巨大的改进空间,并暗示了更多令人兴奋的想法,这些想法可以帮助程序员提高他们的生产力,并为目前不编写代码的人打开这个领域,”DeepMind 研究人员说。

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 行业资讯 开发商的坏消息? 这个 AI 越来越擅长写代码 https://www.7claw.com/56677.html

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务