CMU楊植麟等人再次瞄準softmax瓶頸,Mixtape兼顧表達性和高效性

2021-01-11 機器之心Pro

選自arxiv

作者:楊植麟、Thang Luong等

機器之心編譯

參與:魔王、杜偉

2017 年,楊植麟等人提出一種解決 Softmax 瓶頸的簡單有效的方法——Mixture of Softmaxes(MoS)。但該方法成本高昂,於是最近楊植麟等人再次瞄準 softmax 瓶頸問題,提出兼顧表達能力和高效性的新方法 Mixtape。

論文連結:https://papers.nips.cc/paper/9723-mixtape-breaking-the-softmax-bottleneck-efficiently.pdf

softmax 瓶頸限制了神經語言模型的表達能力(expressiveness)。Mixture of Softmaxes (MoS) 是解決該理論局限的有效方法,但與 softmax 相比,MoS 無論在內存還是時間上都成本較高。

來自 CMU 和谷歌大腦的楊植麟、Thang Luong、Ruslan Salakhutdinov 和 Quoc Le 提出了一種新方法 Mixtape,該輸出層利用三項新技術——logit 空間向量門控(logit space vector gating)、sigmoid 樹分解(sigmoid tree decomposition)和門控共享(gate sharing),更高效地打破了 softmax 瓶頸。

研究者在語言建模和機器翻譯等四個基準數據集上進行了實驗,結果表明 Mixtape 層與 MoS 層性能相當,且 Mixtape 的效率是後者的 3.5-10.5 倍。在 10-30K 的詞彙量下,使用 Mixtape 的網絡僅比基於 softmax 的網絡慢 20%-34%,其困惑度和翻譯質量均優於 softmax。

softmax 帶給我們的苦與樂

大量神經網絡使用 softmax 作為標準輸出層,包括大部分神經語言模型。但是,正如楊植麟等人在

之前研究 [19]

中所指出的,softmax 限制了神經語言模型的表達能力,因為它將輸出表示限制在低秩,這不足以建模自然語言的複雜性。該局限叫做「softmax 瓶頸」。

為了打破這一瓶頸,[19] 提出新方法 Mixture of Softmaxes (MoS),它將離散潛在變量引入到輸出層中,通過 log-sum-exp 非線性變換使對數概率矩陣變為高秩。但是,MoS 的內存和時間成本均高於 softmax,這使得它在計算資源有限的情況下實際應用性減弱。

MoS →Mixtape

為了降低 MoS 的計算成本,最近楊植麟等人提出了一種高效解決 softmax 瓶頸的新型輸出層 Mixtape。Mixtape 可作為額外層嵌入到任意現有網絡的交叉熵損失函數之前。它不像 MoS 在概率空間中部署標量混合(scalar mixture),而是在 logit 空間中應用向量門控機制,以避免使用多個成本高昂的 softmax。

此外,Mixtape 還使用了另外兩項新技術來進一步降低計算成本。

首先,向量門控機製成本高昂,因為該機制需要我們對詞彙表中的每一個詞計算 softmax 門控。為此,研究者提出了 sigmoid 樹分解技術,將 softmax 概率門控分布分解為一個深度為 2 的二叉樹結構,每一個分支所包含的概率值部分由 sigmoid 函數決定。sigmoid 樹分解更加高效,因為它避免了 softmax 中的減除運算。

另一項技術是門控共享,即對所有低頻詞共享門控值,得到部分高秩的表示。該技術在不影響性能的情況下,節約了一定量的內存和計算資源,因為即使沒有門控共享,低頻詞的門控值通常也很難準確估計。

Mixtape 有多強大

Mixtape 結合了以上三項技術,效率較 MoS 有顯著提升,而且 Mixtape 在四個基準數據集上的性能堪比甚至超過後者。在正常詞彙量情況下(如 10K-30K),基於相同的批大小,Mixtape 層的速度是 MoS 層的 1.6-11.5 倍;基於相同的內存,Mixtape 層的速度是 MoS 的 3.5-10.5 倍。

在正常詞彙量情況下,基於相同的批大小,使用 Mixtape 的網絡速度僅比使用 softmax 的網絡慢 5%-18%;基於相同的內存,前者僅比後者慢 20%-34%。在包含 100K token 的大詞彙量情況下,基於 Mixtape 的網絡的速度僅比基於 softmax 的網絡慢 60%。

Mixtape 和 MoS 在困惑度和翻譯質量方面均優於 softmax。有趣的是,這些基準數據集各自的詞彙量從 10K 到 100K 不等,其輸入表示也不盡相同(包括單詞和 BPE 子詞),這表明 Mixtape 對不同輸入都很高效,具備穩健性。

