正在閱讀:

程序員創(chuàng)造的AI要讓自己下崗了

掃一掃下載界面新聞APP

程序員創(chuàng)造的AI要讓自己下崗了

AI敲代碼登Science封面,打敗近一半程序員。

文|智東西

編譯|程茜

智東西12月9日?qǐng)?bào)道,今天,DeepMind的計(jì)算機(jī)程序編寫AI(人工智能)模型AlphaCode,登上國(guó)際學(xué)術(shù)頂刊Science封面!

當(dāng)人工智能與人類并肩參加編程競(jìng)賽會(huì)發(fā)生什么?在競(jìng)爭(zhēng)性編碼比賽平臺(tái)Codeforces的10場(chǎng)比賽中,AlphaCode在比賽的模擬評(píng)估中平均排名前54.3%,其編碼技能水平超過(guò)剩余的人類參與者。

▲AlphaCode的比賽模擬評(píng)估結(jié)果

早在今年2月,DeepMind就已經(jīng)推出AlphaCode,并默默參加了多場(chǎng)編程比賽。外媒GIZMODO報(bào)道稱,在測(cè)試中,AlphaCode能夠?qū)崿F(xiàn)“近似人類水平的表現(xiàn)”,該模型通過(guò)預(yù)測(cè)代碼段創(chuàng)建大量潛在解決方案,能解決競(jìng)賽中以前未見(jiàn)過(guò)的自然語(yǔ)言問(wèn)題,該模型的整體性能相當(dāng)于經(jīng)過(guò)幾個(gè)月到一年培訓(xùn)的“新手程序員”。

▲AlphaCode根據(jù)問(wèn)題描述提供的解決方案

01.從理解到解決問(wèn)題AI寫代碼能力近似人類

為不可預(yù)見(jiàn)的問(wèn)題創(chuàng)造解決方案是人工智能發(fā)展的第二路徑。目前,機(jī)器學(xué)習(xí)的相關(guān)研發(fā)在生成和理解文本數(shù)據(jù)方面取得了巨大進(jìn)步,但在解決問(wèn)題方面的進(jìn)展仍然局限于相對(duì)簡(jiǎn)單的數(shù)學(xué)和編程問(wèn)題,或者檢索和復(fù)制現(xiàn)有解決方案。

因此,DeepMind構(gòu)建了AlphaCode系統(tǒng),該系統(tǒng)可以解決需要批判性思維、邏輯、算法、編碼和自然語(yǔ)言理解能力相結(jié)合的新問(wèn)題。

AlphaCode并沒(méi)有內(nèi)置關(guān)于計(jì)算機(jī)代碼結(jié)構(gòu)的知識(shí),而是依靠完全的“數(shù)據(jù)驅(qū)動(dòng)”方法來(lái)編寫代碼。也就是說(shuō),該模型通過(guò)觀察大量現(xiàn)有代碼,來(lái)學(xué)習(xí)計(jì)算機(jī)程序的結(jié)構(gòu),基于機(jī)器學(xué)習(xí)模型LLM,AlphaCode就可以通過(guò)一次次預(yù)測(cè)給定問(wèn)題描述中的單個(gè)字符,來(lái)進(jìn)行學(xué)習(xí)。

為了評(píng)估這一模型的表現(xiàn),AlphaCode模擬參與了Codeforces的10場(chǎng)比賽。這些比賽的難度在于,參與者不可能通過(guò)復(fù)制以前見(jiàn)過(guò)的解決方案或嘗試每一種可能相關(guān)的算法等捷徑來(lái)解決問(wèn)題。因此,為了贏得比賽,AlphaCode必須創(chuàng)造新穎有趣的解決方案。

在生成大量解決方案之后,AlphaCode會(huì)將它們過(guò)濾到最多10個(gè)解決方案。

▲AlphaCode編程處理過(guò)程

研究人員稱,在這些比賽中解決問(wèn)題的能力,已經(jīng)超過(guò)了現(xiàn)在AI系統(tǒng)的能力。

從AlphaCode在比賽中的排名來(lái)看,這一模型的表現(xiàn)可能并不突出。但研究人員談道,在編碼比賽中取得成功是非常困難的。

