小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

BERT的通俗理解 預(yù)訓練模型 微調(diào)

 印度阿三17 2019-07-17

1、預(yù)訓練模型
? ? ? BERT是一個預(yù)訓練的模型,那么什么是預(yù)訓練呢?舉例子進行簡單的介紹
? ? ? 假設(shè)已有A訓練集,先用A對網(wǎng)絡(luò)進行預(yù)訓練,在A任務(wù)上學會網(wǎng)絡(luò)參數(shù),然后保存以備后用,當來一個新的任務(wù)B,采取相同的網(wǎng)絡(luò)結(jié)構(gòu),網(wǎng)絡(luò)參數(shù)初始化的時候可以加載A學習好的參數(shù),其他的高層參數(shù)隨機初始化,之后用B任務(wù)的訓練數(shù)據(jù)來訓練網(wǎng)絡(luò),當加載的參數(shù)保持不變時,稱為"frozen",當加載的參數(shù)隨著B任務(wù)的訓練進行不斷的改變,稱為“fine-tuning”,即更好地把參數(shù)進行調(diào)整使得更適合當前的B任務(wù)

? ? ?優(yōu)點:當任務(wù)B的訓練數(shù)據(jù)較少時,很難很好的訓練網(wǎng)絡(luò),但是獲得了A訓練的參數(shù),會比僅僅使用B訓練的參數(shù)更優(yōu)

Task #1: Masked LM
? ? ?為了訓練雙向特征,這里采用了Masked Language Model的預(yù)訓練方法,隨機mask句子中的部分token,然后訓練模型來預(yù)測被去掉的token。

具體操作是:

隨機mask語料中15%的token,然后將masked token 位置輸出的final hidden vectors送入softmax,來預(yù)測masked token。

這里也有一個小trick,如果都用標記[MASK]代替token會影響模型,所以在隨機mask的時候采用以下策略:

1)80%的單詞用[MASK]token來代替

my dog is hairy → my dog is [MASK]
2)10%單詞用任意的詞來進行代替

my dog is hairy → my dog is apple

3)10%單詞不變

my dog is hairy → my dog is hairy


Task 2#: Next Sentence Prediction
? ? ? ?為了讓模型捕捉兩個句子的聯(lián)系,這里增加了Next Sentence Prediction的預(yù)訓練方法,即給出兩個句子A和B,B有一半的可能性是A的下一句話,訓練模型來預(yù)測B是不是A的下一句話
Input = [CLS] the man went to [MASK] store [SEP]
?????????????penguin [MASK] are flight ## less birds [SEP]
Label = NotNext
?????????????he bought a gallon [MASK] milk [SEP]
Label = IsNext
Input = [CLS] the man [MASK] to the store [SEP]
訓練模型,使模型具備理解長序列上下文的聯(lián)系的能力

2、BERT模型
BERT:全稱是Bidirectional Encoder Representation from Transformers,即雙向Transformer的Encoder,BERT的模型架構(gòu)基于多層雙向轉(zhuǎn)換解碼,因為decoder是不能獲要預(yù)測的信息的,模型的主要創(chuàng)新點都在pre-traing方法上,即用了Masked LM和Next Sentence Prediction兩種方法分別捕捉詞語和句子級別的representation

其中“雙向”表示模型在處理某一個詞時,它能同時利用前面的詞和后面的詞兩部分信息,這種“雙向”的來源在于BERT與傳統(tǒng)語言模型不同,它不是在給你大牛股所有前面詞的條件下預(yù)測最可能的當前詞,而是隨機遮掩一些詞,并利用所有沒被遮掩的詞進行預(yù)測

下圖展示了三種預(yù)訓練模型,其中 BERT 和 ELMo 都使用雙向信息,OpenAI GPT 使用單向信息


3、BERT的輸入部分


? ? ?bert的輸入部分是個線性序列,兩個句子通過分隔符分割,最前面和最后增加兩個標識符號。每個單詞有三個embedding:位置信息embedding,這是因為NLP中單詞順序是很重要的特征,需要在這里對位置信息進行編碼;單詞embedding,這個就是我們之前一直提到的單詞embedding;第三個是句子embedding,因為前面提到訓練數(shù)據(jù)都是由兩個句子構(gòu)成的,那么每個句子有個句子整體的embedding項對應(yīng)給每個單詞。把單詞對應(yīng)的三個embedding疊加,就形成了Bert的輸入。

