危!AI已经会刷LeetCode了!

梦晨 发自 凹非寺

你在面试中会遇到的那种算法题,AI已经能自己解决了,比如下面这道题:

对于一个记录论文引用次数的数组,每个元素都是非负整数。请写出函数h_index,输出这些论文的h指数,即至多有h篇文章被至少引用了h次。
例:
输入: [3, 0, 6, 1, 4]
输出: 3

AI给出的Python答案是这样的:

除了排序没用counts.sort(reverse = True)让人看着血压升高,算是顺利通过测试:

来自UC伯克利的研究团队,将上面这道题被归为“面试级”难度(看来国外程序员面试题有点简单)。

此外还有更简单的“入门级”和更难的“竞赛级”,总共5000道题的测试中,AI能做出15%

另外有人声称,他专门用GPT-2训练了个专门做LeetCode的AI,能完成80%

在刷LeetCode的你,是否在颤抖?

GPT-Neo赢过GPT-3

本研究使用的题目形式是自然语言题干,不同于以往研究常用的伪代码和代码之间翻译。

题目是从Codeforces、Kattis等刷题网站收集的10000道题,5000道用于训练,另外5000道作为测试集。

题干的平均长度为293.2个单词,在测试集中每道题平均有21.2个测试用例。

入门级难度的题不需要复杂算法,有1-2年经验的程序员都能回答的那种,有3639个。

面试级难度的题会涉及数据结构,比如树或者图,或需要修改常见的算法,有5000个。

剩下的是竞赛级难度,达到USACO、IOI和ACM等竞赛的水平。

研究人员分别训练了GPT-2的1亿参数版和15亿参数版、GPT-3以及“高仿版”GPT-Neo

参数规模“只有”27亿的GPT-Neo和更低的GPT-2在测试用例通过率上,表现却比1750亿的GPT-3还要好。

严格模式下,通过所有测试用例才算完全正确,成绩最好的GPT-Neo只通过了1.12%,不过这也有56道题了(反正比我强)。

GPT-Neo来自EleutherAI团队尝试复现GPT的开源项目。

虽然参数规模比GPT-3小得多,但训练数据包含了更多技术网站,比如Stack OverFlow和Stack Exchange等,这可能是它在代码生成上胜出的原因之一。

至于GPT-3为什么表现还不如GPT-2,有人猜测可能是它见过的文本太多,虽然擅长生成自然语言,但在逻辑和解题方面过拟合了。

如何评价AI“做题家”

论文一发出来,吃瓜群众脑洞大开。

如果我没通过面试但我写的算法通过了会怎么样?

有人回答他:

没关系,你还可以当你算法的助手。

还有很多人给出下一步建议,比如不用自回归的GPT,改用自编码语言模型会怎样?比如CodeTrans

或者,再用一个GPT专门生成自己回答不出来的问题。

矛盾相争是吧

乐观的人认为这是解放了人的创造力,未来编程是关于写更少的代码,做更多的架构、工程。

有人畅想,只需要描述需求就能生成代码可太爽了。

嗨IDE,用我的数据库做一个JavaScript的增查改删,要带测试。

Ruby on Rails直呼内行

悲观的人却认为,将来有一天,人类程序员只能做做维护工作和评审机器生成的代码了。

·················END·················

(0)

相关推荐

  • 经验分享:超详细的C研发学习路线(含面试指南)

    学习建议 https://m.toutiao.com/is/JbbJWSG/ 对于技术岗,软件基础知识可以说是个人的硬实力,是你能通过面试的一个大前提.而说到软件基础的学习,对于很多还没有基础的同学可 ...

  • ​LeetCode刷题实战310:最小高度树

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • ​LeetCode刷题实战262:行程和用户

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • 2020最佳AI论文,都在这里了

    由于全球新冠疫情仍未结束,今年不少学术会议延期或取消,召开的也大多在线上举行.尽管2020年发生了很多事情,研究者们仍然为人工智能技术的进步做出了大量重要的贡献. 位于蒙特利尔的 AI 内容创作者 L ...

  • LeetCode面试系列 第4天:No.202 - 快乐数

    或许你不知道的是,Leetcode 中是有很多 数学题 的,本文要解析的题 快乐数 就是其中到一个典型问题,本题将基于数据结构 set 来求解. 今天要给大家分析的面试题是 LeetCode 上第 2 ...

  • ​LeetCode刷题实战28:实现 strStr()

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • “码”不停蹄,助你高“粽”

    又到了一年毕业就业季了,作为即将踏入码农行业的人来说,要准备校招面试,怎么能不去刷刷LeetCode呢? 什么是LeetCode LeetCode是一个美国的在线编程网站,它收集了各大公司的经典算法面 ...

  • 微软程序员的算法学习之路

    一.写在前面 随着互联网的发展,各大厂的招聘要求水涨船高,几年前,做算法题还不是必备项,有的公司最多要求写个链表插入,二叉树遍历这种课本上的模板题. 但如今由于投身互联网的人太多,国内公司也向硅谷大厂 ...

  • ​LeetCode刷题实战182:查找重复的电子邮箱

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • ​LeetCode刷题实战203:移除链表元素

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • ​LeetCode刷题实战176:第二高的薪水

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • 莆田版GPT-3开源:同等复现预训练模型GPT Neo,可在Colab上完成微调

      新智元报道   来源:Eleuther AI 编辑:小匀 [新智元导读] GPT-3开源了?Eleuther AI推出的名为GPT-Neo的开源项目:公开发布的GPT-3同等复现预训练模型(1.3 ...

  • ​LeetCode刷题实战152:乘积最大子数组

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • 说起面试,这是你最该好好准备的环节

    导语:时间过的可真快,感觉自己鸽了好久.上一篇文章不是关于视频资源的推荐嘛,反响还挺好的,这次就趁热打铁(希望还没凉)和大伙聊聊学完编程语言后,我们该做的事情--刷题. 本文是针对即将找工作或刚刚入门 ...

  • ​LeetCode刷题实战201:数字范围按位与

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • ​LeetCode刷题实战263:丑数

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...