從剪枝法到低秩分解,手機端語言模型的神經網絡壓縮

 2017-09-27 07:44:48.0

參與:李亞洲

日前,介紹了一種壓縮手機端計算機視覺模型的方法。在這篇文章中,我們介紹了一篇論文,介紹和對比了手機端語言模型的神經網絡壓縮方法。

神經網絡模型需要大量的磁盤與存儲空間,也需要大量的時間進行推理,特別是對部署到手機這樣的設備上的模型而言。

在目前的研究中,業內已有多種方法解決該難題。部分是基於稀疏計算,也包括剪枝或其他更高級的方法。總而言之,在將模型存儲到磁盤時,這樣的方法能夠大大降低訓練網絡的大小。

但是,當用模型進行推理時,還存在其他問題。這些問題是由稀疏計算的高計算時間造成的。有一種解決方式是使用神經網絡中不同的基於矩陣的方法。因此,Lu, Z 等人 2016 年 ICASSP 的論文提出基於使用 Toeplitz-like 結構化矩陣的方法。此外還有其他的矩陣分解技術:低秩分解、TT 分解(張量訓練分解)。 Yoshua Bengio 等人 2016 年 ICML 論文提出的 uRNN(Unitary Evolution Recurrent Neural Networks)也是一種新型 RNN。

在這篇論文中,來自俄羅斯三星研發機構、俄羅斯高等經濟研究大學的研究人員對上述的研究方法進行了分析。首先,他們對語言模型方法進行了概述,然後介紹了不同類型的壓縮方法。這些方法包括剪枝、量化這樣的簡單方法,也包括基於不同的矩陣分解方法的神經網絡壓縮。更多論文細節如下,具體信息可點論文鏈接查看。

論文:Neural Networks Compression for Language Modeling


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

摘要:在本論文中,我們考慮了多種壓縮技術,對基於 RNN 的語言模型進行壓縮。我們知道,傳統的 RNN(例如基於 LSTM 的語言模型),要么具有很高的空間複雜度,要么需要大量的推理時間。對手機應用而言,這一問題非常關鍵,在手機中與遠程服務器持續互動很不合適。通過使用 Penn Treebank (PTB)數據集,我們對比了 LSTM 模型在剪枝、量化、低秩分解、張量訓練分解之後的模型大小與對快速推斷的適應性。

3. 壓縮方法統計

3.1 剪枝與量化


圖 1:剪枝前後的權重分佈

3.2 低秩分解

3.3 TT 分解法(張量訓練分解)

4. 結果


表 1:在 PTB 數據集上的剪枝和量化結果

表 2:在 PTB 數據集上的矩陣分解結果

5. 結論

在此論文中,我們考慮語言模型神經網絡壓縮的多種方法。文章第一部分介紹剪枝與量化方法,結果顯示這兩種技術應用於語言模型壓縮時毫無差別。文章第二部分介紹矩陣分解方法,我們演示了在設備上實現模型時,這些方法的優勢。移動設備任務對模型大小與結構都有嚴格的限制。從這個角度來看,LR LSTM 650-650 模型有更好的特性。它比 PTB 數據集上的最小基準還要小,且其質量可與 PTB 上的中型模型媲美。

文章來源:機器之心