當前位置:
首頁 > 新聞 > 英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

近日,英特爾的研究者提出新型深度神經網路壓縮技術 DeepThin,適合移動端設備,性能優於其他壓縮技術。

論文:DeepThin: A Self-Compressing Library for Deep Neural Networks

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

論文鏈接:https://arxiv.org/abs/1802.06944

摘要:隨著業界在移動設備上部署越來越大、越來越複雜的神經網路,這些設備的內存和計算資源所面臨的壓力也越來越大。深度壓縮(或深度神經網路權重矩陣壓縮)技術為此類場景擴展了應用資源。現有的壓縮方法無法高效壓縮模型,壓縮 1-2% 都比較困難。我們開發了一種新的壓縮技術 DeepThin,該技術基於低秩分解領域的現有研究。我們將秩分解和向近似函數添加非線性的重塑過程結合起來,從而識別和打破由低秩近似造成的人工約束。我們將 DeepThin 部署為一個與 TensorFlow 相整合的 plug-gable 庫,使用戶無縫壓縮不同粒度的模型。我們在兩個頂尖的聲學模型 TFKaldi 和 ZXC DeepSpeech 上評估 DeepThin,將其與之前的壓縮方法(剪枝、HashNet 和秩分解)、實證有限研究方法和手動調整模型進行了對比。在 TFKaldi 上,DeepThin 網路的詞錯率(WER)在幾乎所有測試壓縮率情況下優於其他方法,平均優於秩分解 60%,優於剪枝 57%,優於等大小的手動調整網路 23%,優於計算成本高昂的 HashNet 6%。在 DeepSpeech 上,DeepThin 壓縮網路比所有其他壓縮方法的測試損失都低,優於秩分解 28%,優於剪枝 27%,優於手動調整同樣大小網路 20%,優於 HashNet 12%。DeepThin 還使推斷速度提升了 2 倍到 14 倍,提升幅度取決於壓縮率和平台緩存大小。

1 引言和動機

近年來,機器學習演算法越來越廣泛地應用於消費者產品中,如個人助手中的語音識別。這些演算法依賴於大型權重矩陣將網路中的不同節點之間的關係進行編碼。完美情況下,這些演算法將直接在客戶端設備上運行,如 Amazon Echo [20] 和 Google Home [14]。不過,此類設備通常是移動、低功耗設備,因此運行此類計算成本高昂的演算法並不可行,此類演算法對內存、性能和能耗有很高要求。

為了解決該問題,很多開發者致力於在高性能雲伺服器上執行推斷模型,和在客戶端和伺服器之間傳輸模型輸入和輸出。但是,該解決方案帶來了很多問題,如高昂的運算成本、移動網路上的大量數據遷移、用戶隱私擔憂,以及延遲增加。

近期研究調查了可將模型壓縮至能夠在客戶端設備上直接高效執行的方法。此類壓縮方法必須在基本不影響預測準確率、運行時性能或工程時間量的前提下降低模型空間需求。我們的研究基於低秩分解領域的現有研究,我們開發了一種新型壓縮方法和 DeepThin 庫,該方法:

  1. 使用輔助中間矩陣和高效的重新布局操作,解決了機器學習模型參數極低秩矩陣分解的基礎對稱性問題。

  2. 整合了流行和常用的 TensorFlow 框架,使用戶無縫壓縮不同粒度的模型。我們在該庫中實現了之前的壓縮技術,以對比不同壓縮方法的準確率損失。

  3. 在同樣大小的網路上,比其他壓縮方法的準確率更高。

  4. 在我們基於 MKL [11] 的自定義 C++ TensorFlow 操作幫助下,實驗證明其推斷性能加速比未壓縮的模型提高 2 倍到 14 倍。

3. DeepThin 壓縮模型

標準的深度神經網路包含一系列有序連接的層級(layer),輸入數據依次通過各層直到獲得想要的輸出。每個層計算先前層輸出與當前層權重矩陣之間的矩陣乘積。在計算完矩陣乘積之後,將結果加上偏置項並饋送到非線性激活函數而得到輸出。

對有時間依賴性的數據,可使用循環神經網路。儘管有很多不同類型的 RNN,但它們都涉及一種包含若干(通常 3 或 4)類似於上述計算步驟的模型。這樣的模型要比尋常的 DNN 更具參數效率,但仍舊需要特別大的權重矩陣來獲得優秀的準確率,因此它們可以從壓縮方法中得到巨大收益。

對視覺數據而言,卷積神經網路從輸入數據中學習到濾波器組(權重),來提取常見特徵。每層的正向傳播步驟都類似於上面描述的層運算。在此論文中,我們重點放在了 RNN 和前饋 DNN。然而,把 DeepThin 壓縮方法應用到 CNN 也沒有任何基礎限制。

在該研究中,我們將該壓縮方法單獨應用到每層的權重矩陣。具備非線性激活函數 a、權重 W、偏置項 B 的單個層可定義為:Y = a(X.W + B) (1),其中 W 和 B 是必須存儲在該網路內的可學習參數。B 的大小與 W 相比可以忽略不計,因此這裡我們只考慮 W 參數的壓縮(不過我們在評估中也壓縮偏置項)。

DeepThin 架構可壓縮任意存儲大型權重矩陣(如公式 1 中的 W)的模型,不過準確率會有些微損失。

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

圖 1. 權重矩陣的低秩分解:隨著 r 變小,重構矩陣的行和列對應地實現縮放。

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

圖 2. 打破分解創建的人工結構約束。該變換具備兩個可學習參數:低秩因子 X^f 和 W^f。

6 準確率結果

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

表 1. 與其他四種壓縮方法相比,DeepThin 的平均提升。TFKaldi 數值是關於詞錯率下降,DeepSpeech 數值是關於測試誤差減少。這裡,我們看到不同的壓縮方法在不同的數據集上各有偏重,而 DeepThin 在幾乎所有測試情況中打敗了其他壓縮方法。

7 性能結果

英特爾提出新型壓縮技術DeepThin,適合移動端設備深度神經網路

表 2. TFKaldi 和 DeepSpeech 上,DeepThin 模型在不同壓縮大小和機器情況中的執行速度對比。不同機器之間的壓縮大小略有不同,但是準確程度在 0.0001 以內。所有結果都以比未壓縮的基線模型速度「X faster」的形式呈現。我們發現最大的提升來自緩存較小的平台,使用 DeepThin 可持續降低所有測試配置中的執行時間,使之更適合延遲和電量使用比較重要的環境。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

通過分析視網膜圖像診斷心腦血管疾病:谷歌大腦團隊取得醫療深度學習新進展
外媒稱英偉達下月將發布新型GPU「Turing」,挖礦虛擬貨幣

TAG:機器之心 |