sponsored links

詳解AI加速器(一):2012年的AlexNet到底做對了什麼?

選自 Medium

作者:Adi Fuchs

機器之心編譯

AI、機器學習、深度學習的概念可以追溯到幾十年前,然而,它們在過去的十幾年裡才真正流行起來,這是為什麼呢?AlexNet 的基本結構和之前的 CNN 架構也沒有本質區別,為什麼就能一鳴驚人?在這一系列文章中,前蘋果、飛利浦、Mellanox(現屬英偉達)工程師、普林斯頓大學博士 Adi Fuchs 嘗試從 AI 加速器的角度為我們尋找這些問題的答案。

詳解AI加速器(一):2012年的AlexNet到底做對了什麼?

當代世界正在經歷一場革命,人類的體驗從未與科技如此緊密地結合在一起。過去,科技公司透過觀察使用者行為、研究市場趨勢,在一個通常需要數月甚至數年時間的週期中最佳化產品線來改進產品。如今,人工智慧已經為無需人工干預就能驅動人機反饋的自我改進(self-improving)演算法鋪平了道路:人類體驗的提升給好的技術解決方案帶去獎勵,而這些技術解決方案反過來又會提供更好的人類體驗。這一切都是在數百萬(甚至數十億)使用者的規模下完成的,並極大地縮短了產品最佳化週期。

人工智慧的成功歸功於三個重要的趨勢:1)新穎的研究專案推動新的演算法和適用的用例;2)擁有收集、組織和分析大量使用者資料的集中式實體(例如雲服務)的能力;3)新穎的計算基礎設施,能夠快速處理大規模資料。

在這個系列的文章中,前蘋果、飛利浦、Mellanox(現屬英偉達)工程師、普林斯頓大學博士 Adi Fuchs 將重點關注第三個趨勢。具體來說,他將對 AI 應用中的加速器做一個高層次的概述——AI 加速器是什麼?它們是如何變得如此流行的?正如在後面的文章中所討論的,加速器源自一個更廣泛的概念,而不僅僅是一種特定型別的系統或實現。而且,它們也不是純硬體驅動的。事實上,AI 加速器行業的大部分焦點都集中在構建穩健而複雜的軟體庫和編譯器工具鏈上。

以下是第一部分的內容,其餘部分將在後續的文章中更新。

人工智慧不僅僅是軟體和演算法

AI / 機器學習 / 深度學習的概念可以追溯到 50 多年以前,然而,它們在過去的十幾年裡才真正流行起來。這是為什麼呢?

很多人認為,深度學習的復興始於 2012 年。當時,來自多倫多大學的 Alex Krizhevsky、Ilya Sutskever、Geoffrey Hinton 等人提出了一個名為「AlexNet」的深度神經網路並憑藉該網路贏得了 2012 年大規模視覺識別挑戰賽的冠軍。在這場比賽中,參賽者需要完成一個名叫「object region」的任務,即給定一張包含某目標的影象和一串目標類別(如飛機、瓶子、貓),每個團隊的實現都需要識別出影象中的目標屬於哪個類。

AlexNet 的表現頗具顛覆性。這是獲勝團隊首次使用一種名為「卷積神經網路(CNN)」的深度學習架構。由於表現過於驚豔,之後幾年的 ImageNet 挑戰賽冠軍都沿用了 CNN。這是計算機視覺史上的一個關鍵時刻,也激發了人們將深度學習應用於其他領域(如 NLP、機器人、推薦系統)的興趣。

詳解AI加速器(一):2012年的AlexNet到底做對了什麼?

ImageNet 挑戰賽冠軍團隊的分類錯誤率逐年變化情況(越低越好)。

有意思的是,AlexNet 的基本結構和之前那些 CNN 架構並沒有太大區別,比如 Yann LeCun 等人 1998 年提出的 LeNet-5。當然,這麼說並不是想抹殺 AlexNet 的創新性,但這確實引出了一個問題:「既然 CNN 不是什麼新東西,AlexNet 的巨大成功還可以歸因於哪些要素呢?」從摘要可以看出,作者確實使用了一些新穎的演算法技術:

「為了加速訓練,我們用到了非飽和神經元和一個非常高效的 GPU 卷積操作實現。」

