
微軟開發(fā)可高效揪除代碼錯誤的BugLabs人工智能解決方案
微軟研究院首席研究員 Miltos Alamanis 與高級首席研究主管 Marc Brockschmidt,剛剛在一篇博客文章中介紹了他們新開發(fā)的 BugLabs 人工智能。顧名思義。這是一套專門用于發(fā)現(xiàn)代碼中的錯誤,幫助開發(fā)者更精準、高效地調試其應用程序的 AI 解決方案。而且它的開發(fā)過程,與創(chuàng)建生成對抗網(wǎng)絡(GAN)的形式大致相同。
(來自:Microsoft?Research Blog)
在《借助深度學習查找并修復錯誤》一文中,微軟研究員介紹了他們設置的兩個相互對抗的網(wǎng)絡。其中一個旨在將小錯誤引入代碼,另一個則旨在發(fā)現(xiàn)這些 bug 。
隨著深度學習訓練的持續(xù)推進,AI 的能力也變得愈加完善,最終成為了我們看到的這個特別擅長識別“隱藏在真是代碼中的 bug”的人工智能。
這種方法的優(yōu)點,在于全程無需自我監(jiān)督或標記數(shù)據(jù)。Miltos Allamanis 與 Marc Brockschmidt 在報告中提到:
理論上,我們可以將之廣泛地應用于‘捉迷藏’游戲 —— 教授機器去識別任務復雜的錯誤。遺憾的是,這些 bug 通常超出了現(xiàn)代人工智能方法的運用范圍。
有鑒于此,研究團隊決定更加專注于一組常見的錯誤 —— 包括不正確的比較(例如使用 <= 而不使用 < 或 > 符號、不適當?shù)牟紶栠\算符(與 / 或)、濫用變量(誤用 i 而不是 j)等。
系統(tǒng)測試期間,微軟研究員特別專注于 Python 代碼。一旦檢測器通過了訓練,即可將它用于檢測和修復實際代碼中的 bug 。
不過為了均衡性能,他們還是手動注釋了 Python Package Index 中包含的某些類型的小錯誤數(shù)據(jù)集。
最終與隨機錯誤插入等其它替代方案相比,其“hide-and-seek”訓練模型有高達三成的領先優(yōu)勢,前景很是光明。
具體說來是,hide-and-seek 能夠自動找到并修復大約 26% 的錯誤,且其中包括了 19 個此前未知的真實開源 GitHub 代碼中的 bug 。
與此同時,現(xiàn)階段的 AI 模型仍存在許多誤報。在投入實際運用之前,顯然還需要開展更多的改進。
最后,鑒于微軟已經(jīng)成功地推動了 GitHub 上的 GPT-3 項目,預計 hide-and-seek 也將很快迎來商業(yè)化應用。
[超站]友情鏈接:
四季很好,只要有你,文娛排行榜:https://www.yaopaiming.com/
關注數(shù)據(jù)與安全,洞悉企業(yè)級服務市場:https://www.ijiandao.com/

隨時掌握互聯(lián)網(wǎng)精彩
- 1 看總書記關心的清潔能源這樣發(fā)電 7904248
- 2 央視曝光直播間“高端四件套”貓膩 7807945
- 3 以總理:絕不會有巴勒斯坦國 等著瞧 7711985
- 4 長春航空展這些“首次”不要錯過 7617560
- 5 租客長租15年不到1年就被勸退 7519846
- 6 浙江大學教授被留置 持股市值31億 7428981
- 7 9月23日晚8點將上演“龍收尾”天象 7330694
- 8 馬斯克特朗普鬧掰后首次同框 7238724
- 9 風王“樺加沙”體型超整個廣東省 7142973
- 10 我們?yōu)槭裁匆プ矒粜⌒行?/a> 7046566