如何評價NLP演算法ELECTRA的表現?

時間 2021-05-06 11:13:12

1樓:Solaris

提幾個insight上的疑問吧。

1 訓練難度增加了,生成器把簡單的mask給生成好了,只留下複雜的mask。但問題是,語言建模這個任務難道不是比二分類更難嗎?如果用lm作為判別器的loss,會怎樣呢?

2 所有的位置都能參與到loss中,而mlm只有15%的位置參與。作者文中的實驗也表明,二分類任務中參與loss的比例越多,最後的效果也越高,這個提公升很明顯。我的疑問是,一定要所有的位置都參與到loss中嗎?

重要的會不會是參與到loss中的token數量?從roberta的實驗來看,增大batch size,可以取得很大的提公升,batch size大了,參與到loss中的token不也多了嗎?既然如此,我可不可以猜測electra帶來的提高可以部分被batch size的增大覆蓋掉?

一點疑問,望指教。

2樓:

我理解的是ELECTRA相比於BERT效能的提公升和算力的節省主要來自於相對於BERT系列模型隨機MASK的策略,ELECTRA的策略實際上是去找縮小版BERT(generator)的易錯的樣本(或者直接說是對抗樣本或者負樣本我覺得也行),這應該也能解釋為什麼訓練乙個BERT當generator效果會差一些,因為BERT訓練的比較好(引數多),雖然生成的負樣本質量高了,但是相對的數量也少了,如果能補充乙個實驗,要求測試generator的大小和最終discriminator的效能的關係時,保證訓練時用於discriminator的負樣本數維持在一定水平,而不是隨著generator越來越好負樣本越來越少,我覺得結果應該會顯示generator的大小比現在大一些效果會更好。至於文章中利用率的說法我不確定有沒有效,畢竟LM雖然用得少但做的是詞表大小的分類,序列標註說到底還是個二分類任務。

所以節約算力肯定是有的,簡單粗暴的想法如果像累積梯度一樣累積負樣本,我覺得generator不用特別大也能訓練乙個還不錯的discriminator

非CS科班出身NLP演算法工程師需要補哪些編譯原理知識?

痴漢 dependency parsing並不需要太多compiler知識,可能需要知道一點parse tree的基本概念,然後用神經網路抽象當前sentence的configuration作為特徵,然後選擇action進行歸約就可以了。但是這一套在compiler實現上行不通,因為自然語言和程式語...

如何評價JLPT的評分演算法?

名校志向塾東京校 眼看再一周,就要奔赴日語等級考的考場,但是依舊不能確定自己掌握的情況?日語等級考試特有的乙個制度 尺度記分 制度。今天,咱們就來簡單介紹一下,這個 尺度記分 到底是何方神聖,在平時做真題,乃至考完試後,應該如何估分。最終合格率 首先,我們來看一下近幾年的6次N1考的最終合格率是怎麼...

計算機渣碩一枚,請問飛行員和nlp演算法工程師如何選擇?

唉呀哦呀 如果你選了飛行員。同時在演算法上面也有造詣。你就是行業中的精英中的精英。如果你選it,數學也很好。你也會成為精英中的精英。 陳濤 成為飛行員的同時,業餘時間學習nlp演算法,因為有很多開源資源 但是你成為了nlp演算法工程師後,業餘時間就沒有那麼多開源資源讓你實戰成為飛行員了。 Linds...