事實證明,AlexNet 作者花了相當多的時間將耗時的卷積操作對映到 GPU 上。與標準處理器相比,GPU 能夠更快地執行特定任務,如計算機圖形和基於線性代數的計算(CNN 包含大量的此類計算)。高效的 GPU 實現可以幫他們縮短訓練時間。他們還詳細說明了如何將他們的網路對映到多個 GPU,從而能夠部署更深、更寬的網路,並以更快的速度進行訓練。

拿 AlexNet 作為一個研究案例,我們可以找到一個回答開篇問題的線索:儘管演算法方面的進展很重要,但使用專門的 GPU 硬體使我們能夠在合理的時間內學習更復雜的關係(網路更深、更大 = 用於預測的變數更多),從而提高了整個網路的準確率。如果沒有能在合理的時間框架內處理所有資料的計算能力,我們就不會看到深度學習應用的廣泛採用。

如果我是一名 AI 從業者,我需要關心處理器嗎?

作為一名 AI 從業者,你希望專注於探索新的模型和想法,而不希望過多擔心看起來不相關的問題,如硬體的執行方式。因此,雖然理想的答案是「不,你不需要了解處理器」,但實際的答案是「可能還是要了解一下」。如果你非常熟悉底層硬體以及如何除錯效能,那麼你的推理和訓練時間就會發生變化,你會對此感到驚訝。

詳解AI加速器(一):2012年的AlexNet到底做對了什麼?

各種並行化技術對於矩陣乘法的加速效果。

如果不懂硬體,你所花的時間可能會多 2-3 倍,有時甚至多一個數量級。簡單地改變做矩陣乘法的方式可能幫你收穫巨大的效能提升(或損失)。效能欠佳可能會影響你的生產力以及你可以處理的資料量,並最終扼殺你的 AI 週期。對於一家大規模開展人工智慧業務的企業來說,這相當於損失了數百萬美元。

那麼,為什麼不能保證得到最佳效能呢?因為我們還沒有有效地達到合理的「user-to-hardware expressiveness」。我們有一些有效利用硬體的用例,但還沒泛化到「開箱即用」的程度。這裡的「開箱即用」指的是在你寫出一個全新的 AI 模型之後,你無需手動調整編譯器或軟體堆疊就能充分利用你的硬體。

詳解AI加速器(一):2012年的AlexNet到底做對了什麼?

AI User-to-Hardware Expressiveness。

上圖說明了「user-to-hardware expressiveness」的主要挑戰。我們需要準確地描述使用者需求,並將其轉換成硬體層(處理器、GPU、記憶體、網路等)能夠理解的語言。這裡的主要問題是,雖然左箭頭(programming frameworks)主要是面向使用者的,但將程式設計程式碼轉換為機器碼的右箭頭卻不是。因此,我們需要依靠智慧的編譯器、庫和直譯器來無縫地將你的高階程式碼轉換為機器表示。

這種語義鴻溝難以彌合的原因有兩個:

1)硬體中有豐富的方法來表達複雜的計算。你需要知道可用的處理元素的數量(如 GPU 處理核心)、你的程式需要的記憶體數量、你的程式所展示的記憶體訪問模式和資料重用型別,以及計算圖中不同部分之間的關係。以上任何一種都可能以意想不到的方式對系統的不同部分造成壓力。為了克服這個問題,我們需要了解硬體 / 軟體堆疊的所有不同層是如何互動的。雖然你可以在許多常見的場景中獲得良好的效能,但現實中還有無盡的長尾場景,你的模型在這些場景中可能表現極差。

2)雖然在計算世界中,軟體是慢的,硬體是快的,但部署世界卻在以相反的方式執行:深度學習領域正在迅速變化;每天都有新的想法和軟體更新發布,但構建、設計和試生產(流片)高階處理器需要一年多的時間。在此期間,目標軟體可能已經發生了顯著的變化,所以我們可能會發現處理器工程師一年前的新想法和設計假設已經過時。

因此,你(使用者)仍然需要探索正確的方法來識別計算耗時瓶頸。為此,你需要了解處理器,特別是當前的 AI 加速器,以及它們如何與你的 AI 程式互動。

