第636章 AlexNet登場
看到ImageNetGG的亞歷克斯漫不經心地掃了兩眼,原本靠在椅背上的身體突然坐直了。
通告下方的贊助商列表里,英偉達的標誌十分顯眼。
亞歷克斯迅速點開相關連結,開始查閱英偉達最近發布的技術文檔和論壇動態。
他越看眼睛越亮,之前熬夜寫代碼的疲憊一掃而空。
「伊利亞,別敲你那祖傳代碼了,快過來看這個!」亞歷克斯激動地拍了拍桌子。
伊利亞停下動作,滑著椅子靠了過來。
「什麼東西能讓你興奮成這樣?找到自動清理bug的咒語了?」伊利亞調侃道。
亞歷克斯指著屏幕上的比賽頁面和英偉達CUDA架構說明。
「我剛剛發現了一個比賽,李飛飛教授發起的。這不是重點,重點是比賽的贊助商。你看,是英偉達。」亞歷克斯語速極快。
還沒等伊利亞細看,教研室的門被推開了。
傑弗里·辛頓拿著幾份列印好的論文走了進來。
「嗨,夥計們,今天的研究進展如何?」辛頓把論文放在桌上,拉過一把椅子坐下。
亞歷克斯立刻站了起來,走到辛頓面前。
「教授,您來得正好。我有個瘋狂的想法,也許能徹底打破我們現在的研究瓶頸。」亞歷克斯神情激動。
辛頓有些意外,示意亞歷克斯繼續說下去。
亞歷克斯直接把顯示器轉了過去,對著辛頓。
「這是一個擁有千萬級圖片數據的挑戰賽。最關鍵的是,英偉達最近在大力推廣他們的CUDA架構,並且重金贊助了這個比賽。」亞歷克斯拋出信息。
辛頓看了一眼屏幕上的硬體參數說明。
「一家做遊戲顯卡的公司,跑到學術界推銷他們的並行計算技術?」辛頓提出了疑問。
亞歷克斯連連點頭,拿過旁邊的白板筆。
「對,他們肯定想要推廣他們的底層技術生態。教授,我的想法是,我們可以用GPU來做神經網絡的計算!」亞歷克斯說出了自己的計劃。
伊利亞在旁邊聽得直皺眉。
「GPU?那是用來渲染三維遊戲多邊形的硬體。我們做的是深度神經網絡訓練,底層邏輯不兼容吧?」伊利亞提出質疑。
亞歷克斯立刻轉身面對伊利亞,開始在白板上列數據。
「表面上看是兩碼事,但實際上完美契合。你想想,我們現在的代碼用CPU跑,為什麼這麼慢?」亞歷克斯反問。
伊利亞思索了一下。
「因為要處理龐大的矩陣乘法運算,數據量太大了。」伊利亞如實回答。
亞歷克斯重重地敲了敲白板。
「這就對了!CPU的核心數量很少,一般只有兩到八個。它的架構設計是為了處理作業系統里複雜的邏輯分支。」亞歷克斯開始分析。
接著,他在旁邊寫下英偉達顯卡的參數。
「但你看GPU。它精簡了複雜的控制邏輯,把晶片面積全留給了幾百上千個小計算核心。」亞歷克斯指著那些數字。
「深度神經網絡的核心運算是什麼?就是海量的加減乘除和取最大值。根本不需要複雜的邏輯跳轉。」亞歷克斯看著兩人。
「讓幾個全能的CPU核心排隊去處理上百萬次簡單的乘法運算,這完全是資源錯配。」亞歷克斯拋出核心論點。
「而GPU的幾百個核心,可以把這上百萬次乘法拆解開,同步進行並行計算。這才是真正的算力匹配!」亞歷克斯提高了音量。
教研室里安靜了幾秒鐘。
伊利亞的大腦飛速運轉,推演著亞歷克斯的設想。
「如果真能把我們的代碼通過CUDA接口遷移到GPU上……」伊利亞喃喃自語。
「幾百個核心同時進行矩陣運算,訓練速度絕對會成百倍上升!以前需要一個月的模型,可能兩天就能跑出結果!」亞歷克斯接上了伊利亞的話。
辛頓聽完亞歷克斯的長篇大論,陷入了深深的思考。
他站起身,走到白板前,看著亞歷克斯寫下的對比數據。
「2006年的時候,我一直在研究深層網絡訓練難的問題。」辛頓緩緩開口。
亞歷克斯和伊利亞都安靜地聽著導師的復盤。
「由於信號在傳播過程中會逐層衰減,也就是梯度消失,導致網絡根本無法有效訓練。」辛頓指出當年的痛點。
「後來我提出了逐層預訓練的方法。先逐層訓練好每一層的參數,再堆疊起來整體訓練。」辛頓回顧著自己的理論成果。
「這個理論證明了深度的價值,奠定了基礎,但實際操作中,算力一直是我們跨不過去的天塹。」辛頓嘆了口氣。
他轉過身,看著亞歷克斯,臉上露出了讚賞的笑容。
「亞歷克斯,你今天提出來的這個思路非常合理。如果GPU的並行計算真的能解決算力問題,我們就能探索更深層的網絡。」辛頓給出了肯定的答覆。
亞歷克斯興奮地搓了搓手。
「既然英偉達想借這個比賽推廣技術,那我們就順水推舟,用他們的硬體拿個冠軍。這絕對是一次雙贏。」亞歷克斯分析著局面。
這一切的提前發生,自然是源於夏冬重生產生的蝴蝶效應。
原本的時空里,亞歷克斯要再過兩年才會用GPU在ImageNet上一戰封神。
但現在,因為夏冬在太平洋彼岸攪動的風雲,促使老黃感受到了危機,提前加大了對CUDA的宣傳。
這股算力的東風,恰好吹到了正為進度發愁的亞歷克斯面前。
辛頓看著這兩個幹勁十足的學生,做出了決定。
「伊利亞,亞歷克斯,你們兩個馬上去比賽官網註冊報名。我們用實際行動測試這個設想。」辛頓下達指令。
「記得報名的時候把我也加上,這種見證技術突破的時刻,我不想錯過。」辛頓笑著宣布加入隊伍。
亞歷克斯湊到伊利亞的電腦前。
「那我們團隊叫什麼名字?總得有個酷一點的代碼代號。」亞歷克斯詢問。
辛頓看著亞歷克斯。
「這個提議是你發現並提出來的,底層的GPU接口調試肯定也要靠你。名字的話,就用亞歷克斯命名吧。」辛頓直接拍板。
伊利亞在一旁立刻敲擊鍵盤。
「AlexNet,亞歷克斯網絡。簡單直接,而且有一種賽博朋克的美感。」伊利亞完成了團隊註冊。
亞歷克斯沒有推辭,開始思考更深一步的計劃。
「有了算力支持,我們可以徹底放棄以前的淺層模型。這次我要搭建一個八層的網絡!」亞歷克斯說出了大膽的構想。
「八層?五層卷積加上三層全連接層?那參數量會非常恐怖。」伊利亞被這個規模驚到了。
「為了防止這麼深的網絡訓練不穩定,我們還得加點新花樣。」亞歷克斯大腦飛速運轉。
通告下方的贊助商列表里,英偉達的標誌十分顯眼。
亞歷克斯迅速點開相關連結,開始查閱英偉達最近發布的技術文檔和論壇動態。
他越看眼睛越亮,之前熬夜寫代碼的疲憊一掃而空。
「伊利亞,別敲你那祖傳代碼了,快過來看這個!」亞歷克斯激動地拍了拍桌子。
伊利亞停下動作,滑著椅子靠了過來。
「什麼東西能讓你興奮成這樣?找到自動清理bug的咒語了?」伊利亞調侃道。
亞歷克斯指著屏幕上的比賽頁面和英偉達CUDA架構說明。
「我剛剛發現了一個比賽,李飛飛教授發起的。這不是重點,重點是比賽的贊助商。你看,是英偉達。」亞歷克斯語速極快。
還沒等伊利亞細看,教研室的門被推開了。
傑弗里·辛頓拿著幾份列印好的論文走了進來。
「嗨,夥計們,今天的研究進展如何?」辛頓把論文放在桌上,拉過一把椅子坐下。
亞歷克斯立刻站了起來,走到辛頓面前。
「教授,您來得正好。我有個瘋狂的想法,也許能徹底打破我們現在的研究瓶頸。」亞歷克斯神情激動。
辛頓有些意外,示意亞歷克斯繼續說下去。
亞歷克斯直接把顯示器轉了過去,對著辛頓。
「這是一個擁有千萬級圖片數據的挑戰賽。最關鍵的是,英偉達最近在大力推廣他們的CUDA架構,並且重金贊助了這個比賽。」亞歷克斯拋出信息。
辛頓看了一眼屏幕上的硬體參數說明。
「一家做遊戲顯卡的公司,跑到學術界推銷他們的並行計算技術?」辛頓提出了疑問。
亞歷克斯連連點頭,拿過旁邊的白板筆。
「對,他們肯定想要推廣他們的底層技術生態。教授,我的想法是,我們可以用GPU來做神經網絡的計算!」亞歷克斯說出了自己的計劃。
伊利亞在旁邊聽得直皺眉。
「GPU?那是用來渲染三維遊戲多邊形的硬體。我們做的是深度神經網絡訓練,底層邏輯不兼容吧?」伊利亞提出質疑。
亞歷克斯立刻轉身面對伊利亞,開始在白板上列數據。
「表面上看是兩碼事,但實際上完美契合。你想想,我們現在的代碼用CPU跑,為什麼這麼慢?」亞歷克斯反問。
伊利亞思索了一下。
「因為要處理龐大的矩陣乘法運算,數據量太大了。」伊利亞如實回答。
亞歷克斯重重地敲了敲白板。
「這就對了!CPU的核心數量很少,一般只有兩到八個。它的架構設計是為了處理作業系統里複雜的邏輯分支。」亞歷克斯開始分析。
接著,他在旁邊寫下英偉達顯卡的參數。
「但你看GPU。它精簡了複雜的控制邏輯,把晶片面積全留給了幾百上千個小計算核心。」亞歷克斯指著那些數字。
「深度神經網絡的核心運算是什麼?就是海量的加減乘除和取最大值。根本不需要複雜的邏輯跳轉。」亞歷克斯看著兩人。
「讓幾個全能的CPU核心排隊去處理上百萬次簡單的乘法運算,這完全是資源錯配。」亞歷克斯拋出核心論點。
「而GPU的幾百個核心,可以把這上百萬次乘法拆解開,同步進行並行計算。這才是真正的算力匹配!」亞歷克斯提高了音量。
教研室里安靜了幾秒鐘。
伊利亞的大腦飛速運轉,推演著亞歷克斯的設想。
「如果真能把我們的代碼通過CUDA接口遷移到GPU上……」伊利亞喃喃自語。
「幾百個核心同時進行矩陣運算,訓練速度絕對會成百倍上升!以前需要一個月的模型,可能兩天就能跑出結果!」亞歷克斯接上了伊利亞的話。
辛頓聽完亞歷克斯的長篇大論,陷入了深深的思考。
他站起身,走到白板前,看著亞歷克斯寫下的對比數據。
「2006年的時候,我一直在研究深層網絡訓練難的問題。」辛頓緩緩開口。
亞歷克斯和伊利亞都安靜地聽著導師的復盤。
「由於信號在傳播過程中會逐層衰減,也就是梯度消失,導致網絡根本無法有效訓練。」辛頓指出當年的痛點。
「後來我提出了逐層預訓練的方法。先逐層訓練好每一層的參數,再堆疊起來整體訓練。」辛頓回顧著自己的理論成果。
「這個理論證明了深度的價值,奠定了基礎,但實際操作中,算力一直是我們跨不過去的天塹。」辛頓嘆了口氣。
他轉過身,看著亞歷克斯,臉上露出了讚賞的笑容。
「亞歷克斯,你今天提出來的這個思路非常合理。如果GPU的並行計算真的能解決算力問題,我們就能探索更深層的網絡。」辛頓給出了肯定的答覆。
亞歷克斯興奮地搓了搓手。
「既然英偉達想借這個比賽推廣技術,那我們就順水推舟,用他們的硬體拿個冠軍。這絕對是一次雙贏。」亞歷克斯分析著局面。
這一切的提前發生,自然是源於夏冬重生產生的蝴蝶效應。
原本的時空里,亞歷克斯要再過兩年才會用GPU在ImageNet上一戰封神。
但現在,因為夏冬在太平洋彼岸攪動的風雲,促使老黃感受到了危機,提前加大了對CUDA的宣傳。
這股算力的東風,恰好吹到了正為進度發愁的亞歷克斯面前。
辛頓看著這兩個幹勁十足的學生,做出了決定。
「伊利亞,亞歷克斯,你們兩個馬上去比賽官網註冊報名。我們用實際行動測試這個設想。」辛頓下達指令。
「記得報名的時候把我也加上,這種見證技術突破的時刻,我不想錯過。」辛頓笑著宣布加入隊伍。
亞歷克斯湊到伊利亞的電腦前。
「那我們團隊叫什麼名字?總得有個酷一點的代碼代號。」亞歷克斯詢問。
辛頓看著亞歷克斯。
「這個提議是你發現並提出來的,底層的GPU接口調試肯定也要靠你。名字的話,就用亞歷克斯命名吧。」辛頓直接拍板。
伊利亞在一旁立刻敲擊鍵盤。
「AlexNet,亞歷克斯網絡。簡單直接,而且有一種賽博朋克的美感。」伊利亞完成了團隊註冊。
亞歷克斯沒有推辭,開始思考更深一步的計劃。
「有了算力支持,我們可以徹底放棄以前的淺層模型。這次我要搭建一個八層的網絡!」亞歷克斯說出了大膽的構想。
「八層?五層卷積加上三層全連接層?那參數量會非常恐怖。」伊利亞被這個規模驚到了。
「為了防止這麼深的網絡訓練不穩定,我們還得加點新花樣。」亞歷克斯大腦飛速運轉。