面對(duì)沒(méi)有見(jiàn)過(guò)的編碼問(wèn)題,AlphaCode必須首先理解自然語(yǔ)言中的復(fù)雜編碼問(wèn)題,然后對(duì)不可預(yù)見(jiàn)的問(wèn)題進(jìn)行“推理”,而不是簡(jiǎn)單地記住代碼片段。研究人員認(rèn)為,沒(méi)有任何證據(jù)表明他們的模型只是簡(jiǎn)單從訓(xùn)練數(shù)據(jù)中復(fù)制了核心框架。

02.10000多個(gè)文本預(yù)訓(xùn)練整合候選解決方案

AlphaCode在競(jìng)爭(zhēng)性編程任務(wù)中優(yōu)于其他系統(tǒng)的原因在于預(yù)訓(xùn)練和候選解決方案。

研發(fā)人員為該模型構(gòu)建了CodeContest數(shù)據(jù)集,該數(shù)據(jù)集由約13500個(gè)競(jìng)爭(zhēng)性編程問(wèn)題的說(shuō)明性文本、所需輸入輸出對(duì)的簡(jiǎn)單測(cè)試用例以及跨幾種變成語(yǔ)言的問(wèn)題潛在解決方案組成。

此外,還有GitHub中沒(méi)有問(wèn)題描述且包含多種語(yǔ)言的非結(jié)構(gòu)化字符對(duì)這一模型進(jìn)行訓(xùn)練。

▲研發(fā)人員通過(guò)數(shù)據(jù)集對(duì)AlphaCode進(jìn)行預(yù)訓(xùn)練

在評(píng)估過(guò)程中,研發(fā)人員還發(fā)現(xiàn),該模型為問(wèn)題生成單個(gè)解決方案代碼的性能很差,因此AlphaCode會(huì)生成大量候選解決方案,并通過(guò)簡(jiǎn)單測(cè)試進(jìn)行再次過(guò)濾,整合相似的解決方案,避免重復(fù),以增加潛在解決方案的多樣性。

該模型也有明顯的局限性,它可以高效記憶數(shù)據(jù)集中的解決方案,然后重新排列輸出這些模式,這就導(dǎo)致模型對(duì)潛在問(wèn)題可能并沒(méi)有真正理解,只是在盲目模仿輸出。

從綜合表現(xiàn)來(lái)看,AlphaCode的表現(xiàn)確實(shí)在編碼領(lǐng)域展現(xiàn)出了潛力??▋?nèi)基梅隆大學(xué)博世人工智能中心教授J. Zico Kolter在一篇博文中寫道:“最終,AlphaCode在應(yīng)對(duì)前所未見(jiàn)的編碼挑戰(zhàn)時(shí)表現(xiàn)出色,無(wú)論它‘真正’理解任務(wù)的程度如何。”

03.早期仍是AI輔助生成代碼代碼所有權(quán)引爭(zhēng)議

AlphaCode并不是唯一一個(gè)考慮到編碼開(kāi)發(fā)的AI模型。

此前,OpenAI已經(jīng)對(duì)其GPT-3自然語(yǔ)言模型進(jìn)行了調(diào)整,以創(chuàng)建一個(gè)可以幫助代碼行自動(dòng)完成的功能。GitHub也有自己的AI編程工具Copilot。然而,這兩個(gè)程序在解決復(fù)雜的競(jìng)爭(zhēng)問(wèn)題方面都沒(méi)有表現(xiàn)出與人類競(jìng)爭(zhēng)的實(shí)力。

現(xiàn)在,AI在編寫代碼方面的應(yīng)用仍處于AI輔助代碼生成的相對(duì)早期階段,但AlphaCode在競(jìng)賽中的表現(xiàn)展示了深度學(xué)習(xí)模型在解決這類不能依靠單純復(fù)制、學(xué)習(xí)此前的事例,而是需要批判性思維、邏輯判斷等任務(wù)的巨大潛力。

研究人員稱,除了提高總體生產(chǎn)力外,AlphaCode還可以“讓新一代開(kāi)發(fā)人員更容易進(jìn)行編程?!?在不斷的發(fā)展中,AlphaCode有朝一日可能會(huì)對(duì)編程的文化產(chǎn)生影響,到那時(shí),人類存在的意義是為了制定問(wèn)題,然后由AI來(lái)解決這些問(wèn)題。