Mixtape 高效解決 softmax 瓶頸的奧秘

softmax 瓶頸問題的定義。

2017 年,CMU 楊植麟等人提出了解決 Softmax 瓶頸的簡單有效方法 MoS。近期,楊植麟等人為了解決效率低下問題,再次提出了新方法 Mixtape,該方法既能和 MoS 一樣學習高秩表示,其效率又高於 MoS。

如前所述,Mixtape 運用了三項新技術,接下來我們就來查看其細節。

logit 空間向量門控

MoS 成本最高的部分是計算 K 個 softmax,如果我們能夠只用一個 softmax 計算最終概率分布,就可以節約大量計算資源。我們很容易想到將混合(mixture)從概率空間移到 logit 空間,即在 softmax 運算之前混合表示,從而得到條件分布

。但是,正如論文 [19] 所述,該公式會導致低秩表示,因為它仍然使用公式 (1) 中的矩陣分解。

於是,該研究做了一個小小的修改:在 logit 空間中使用混合運算,從而得到高秩表示。其關鍵思想是:使用向量門控機制,而不是標量混合。也就是說,該方法未對每一個 token 使用共享混合權重集,而是對不同的 token 應用不同的權重集。使用向量門控後,條件分布的公式可寫為:

但是,在 Mixtape 取得高效率的路上還有一個障礙。對於每一個 context-token 對 (c, x),先驗 π_c,x,k 需要執行歸一化操作,而這需要對每一對的先驗概率執行 softmax 運算。

Sigmoid 樹分解

為了高效計算先驗 π_c,x,k,研究者不使用 softmax,而是提出一種新技術——將 softmax 分布分解為 sigmoid 函數樹結構。具體而言,計算 (K 1) 個 sigmoid 輸出,並利用它們定義樹分支的概率。例如,當 K = 4 時,先驗被定義為:

其中 γ_ 表示 sigmoid 概率,σ 表示 sigmoid 函數。

這就是 sigmoid 樹分解。這種分解能夠通過 (K 1) 個 sigmoid 函數完全恢復 K-way 概率分布。使用 sigmoid 函數可以移除 softmax 中的減除運算,更加高效。

令 g_c 作為語境 c 下的 d_1 維度最後一層隱藏狀態,則預激活先驗(pre-activation prior)l_ 的計算公式為:

其中 v_x ∈ R^(d_2)、U_k ∈ R^(d_2×d_1)、u_k ∈ R^(d_1)、b_x,k ∈ R 是模型參數。d_2 是表示門控嵌入大小的超參數,通常比正常的詞嵌入大小 d 要小。語境嵌入可以通過以下公式得到:

其中 H_k ∈ R^(d×d_1) 是模型參數。

門控共享

通過上述兩個方法已經可以得到高效的高秩模型,但仍然存在改進空間。研究者觀察到,我們仍需要對詞彙表中的每個 token 計算門控先驗,而這成為影響效率的瓶頸。但是,由於缺乏訓練樣本,我們很難估計低頻 token 的門控先驗,因此學習低頻 token 的門控先驗可能只是對算力的浪費。基於此,研究者提出門控共享,即對所有低頻詞共享相同的門控先驗。具體而言,對於低頻 token x,預激活門控先驗被定義為:

使用門控共享後,研究者可使用共享門控先驗來混合語境嵌入 h_c,k,然後再與 token 嵌入 w_x 相乘,由於低頻 token 無需存儲門控 logits 從而節省了內存空間。門控共享還加速計算,因為所有低頻 token 僅計算一組門控先驗。

Mixtape 奧秘匯總

Mixtape 層可總結為:

給出最後一層的隱藏狀態 g_c,使用公式 (5) 計算語境嵌入 h_c,k;對每個高頻 token x,使用公式 (4) 計算預激活門控先驗 l_c,x,k;對於所有低頻 token,使用公式 (6) 計算預激活門控先驗 l_c,x,k;使用 sigmoid 樹分解,計算公式 (3) 中的門控先驗 π_c,x,k;使用向量門控,利用公式 (2) 獲得下一個 token 的概率。

Mixtape 層的架構如下圖所示:

圖 1:Mixtape 層架構圖。

實驗

實驗包括三部分:

Mixtape 層打破 softmax 瓶頸,從而改進了當前最優的機器翻譯系統;研究者對比了 Mixtape、MoS 和 softmax 的困惑度、翻譯質量、速度和內存約束,證明 Mixtape 能夠在效果和效率之間做好權衡;控制變量實驗證明了門控共享的優勢。

表 1:在 WMT 英德和英法語言對數據上的性能對比。Mixtape 在這兩項任務上分別使用了 2 億和 8 億參數。

