AlphaCode人工智能競爭編程解決方案可與普通程序員一較高下
作為Google 母公司Alphabet 旗下的人工智能企業,DeepMind 剛剛宣布了其最新打造的AlphaCode 編程AI 。據悉,該公司通過人類比賽中使用的編程挑戰題目,對AlphaCode 展開了一番實際測試。雖然暫時還達不到業內頂尖水平,但現階段已經能夠和普通程序員打個平手。
(來自:DeepMind Blog)
儘管該AI 技能不一定代表AlphaCode 可輕鬆應對人類程序員的日常工作任務,但DeepMind 還是宣稱達到了預期的排名,使之能夠躋身於人類程序員的前54% 之列。
DeepMind 首席研究科學家Oriol Vinyals 在致TheVerge的一封電子郵件中稱,這項研究仍處於早期階段,但現階段的成果已讓該公司更接近於打造一套可靈活解決問題的人工智能。
目前只有人類程序員能夠自主解決相關編程挑戰,但從長遠來看,AlphaCode 仍可在協助程序員/ 普通人編寫代碼、提升生產力、或創新軟件製作方法等方面,具有振奮人心的巨大潛力。
測試期間,DeepMind 讓AlphaCode 針對Codeforces 策劃的編程挑戰開展了測試。後者是一個極具挑戰性的編程平台,通過類似於國際象棋的Elo 評級系統來分享每週問題和相關排名。
這些挑戰不同於程序員在製作商業應用程序時可能接受的任務,需要對計算機科學領域的算法和理論概念有更廣泛的了解,才能更好地結合邏輯、數學、編程專業知識來解決相關謎題。
為評估DeepMind 的AlphaCode AI,其選擇了一個名叫Backspace的示例挑戰項目。該問題難度適中,在左側顯示了相關描述、並於右側展示了測試用例。
其要求參賽者找到一種方法,使用一組有限的輸入,將一組隨機、重複的s 和t 字母字符串,轉換為另一個相同字母的字符串。
這意味著在解題過程中,程序不能只輸入新字母,而是必須使用退格鍵來刪除原始字符串中的幾個字母。
其中十次挑戰以人類完全相同的格式來輸入給AlphaCode,然後該AI 就可生成大量可行的答案,並通過運行代碼和檢查輸出來篩選這些答案。
更棒的是,Yujia Li 和David Choi 在郵件中提到,整個過程都是自動進行的,而無需人工介入去挑選最佳的樣本。
最終AlphaCode 針對Codeforces 網站上5000 名用戶解決的十個挑戰項目開展了測試,且拿下了平均位於前54.3% 行列的成績。
DeepMind 預估該系統的Codeforces Elo 為1238,使之立於過去6 個月在該網站上發起挑戰的用戶榜單的前28% 。