成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

AlphaCode驚世登場!編程版“阿法狗”悄悄參賽,擊敗一半程序員

人工智能
今天,DeepMind的“Alpha”家族再添一名新成員:會刷編程競賽題的AlphaCode來了!

今天,DeepMind的“Alpha”家族再添一名新成員:

會刷編程競賽題的AlphaCode來了!

其實,AlphaCode早在幾個月前就“悄悄進村”了,一直沒人察覺。

它默默參加了著名網站Codeforces最近舉行的10場編程比賽,成績超過了一半人類。

直到今天DeepMind才公布最終成績:AlphaCode在這10場比賽中排名前54.3%,Elo評分1238。

更重要的是,在編程比賽這樣考察算法創造力的問題中,AI終于不落下風,而這恰恰是AI過去所欠缺的。

如果把這個分數放到過去六個月總體來看,AlphaCode的成績更為優秀,因為它只刷了10周的題目,就已經達到了前28%用戶的水平。

Codeforces是一個由俄羅斯程序員Mikhail Mirzayanov創辦的編程競賽網站,大約每周舉行一次名為“Codeforces Rounds”的編程比賽。

通過Codeforces的Elo評分可以衡量一位程序員的編程水平。

△ Codeforces創始人Mikhail Mirzayanov

當看到AlphaCode的成績后,連創始人Mirzayanov都驚訝不已。

他原本對AI持懷疑態度,因為編程比賽考驗的是發明算法的能力,這是最困難的,沒想到AlphaCode的結果完全超出了他的預期。

DeepMind發布這條消息僅半天,在Twitter上已經有2000多次轉發、5000多點贊。

AlphaCode如何編程

說了這么多,下面我們來看看AlphaCode是如何成為“編程做題家”的。

以下是Codeforces上的1553D問題:

