
各大科技企業(yè)近來不約而同地發(fā)力“人工智能”和“深度學習”領域。“Google大腦之父”、現(xiàn)百度首席科學家Andrew Ng一個月前在PingWest于舊金山舉辦的SYNC大會上提到過,“深度學習是許多現(xiàn)代科技產(chǎn)品背后的“引擎”,作為核心技術支撐著商業(yè)上的應用,比如網(wǎng)絡搜索、機器翻譯、產(chǎn)品推薦和醫(yī)學圖像等,帶來了相當可觀的經(jīng)濟價值。”
現(xiàn)在,微軟也加入了這個“角斗場”。
微軟的研究人員稱,他們的深度學習系統(tǒng)——名叫Adam(亞當)——取得了突破性的成果,比起之前的深度學習系統(tǒng)而言更為成熟。微軟的研究人員舉例說,比如在圖片識別方面,這個系統(tǒng)不僅可以識別出指定的物品,還能夠在該類目分類項下,進行更精確的識別。和先前的“Google大腦”作對比,如果說“Google大腦”能做到的是,在看完一周Youtube視頻后,識別出貓,那么Adam可以識別出貓及貓的品種,并且使用的機器數(shù)量只有之前的三十分之一。
微軟研究院主管Peter Lee博士表示,“Adam計劃”尋找的并不是在模擬神經(jīng)網(wǎng)絡的規(guī)模上有所突破,而是構建方式上的改進。這些改進指的是:優(yōu)化和微調了機器處理數(shù)據(jù)和機器間數(shù)據(jù)溝通的方式。當計算系統(tǒng)變得更為復雜時,每個部件之間都在同一時間傳送信息——這件事會隨著系統(tǒng)越來越龐大而越來越困難,而Adam系統(tǒng)允許了異步算法的存在。異步算法指的是將一個大的系統(tǒng)拆分為不同的部分,并且在分享和輸出計算結果前允許他們分別獨立運作,同時,在分享結果時各個部分的結果相互覆蓋也沒有問題。
威斯康辛大學計算機科學學院的研究者Feng Niu, Benjamin Recht等人的研究報告指出,在使用傳統(tǒng)的隨機梯度下降算法(SGD)來進行幾個并行計算任務時,通常需要保證計算結果輸出的同步,否則會引發(fā)數(shù)據(jù)沖突。但如果只是應用在小型計算系統(tǒng)里,首先,數(shù)據(jù)沖突的幾率很低。其次,由于數(shù)據(jù)結果的寫入往往是遞增性的,每個部分輸出和疊加只是順序不同,因此即便發(fā)生沖突但計算結果通常都是一致的。這個在研究報告中被稱為“Hogwild!”技術使得異步計算在深度學習系統(tǒng)中成為可能。
另外,微軟的深度學習系統(tǒng),不同于Google大腦采用GPU為搭建的元件,而是使用了造價更為昂貴的CPU,這些機器由微軟的Azure云服務提供支持。