微軟Adam挑戰Google Brain:我的機器學習比你快

人工智慧(AI)是近年來很熱門的一個領域,Google、Facebook、蘋果、微軟等巨頭都在發展。而可以幫助進行語音識別、語言翻譯及提供運算裝置視覺的深度學習則是最近新寵。

儘管蘋果有SiriFacebook成立了人工智慧實驗室,但業界普遍的看法是Google是人工智慧領域競賽的領跑者。因為最近有深度學習的領軍人物Geoff Hinton的加盟,因為它展示過自己會自主學習的深度學習系統,也因為它與NASA 聯合成立的人工智慧實驗室等吸引人眼球的東西。在計算機視覺和語音識別方面,Google還保持著幾個記錄。

但現在微軟的研究團隊要向Google 挑戰:我的深度學習系統Adam 要比你的Google Brain 快。微軟稱,在ImageNet 22K 標杆測試上,Adam 在識別圖像方面的熟練程度是之前系統的兩倍,使用的機器則要少得多,僅為其1/30。ImageNet 22K 是用來測試深度學習系統計算機視覺(自動識別圖像能力)能力的數據庫,共有150 萬張圖片,圖片類型多達22000 種,此前只有少數係統能處理這麼多類型,其中就包括Google Brain, Google 的Andr​​oid 語音識別和Google Maps 等的AI 計算都要靠Google Brain。

那麼Adam 是怎麼做到的呢?

Adam 並不是在算法上進行突破,而是優化了機器數據處理方式,同時調整了機器的通訊方式。Adam 是微軟研究員Trishul Chilimbi(Bing 的基礎設施是他弄的)想出來的產物,其訓練方式不太算是人工智慧的科學,而是大規模運算系統的藝術。


深度學習系統類似,Adam也運行於一組標準服務器(由微軟Azure提供)之上。深度學習更加接近於創造了神經網絡的大腦的運作方式,而這些神經網絡往往需要大規模的伺服器去模擬。Adam的獨特之處在於使用了非同步(asynchrony)技術。


我們知道,隨著運算系統越來越複雜,系統的各個組件之間的訊息交換變得越來越困難,而非同步可以緩解這一問題。所謂的非同步,指的是將系統拆分為基本能獨立運行的各個部分,然後再把計算結果合併起來。合併結果在智慧型手機和筆記型電腦上是比較容易實現的,因為運算可以分佈到許多裝置的晶片上,但是跨許多不同運算裝置實現這一點就沒有神經網絡那麼成功。此前許多研究機構和公司(包括Google 在內)都是靠大型非同步系統來實現這一點的,而現在微軟利用了威斯康辛大學研發的一種名為“HOGWILD!”的技術來實現非同步系統。

HOGWILD! 當初的設計主旨是讓機器內的每一個處理器工作更加獨立。甚至可以允許不同的晶片同時向同一個內存地址寫入,即操作相互覆蓋也沒問題。對於大多數系統來說,這種做法是很糟糕的,因為會引發數據衝突,但是在一些情況下這麼做是沒問題的。威斯康辛大學已經證明,在小型運算系統裡,數據衝突的機率是很低的。這樣的話,單台機器的速度可以顯著提升。Adam 則更進一步,把HOGWILD! 的非同步應用到整個計算機網絡上。

神經網絡非常稠密,所有的機器都要向主伺服器發送更新,數據衝突風險很高。但是由於這種更新往往都是遞增性的更新,所以發生衝突的結果往往是一致的。舉個例子,機器1 可能要給某個現值為5 的變量加1,機器2 則要給這個變量加3,這種情況下,系統不會控制兩台機器的更新次序,因為最後結果是一樣的,都是9。這樣一來,微軟的神經網絡在理解圖像之類的東西就可以更快、更精確。

百度的深度學習專家Andrew Ng對此的評價是:

很有侵略性的做法,不過我知道為什麼這種做法能省很多計算?好想法,很有趣。




令Ng 感到驚訝的是,Adam 運行於傳統的運算處理器而非GPU(圖形處理器)上,後者往往是偏數學型計算的首選。許多深度學習系統都轉向GPU 以避免通訊瓶頸,但是Adam 卻走了不同的路線。

神經網絡需要大規​​模的數據,這種量已經超出了單台機器CPU 的能力範圍,所以才需要跨機器。用GPU 可以更快地處理數據。問題是如果單個GPU 或有多GPU 的單台伺服器無法容納下整個AI 模型的話,系統就會停轉。因為數據中心的通訊系統速率趕不上GPU 處理訊息的速度會導致數據擁塞。因此有些專家稱GPU 不適合擴展到大型神經網絡上。Chilimbi 也持同樣的看法。

不過,由於微軟並沒有公佈優化網絡的細節,業界的專家對於Adam 如何實現微軟所聲稱的性能提升並不知曉。

目前該項目仍處於萌芽階段。微軟內部用戶可以透過手機抓拍一個對象之後提交給Adam 讓它來識別。微軟研究院負責人Peter Lee 稱,他已經用Adam 識別出了一種狗和一種害蟲,目前該App 尚未有面向公眾推出的計劃,但顯然這種技術在電子商務、機器人和情感分析等方面都有廣泛用途。微軟內部也在討論用FPGA(現場可編程邏輯門陣列)提高Adam 性能的可能性。

資訊來源
wired.com

文章出自36氪

每日精選科技圈重要消息

追蹤我們