機器之心原創
作者:一鳴
今年產生的眾多預訓練語言模型中,ALBERT 是不同尋常的一個,因為它參數量明顯比大部分模型都要小,卻能在多項基準測試中達到 SOTA。本文是對該研究的第一作者——谷歌科學家藍振忠博士進行了採訪。在與機器之心的交流中,藍博士解答了關於 ALBERT 的一些問題。同時,我們也和藍博士就 ChineseGLUE 榜單(藍博士為項目作者之一)和他個人的研究生涯進行了探討。
今年石破天驚的預訓練語言模型,可謂是下半年的 ALBERT 預訓練模型。和 XLNet、RoBERTa 等不同。ALBERT 模型大幅減少了模型的參數量,卻仍然在 GLUE、SQuAD 2.0、RACE 榜單上達到了 SOTA。另一項引起業界關注的項目,則是中文預訓練語言模型評價基準 ChineseGLUE。ChineseGLUE 項目目前已吸引多個企業和研究機構參與,目前已有 6 項中文自然語言處理任務評價基準加入。這兩個重要的工作背後,都有著谷歌科學家,CMU 畢業博士藍振忠的身影。
藍博士曾於 2010 年獲中山大學軟體工程和統計學學士學位,後於 2012 年至 2017 年在 CMU 攻讀博士學位,主要研究計算機視覺和多媒體分析相關的技術。畢業後,藍博士現在在谷歌擔任機器智能方面的科學家。
藍博士在多項頂會上發表過論文,包括 NeurlPS、CVPR、ICCV、IJCAI、ICDM 等。據谷歌學術統計,藍博士已有論文 20 多篇,h-index 為 17,總引用數量為 1400 餘次。在本次採訪中,機器之心就 ALBERT、ChineseGLUE 等話題和藍博士進行了交流。
ALBERT:受知識蒸餾啟發的架構微創新
機器之心:我們首先談談 ALBERT 方面的問題吧。您當時為什麼會想到要寫 ALBERT 的論文?是因為什麼樣的契機?
藍振忠:這個工作其實不是我一直在做的,我之前做的更多的是視頻分析,但是也是集中在特徵理解方面,所以兩者的工作是有延續性的。當時,我有位朋友在國內做一家叫做貪心科技的 AI 教育方面的公司,需要我做一個演講。我於是把自然語言理解的工作整個梳理一下,梳理完的時候就剛好發現有這樣一個問題,於是就開始做了,前後時間也就四五個月。
機器之心:可否請您談談發現的問題是什麼樣的?是怎樣引導您想到去做 ALBERT 的思路上去的?
藍振忠:主要的問題是:現有的預訓練模型的參數量都太大了。BERT 本身是一個應用非常廣泛、效果很好的工作,對各項任務的提升都很大,屬於在 NLP 領域開創性的工作,類似於 CV 領域的「AlexNet」,但是問題就是模型的參數量太大了,比如說 BERT-large 有三億多個參數。所以很多人都在做 distillation(知識蒸餾)方面的工作。但知識蒸餾有一個問題是其學習能力受限於大模型。如果想要在大模型的基礎上還有所提升的話,需要做架構上的改變。所以,我們基本是借鑑 CV 的一些做法,如 MobileNet,去做一些架構上的創新。首先思考的是是在性能不變的情況下,如果做到減少參數量,於是我們就有對詞向量的投射做一個因式分解和對隱層的參數做共享兩個方法分別來減少這兩個不同模塊的參數量。
BERT 和 ALBERT 兩者的參數量比較。
機器之心:我們知道 ALBERT 中使用的參數化因式分解和參數共享兩個方法,它們分別是怎樣提升了模型的表現呢?
藍振忠:這兩個方法實際上都是將模型的參數進行降低。從架構的角度來看,可以把 BERT 或者 Transformer 的架構分為兩個部分。其中一個是把單詞投射到隱層。另一個部分是在隱層上做迭代的詞向量變換。兩塊的模型參數都比較大。所以,我們如果想整體的去減少整個模型的參數量,就需要把兩塊的參數量都降下來。參數的因式分解和共享剛好對應的是這兩個模塊的降低參數量的方法。
除了這兩個方法可以降低參數量,從而降低模型的內存佔用,我們還發現去掉 Dropout 以後可以顯著的降低內存佔用。
機器之心:為什麼說去掉 Dropout 可以減少內存的佔用呢?
藍振忠:在計算的時候,除了參數會佔用內存之外,還有臨時變量也會佔用內存。去掉 Dropout 可以顯著減少臨時變量對內存的佔用,所以提升了性能。
機器之心:現在是否可以說,預訓練模型已經可以應用在行動裝置上了?如果不成熟的話,還有哪些技術難點需要解決?
藍振忠:我覺得已經可以應用了。最近有一個這樣研究,是 ChineseGLUE 的項目組做的,是 ALBERT 的中文版。他們訓練了一個 ALBERT-Tiny 模型。我在谷歌的同事將它轉成 tensorflow-lite 之後在手機端上做了一些測試。在 4 線程的 CPU 上的延時是 120 毫秒左右;這個是符合某些手機端的要求的。當然,我們最近還在做一些更新,還有進一步提升的空間。
機器之心:在未來,預訓練語言模型的研究方面還會有哪些進步和發展呢?
藍振忠:未來可能會有兩個方向。第一個是在訓練目標上的創新,我們目前在尋找比語言模型和句子順序預測更好的一些訓練目標。另外在架構上,如果在 Transformer 上有創新的,可以借鑑過來。不過,所謂的突破性進展其實都是由一點一點的微創積累而來。比如說 ALBERT 的這個例子,它是在 BERT 上做微創新而來的,而 BERT 又是在 GPT 基礎上做微創新而來的。這些又都是基於 Transformer 這樣一個架構的創新。如果沒有 Transformer,這些工作都不會有這麼好的效果。這說明,大的技術都是一點點積累起來的。
BERT(左)、GPT(中)和 ELMo(右)預訓練語言模型的架構對比。BERT 吸收了 GPT 使用 Transformer 和 ELMo 採用雙向預訓練的優點。
ChineseGLUE 的目標是成為中文領域的 GLUE
機器之心:我們剛才談到了 ChineseGLUE,您也是這個項目的作者之一,當初加入這個項目是什麼樣的一個想法?
藍振忠:這個項目的意義非常好。如果我們想要提升中文預訓練模型的效果,需要有一個比較完整的評價體系。之前,我們是沒有一個比較全面的評價體系的。加入 ChineseGlue,我希望和小夥伴們把這個體系給搭起來。現在在 NLP 方面的中國研究人員非常多。我們希望最終中文也能被納入作為新模型評價的一個指標。
在 ChineseGLUE 上進行過評價的模型。
機器之心:我們知道現在 ChineseGLUE 上面已經有一些相關的任務了,接下來還會加入哪些呢?當我們在考慮將一個任務加入評價體系的時候,會需要考慮哪些方面的因素和評價標準?
藍振忠:首先說一下我們考慮的標準。第一個標準就是:這個任務必須有用。對現有的應用能起到推動作用。第二個標準是:這個任務不是評價一個已經被解決或快被解決的一個問題。如果它是一個現有的模型已經能夠解決的,我們就不會考慮了。
在要添加的任務上,我們當然是希望將更多任務加入,越多越好。現在 ChineseGLUE 的成員裡面有一些工業界的朋友,希望他們能夠在開源方面貢獻一些數據出來。例如,像我們說的 Chatbot——聊天機器人,國內很多聊天機器人都需要進行意圖識別的工作。如果(工業界)能夠貢獻出一些意圖識別的數據,其實對他們來說也是很有用的。他們可以利用整個學術界的力量提高他們的產品。如果他們貢獻出一個數據集,大家都在上面提高(模型效果),那他們要採用這些技術也容易一些。
機器之心:之前機器之心也報導過像 ChineseGLUE 這樣的項目,從觀察上來看,好像沒有看到人類在 ChineseGLUE 的各項任務上的表現。之後是否會添加人類的表現做對比呢?
藍振忠:這的確是一個我們現在面對的問題。因為項目現在都是志願者,所以我們沒有能力去做人類水平的評價。以後我們會去做這方面的工作,因為如果有了人類的結果,對於了解數據集的難度、任務本身的難度是非常有用的。
機器之心:現在進行測試的時候,模型都是志願者團隊,或者說是項目作者們大家一起實現的,是否有其他的機構,比如說提出模型的研究者和機構參與進來?比如說,把自己的測評結果上傳到一個排行榜網站上?
藍振忠:這是我們最終希望的。現在基本上都是志願者在做,我們希望以後 ChineseGLUE 有一定影響力以後,寫文章的人們會自然而然地去使用這個標準進行測試,然後提交結果,最後做到像 GLUE 那樣的標準。
ChineseGLUE 測評結果的提交頁面。地址:http://106.13.187.75:8003
喜歡何愷明和 Alexei Efros 的工作
機器之心:關於您個人的研究工作上的一些問題。您的一個主要的研究興趣是「multi-media analysis(多媒體分析)」,和我們常接觸到的計算機視覺或自然語言處理研究有什麼樣的聯繫?
藍振忠:我當時做的是多媒體方面,主要是視頻分析。所以說它也屬於計算機視覺領域,但是視頻的幀之間的聯繫。
我之前做過兩三個工作。其中一個是叫做「double fusion」的工作。我們需要把各種視頻中的特徵進行融合,如文字,語音、圖像、視頻的特徵進行融合。我當時做的工作是將這些特徵先融合,然後訓練一個單獨的分類器;再對每個單獨特徵訓練一個分類器,最後把這些分類器的結果匯總起來。
之後我做的主要工作還是在計算機視覺上,從視頻數據上提取一些好的特徵。比如我 CVPR 2015 年的一篇文章是把圖像處理一個非常經典的高斯金字塔的算法延伸到視頻(時序)分析上。這個工作叫做 Beyond Gaussian Pyramid: Multi-skip Feature Stacking for Action Recognition。
Double Fusion論文地址:http://www.cs.cmu.edu/afs/cs.cmu.edu/Web/People/lanzhzh/index/Double%20Fusion_MMM2012.pdfBeyond Gaussian Pyramid: Multi-skip Feature Stacking for Action Recognition論文地址:https://arxiv.org/pdf/1411.6660v3.pdf機器之心:我們知道您經常接觸很多研究和實驗,如果某個研究或實驗的效果不理想,遇到了一些瓶頸的時候,您會有什麼樣的方法論去解決這些問題?
藍振忠:我一般喜歡去跟同事們去交流。當我有一個想法或碰到一個問題,我先不做,先跟同事、朋友聊。問問看他們對這個想法或問題的看法。另外一個方法是:有時候我會放下手頭的工作,然後去讀一些鄰近領域的文章。因為我最開始是做計算機視覺的,所以我現在還會經常跟進這方面的工作。
機器之心:您現在是在谷歌工作,您覺得在大企業和在高校進行研究,有什麼樣的共同點和區別?
藍振忠:總的來說,在計算機視覺領域,一些核心的工作,如 ImageNet 這樣的,如果你有一個小的集群,這也是可以訓練起來的。但是如果是 BERT 那樣的模型,只有大的集群才能訓練起來。所以現在在自然語言理解方面,在大公司做人工智慧研究的優勢要明顯一些。在大公司的集群裡面,你能跑的實驗會多很多。
但是,在研究機構裡面,你可以做一些方法論方面的工作。很多時候,你不需要在一個大的模型上去做驗證。在 ALBERT 的對比實驗上,基本上都是在一個最小的模型上去做,然後把它最終再把有用的方法應用到到大的模型上。因為大模型訓練的確比較昂貴,所以我們基本上也是在小的模型上去做快速的迭代;高校也可以採用同樣的方法。
機器之心:最後一個問題,在您目前的職業生涯中,有哪些印象比較深的研究工作?
藍振忠:我比較喜歡兩個人的工作。何愷明的工作是我非常喜歡的,他的文章裡面很少出現公式,但是非常有用。還有一位是 Alexei Efros,曾經在 CMU 當教授,現在是 UC 伯克利的老師。他有很多奇思妙想方面的工作,文章讀起來非常優美。讀他們兩個人的工作,感覺特別舒服。