斷斷續續敲了整整五天,他才算把這個複雜的網絡模型全部修改完畢。
距離比賽截止只剩下一天多的時間。
顧超凡保存好代碼文件,在終端里輸入了運行指令。
四路AMD顯卡瞬間滿載運行。
屏幕上開始滾動訓練日誌。
誤差值正在穩步下降。
這次的模型比之前複雜很多,模型訓練需要消耗更龐大的算力,這一跑,就是整整一天。
等到第二天晚上,終於,訓練結束的提示音響起。
顧超凡立刻運行驗證集,幾分鐘後,最終在模擬題的預測結果跳了出來。
Top 1正確率:61.4%。
顧超凡用力拍了一下大腿。
「搞定!」
他迅速將預測結果打包,登錄了ImageNet的提交頁面。
顧超凡點擊了上傳按鈕,看著進度條走完,頁面顯示提交成功。
他看了一眼屏幕右下角的時間。
距離比賽截止通道關閉,還剩幾個小時。
卡點提交,完美。
顧超凡伸了個懶腰,關掉顯示器,走出臥室。
「爸,我餓了,家裡有泡麵嗎?」
……
遠在多倫多的亞歷克斯剛吃完雙層芝士漢堡,手裡端著一杯啤酒回到了教研室。
他臉上帶著輕鬆的笑容,準備看看比賽結束的倒計時。
同事正在教研室里收拾東西,準備下班。
亞歷克斯走到自己的工位前,挪動滑鼠喚醒屏幕。
更新不易,記得分享101看書網
他習慣性地按下了F5刷新鍵。
頁面重新加載。
亞歷克斯舉起啤酒杯,剛湊到嘴邊,動作突然停住了。
他盯著排行榜,眼睛慢慢睜大。
第一名:神經先驅,66.2%。
第三名:AlexNet,60.5%。
亞歷克斯手裡的啤酒杯傾斜,淡黃色的酒液灑在了他的褲子上。
「王德發!」亞歷克斯猛地站了起來。
同事被嚇了一跳,轉過頭看著他。
「怎麼了亞歷克斯?你褲子濕了。」
亞歷克斯指著屏幕,手指都在發抖。
「我們第二名沒了。」
同事趕緊走過來,看著屏幕上的排行榜。
「玉泉路扛把子?又是這個來自中國的神秘隊伍。」同事一臉無語。
亞歷克斯最開始還把這支隊伍當成一個強勁的對手,因為他們一出手就霸榜了。
但隨著時間的推移,這個隊伍就再也沒有動向
眾人漸漸都快把這支隊伍給遺忘了。
結果在比賽結束前三個小時,突然詐屍,直接傳了一個61.1%的成績,把他從第二名的位置上一腳踹了下去。
亞歷克斯感覺胸口堵著一口氣上不來。
「這算什麼?年輕人不講武德?」亞歷克斯對著屏幕大喊,「這到底是哪裡來的怪物?!」
同事同情地拍了拍亞歷克斯的後背。
「或許別人只是在攢大招。」
亞歷克斯頹然坐回椅子上,拿過幾張紙巾胡亂擦著褲子上的啤酒。
他看著屏幕上那個名字,滿腦子都是問號。
……
3月15日,ImageNet第一屆比賽正式落下帷幕。
排行榜定格,通道關閉。
同時揭曉的,還有各支參賽隊伍提交的論文和源碼。
紐約大學人工智慧實驗室里。
楊立坤站在大屏幕前,盯著剛剛公布的ImageNet最終榜單。
作為卷積神經網絡之父、AI領域的泰山北斗,楊立坤雖然沒有親自帶隊參加這次比賽,但他對成績的關注度絲毫不亞於參賽選手。
通道剛一關閉,他就迫不及待地讓助理庫珀去下載前幾名的開源資料。
「教授,文件全部下載完畢了。」庫珀敲擊著鍵盤說道。
楊立坤點了點頭,拉過一把椅子坐下。
「先看第一名,那個一直霸榜的神經先驅隊。」楊立坤下達指令。
庫珀解壓了文件。
首先映入眼帘的是一篇相當規範、詳盡的學術論文。
郭長征作為大學副教授,帶隊做出的東西充滿了嚴謹的學術氣息。
論文裡詳細闡述了網絡模型的設計思路、訓練方法以及數據增強的具體策略。
「很專業的團隊。」楊立坤看著屏幕上的論文內容評價道,「他們的模型結構很有啟發性,基本功很紮實。」
實驗室里的其他研究員也紛紛點頭,有人已經拿出筆記本開始記錄要點。
看完論文,庫珀點開了源碼文件夾。
裡面是結構清晰的代碼文件,注釋寫得非常完整。
庫珀快速瀏覽著代碼的依賴庫,突然停下了動作。
「教授,有點不對勁。」庫珀指著屏幕的頂端,「他們調用了一個完全陌生的框架。」
眾人順著他指的方向看去。
代碼開頭的環境引入部分,赫然寫著一個名為「TensorFlow」的工具庫。
「TensorFlow?」庫珀皺著眉頭,「這是什麼東西?我之前從來沒聽過這個名字。」
楊立坤也覺得納悶。
他自認為了解當前AI領域的每一個主流計算工具,但這個名字對他來說完全是個盲區。
「先放一放,看看第二名的資料。」楊立坤擺了擺手。
庫珀立刻解壓了那個在最後一天實現反殺的「玉泉路扛把子」提交的文件。
解壓出來的文件夾里,空空蕩蕩。
沒有學術論文。
沒有數據圖表。
只有一個光禿禿的代碼文件。
實驗室里安靜了幾秒鐘。
「論文呢?」庫珀翻找了一下文件夾的隱藏目錄,一無所獲,「沒有論文說明,別人怎麼復現他的思路?這也太不符合學術圈的規矩了。」
「直接打開他的源碼看邏輯。」楊立坤催促道。
庫珀點開,滿屏的代碼瞬間鋪滿了顯示器。
整個文件里,連一行解釋性的注釋都找不到。
更讓庫珀抓狂的是,裡面所有的變量命名,全是一堆毫無意義的字母組合和奇怪的字母組合。
庫珀看著這些亂七八糟的字母,一臉茫然。
「這到底是用什麼語言的邏輯在命名?」庫珀忍不住吐槽。
實驗室里一位懂點中文的華裔實習生小王湊了過來。
「庫珀,這好像是中文的拼音。」小王扶了扶眼鏡,有些不確定地開口。
「什麼意思?」楊立坤轉過頭問他。
小王指著屏幕上一行處理數據的代碼,努力憋著笑進行翻譯。
「教授,這個變量名翻譯成英文是……『這個層很重要』。下面那個計算輸出結果的變量,翻譯過來是……『出結果吧』。」
整個紐約大學實驗室陷入了死一般的寂靜。
幾秒鐘後,庫珀痛苦地捂住了臉。
「這種東西,這種連變量名都瞎寫的草台班子代碼,居然能拿第二名?」
楊立坤沒有理會庫珀的崩潰,他的視線越過那些搞笑的拼音,死死鎖定了代碼的最頂端。
那裡同樣引入了一個外部環境庫。
名字依然是那個陌生的「TensorFlow」。
「又是TensorFlow。」楊立坤敏銳地抓住了關鍵點,「第一名和第二名,都在用這個我們完全不知道的框架包。這絕對不是巧合。」
……