表 2:數據集統計數據概況。「PTB」和「1B」分別表示 Penn Treebank 數據集和 One Billion Word 數據集。

表 3:模型在 Penn Treebank 上的困惑度和訓練時間對比情況。

表 4:模型在 One Billion Word 數據集上的困惑度和訓練時間對比情況。

表 5:模型在 WMT』14 英德語言對數據上的 BLEU 值和訓練時間對比。

表 6:模型在 WMT』14 英法語言對數據上的 BLEU 值和訓練時間對比。

相關焦點

  • 楊植麟等人瞄準softmax瓶頸,新方法顧表達性和高效性
    但該方法成本高昂,於是最近楊植麟等人再次瞄準 softmax 瓶頸問題,提出兼顧表達能力和高效性的新方法 Mixtape。但是,正如楊植麟等人在之前研究 [19]中所指出的,softmax 限制了神經語言模型的表達能力,因為它將輸出表示限制在低秩,這不足以建模自然語言的複雜性。該局限叫做「softmax 瓶頸」。
  • 潮創會精英成員楊植麟入選超新星科技人才TOP10和智源青年科學家
    在前段時間,由將門創投發布的將門&34;科技人才TOP10榜單以及由北京智源人工智慧研究院公布 的2019 年度「智源青年科學家」 名單中,潮創會精英成員、循環智能聯合創始人楊植麟憑藉其突出的表現入選,其中的 2019 年度「智源青年科學家」 ,楊植麟還是名單中最年輕的、也是唯一的一位「90 後」入選者。這兩個榜單有多牛?
  • softmax 損失函數 & 參數更新詳解
    要點回歸softmax進階多分類 - 基礎理解softmax多分類實現圖解softmax 損失函數產生及理解對參數求偏導推導及更新要點回歸:邏輯回歸二分類用sigmoid變換成預測單個「概率」,損失函數為交叉熵,用梯度下降求解參數wbsoftmax多分類用softmax
  • 從最優化的角度看待 Softmax 損失函數
    而這個方法的缺點顯而易見:我們事先並不知道這些類別之間的關係,而這樣做默認了相近的整數的類是相似的,為什麼第2類的左右分別是第1類和第3類,也許第2類跟第5類更為接近呢?在優化這個損失函數時,每次最多只會有一個+1的梯度和一個-1的梯度進入網絡,梯度幅度得到了限制。但這樣修改每次優化的分數過少,會使得網絡收斂極其緩慢,這時就又要祭出smooth大法了。那麼max函數的smooth版是什麼?有同學會脫口而出:softmax!恭喜你答錯了...
  • 「技術綜述」一文道盡softmax loss及其變種
    softmax loss實際上是由softmax和cross-entropy loss組合而成,兩者放一起數值計算更加穩定。這裡我們將其數學推導一起回顧一遍。Test_softmax_with_loss_layer.cppForward測試是這樣的,定義了個bottom blob data和bottom blob label,給data塞入高斯分布數據,給label塞入0~4。
  • 周末AI課堂 理解softmax函數 | 機器學習你會遇到的「坑」
    我們已經熟悉三種常見的輸出單元:Linear單元,實際上未進行任何操作,用於回歸任務Sigmoid,將用於二分類Softmax,用於多分類其中,linear和sigmoid都是較為好理解的,softmax作為一個用於多分類的函數,如果我們只是把softmax看作是sigmoid的多分類推廣,實際上卻本末倒置,sigmoid和softmax
  • RBF-Softmax:讓模型學到更具表達能力的類別表示
    因為傳統的softmax損失優化的是類內和類間的差異的最大化,也就是類內和類間的距離(logits)的差別的最大化,沒有辦法得到表示類別的向量表示來對類內距離進行正則化。之前的方法都是想辦法增加類內的內聚性,而忽視了不同的類別之間的關係。
  • PYNQ中實現SoftMax函數加速器
    傳統的ZYNQ開發板(Zedboard等)需要結合vivado和SDK兩大工具分別對PL、PS端進行硬體和軟體開發。本次我介紹的平臺為PYNQ開發板可使用Python將軟體操作和硬體控制進行無縫銜接,目前已經出到Z2版本,由依元素進行代理銷售,999塊極具性價比。
  • International Universities in 遼寧 "TAG LINE" Episode 2 - CMU
    clubs and also due to their minimal number of foreigners compared to smc most people see some of them and assume that for him or her to be turning up that way he or she must be from smc and not from cmu
  • CMU大佬分享三類優質數據集:綜合、CV和NLP
    CMU - ML和AI數據 地址:https://guides.library.cmu.edu/machine-learning/home CMU的一個ML/AI指南,不僅包括了如何找ML/AI的數據集,還包括了找ML/AI相關的書籍、文章以及文獻管理、研究可重複性的相關資源。
  • 《瞄準》峰迴路轉:黃軒陳赫再次開啟生死對決,這一次「牧魚」能否...
    浙江廣電集團原創出品,浙江衛視「美好時代劇獻」收官之作,由黃軒、陳赫、楊採鈺、李溪芮領銜主演的高密度狙擊動作大劇《瞄準》,每天19:30在中國藍劇場熱播中。#大鼓保護小雪# #大鼓下線# #蘇文謙再次被抓# 等熱門話題在新媒體平臺上引起網友們的廣泛討論。
  • 攜Science封面,CMU大神Noam博士畢業,論文已公開
    機器之心報導作者:杜偉還記得在雙人無限撲克和多人無限撲克中戰勝人類頂級玩家的遊戲 AI 系統冷撲大師(Libratus)和 Pluribus論文地址:http://www.cs.cmu.edu/~noamb/thesis.pdfSlides 地址:http://www.cs.cmu.edu/~noamb/thesis_slides.pdf
  • 攜Science封面,CMU大神Noam博士畢業,論文已公開
    機器之心報導作者:杜偉還記得在雙人無限撲克和多人無限撲克中戰勝人類頂級玩家的遊戲 AI 系統冷撲大師(Libratus)和 Pluribus 嗎?近日,這兩個 AI 系統的開發者之一、CMU 大神宣布其完成博士論文,並即將從 CMU 畢業。
  • 高效新型害蟲引誘劑,觀察昆蟲的信息素特徵,保持引誘劑的高效性
    這種技術在誘殺害蟲的過程中並不會波及植物和農產品,所以廣大消費者無須擔心農藥殘留等問題,這種農業技術也是現代生態農業防治害蟲的首選。昆蟲大多以類群生活,這種特性決定了昆蟲有高度的特異性和多樣性。這兩種特性不僅體現在外觀上,也體現在信息素當中,有些看似外觀很像的種類,卻有著特異性的信息素。與此同時,昆蟲有著發達的感受系統,微量的信息素就可以引發昆蟲的生理反應。比如,每隻雄性蠶蛾每次釋放的信息素可以吸引100萬隻雄性蠶蛾。
  • 繼《瞄準》之後,又一部神劇誕生,《雷霆戰將》果然雷人
    但是總有一些神劇,一直在被禁止播出的邊緣瘋狂試探,例如目前正在播出的,而且熱播居高不下的諜戰神劇《瞄準》。再比如,近日繼《瞄準》之後的又一部抗戰神劇《雷霆戰將》誕生,劇情極度雷人。由黃軒、陳赫等人主演的諜戰劇《瞄準》高開低走,劇情拖沓。
  • CMU出品,計算機圖形學秋季課程已上線,B站同步字幕視頻
    計算機圖形學(Computer Graphics)是研究計算機在硬體和軟體幫助下創建計算機圖形的學科,近年來受到了學界和業界的廣泛關注。該領域的研究者也越來越多,如計算機圖形學大神 & 太極(Taichi)作者胡淵鳴、「為可微計算機圖形學奠定基礎」榮獲 SIGGRAPH 最佳博士論文獎的太極二作李子懋等等。
  • 《瞄準》大結局太心痛,秦紫舒重傷,湘靈犧牲,秦雪的結局很意外
    由李溪芮、楊採鈺、陳赫、黃軒等人主演的電視劇《瞄準》正在火熱播出中。 《瞄準》目前的劇情已經進入最終的收尾階段,池鐵城所在的水母組在蘇文謙和松江公安局的合力打擊下已經瀕臨瓦解
  • 《瞄準》彈弓vs狙擊槍,「牧魚」和水母對決來襲,蘇文謙再救三人
    「千呼萬喚始出來,蘇文謙(牧魚)和池鐵城(水母)終於迎來了第一場對決。」《瞄準》這部電視劇目前來說看點十足,劇中最讓人期待的就是「牧魚」和「水母」的對決。今天它終於來了,在這場對決中蘇文謙略勝池鐵城一籌。01、牧魚和水母的過去。
  • 廈門:瞄準新材料提升「烯」引力
    瞄準新材料領域,火炬高新區再次發力,努力打造福建省乃至全國領先的石墨烯技術創新引領區、產業發展先導區、應用示範先行區,提升城市「烯」引力。突破瓶頸 應用先行將石墨烯、納米碳管等碳材料進行配比,再通過獨創的工藝混合造粒,粒料直接注塑、模壓成型,便形成了電池芯。