(鏈接:https://codeforces.com/problemset/problem/1553/D)

有兩個字符串s和t,都是由小寫字母組成。對于字符串s,我們從前向后掃描整個字符串。

如果按下Backspace鍵,就刪除該光標前到上一個未刪除字符之間的所有字符。

例如字符串s是”abcbd”,你分別在第一個位置和第四個位置按下Backspace,那么將得到字符串”bd”。

因為在第一個光標位置前沒有字符,所以第一次沒有動作。第四個光標位置前的字符是c,上一個未刪除字符是a,所以按下Backspace將刪除前三個字符”bd”。

好了,現在問題來了:

我們能否從前向后掃描一次s字符串, 讓s變為t。如果可以輸出YES,否則輸出NO。

AlphaCode給出的代碼是這樣的:

t=int(input()) 
for i in range(t):
s=input()
t=input()
a=[]
b=[]
for j in s:
a.append(j)
for j in t:
b.append(j)
a.reverse()
b.reverse()
c=[]
while len(b)!=0 and len(a)!=0:
if a[0]==b[0]:
c.append(b.pop(0))
a.pop(0)
elif a[0]!=b[0] and len(a)!=1:
a.pop(0)
a.pop(0)
elif a[0]!=b[0] and len(a)==1:
a.pop(0)
if len(b)==0:
print("YES")
else:
print("NO")

向以上程序輸入4組字符串:

4 
ababa
ba
ababa
bb
aaa
aaaa
aababa
ababa

得到的輸出是:

YES
NO
NO
YES

在這里,AlphaCode不再是黑箱。

它不僅成功解決了問題,還能將代碼和注意力高亮的對應位置顯示出來。

一位網友表示:既然AI能看得這么細,那么如果能在代碼后面加入注釋就更好了。

至于更多的案例,可以去AlphaCode網站觀摩。

原理

DeepMind說,在Codeforces比賽中所需解決問題的能力,已經超出了現有AI系統的能力。

整個AlphaCode模型的流程如下:

  1. 用標準的語言建模目標在GitHub代碼上預訓練一個基于Transformer的語言模型。這個模型可以合理地代表人類編寫代碼的空間,大大減少了問題的搜索空間。
  2. 在競爭性編程數據集上微調模型,使用GOLD與tempering作為訓練目標,進一步減少了搜索空間,并利用預訓練彌補了少量的競爭性編程數據。
  3. 為每個問題從模型中生成非常多的樣本。
  4. 對樣本進行過濾,以獲得一小部分候選提交的樣本(最多10個),在隱藏的測試案例上進行評估,方法是利用實例測試和聚類,根據程序行為挑選樣本。

總而言之,通過將大規模Transformer模型與大規模采樣和過濾相結合,DeepMind在可以解決的問題數量方面取得了重大進展,比之前的工作高出一個數量級。

刷題人士抵觸

正如Codeforces創始人所說,在編程問題中對算法的發明創造是最難的。

在全球編程比賽網站上常年排名前幾的谷歌工程師Petr Mitrichev說:

解決編程比賽問題是一件非常困難的事情。它既需要良好的代碼技能,也需要人類解決問題的創造力。

AlphaCode不是第一個編程工具,Codex以及GitHub Copilot都給人留下了深刻的印象。

但DeepMind認為,AlphaCode和前輩們大有不同:

最近的大規模語言模型展示了生成代碼的驚人能力,現在能夠完成簡單的編程任務。然而,當對更復雜、看不見的問題進行評估時,這些模型的表現仍然很差,這些問題需要解決問題的技能,而不僅僅是將指令翻譯成代碼。

與Twitter上截然不同的是,Codeforces高手們卻多有抵觸情緒。

一位程序員認為:“這個AI真是個菜鳥?!?/p>

因為AlphaCode只有1238分,只相當于一個學生水平,一個參加信息學奧賽的中學生也能刷到這個水平。

雖然DeepMind聲稱AlphaCode是為了輔助人類,但也有程序員開始擔心了:

現在連刷題的世界都被AI占領,本來這里是程序員們切磋的地方,AI應該適可而止,給程序員們留一片凈土吧!


責任編輯:華軒 來源: 量子位
相關推薦

2022-12-09 13:54:49

編程AI

2022-02-11 11:32:07

程序員AI編程

2020-09-21 09:22:25

CTO程序員管理層

2020-08-18 18:19:44

高性能開發程序員

2009-05-22 09:28:18

程序員SOHO職場

2015-10-19 17:49:43

程序員泡沫工資

2012-08-30 10:05:40

編程編程語言程序員

2013-11-14 10:05:25

程序員職業轉型

2019-04-12 09:40:30

碼農科技開發

2022-02-07 08:50:00

AI奧數模型

2023-03-30 14:19:11

程序員數據報告軟件開發

2021-04-26 15:02:13

程序員工具系統

2014-03-06 11:08:40

自學編程程序員

2012-06-15 09:54:58

程序員編程開發

2014-06-13 11:03:19

程序員

2011-11-11 16:20:22

編程

2025-02-27 09:26:58

2011-07-19 13:04:22

網絡協議網絡編程

2015-03-10 14:28:46

程序員編程知識經驗總結

2023-11-03 07:46:54

CodeGeeX編程助手
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日日淫 | 欧美日韩三级 | 粉嫩高清一区二区三区 | 91久久久www播放日本观看 | 国产精品自拍av | 在线观看国产 | www中文字幕| 久久久久久看片 | 中文字幕高清一区 | 久久国产精品一区二区三区 | 蜜桃精品视频在线 | 欧美一区二区三区视频 | 精品国产一区二区三区久久 | 中文字幕一区二区三区四区五区 | 一本大道久久a久久精二百 欧洲一区二区三区 | 午夜影院网站 | 国产 日韩 欧美 制服 另类 | 在线免费毛片 | 亚洲精品久久区二区三区蜜桃臀 | a在线观看免费 | 日本不卡一区 | 欧美日韩一区在线播放 | 欧美亚洲一区二区三区 | 在线观看成年人视频 | 久在线 | 国产亚洲欧美日韩精品一区二区三区 | 毛片软件 | 久久久涩| 成人深夜福利 | 中文字幕成人av | 国内自拍偷拍 | 91 在线| 亚洲入口 | 在线观看成人 | 精品国产一级 | 国产精品一区二区无线 | 久草青青 | 日韩在线欧美 | 狠狠做深爱婷婷综合一区 | 久久国产综合 | 久久久www成人免费无遮挡大片 |