? ? ? 如上圖所示,輸入有A句[my dog is cute]和B句[he likes playing]這兩個自然句,我們首先需要將每個單詞及特殊符號都轉(zhuǎn)化為詞嵌入向量,因為神經(jīng)網(wǎng)絡(luò)只能進行數(shù)值計算。其中特殊符[SEP]是用于分割兩個句子的符號,前面半句會加上分割碼A,后半句會加上分割碼B
? ? ? 因為要建模句子之間的關(guān)系,BERT 有一個任務(wù)是預(yù)測 B 句是不是 A 句后面的一句話,而這個分類任務(wù)會借助 A/B 句最前面的特殊符 [CLS] 實現(xiàn),該特殊符可以視為匯集了整個輸入序列的表征。
最后的位置編碼是 Transformer 架構(gòu)本身決定的,因為基于完全注意力的方法并不能像 CNN 或 RNN 那樣編碼詞與詞之間的位置關(guān)系,但是正因為這種屬性才能無視距離長短建模兩個詞之間的關(guān)系。因此為了令 Transformer 感知詞與詞之間的位置關(guān)系,我們需要使用位置編碼給每個詞加上位置信息。

總結(jié)一下:
(1)token embeddings表示的是詞向量,第一個單詞是CLS,可以用于之后的分類任務(wù)
(2)segment embeddings用來區(qū)別兩種句子,因為預(yù)訓練不光做LM還要做以兩個句子為輸入的分類任務(wù)
(3)position embeddings表示位置信息

4、NLP的四大類任務(wù)
(1)序列標注:分詞、實體識別、語義標注……
(2)分類任務(wù):文本分類、情感計算……
(3)句子關(guān)系判斷:entailment、QA、自然語言推理
(4)生成式任務(wù):機器翻譯、文本摘

上圖給出示例,對于句子關(guān)系類任務(wù),很簡單,和GPT類似,加上一個起始和終結(jié)符號,句子之間加個分隔符即可。對于輸出來說,把第一個起始符號對應(yīng)的Transformer最后一層位置上面串接一個softmax分類層即可。對于分類問題,與GPT一樣,只需要增加起始和終結(jié)符號,輸出部分和句子關(guān)系判斷任務(wù)類似改造;對于序列標注問題,輸入部分和單句分類是一樣的,只需要輸出部分Transformer最后一層每個單詞對應(yīng)位置都進行分類即可。從這里可以看出,上面列出的NLP四大任務(wù)里面,除了生成類任務(wù)外,Bert其它都覆蓋到了,而且改造起來很簡單直觀。(https://zhuanlan.zhihu.com/p/49271699)

5、模型的評價
(1)優(yōu)點

BERT是截止至2018年10月的最新的的state of the art模型,通過預(yù)訓練和精調(diào)可以解決11項NLP的任務(wù)。使用的是Transformer,相對于rnn而言更加高效、能捕捉更長距離的依賴。與之前的預(yù)訓練模型相比,它捕捉到的是真正意義上的bidirectional context信息

(2)缺點

作者在文中主要提到的就是MLM預(yù)訓練時的mask問題:

1)[MASK]標記在實際預(yù)測中不會出現(xiàn),訓練時用過多[MASK]影響模型表現(xiàn);

2)每個batch只有15%的token被預(yù)測,所以BERT收斂得比left-to-right模型要慢(它們會預(yù)測每個token)

6、GLUE語料集的介紹
實驗數(shù)據(jù)以及對應(yīng)的NLP任務(wù)
MNLI:蘊含關(guān)系推斷
QQP:問題對是否等價
QNLI:句子是都回答問句
SST-2:情感分析
CoLA:句子語言性判斷
STS-B:語義相似
MRPC:句子對是都語義等價
RTE:蘊含關(guān)系推斷
WNLI:蘊含關(guān)系推斷

7、git網(wǎng)址https://github.com/google-research/bert
關(guān)于bert知識干貨的匯總https://zhuanlan.zhihu.com/p/50717786

本文轉(zhuǎn)自https://blog.csdn.net/yangfengling1023/article/details/84025313
---------------------
作者:小白的進階
來源:CSDN
原文:https://blog.csdn.net/laobai1015/article/details/87937528
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!

來源:https://www./content-4-336551.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章