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

成熟的AI應該自己寫代碼,IBM發布5億行代碼數據集,包含55種語言

新聞 人工智能
1400萬個編程項目,5億行代碼,超過55種的不同編碼語言。研究人員希望這一數據集能為編碼自動化領域(比如大型項目代碼的調試、維護和遷移)帶來便利。

[[400902]]

本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。

 在ImageNet頻頻出現在計算機視覺研究的今天,IBM也為智能編碼(AI for Code)帶來了它的專屬數據集——CodeNet。

1400萬個編程項目,5億行代碼,超過55種的不同編碼語言。研究人員希望這一數據集能為編碼自動化領域(比如大型項目代碼的調試、維護和遷移)帶來便利。

△下載鏈接見文末

獨一無二的數據基礎

CodeNet的數據基礎來自兩個OJ(Online Judge)平臺AIZU和AtCoder所提交的實例。

△大聲告訴我世界上最好的語言是什么?

在這種在線編程平臺上提交的解決方案,除了大規模的代碼數據之外,還有許多高質量的元數據(Metadata)和注釋。

比如對于OJ平臺的問題,就有如問題描述、內存限制、問題難度等信息。

用戶提交的案例也一樣:

而在平臺自動審查機制下,提交的解決方案的不同狀態同樣也可以作為重要參考數據。

CodeNet能做什么?

基準測試

當在CodeNet-1K(C++ 1000基準)與最大的公開數據集之一GCJ-297上訓練相同的MISIM模型,并在第三個獨立的數據集POJ-104上測試這兩個訓練好的模型時:

△模型在CodeNet-1K上訓練時的POJ-104測試分數比在GCJ-297上的高12%

這表明了CodeNet-1K擁有更好的泛化能力。

而分別使用MLP、CNN、C-BERT、GNN在CodeNet的幾個基準上進行了代碼分類、代碼相似性評估和代碼完成等實驗后,大多數任務都獲得了90%以上的準確率。

實際應用

基于不同編程語言間的規則,將幾段代碼轉換成其他語言,對AI來說并非難事。

但如果是上千上萬行,甚至是一個大型項目,其代碼語義就會涉及到上下文,而上下文又可能牽扯到多個代碼庫。在這樣的復雜語境下的語言翻譯可是個不小的挑戰。

在以前,通常先由機器完成程序50%~60%的遷移,涉及復雜規則的部分再由人力負責,非常棘手且費事費力。

可就在不久前,IBM通過基于CodeNet的AI for Code成功將一位大型汽車客戶的持續代碼遷移過程(多代Java技術開發的3500個Java文件,超一百萬行代碼),從一年縮短到了四星期。

因為在CodeNet的數據基礎中,90%以上的問題的描述、輸入格式說明、輸出格式說明,以及50%以上的提交代碼的輸入和輸出樣本,就是確定不同語言間的代碼等價與否的關鍵。

這就極大地推動了代碼翻譯的強化學習技術。

而大量于內存限制、執行時間、錯誤類型的元數據,也可以用來標記源代碼中的潛在缺陷,并進一步訓練開發代碼優化系統。

CodeNet數據集提供了一套利于理解和使用的技術,在協助廣大開發者和研究者開發算法,推進AI編碼的同時,也為企業開啟IT現代化帶來了持續不斷的商業價值。

技術上如何實現

在統計數據時,研究者們組織所有數據成為一個嚴格的目錄結構:最上層是Project CodeNet目錄,下方的子目錄分別為:

*數據

細分為每個問題中源碼、腳本語言。

*元數據

存放所有問題的problem_list.csv文件和提交案例的csv文件。

*問題描述

存放問題的HTML文件,包含文本的廣泛描述。

然后使用命令行工具或像ls和grep這樣的應用程序來提取,對csv文件可使用csvkit組件(如csvstat)。

對于數據集則采用bash腳本進行訪問選擇:

△腳本已給出。

最后通過標記器產生標記流、AST生成解析到抽象語法樹、構建數據流圖以分析代碼,最終將代碼樣本轉換為可被AI算法識別和使用的表現形式:

△處理過程所用到的工具。

編程自動化的未來

IBM的研究者們還在不斷地改進和開發CodeNet,期望它能夠加速AI編程的算法進步。

而隨著機器學習領域的不斷發展,不僅是代碼的“實現”,連“設計”也開始向計算機一側傾靠(比如GAN通過對抗學習尋找最優解)。

未來真的可以像DNA的自我編輯那樣,實現完全的自動編程嗎?

建議先封裝幾個人類程序員,來幫計算機完成算法第一步的“精確描述問題需求”。

 

責任編輯:張燕妮 來源: 量子位
相關推薦

2021-05-19 09:26:03

代碼開源IBM

2023-02-03 17:25:31

自動化代碼審查開發

2015-08-20 09:06:48

程序員

2025-04-28 09:06:00

2021-06-10 13:50:55

代碼開發數據庫

2009-12-15 19:18:39

Ruby源代碼

2025-02-24 08:20:00

AI代碼生成

2014-11-10 09:40:56

程序員

2019-06-05 15:00:28

Java代碼區塊鏈

2014-10-20 10:35:15

程序員

2019-04-23 09:58:22

Windows 10語言代碼

2025-06-25 02:30:00

AIMCPLLM

2018-03-13 09:34:30

人工智能編程語言Python

2015-09-21 09:36:54

20 億代碼谷歌

2015-09-18 11:47:45

代碼Google管理

2021-02-18 00:02:53

數據庫工具低代碼

2020-07-14 08:16:13

代碼互聯網 PC

2024-01-29 12:42:37

AI訓練

2014-03-13 09:29:30

程序員碼農

2024-02-19 13:09:21

代碼數據Copilot
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美久久一级 | 色综合久久天天综合网 | 日韩视频二区 | 国产精品久久久久久婷婷天堂 | 午夜精品一区二区三区免费视频 | 中文字幕在线免费视频 | 久久久久久国产精品三区 | 伊人免费网 | 成人欧美一区二区三区在线观看 | 成人免费在线视频 | 日韩中出 | 国产成人一区在线 | 99视频免费看 | 久久久成人一区二区免费影院 | 99久久精品免费看国产四区 | 国产一区二区三区四区在线观看 | 91精品国产色综合久久 | 亚洲小视频在线播放 | 国产精品福利网站 | 亚洲日韩欧美一区二区在线 | 亚洲第一在线 | 久久com | 成人在线电影网站 | 羞羞视频免费在线观看 | 国产一区二区三区日韩 | 婷婷综合激情 | 午夜精品一区二区三区在线观看 | 成人性视频免费网站 | 亚洲综合首页 | 国产伦精品一区二区三区照片91 | 国产在线网站 | 精品视频在线免费观看 | 羞羞视频在线观看 | 亚洲一二三区精品 | 亚洲精品在线视频 | 玩丰满女领导对白露脸hd | 国产在线播放av | 国产一区二区三区视频 | 日韩精品免费视频 | 老司机免费视频 | 日韩看片 |