原文連結:https://medium.com/@adi.fu7/ai-accelerators-part-i-intro-822c2cdb4ca4

分類: 農業
時間: 2022-01-11

相關文章

「影片」聽·見 | 撇下北京“鐵飯碗”,回到村裡種櫻桃,“鄉二代”如何年賣400萬?
聽·見 | 撇下北京"鐵飯碗",回到村裡種櫻桃,"鄉二代"如何年賣400萬?

中國老兵娶日本女戰俘,隱居四川幾十年後,意外繼承上億財產

中國老兵娶日本女戰俘,隱居四川幾十年後,意外繼承上億財產
中國抗戰老兵娶下日本女戰俘,到了晚年竟然無意間繼承了上百億的遺產,這時候老兵才得知發現妻子還有這個身份.那麼這位老兵娶的女戰俘究竟有著怎樣的身份呢?老兵又為何能在老年繼承這麼多的遺產呢?本期影片為你一 ...

紅軍團長河南當“馬伕”8年無人知,1959年,毛主席點名帶其進京

紅軍團長河南當“馬伕”8年無人知,1959年,毛主席點名帶其進京
1959年某日,河南省林縣各個村莊裡響起了廣播,廣播裡說從北京來了兩位幹部,他們此行是尋找一位紅軍的老團長.這個訊息一出,村裡就炸開了鍋,村民們紛紛猜想誰是那個紅軍團團長. 林縣之下有五百多個村莊,共 ...

他們是全世界人民的眼睛
[中國共產黨對外交往回眸] 1937年至1947年,延安作為中共中央所在地,是中國革命的"神經中樞"和總後方,也是千千萬萬抗日愛國志士心中的革命聖地.然而,由於國民黨的政治隔離.新 ...

灤州土山村,一個充滿神秘色彩的古老村莊
沒有任何史料記載,但傳說與民間故事也都不是無中生有.空穴來風. 中國的北方,在少數民族政權統治下,生活了一千多年.其特點就是中華傳統文化.中華文明比較薄弱.尤其是一些村莊大多沒有村史和文字記載.後世也 ...

牛和尚的婚事

牛和尚的婚事
和尚談婚事,豈非大怪事?其實不然.我說的這人,既不姓牛,也不是和尚,而是一位地地道道的社員.只因他長得五大三粗身板硬,幹活做事有牛勁,原先家裡窮,年已三十還未成親,便得了"牛和尚" ...

花枝的故事,美麗的悲劇:她連模糊的影像都沒留一張

花枝的故事,美麗的悲劇:她連模糊的影像都沒留一張
[小說界] 花枝的故事,美麗的悲劇:她連模糊的影像都沒留一張 文|麗鹿 圖|網路 一 柳花枝是青石街上最聰慧,卻又最苦命的女孩子. 清末民國,豫西匪患不斷,青石街是個交通要道,每次南山北山的土匪下來打 ...

倆人是小學同學,一個18歲生娃一個38歲生娃,意外相遇差距太大

倆人是小學同學,一個18歲生娃一個38歲生娃,意外相遇差距太大
男人和女人的區別很大.男人可以先成家後立業. 可是女人呢,很多就被愛情矇住了心,早早結婚成家生子. 小玲和芸芸是初中同學,但是初中畢業後一個選擇輟學打工,一個則繼續上學,然而之後的生活截然不同. 小玲 ...

放鷹人騙婚招數多年未變,帶女兒相親,騙財後跑路,為啥無人識破

放鷹人騙婚招數多年未變,帶女兒相親,騙財後跑路,為啥無人識破
村西頭有座橋,叫馬店橋,橋北頭有家飯館叫"好運來".老闆是趙莊人,叫趙磕巴.他帶著大兒子和老婆開飯店,掙了不少錢. 這一天,飯館來了兩女一男,看相貌打扮就知道是外地人. 三個人要了 ...

民間故事:老漢被趕出家門,好心小夥接回家住,三年後富甲一方
話說古時候在紹興府山陰縣,有一個叫李良的年輕小夥.李良是個苦命的孩子,他母親在生他時,因難產過世.父親含辛茹苦把他拉扯到七歲,也因病去世了.李良是吃百家飯長大的,村裡幾乎每戶人家的飯碗他都端過. 李良 ...