與此同時(shí),AI領(lǐng)域的一些批評(píng)者也在質(zhì)疑許多AI模型在訓(xùn)練模擬過(guò)程中的實(shí)際效果。

就在上個(gè)月,一位名叫Matthew Butterick的程序員對(duì)微軟旗下的GitHub提起了首起此類訴訟,稱其Copilot AI助手工具在學(xué)習(xí)和測(cè)試階段公然忽略或刪除軟件工程師提供的許可證。

Butterick認(rèn)為,自由使用其他程序員的代碼相當(dāng)于“規(guī)??涨暗能浖I版”。該訴訟的結(jié)果可能會(huì)決定AI開(kāi)發(fā)人員未來(lái)在研發(fā)、改進(jìn)模型方面的難易程度,因?yàn)?,此前開(kāi)發(fā)人員可以使用人類代碼來(lái)訓(xùn)練模型。

04.結(jié)語(yǔ):AI解決問(wèn)題能力釋放巨大潛力

相比于復(fù)雜棋盤游戲中的AI模型,AlphaCode在比賽中的表現(xiàn)都不夠驚艷,但其預(yù)示著AI模型在解決問(wèn)題能力方面的巨大進(jìn)步。

DeepMind的研究團(tuán)隊(duì)堅(jiān)信,這僅僅是一個(gè)開(kāi)始。AI模型在代碼編寫領(lǐng)域?yàn)檠邪l(fā)人員留下了巨大的改進(jìn)空間。DeepMind將繼續(xù)這一探索,并希望進(jìn)一步研究能夠增強(qiáng)編程能力的工具,并更接近于能真正解決問(wèn)題的AI。

來(lái)源:GIZMODO、Science、DeepMind

本文為轉(zhuǎn)載內(nèi)容,授權(quán)事宜請(qǐng)聯(lián)系原著作權(quán)人。

評(píng)論

暫無(wú)評(píng)論哦,快來(lái)評(píng)價(jià)一下吧!

下載界面新聞

微信公眾號(hào)

微博

程序員創(chuàng)造的AI要讓自己下崗了

AI敲代碼登Science封面,打敗近一半程序員。

文|智東西

編譯|程茜

智東西12月9日?qǐng)?bào)道,今天,DeepMind的計(jì)算機(jī)程序編寫AI(人工智能)模型AlphaCode,登上國(guó)際學(xué)術(shù)頂刊Science封面!

當(dāng)人工智能與人類并肩參加編程競(jìng)賽會(huì)發(fā)生什么?在競(jìng)爭(zhēng)性編碼比賽平臺(tái)Codeforces的10場(chǎng)比賽中,AlphaCode在比賽的模擬評(píng)估中平均排名前54.3%,其編碼技能水平超過(guò)剩余的人類參與者。

▲AlphaCode的比賽模擬評(píng)估結(jié)果

早在今年2月,DeepMind就已經(jīng)推出AlphaCode,并默默參加了多場(chǎng)編程比賽。外媒GIZMODO報(bào)道稱,在測(cè)試中,AlphaCode能夠?qū)崿F(xiàn)“近似人類水平的表現(xiàn)”,該模型通過(guò)預(yù)測(cè)代碼段創(chuàng)建大量潛在解決方案,能解決競(jìng)賽中以前未見(jiàn)過(guò)的自然語(yǔ)言問(wèn)題,該模型的整體性能相當(dāng)于經(jīng)過(guò)幾個(gè)月到一年培訓(xùn)的“新手程序員”。

▲AlphaCode根據(jù)問(wèn)題描述提供的解決方案

01.從理解到解決問(wèn)題AI寫代碼能力近似人類

為不可預(yù)見(jiàn)的問(wèn)題創(chuàng)造解決方案是人工智能發(fā)展的第二路徑。目前,機(jī)器學(xué)習(xí)的相關(guān)研發(fā)在生成和理解文本數(shù)據(jù)方面取得了巨大進(jìn)步,但在解決問(wèn)題方面的進(jìn)展仍然局限于相對(duì)簡(jiǎn)單的數(shù)學(xué)和編程問(wèn)題,或者檢索和復(fù)制現(xiàn)有解決方案。

