Google在2020年提出了AlBert模型。模型是對Bert的改進,效果肯定要好,不然怎么是改進呢,貌似說的是廢話。閑言碎語不要講,直接上結論:
image.png
各項都很牛
到底做什么,讓他變得如此強大?
- Factorized embedding parameterization
詞的embeding長度E,沒必要跟特征提取器transformer的隱層向量H長度相等。
考慮到詞的編碼是靜態,就本身代表的詞義,和上下文無關。
transformer隱層是上下文信息的編碼。
二者確實也不用等價。
于是作者,就嘗試不用E,讓其小一點。 將輸入V * E 的向量接一個 E* H的矩陣,直接轉到 V* H,然后在和隱層搞后面的東西。
個人理解,word Embedding長度短了, 此舉目的也是減少參數量。進而可以減少整個訓練時間。 - Cross-layer parameter sharing
就是用一個transformer。 原始的Bert用12個Transformer,不同的transformer不同的參數。 我這里就用一個,同樣的參數,每一輪都迭代這個參數。通過這改進,作者發現,每層輸出距離和相似度都很穩定,不像Bert變化浮動大,不穩定。 - Inter-sentence coherence loss
其實就是改進Bert的NSP任務為SOP,為什么改進的呢, Bert原始NSP so easy了。 完全兩個不同話題的兩句話,放到一起判斷是不是下一句,沒意義,僅通過話題就能區分開。
而SOP則難了? 來自同一個話題,而且調換順序,判斷是不是調換。實驗表明這個任務有1個點的提升。
以上就是本人對ALBert分析:
- 通過共享參數 和 Factorized embedding 縮小規模, 提高訓練速度。當然效果也有提升。
- 通過SOP,提升訓練效果。
- 但是實際應用,預測時間不變,因為同樣一直用了12層的Transformer,雖然是同一個。