AI刪庫,程序員背鍋?
又一代碼清庫的慘案發(fā)生了,不過這次要背鍋是 AI。
近日,美國***點評網(wǎng)站 Yelp 的工程師訓(xùn)練的神經(jīng)網(wǎng)絡(luò)闖禍了。他們訓(xùn)練了一個用來消除 bug 的神經(jīng)網(wǎng)絡(luò),萬萬沒想到,該網(wǎng)絡(luò)刪除一切,從根上徹底了實現(xiàn)“bug-free”......有點兒厲害。
Yelp 團(tuán)隊在 APP 中向近期可能感到體驗不暢的各位用戶致歉,該團(tuán)隊還表示,他們將不得不進(jìn)行回滾(Roll back),但隨即話鋒一轉(zhuǎn),他們說好的一面是,這說明 APP 中 100% 沒 bug 了啊。
好吧,沒跑了,這個鍋還是工程師的。

神經(jīng)網(wǎng)絡(luò)算法的這一波操作,讓人不禁想起郭德綱的一個相聲段子,“我心善,見不得窮人,于是把自己目之所及的窮人全趕走了。”收到工程師的任務(wù)指令后,興許 AI 發(fā)現(xiàn)一個個 debug 太不省心,心一橫,干脆一鍵 all clear 算求。
這事要在國內(nèi)互聯(lián)網(wǎng)公司,搞這個大一個工程事故,九成要說殺一個工程師祭天,盡管 Yelp ***的點睛自嘲蠻輕松的,但人前賣笑,誰知道代碼清除后工程師是不是目瞪口呆或者心里在吐血呢......畢竟,要 Roll back。

Roll back 究竟意味著什么?它指的是程序或數(shù)據(jù)處理錯誤,將程序或數(shù)據(jù)恢復(fù)到上一次正確狀態(tài)的行為。那 Roll back 工作量有多大呢?回滾對程序員意味著非常嚴(yán)重的失誤,微博網(wǎng)友@互聯(lián)網(wǎng)八卦民工評論說,Yelp 在真實環(huán)境訓(xùn)練自己的人工智能神經(jīng)網(wǎng)絡(luò)去刪除 app 中的 bug,結(jié)果是人工智能把所有都東西都刪了,這不是一個簡單的 Roll back。
網(wǎng)友們更好奇的是 Yelp 的工程師訓(xùn)練了一個怎樣的網(wǎng)絡(luò)?拿何種樣本訓(xùn)練的?損失函數(shù)是如何設(shè)計的?有人猜測,代碼里面沒有 bug,損失函數(shù)一直是零,BP 和優(yōu)化器無用武之地,所以觸發(fā)異常,把整段代碼都視為 bug?
代碼里面沒有 bug 似乎不太可能,翻閱 Yelp 的版本更新歷史記錄,你會發(fā)現(xiàn)這簡直是一部“除蟲史詩”,你們感受一下:

本來是想讓 AI 來幫忙 debug 的,現(xiàn)在工具反到成了阻礙。不知道是 debug 工具本身的黑箱問題,還是使用它的人沒找到正確的“竅門”。至于這次 Yelp 工程事故報告還未有進(jìn)一步的信息披露,但用神經(jīng)網(wǎng)絡(luò)算法 debug 應(yīng)該有風(fēng)險,部署需謹(jǐn)慎。
不過一款讓工程師省時省力的 debug 工具顯然是人人所期待的,AI 科技大本營之前寫過一篇《@程序員,終于可以放心寫 bug 了!Facebook 的 debug 神器你值得擁有》中提到 ,去年 9 月,F(xiàn)acebook 基于 AI 技術(shù)再次推出新款代碼調(diào)試工具 SapFix,可針對特定的 bug 自動生成修復(fù)程序,然后將其提交給工程師,經(jīng)確認(rèn)之后,然后再部署到生產(chǎn)環(huán)境中。相比其一年前已投入大規(guī)模使用的智能自動化軟件測試工具 Sapienz,SapFix 能夠在沒有 Sapienz 的情況下運(yùn)行,主要用于修復(fù) Sapienz 在生產(chǎn)前發(fā)現(xiàn)的程序 bug。
從發(fā)現(xiàn) bug 到修復(fù) bug,F(xiàn)acebook 有一套完整的流程:首先 Sapienz 以及 Facebook 的靜態(tài)分析工具 Infer,會幫助定位代碼中需要修補(bǔ)的點;一旦 Sapienz 和 Infer 精確定位與崩潰相關(guān)的特定代碼部分之后,就會將該信息傳遞給 SapFix;***,SapFix 會參考幾種不同的策略,自動生成補(bǔ)丁。
根據(jù) Facebook 的數(shù)據(jù),Sapienz 報告的大約四分之三的錯誤都需要開發(fā)者來修復(fù)。自 Facebook 開始測試 SapFix 之后,該工具已經(jīng)成功生成了被人類審核者接受并部署于生產(chǎn)的補(bǔ)丁。不過,目前 SapFix 總體上仍在開發(fā)階段。
Facebook 都還只是在嘗試階段,Yelp 的工程師這次似乎對自家的 debug 工具太自信了,一鍵清庫簡直不能更酸爽,不知道他們這次有沒有感受到來自深度學(xué)習(xí)的威力。



