因此,DeepMind構(gòu)建了AlphaCode系統(tǒng),該系統(tǒng)可以解決需要批判性思維、邏輯、算法、編碼和自然語(yǔ)言理解能力相結(jié)合的新問(wèn)題。

AlphaCode并沒(méi)有內(nèi)置關(guān)于計(jì)算機(jī)代碼結(jié)構(gòu)的知識(shí),而是依靠完全的“數(shù)據(jù)驅(qū)動(dòng)”方法來(lái)編寫代碼。也就是說(shuō),該模型通過(guò)觀察大量現(xiàn)有代碼,來(lái)學(xué)習(xí)計(jì)算機(jī)程序的結(jié)構(gòu),基于機(jī)器學(xué)習(xí)模型LLM,AlphaCode就可以通過(guò)一次次預(yù)測(cè)給定問(wèn)題描述中的單個(gè)字符,來(lái)進(jìn)行學(xué)習(xí)。

為了評(píng)估這一模型的表現(xiàn),AlphaCode模擬參與了Codeforces的10場(chǎng)比賽。這些比賽的難度在于,參與者不可能通過(guò)復(fù)制以前見(jiàn)過(guò)的解決方案或嘗試每一種可能相關(guān)的算法等捷徑來(lái)解決問(wèn)題。因此,為了贏得比賽,AlphaCode必須創(chuàng)造新穎有趣的解決方案。

在生成大量解決方案之后,AlphaCode會(huì)將它們過(guò)濾到最多10個(gè)解決方案。

▲AlphaCode編程處理過(guò)程

研究人員稱,在這些比賽中解決問(wèn)題的能力,已經(jīng)超過(guò)了現(xiàn)在AI系統(tǒng)的能力。

從AlphaCode在比賽中的排名來(lái)看,這一模型的表現(xiàn)可能并不突出。但研究人員談道,在編碼比賽中取得成功是非常困難的。

面對(duì)沒(méi)有見(jiàn)過(guò)的編碼問(wèn)題,AlphaCode必須首先理解自然語(yǔ)言中的復(fù)雜編碼問(wèn)題,然后對(duì)不可預(yù)見(jiàn)的問(wèn)題進(jìn)行“推理”,而不是簡(jiǎn)單地記住代碼片段。研究人員認(rèn)為,沒(méi)有任何證據(jù)表明他們的模型只是簡(jiǎn)單從訓(xùn)練數(shù)據(jù)中復(fù)制了核心框架。

02.10000多個(gè)文本預(yù)訓(xùn)練整合候選解決方案

AlphaCode在競(jìng)爭(zhēng)性編程任務(wù)中優(yōu)于其他系統(tǒng)的原因在于預(yù)訓(xùn)練和候選解決方案。

研發(fā)人員為該模型構(gòu)建了CodeContest數(shù)據(jù)集,該數(shù)據(jù)集由約13500個(gè)競(jìng)爭(zhēng)性編程問(wèn)題的說(shuō)明性文本、所需輸入輸出對(duì)的簡(jiǎn)單測(cè)試用例以及跨幾種變成語(yǔ)言的問(wèn)題潛在解決方案組成。

此外,還有GitHub中沒(méi)有問(wèn)題描述且包含多種語(yǔ)言的非結(jié)構(gòu)化字符對(duì)這一模型進(jìn)行訓(xùn)練。

▲研發(fā)人員通過(guò)數(shù)據(jù)集對(duì)AlphaCode進(jìn)行預(yù)訓(xùn)練

在評(píng)估過(guò)程中,研發(fā)人員還發(fā)現(xiàn),該模型為問(wèn)題生成單個(gè)解決方案代碼的性能很差,因此AlphaCode會(huì)生成大量候選解決方案,并通過(guò)簡(jiǎn)單測(cè)試進(jìn)行再次過(guò)濾,整合相似的解決方案,避免重復(fù),以增加潛在解決方案的多樣性。