小小說:養豬

小小說:養豬
村東頭的張大爺年輕時因為成分不好,個子也有點低,一直沒有找到媳婦,一人吃飽,全家不餓!好在張大爺很勤快,種莊稼一把好手,地裡莊稼施肥播種,精耕細作很是認真,院子裡屋子裡也收拾的井井有條幹乾淨淨! 農閒 ...

聊齋故事:巨蟒

聊齋故事:巨蟒
敘州有個名叫陶二郎的少年,有一天,他帶著狗去山上割草.到了山上,找到一片綠油油的草地,開始割豬草. 過了會,忽然狂風大作,濃重的腥臭味撲鼻而來,瞬間,一條大蟒蛇忽的至前. 只見它大約三丈多長,昂著頭, ...

村“頭兒”三爺

村“頭兒”三爺
最近一次見到三爺是今年清明回家祭祖的時候.真是霜刀風劍,歲月無情.幾年未見,三爺是銀髮滿頭,背也有些駝了.聽三爺說,自己早隨兒子到城裡住了. 在我的記憶中,三爺一直是咱村裡的"頭兒" ...

農村曾很火的“太陽能”,為何現在消失了?真的是被禁用了嗎?

農村曾很火的“太陽能”,為何現在消失了?真的是被禁用了嗎?
大家好,我是村官小焦! 記得小時候,村裡很多有錢人家都在自家屋頂上,安裝了被稱為"洗澡神器"的太陽能熱水器,當時很多人覺得這個東西不用插電就能把水燒熱,花一次錢就能用很長時間,覺得 ...

慘劇發生在凌晨

慘劇發生在凌晨
這個事情己經發生了20多年了,現在回想起來,時時告誡人們,一定不要涉足他人婚姻,免得惹禍上身,害人害己.當時的農村生活比較落後,沒有現在那麼多的工廠企業,人們閒暇之餘只能去建築工地去打工,有些門路的去 ...

在玉麥,戶戶高掛五星紅旗

在玉麥,戶戶高掛五星紅旗
講述人:西藏自治區山南市隆子縣玉麥鄉央宗 我的家,在喜馬拉雅山脈南麓.雖然離縣城直線距離不過40公里,可要翻兩座海拔超過5000米的雪山.去一趟縣城,即使天氣好,也得走上整整一天. 這裡,每年有260 ...

巖塢古村

巖塢古村
來源:武義融媒體中心-武義新聞網 江南的小山村,散落在坡上.溪邊.山坳,挨在一起的算是同一個自然村,隔了一片田地菜園,或者相距有幾百步路途,亦或有幾株古樹分開,那就自成村落,另有其名了. 連那些沒有人 ...

特寫|湖北“小井岡”:如何借紅色旅遊,徹底改變落後面貌?

特寫|湖北“小井岡”:如何借紅色旅遊,徹底改變落後面貌?
澎湃新聞記者 韓雨亭 發自湖北黃石 曾被稱為湖北"小井岡"的大冶市殷祖鎮南山村,俗稱南山頭,位於市區南部約十七公里處,山脈縱橫交錯,層巒疊嶂,水口重關,地勢極為險要. 眼前的南山村 ...

白毛女羅昌秀:初下山不喜食油鹽肉,與丈夫結婚43年從未紅過臉

白毛女羅昌秀:初下山不喜食油鹽肉,與丈夫結婚43年從未紅過臉
白毛女的故事曾轟動全國,舞臺上那個可憐的楊喜兒讓觀眾看得淚流滿面,但很多人不知道的是,四川也同樣有個命運悲慘的女子. 她就是四川宜賓縣的羅昌秀,她在地主惡霸的逼迫下,16歲就逃入深山,整整躲藏了17年 ...

聊齋故事:狐娘

聊齋故事:狐娘
敘州有個孟家莊,村子裡稀稀拉拉的住著幾十戶人家,過著日出而作,日落而息的日子.農閒時,村民還會跟著獵戶薛海去山上,打些小動物打打牙祭. 有一天,薛海又帶著兩個村民有說有笑的去山上打獵. 可是轉了一圈 ...