麻省理工、微软为AI量身打造了一套leetcode编程题
点上方计算机视觉联盟获取更多干货
仅作学术分享,不代表本公众号立场,侵权联系删除
转载于:量子位
AI博士笔记系列推荐
周志华《机器学习》手推笔记正式开源!可打印版本附pdf下载链接
你见过这种编程题目描述方式吗?
不用自然语言描述,也没有输入输出示例,你所看到的就只有一个Python函数。
这是来自MIT、Allen AI和微软的研究人员提出的一种全新的编程题目描述方法:
每个题目都由一个简短的Python函数f定义,目标是找到一个输入x,使f输出true。
这样的题目形式可以让AI审题更容易,人类程序员的理解也不会受到影响。
AI编程,道路真是越来越平了啊。
接下来就来详细看看这个研究吧。
没有自然语言描述的编程题目
再来解释一下这种描述方法:
题目采用Python函数的形式,参数为答案。
解题的目标是找到使函数输出为真的输入x,即满足f(x)= true的正确答案。
现在请你举一反三:求解一个有1000个不连续“o”的字符串,用这种新形式如何描述呢?
正确答案:
下面是另外两道题目的描述示例。
动态规划—最长单调递增子序列问题:
经典的汉诺塔 (Towers of Hanoi ):
研究人员按此种出题形式囊括了各种编程题,提出来一个开源数据集:叫做P3。
该数据集题型非常全面:涉及不同难度、不同领域和不同算法工具等方面的题目。
有简单的字符串操作问题;
有经典如汉诺塔和国际象棋(例如,骑士游历算法和N皇后问题变体)等难题;
也有两人挑战寻找最佳策略的题型,如井字棋(Tic-Tac-Toe)、石头剪刀布、珠玑妙算Mastermind等;
还包括来自国际数学奥林匹克竞赛(IMO)和国际大学生程序设计竞赛(ICPC)的题目,如各种图论和数论难题。
一共包含208种题型、14万+的题目,并且还在不断更新中。
每个题目都提供了至少一种答案。
这套新颖的编程挑战题库数据集,抓住了编程题目的本质,可用于教AI编程并评估AI的编程能力。
研究人员表示,这套题可以对AI的编程能力进行客观评估。因为不用查看答案,就能直接验证解答的正确性。因此,这种题目不会增加AI学习任何答案偏差的负担。
希望这个数据集可以开发出新的AI编程解决方案
不同AI求解器根据这些题目编程的效果如何呢?
研究人员做了一些深入的实验,开发了基于随机森林、Transformer和不同类型GPT-3 prompts的AI求解器,它们采用不同参数枚举、自顶向下的方法,使用这个P3数据集来评估性能。
首先,测试这些求解器在这个数据集上利用此前解决题目的方法来解决新题目的自举效率(bootstrapping efficacy)。
结果发现,增加尝试次数可以解决新题目。但它们也能通过学习过去的经验,更快地解决新的难题。
下图为这些AI求解器在不同尝试次数下的已解决题目数量:
而在一项小的用户研究中,21名在Python编程方面有不同经验年限的程序员完成了不同难度的30个题目。每个题目最多分配6分钟的时间来解决。
用这个数据集评估AI与人类程序员对编程题难度的感知发现:
人类觉得难的题对AI来说也更难,现阶段情况下,AI求解器能解决的大多数题都是对人类来说比较简单的。
上图表示人类和AI对各种题目的难度打分,按人类分数排序。人类的难度分数通过超出允许的最大解题时间的平均分数来衡量,AI的则是根据解题所需的尝试次数。
另外,AI用这种形式的题目可以解决了60% 的难题,初学者和有经验的程序员平均分别解决了 76% 和 87% 的难题。
总的来说,利用这个新颖的数据集,通过精心设计的AI求解器,可以大大减少AI编程求解所需的尝试次数、并解出更多的题目。
因此,研究人员希望,这个新的编程题库数据集能支持大家研究和开发新的AI编程解决方案,提高AI编程的效率和性能。
此前,UC伯克利曾训练AI刷LeetCode,总共5000道题的测试中,AI能做出15%。
不知道使用这个数据集训练,AI编程的能力又会达到什么水平呢?
论文地址:https://arxiv.org/abs/2106.05784
开源数据集链接:https://github.com/microsoft/PythonProgrammingPuzzles
-------------------
END
--------------------
我是王博Kings,985AI博士,华为云专家、CSDN博客专家(人工智能领域优质作者)。单个AI开源项目现在已经获得了2100+标星。现在在做AI相关内容,欢迎一起交流学习、生活各方面的问题,一起加油进步!
我们微信交流群涵盖以下方向(但并不局限于以下内容):人工智能,计算机视觉,自然语言处理,目标检测,语义分割,自动驾驶,GAN,强化学习,SLAM,人脸检测,最新算法,最新论文,OpenCV,TensorFlow,PyTorch,开源框架,学习方法...
这是我的私人微信,位置有限,一起进步!
王博的公众号,欢迎关注,干货多多
王博Kings的系列手推笔记(附高清PDF下载):
博士笔记 | 周志华《机器学习》手推笔记第一章思维导图
博士笔记 | 周志华《机器学习》手推笔记第二章“模型评估与选择”
博士笔记 | 周志华《机器学习》手推笔记第三章“线性模型”
博士笔记 | 周志华《机器学习》手推笔记第四章“决策树”
博士笔记 | 周志华《机器学习》手推笔记第五章“神经网络”
博士笔记 | 周志华《机器学习》手推笔记第六章支持向量机(上)
博士笔记 | 周志华《机器学习》手推笔记第六章支持向量机(下)
博士笔记 | 周志华《机器学习》手推笔记第七章贝叶斯分类(上)
博士笔记 | 周志华《机器学习》手推笔记第七章贝叶斯分类(下)
博士笔记 | 周志华《机器学习》手推笔记第八章集成学习(上)
博士笔记 | 周志华《机器学习》手推笔记第八章集成学习(下)
博士笔记 | 周志华《机器学习》手推笔记第九章聚类
博士笔记 | 周志华《机器学习》手推笔记第十章降维与度量学习
博士笔记 | 周志华《机器学习》手推笔记第十一章稀疏学习
博士笔记 | 周志华《机器学习》手推笔记第十二章计算学习理论
博士笔记 | 周志华《机器学习》手推笔记第十三章半监督学习
博士笔记 | 周志华《机器学习》手推笔记第十四章概率图模型
点分享
点收藏
点点赞
点在看
麻省理工、微软为AI量身打造了一套leetcode编程题相关推荐
- MIT微软为AI量身打造了一套leetcode编程题
丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 你见过这种编程题目描述方式吗? 不用自然语言描述,也没有输入输出示例,你所看到的就只有一个Python函数. 这是来自MIT.Allen A ...
- 推荐 | 为科研人量身打造的公众号,都在这里啦
注重效率的科研人,需要的是有质量的公众号.下面这几个公众号,不论是资深学者还是青年研究生都会关注.其中不仅包含前沿学术资讯.深度趋势解读,还有针对不同学科/专业量身打造的精品内容. 轻扫二维码关注,你 ...
- 如何为企业量身打造一套高可用系统?
对于用户量较大的系统以及系统稳定性要求极高的企业,每一次计划外的系统停机都是严重事故.想要降低计划外系统停机的概率,有两个关键动作,一是执行计划内维护来及时更新硬件或者软件,另外一个有效的动作就是搭建 ...
- 小别墅样式_6款三层小别墅样式,各风格特色图纸为农村自建量身打造
原标题:6款三层小别墅样式,各风格特色图纸为农村自建量身打造 从最新农村建房面积规定可以看出,今后农村自建房小别墅是主流,而三层小别墅样式则是为农村家庭量身打造的别墅样式,在满足住房需求的同时,做到经 ...
- 第十八:如何定制Pytest+Allure2详细报告生成,给项目量身打造一套测试报告(重点超详细)
简介 1.俗话说"人靠衣服马靠鞍"一个项目做的在好,没有一分的漂亮的测试报告有时候也是很难在客户那边验收的,今天就带你们解决这一难题. 2.前边一篇文章是分享如何搭建pytest+ ...
- 狂神说 es笔记_【开源推荐】专门为程序员朋友量身打造的笔记软件—— Boostnote...
前言 很多人好奇程序猿是如何记笔记的,如果有了解过可能会知道Markdown.都知道Markdown 是一个轻量级的标记语言,语法简单.容易上手,它深受程序员.博客主等人群的钟爱.随着越来越多的博客系 ...
- 在“互联网+”时代下,专为餐饮行业量身打造的智能管理系统!
传统的餐厅经营,日常运营中存在人力资本.物料损耗.设施设备.广告宣传推广等资金的投入.特别是在设施设备,前期需要投入大量资金,且后期还需进行维护,费用不小.传统的餐饮管理模式,除了在各种服务上存在体验 ...
- 【SunRTC】一款为保险应用场景量身打造的实时音视频产品
重磅!!![SunRTC]一款为保险应用场景量身打造的实时音视频产品开源啦! 简介 一.产品介绍 (一)产品应用场景 (二)产品主要功能 (三)产品价值 二.技术实现 (一)视频.即时消息功能 (二) ...
- 【无武汉公司团建小姐姐量身打造这几个路线挺适合够给力吧?
临时起意组里要组织出游活动,上面下达的计划要做滴水不漏,等着找位置,一定要弄得出类拔萃才能印象深刻,有没有创新的好景点呢?武汉公司团建小姐姐量身打造这几个路线挺适合够给力吧? 这么好玩的地方还是不容错 ...
最新文章
- how to fix error 25007 : loadlibraryshim()
- html输出text,为什么text();和html();输出结果不一样呢?
- Qt文档阅读笔记-Fortune Client Example实例解析
- 互联网新人最热门去处:前三名毫无意外!
- 计算机网络:VLAN和VXLAN
- 动态数组 —— 框架搭建
- 无人驾驶项目——交通标志识别
- 计算机技术应用于测量,在测量绘图中计算机技术的应用分析
- 微信小程序模拟器所有页面都无法跳转
- 算法题-双指针(最长的指定瑕疵度的元音子串(答案、解析))
- Pthon画皮卡丘源码
- 菜鸟也能学cocos2dx3.0 浅析刀塔传奇(下)
- Error:java: 读取xxx.jar时出错; zip file is empty
- 400 (Bad Request)错误的解决方法
- Python 字节数组 和 16进制字符串转换
- 纠结了五年,华为要动智能电视了? 1
- java 进销存 springmvc SSM crm 项目 系统
- 加密储存 --- 密码保存那些事
- 如何在iPhone和OS X上更改表情符号肤色
- JAVA UDP套接字编程
热门文章
- html pdf文档的格式控制符,关于Unicode控制字符RLO,LRO,PDF 的坑
- mysql完成未完成_MYSQL SQL模式 (未完成)
- mvc模式 mysql做网页_SpringMVC + Hibernate + MySQL 的简易网页搭建(Control实现篇)
- rip协议中周期性广播路由信息的报文_RIP路由理论知识详解(一)
- android 上传文件到 c 服务器,android 怎么样用socket给C服务器 发送二进制数据
- python的变量在使用之前是否要进行声明_python – 如何在使用之前测试变量是否已初始化?...
- python 发红包import random用redenv_python 常用模块之random,os,sys 模块
- c语言建立迷宫坐标,c语言 找到迷宫出口并显示坐标,可以自定义迷宫或者选用已经设计好的迷宫...
- 开启mongodb数据库命令行_【赵强老师】使用MongoDB的命令行工具:mongoshell
- 回顾Spirng ioc 控制反转