該模型也有明顯的局限性,它可以高效記憶數(shù)據(jù)集中的解決方案,然后重新排列輸出這些模式,這就導(dǎo)致模型對(duì)潛在問(wèn)題可能并沒(méi)有真正理解,只是在盲目模仿輸出。

從綜合表現(xiàn)來(lái)看,AlphaCode的表現(xiàn)確實(shí)在編碼領(lǐng)域展現(xiàn)出了潛力。卡內(nèi)基梅隆大學(xué)博世人工智能中心教授J. Zico Kolter在一篇博文中寫道:“最終,AlphaCode在應(yīng)對(duì)前所未見(jiàn)的編碼挑戰(zhàn)時(shí)表現(xiàn)出色,無(wú)論它‘真正’理解任務(wù)的程度如何。”

03.早期仍是AI輔助生成代碼代碼所有權(quán)引爭(zhēng)議

AlphaCode并不是唯一一個(gè)考慮到編碼開(kāi)發(fā)的AI模型。

此前,OpenAI已經(jīng)對(duì)其GPT-3自然語(yǔ)言模型進(jìn)行了調(diào)整,以創(chuàng)建一個(gè)可以幫助代碼行自動(dòng)完成的功能。GitHub也有自己的AI編程工具Copilot。然而,這兩個(gè)程序在解決復(fù)雜的競(jìng)爭(zhēng)問(wèn)題方面都沒(méi)有表現(xiàn)出與人類競(jìng)爭(zhēng)的實(shí)力。

現(xiàn)在,AI在編寫代碼方面的應(yīng)用仍處于AI輔助代碼生成的相對(duì)早期階段,但AlphaCode在競(jìng)賽中的表現(xiàn)展示了深度學(xué)習(xí)模型在解決這類不能依靠單純復(fù)制、學(xué)習(xí)此前的事例,而是需要批判性思維、邏輯判斷等任務(wù)的巨大潛力。

研究人員稱,除了提高總體生產(chǎn)力外,AlphaCode還可以“讓新一代開(kāi)發(fā)人員更容易進(jìn)行編程。” 在不斷的發(fā)展中,AlphaCode有朝一日可能會(huì)對(duì)編程的文化產(chǎn)生影響,到那時(shí),人類存在的意義是為了制定問(wèn)題,然后由AI來(lái)解決這些問(wèn)題。

與此同時(shí),AI領(lǐng)域的一些批評(píng)者也在質(zhì)疑許多AI模型在訓(xùn)練模擬過(guò)程中的實(shí)際效果。

就在上個(gè)月,一位名叫Matthew Butterick的程序員對(duì)微軟旗下的GitHub提起了首起此類訴訟,稱其Copilot AI助手工具在學(xué)習(xí)和測(cè)試階段公然忽略或刪除軟件工程師提供的許可證。

Butterick認(rèn)為,自由使用其他程序員的代碼相當(dāng)于“規(guī)??涨暗能浖I版”。該訴訟的結(jié)果可能會(huì)決定AI開(kāi)發(fā)人員未來(lái)在研發(fā)、改進(jìn)模型方面的難易程度,因?yàn)?,此前開(kāi)發(fā)人員可以使用人類代碼來(lái)訓(xùn)練模型。

04.結(jié)語(yǔ):AI解決問(wèn)題能力釋放巨大潛力

相比于復(fù)雜棋盤游戲中的AI模型,AlphaCode在比賽中的表現(xiàn)都不夠驚艷,但其預(yù)示著AI模型在解決問(wèn)題能力方面的巨大進(jìn)步。

DeepMind的研究團(tuán)隊(duì)堅(jiān)信,這僅僅是一個(gè)開(kāi)始。AI模型在代碼編寫領(lǐng)域?yàn)檠邪l(fā)人員留下了巨大的改進(jìn)空間。DeepMind將繼續(xù)這一探索,并希望進(jìn)一步研究能夠增強(qiáng)編程能力的工具,并更接近于能真正解決問(wèn)題的AI。

來(lái)源:GIZMODO、Science、DeepMind

本文為轉(zhuǎn)載內(nèi)容,授權(quán)事宜請(qǐng)聯(lián)系原著作權(quán)人。