新智元報道
來源:phys.org
編譯:弗格森 文強
【新智元導讀】 萊斯大學兩位研究員使用一種基于 Hashing 的新技術,大幅減少了訓練和測試神經(jīng)網(wǎng)絡所需的計算量。他們稱:“1000 個神經(jīng)元的網(wǎng)絡我們能節(jié)能 95%,根據(jù)數(shù)學推導,10 億個神經(jīng)元的網(wǎng)絡我們就能節(jié)能 99%”。phys.org報道稱,這對谷歌、微軟和Facebook等有著大量深度學習神經(jīng)網(wǎng)絡訓練的大公司來說事關重大。
美國萊斯大學(Rice University )的計算機科學家通過使用被廣泛使用的快速數(shù)據(jù)查找技術,以大幅度減少深度學習所必需的計算量,進而大大地節(jié)約了能源和時間。
萊斯大學計算機科學家已經(jīng)采用了廣泛使用的快速數(shù)據(jù)查找技術,以減少計算量,從而減少了深度學習所需的能量和時間,這是一種計算強大的機器學習形式。
“這能運用到任何一種深度學習架構中,并且,其技巧是亞線性擴展的,也就是說,運用的神經(jīng)網(wǎng)絡越大,能節(jié)省的計算資源就會越多”,萊斯大學計算機科學系助理教授、該研究的第一作者 Anshumali Shrivastava 介紹說。
研究將會出現(xiàn)在2017年的 KDD 會議上,會議將于8月在Nova Scotia的Halifax 舉辦。這一研究解決了谷歌、Facebook 和 微軟等這些爭先恐后地希望搭建、訓練和部署大規(guī)模的深度神經(jīng)網(wǎng)絡的科技巨頭最緊迫的需求之一。它們希望用深度學習來滿足越來越多的產(chǎn)品需求,如自動駕駛汽車,語言翻譯和智能回復電子郵件等。
Shrivastava和 Rice 大學的研究生 Ryan Spring 證明,“哈希”(Hashing)技術是一種真實的數(shù)據(jù)索引方法,可以大大減少深度學習的計算消耗?!肮!?涉及使用智能散列函數(shù)將數(shù)據(jù)轉(zhuǎn)換為可管理的小數(shù),稱為哈希。哈希被存儲在表格中,其運行方式就好像紙質(zhì)書中的索引。
“我們的方法混合了兩種技術:一個局部敏感哈希 clever 變量,以及一個稀疏的反向傳播。這樣就能在不大量地降低準確率的情況下,減少必要的計算消耗。Spring 說,“比如,在小規(guī)模的測試中,我們發(fā)現(xiàn)在標準方法下,能在準確率損失控制在1%的情況下,將計算能耗減少95%?!?/span>
深度學習網(wǎng)絡的基礎建造模塊是一個人造神經(jīng)元。雖然1950年代,生物神經(jīng)元的首先被發(fā)現(xiàn),但是,人造神經(jīng)元只是一個數(shù)學函數(shù)和等式,建立在大量的數(shù)據(jù)之上,可以轉(zhuǎn)化為輸出。
在機器學習中,所有的神經(jīng)元都從一張白紙的“空”狀態(tài)開始,在訓練過程中變得特異化(specialized)。在訓練期間,網(wǎng)絡被“給予”大量數(shù)據(jù),每個神經(jīng)元都成為識別數(shù)據(jù)中特定模式的專家。在最低層,神經(jīng)元執(zhí)行最簡單的任務。例如,在照片識別應用中,低級神經(jīng)元可能識別來自暗處的光線或物體的邊緣。這些神經(jīng)元的輸出被傳遞到網(wǎng)絡下一層的神經(jīng)元中,這些神經(jīng)元又會以其特有的方式搜索它們會識別的特征。
只有幾層的神經(jīng)網(wǎng)絡就可以學習識別人臉、各種犬類、停車標志和校車。
Shrivastava 說:“向網(wǎng)絡的每層增加更多的神經(jīng)元可以增強其表現(xiàn)力(expressive power),而且我們想要網(wǎng)絡有多大這一點沒有上限?!?/span>
據(jù)報道,谷歌正在嘗試訓練一個擁有 1370 億個神經(jīng)元的網(wǎng)絡。相比之下,訓練和部署這樣的網(wǎng)絡需要的計算力是有限的。
Shrivastava 說,目前使用的大多數(shù)機器學習算法都是 30 到 50 年前開發(fā)的,在設計的時候沒有考慮到計算的復雜性。但是,有了大數(shù)據(jù)之后,對于計算周期、能源和內(nèi)存等資源來說,就存在著基本的限制,而“我們的實驗室側(cè)重于解決這些限制?!?/span>
Spring 表示,在大規(guī)模深度網(wǎng)絡中,hashing 帶來的計算和節(jié)能將會更大。
Spring 說,由于他們利用大數(shù)據(jù)中固有的稀疏性,因此能量的節(jié)省會隨著網(wǎng)絡規(guī)模的增加而增加?!凹僭O一個深度網(wǎng)絡有 10 億個神經(jīng)元,對于任何一個給定輸入——例如一張狗的圖片——只有少部分神經(jīng)元會被激活。
在數(shù)據(jù)科學的術語中,這就叫做稀疏性(sparsity),而正因為有了稀疏性,他們的方法節(jié)省的能量會隨著網(wǎng)絡規(guī)模的擴大而增加。
“所以,1000 個神經(jīng)元的網(wǎng)絡我們能節(jié)能 95%,根據(jù)數(shù)學推導,10 億個神經(jīng)元的網(wǎng)絡我們就能節(jié)能 99%?!?/span>
原文:https://phys.org/news/2017-06-scientists-slash-deep.html#jCp
Ryan Spring (左) 和 Anshumali Shrivastava.
這篇論文《通過隨機哈希實現(xiàn)可擴展、可持續(xù)的深度學習》(Scalable and Sustainable Deep Learning via Randomized Hashing),已經(jīng)作為 Oral 被 KDD 2017 接收。
雖然論文的同行評議版本要到 KDD 召開時才能得知,通過網(wǎng)上的資料,我們可以看到去年底 Spring 在 arXiv 上傳的論文預印版(地址:https://arxiv.org/pdf/1602.08194.pdf)。
下面是論文的摘要。
為了從復雜的數(shù)據(jù)集中學習,當前深度學習框架越來越大。這些框架需要進行巨大的矩陣乘法運算來訓練數(shù)百萬個參數(shù)。與此相反,另一個呈增長的趨勢是將深度學習帶入低功耗、嵌入式設備。為了訓練和測試深度網(wǎng)絡而進行的相關矩陣運算,從計算和能量消耗的角度看是非常昂貴的。我們提出了一種基于 Hashing 的新技術,大幅減少了訓練和測試神經(jīng)網(wǎng)絡所需的計算量。我們的方法結合了最近提出的兩大概念,即自適應 dropout 和最大內(nèi)部搜索(MIPS)隨機 Hashing,有效選擇網(wǎng)絡中具有最高激活的節(jié)點。
這一新深度學習算法通過在(數(shù)量明顯更少的)稀疏節(jié)點上運行,減少前向和后向傳播步驟的總體計算成本。因此,我們的算法在保持原始模型平均精度 1% 的同時,僅使用總乘法的 5%。
論文提出的基于 Hashing 的反向傳播算法,一個獨特屬性是 update 總是稀疏的。而由于稀疏梯度 update,我們的算法非常適合異構和并行訓練。通過在幾個真實數(shù)據(jù)集上進行嚴格的實驗評估,我們證明了提出的算法具有可擴展性和可持續(xù)性(能量效率高)。
圖1:從圖中可見,神經(jīng)網(wǎng)絡 Low-Rank 假設需要的參數(shù)數(shù)量自然會更少
圖2:對神經(jīng)網(wǎng)絡進行隨機哈希的視覺展示。① 建一個哈希表,方法是對每個隱藏層(一次迭代)的權重做哈希。② 使用該層的隨機哈希函數(shù)對該層的輸入做哈希。③ 查詢這一層的哈希表,獲取激活數(shù)據(jù)集 AS。④ 僅在激活神經(jīng)元上做前向和后向傳播。⑤ 更新 AS 權重和哈希表。
圖7:一個標準網(wǎng)絡使用我們的方法(隨機哈希)和使用異構隨機梯度下降,在 56 核的英特爾 Xeon ES-2697 處理器上的性能比較。我們依次在 MNIST、NORB、Convex 和 Rectangles 數(shù)據(jù)集上進行了測試。所有網(wǎng)絡的初始值都是一樣的。
圖8:新方法(LSH-5%)使用異構隨機梯度下降每步(per epoch)獲得的掛鐘時間。我們用一個有 3 層隱藏層的網(wǎng)絡,依次在 MNIST、NORB、Convex 和 Rectangles 數(shù)據(jù)集上進行了測試。Convex 和 Rectangles 數(shù)據(jù)集上增量較少,是因為在整個過程中可用的訓練樣本不夠多。實驗中只使用了 5% 的標準網(wǎng)絡計算量。
聯(lián)系客服