「ai」会写代码的AI开源了:掌握12种编程语言C语言写得比Codex还要好
认证:数码产品优质原创作者
本文有1255个文字,大小约为6KB,预计阅读时间4分钟
原文标题:会写代码的AI开源了:掌握12种编程语言C语言写得比Codex还要好
比 Codex 还会写 C 语言的 AI 代码生成模型,现在开源了!这段时间,用 AI 写代码可以说是大火,其中最著名的要属 OpenAI 的 Codex 和 DeepMind 的 AlphaCode。然而,这两个 AI 模型,全都没有开源:其中 AlphaCode 只给出了一些测试样例,而 Codex 只开放了 API。
△基于 Codex 的 Copilot
为此,来自 CMU 的几个研究人员,用 GPT-2 搞出了一个名叫PolyCoder的 AI 代码生成模型,而且还是开源的。
据研究人员表示,虽然 PolyCoder 最大只有 27 亿参数(相比 Codex 有 120 亿参数),但它用C 语言写出来的代码,比 Codex 的效果还要好。
这里面究竟有什么秘诀?
用 12 种编程语言代码集训练
首先来看训练用的数据集,这也是 PolyCoder 的最大特点之一。
此前,包括 Codex、CodeParrot 等 AI 代码生成模型,主要都是基于Python语言的代码来训练。
例如 Codex 的评估数据集之一 HumanEval,评估的也是生成 Python 代码的效果。
相比之下,PolyCoder采用了多种编程语言代码集来训练,一共有 12 种:
C、C#、C++、Go、Java、JavaScript、PHP、Python、Ruby、Rust、Scala 和 TypeScript。
其中,C 语言的代码量是最多的,达到了 221GB;而 Python 代码的数据量比 Codex 和 CodeParrot 用得都要少。
这里 PolyCoder 用的是 GitHub 上的公开代码,主要选取的是各种编程语言中比较受欢迎的库,每个库至少有 50 Stars。
据研究人员表示,每种编程语言库的 Stars 总数加起来不超过 25k,以避免模型生成的代码效果太过于倾斜最流行的编程语言(通常编程语言越流行,库的 Stars 就越多)。
通过提取库中的文件、经过简单处理(包括消除重复代码)后,一共筛选出大约254GB的数据用于训练。
然后是预训练的方法。
语言模型的预训练方法通常有三种。
第一种是自左向右的语言模型,根据上文预测下文,比较适用于代码生成等;第二种是掩蔽语言模型,基于上下文预测屏蔽片段,比较适合代码分类等;第三种是编解码器模型,比较适用于代码注释等任务。
这里 PolyCoder 主要采用的是第一种预训练方法。
相比于同样采用 GPT-2 训练的 CodeParrot 和 Codex,PolyCoder 在超参数设置上也稍微有一些差异:
PolyCoder 一共提供了三种不同的模型,分别有 27 亿参数、4 亿参数和 1.6 亿参数,研究人员可以根据自身需求和不同的训练能力来选取合适的模型。
那么,最终训练出来的 AI 模型,代码生成效果如何?
C 语言写得尤其好,但 Python 不行
研究人员将 PolyCoder 与已有的 AI 代码生成模型进行了对比。
由于 AlphaCode 不好比较(接口没开放),所以研究人员主要分析了下面这些模型,包括 GPT-Neo、CodeParrot 和 Codex 等。
其中蓝色的是开源的,橙色的是没开源的:
从参数量来看,PolyCoder 并不是最顶尖的,最大的 27 亿参数模型也只有 Codex 的四分之一不到。
研究人员先是用语言模型评估常用的困惑度对一系列模型进行了比较。
困惑度(Perplexity),用于衡量语言模型(LM)的好坏。困惑度越低,语言模型面对代码感到困惑的程度就越低,模型生成效果越好。
从图中来看,PolyCoder 在C 语言中意外取得了最好的效果(困惑度最低)。
用大量 C 语言训练 PolyCoder 的结果说明,即使模型整体原理不变(基于 GPT-2),单纯改变训练用的代码集,也能训练出擅长不同语言风格的 AI 代码生成模型。
可惜的是,从其他语言来看,生成的效果就完全没办法和 Codex 相比了:
例如,在主要用于评估 Python 代码的 HumanEval 上,PolyCoder 的能力远不如 Codex 好:
据论文分析,这可能是 Python 代码数据量、模型参数量不足等原因导致的。
此外,作者们也提到,做出 PolyCoder 的目的主要还是为了开源一个 AI 代码生成模型,让更多人参与研究和使用。
目前代码已经开源,无论是直接拿来用,还是试着在它的基础上开发新模型都可以。
感兴趣的小伙伴可以上手一试了 ~
作者介绍
一作许方正(Frank Xu),目前在 CMU 读博,研究方向是 NLP、信息抽取等,发表过多篇顶会论文,包括 ICLR、ACL 和 EMNLP 等。本硕毕业于上海交通大学,师从朱其立教授。
Uri Alon,在 CMU 进行博士后工作,研究方向是编程语言处理(PLP)、NLP 和深度学习。
Graham Neubig,CMU 助理教授,研究方向是 NLP、机器翻译和基于机器学习的自然语言理解。
Vincent J. Hellendoorn,CMU 计算机助理教授,主要研究方向是软件工程和机器学习,致力于利用智能方法帮助软件开发人员减少代码调试、程序优化等繁琐工作的时间。
不知道作者们是否已经在用这个 AI 撸代码了(手动狗头)
其他人还看了
双11无需纠结!看完这篇攻略,直接入手云米AI全域风空调SpaceE
新房装修选空调入手云米AI全域风空调Space-可爱的春雷王
AISR爱至电动牙刷值得购买吗(AISR爱至电动牙刷质量好吗)
郑重声明:本文“「ai」会写代码的AI开源了:掌握12种编程语言C语言写得比Codex还要好”,https://nmgjrty.com/shumacp_373844.html内容,由量子位提供发布,请自行判断内容优劣。
- 全部评论(0)
- 亚洲欧洲VAT更新了!网友:没错,更精彩了
- 亚洲欧洲VAT免费播放!网友:已经来了不少
- 亚洲欧洲VAT很多女主播加入!网友:这里没有任何限制
- 亚洲欧洲VAT不收费了!平台主播:今天开始免费!
- 天干天干天啪啪夜爽爽av被盛赞,网友们纷纷求续集!
- 日本linodeiphone69内容区开放了!网友:可以白嫖了
- 日产一区日产2区 维护成功,可以无限制进出了!
- Vodafonewififreehd晚上偷偷看!粉丝:低调一点!
- W永久939W乳液人气暴涨原因,无限制出入是关键!
- 大香煮伊在2020一二三久又开放了,还不限制出入!
- HAYAXURAX18永不失联!网友:还可以使用!
- 939w78v78w乳液永久w免费播放!网友:已经来了不少
- PRUBURBHD内容区开放了!网友:可以白嫖了
- 亚洲欧洲VAT出入无限制!网友:平台都这样才好!
- 精品无人乱码一区二区三区在开放视频!网友:确实开放了!
- 天天躁恨恨躁夜躁2020晚上偷偷看!粉丝:低调一点!
最新更新
- 亚洲欧洲VAT更新了!网友:没错,更精彩
- 亚洲欧洲VAT免费播放!网友:已经来了不
- 亚洲欧洲VAT很多女主播加入!网友:这里
- 亚洲欧洲VAT不收费了!平台主播:今天开
- 天干天干天啪啪夜爽爽av被盛赞,网友们
- 日本linodeiphone69内容区开放了!网友:可
- 日产一区日产2区 维护成功,可以无限制
- Vodafonewififreehd晚上偷偷看!粉丝:低调一
- W永久939W乳液人气暴涨原因,无限制出入
- 大香煮伊在2020一二三久又开放了,还不限
- HAYAXURAX18永不失联!网友:还可以使用!
- 939w78v78w乳液永久w免费播放!网友:已经
- PRUBURBHD内容区开放了!网友:可以白嫖了
- 亚洲欧洲VAT出入无限制!网友:平台都这
- 精品无人乱码一区二区三区在开放视频!
推荐阅读
- 「生物」我们应该寻找什么样的外星生命,高等的还是低等的?
- 「空间望远镜」韦布空间望远镜捕捉到布满恒星的创生之柱
- 「行者」从《双城之战》到《边缘行者》,游改动画迎来盛世?
- 「国际象棋」智能肛珠作弊案反转:19岁小将告世界冠军诽谤索赔7亿
- 「英伟达」不止是游戏党,他们才是被英伟达坑怕的人。
- 「索尼」索尼官宣!猜猜A7R5多钱?R2要价1.9万、R3要价2.4万、R4要价2.7万……
- 「癌症」一种癌症转移的关键因素
- 「智能手表」面世八年后,谷歌的智能手表生态终于迎来开放曙光
- 「adobe」用VR手捏3D模型,PS直接与甲方对线,Adobe新技术确实给设计师炫到了
- 「amd」RTX40的对手来了!AMDRDNA3显卡发布会官宣
- 「奥斯汀」苹果M3准备登场,库克展示奥斯汀AppleSilicon工程团队努力成果
- 「马修」Copilot要摊官司了!工作20年老程序员重新激活律师证,发起集体诉讼,
猜你喜欢
- [iPhone]iPhone13promax远峰蓝128G入手
- [安卓手机]realme真我GTNeo2开箱,金刚石冰芯散热系统+E4屏,5000mAh大电池
- [贴膜]红米9爆屏更换记录,弯曲的中框修复
- [智能机器人]编程从娃娃抓起,MakeBlock程小奔上手体验
- [智能摄像机]内置大电池,无需打孔走线,小米室外摄像机给你满满的安全感
- [充电器]65w网红氮化镓一次看个够
- [电脑支架]原汤化原食,LGErgo显示器支架
- [蓝牙耳机]中端耳机音质天花板,降噪很有一手,鹿图COCO真蓝牙降噪耳机评测
- [音频播放器]关于R01主板的主观看法,和一些碎碎念
- [充电器]双口快充,满足日常需求
- [VR设备]GOOVISLite头戴影院评测
- [蓝牙耳机]魅蓝Blus耳机体验,魅蓝依旧还是当年坚持做良品的青年良品
- [安卓手机]从5988跌至2749,256GB+鸿蒙OS+7nm麒麟,从高端市场跌至中端市场
- 「轻众测|素诺智能可视冲牙器」别急,对准再冲!素诺可视冲牙器让残渣无所
- 「九号新品Nano及Air T15」萌娃初体验——Ninebot九号平衡车Nano