Albert學習記錄

albert相對BERT而言主要有三個改進方向:

1、對Embedding因式分解

在BERT中,詞向量維度E和隱層維度H是相等的。而詞嵌入學習的是單詞與上下文無關的表示,而隱層則是學習與上下文相關的表示。顯然後者更加複雜,需要更多的參數,也就是說模型應當增大隱層大小 [公式] ,或者說滿足 [公式] 。在實際中,詞表V通常非常大,如果E=V,隨着BERT模型的增大,E也會隨着H不斷增加,導致embedding matrix的維度 [公式] 非常巨大。

在Albert中,想要打破 [公式] 與 [公式] 之間的綁定關係,從而減小模型的參數量,同時提升模型表現。詞表V到隱層H的中間,使用一個小維度做一次尺度變換:先將單詞投影到一個低維的embedding空間 [公式] ,再將其投影到高維的隱藏空間 [公式] 。這使得embedding matrix的維度從 [公式] 減小到 [公式] 。當 [公式]時,參數量減少非常明顯。

 

2、參數共享

通過層與層之間的參數共享也是albert減少參數量的一個方法。

bert的每一層參數獨立,當層數增加時,參數量也會明顯上升,albert將所有層的參數進行共享,即只學習一層的參數量,極大地減小模型的參數量,提升訓練速度。

 

 3、SOP任務

Albert對BERT的預訓練任務Next-sentence prediction (NSP)進行了改進。

下一句預測(Next-sentence prediction,NSP):正樣本爲文章中上下相鄰的兩個句子,負樣本爲從兩篇文檔中各自選取一個句子。

句子順序預測(Sentence-order prediction,SOP):正樣本爲文章中上下相鄰的兩個句子,負樣本爲一篇文檔中的兩個連續的句子,並將它們的順序交換

NSP任務相對簡單: 模型在判斷兩個句子的關係時不僅考慮了兩個句子之間的連貫性(coherence),還會考慮到兩個句子的話題(topic)。而兩篇文檔的話題通常不同,模型會更多的通過話題去分析兩個句子的關係,而不是句子間的連貫性,這使得NSP任務變成了一個相對簡單的任務。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章