0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

PyTorch教程-16.6. 針對序列級和令牌級應用程序微調 BERT

jf_pJlTbmA9 ? 來源:PyTorch ? 作者:PyTorch ? 2023-06-05 15:44 ? 次閱讀

在本章前面的章節(jié)中,我們?yōu)樽匀徽Z言處理應用設計了不同的模型,例如基于 RNNs、CNNs、attention 和 MLPs。當存在空間或時間限制時,這些模型很有用,但是,為每個自然語言處理任務制作一個特定模型實際上是不可行的。在 15.8 節(jié)中,我們介紹了一種預訓練模型 BERT,它需要對各種自然語言處理任務進行最少的架構更改。一方面,在提出建議時,BERT 改進了各種自然語言處理任務的最新技術水平。另一方面,如 第 15.10 節(jié)所述,原始 BERT 模型的兩個版本帶有 1.1 億和 3.4 億個參數。因此,當有足夠的計算資源時,我們可以考慮為下游自然語言處理應用程序微調 BERT。

在下文中,我們將自然語言處理應用程序的一個子集概括為序列級和標記級。在序列層面,我們介紹了如何在單個文本分類和文本對分類或回歸中將文本輸入的 BERT 表示轉換為輸出標簽。在令牌級別,我們將簡要介紹文本標記和問答等新應用,并闡明 BERT 如何表示其輸入并轉換為輸出標簽。在微調期間,BERT 在不同應用程序中所需的“最小架構更改”是額外的全連接層。在下游應用程序的監(jiān)督學習期間,額外層的參數是從頭開始學習的,而預訓練 BERT 模型中的所有參數都經過微調。

16.6.1。單一文本分類

單文本分類以單個文本序列作為輸入并輸出其分類結果。除了我們在本章中學習的情感分析之外,語言可接受性語料庫(CoLA)也是一個用于單一文本分類的數據集,判斷給定的句子是否在語法上可以接受(Warstadt et al . , 2019)。例如,“我應該學習?!?是可以接受的,但“我應該學習”。不是。

pYYBAGR9PNKAOMgOAAIY3BeUoOE245.svg

圖 16.6.1針對單一文本分類應用微調 BERT,例如情感分析和測試語言可接受性。假設輸入的單個文本有六個標記。

15.8 節(jié)描述了 BERT 的輸入表示。BERT 輸入序列明確表示單個文本和文本對,其中特殊分類標記“”用于序列分類,特殊分類標記“”標記單個文本的結尾或分隔一對文本. 如圖 16.6.1所示 ,在單文本分類應用中,特殊分類標記“”的 BERT 表示對整個輸入文本序列的信息進行編碼。作為輸入單個文本的表示,它將被送入一個由全連接(密集)層組成的小型 MLP,以輸出所有離散標簽值的分布。

16.6.2。文本對分類或回歸

我們還在本章中研究了自然語言推理。屬于文本對分類,對一對文本進行分類的一類應用。

以一對文本作為輸入但輸出連續(xù)值, 語義文本相似度是一種流行的文本對回歸任務。該任務測量句子的語義相似性。例如,在語義文本相似性基準數據集中,一對句子的相似性得分是從 0(無意義重疊)到 5(意義等同)的有序尺度(Cer等人,2017 年)。目標是預測這些分數。來自語義文本相似性基準數據集的示例包括(句子 1、句子 2、相似性分數):

“一架飛機正在起飛?!保耙患茱w機正在起飛。”,5.000;

“一個女人在吃東西?!保耙粋€女人在吃肉。”,3.000;

“一個女人在跳舞。”,“一個男人在說話?!保?.000。

pYYBAGR9PNWACEqbAAJBAxhpDWo066.svg

圖 16.6.2為文本對分類或回歸應用微調 BERT,例如自然語言推理和語義文本相似性。假設輸入文本對有兩個和三個標記。

與 圖16.6.1中的單一文本分類相比,圖16.6.2中用于文本對分類的微調BERT在輸入表示上有所不同。對于語義文本相似性等文本對回歸任務,可以應用微不足道的更改,例如輸出連續(xù)的標簽值并使用均方損失:它們在回歸中很常見。

16.6.3。文本標記

現在讓我們考慮標記級任務,例如文本標記,其中為每個標記分配一個標簽。在文本標注任務中,詞性標注根據詞在句子中的作用為每個詞分配一個詞性標簽(例如,形容詞和限定詞)。例如,根據 Penn Treebank II 標簽集,句子“John Smith's car is new”應該被標記為“NNP(名詞,專有單數)NNP POS(所有格結尾)NN(名詞,單數或質量)VB (動詞,基本形式)JJ(形容詞)”。

pYYBAGR9PNmAPTV9AAOwL_0zfyY715.svg

圖 16.6.3為文本標記應用微調 BERT,例如詞性標記。假設輸入的單個文本有六個標記。

文本標記應用程序的微調 BERT 如圖 16.6.3所示。與 圖 16.6.1相比,唯一的區(qū)別在于在文本標記中,輸入文本的每個標記的 BERT 表示被饋送到相同的額外全連接層以輸出標記的標簽,例如部分 -詞性標簽。

16.6.4。問答

問答作為另一個token級的應用,體現了閱讀理解能力。例如,斯坦福問答數據集 (SQuAD v1.1) 由閱讀文章和問題組成,其中每個問題的答案只是與問題相關的文章中的一段文本(文本跨度)(Rajpurkar 等人,2008 年)。 , 2016 年). 為了解釋,請考慮一段話“一些專家報告說口罩的功效尚無定論。然而,口罩制造商堅稱,他們的產品,如 N95 口罩,可以抵御病毒?!?以及“誰說N95口罩可以防病毒?”的問題。答案應該是段落中的文本跨度“面具制造商”。因此,SQuAD v1.1 的目標是在給定一對問題和段落的情況下預測段落中文本跨度的開始和結束。

poYBAGR9PNyAASIyAANglldmxo0985.svg

圖 16.6.4為問答微調 BERT。假設輸入文本對有兩個和三個標記。

為了微調 BERT 以進行問答,問題和段落分別打包為 BERT 輸入中的第一和第二文本序列。為了預測文本跨度的開始位置,相同的附加全連接層將從位置通道轉換任何標記的 BERT 表示i進入標量分數 si. 這樣所有passage token的得分通過softmax操作進一步轉化為概率分布,使得每個token位置i在段落中分配了一個概率pi作為文本跨度的開始。預測文本跨度的結束與上述相同,只是其附加的全連接層中的參數獨立于預測開始的參數。預測結束時,位置的任何通道令牌i由相同的全連接層轉換為標量分數ei. 圖 16.6.4描述了用于問答的微調 BERT。

對于問答,監(jiān)督學習的訓練目標與最大化地面實況開始和結束位置的對數似然一樣簡單。在預測跨度時,我們可以計算分數si+ej對于位置的有效跨度i定位j(i≤j), 并輸出得分最高的跨度。

16.6.5。概括

BERT 需要對序列級和令牌級自然語言處理應用進行最小的架構更改(額外的全連接層),例如單個文本分類(例如,情感分析和測試語言可接受性)、文本對分類或回歸(例如,自然語言推理和語義文本相似性)、文本標記(例如,詞性標記)和問題回答。

在下游應用程序的監(jiān)督學習期間,額外層的參數是從頭開始學習的,而預訓練 BERT 模型中的所有參數都經過微調。

16.6.6。練習

讓我們?yōu)樾侣勎恼略O計一個搜索引算法。當系統(tǒng)收到查詢(例如,“冠狀病毒爆發(fā)期間的石油工業(yè)”)時,它應該返回與查詢最相關的新聞文章的排名列表。假設我們有大量新聞文章和大量查詢。為了簡化問題,假設已為每個查詢標記了最相關的文章。我們如何 在算法設計中應用負采樣(參見第 15.2.1 節(jié))和 BERT?

我們如何利用 BERT 訓練語言模型?

我們可以在機器翻譯中利用 BERT 嗎?

Discussions

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 自然語言處理

    關注

    1

    文章

    600

    瀏覽量

    13484
  • pytorch
    +關注

    關注

    2

    文章

    802

    瀏覽量

    13115
收藏 人收藏

    評論

    相關推薦

    PyTorch教程-16.7。自然語言推理:微調 BERT

    )?,F在我們通過微調 BERT 重新審視這個任務。正如16.6 節(jié)所討論的 ,自然語言推理是一個序列文本對分類問題,
    的頭像 發(fā)表于 06-05 15:44 ?1195次閱讀
    <b class='flag-5'>PyTorch</b>教程-16.7。自然語言推理:<b class='flag-5'>微調</b> <b class='flag-5'>BERT</b>

    封裝微調與其它失調校正法的比較

    作者:Art Kay德州儀器 封裝微調是一種半導體制造方法,可實現高度精確的放大器及其它線性電路。放大器精確度的主要測量指標是其輸入失調電壓。輸入失調電壓是以微伏為單位的放大器輸入端誤差電壓。該
    發(fā)表于 09-18 07:56

    基于單片機的綜合應用程序數碼管【C語言】595聯控制數碼管

    基于單片機的綜合應用程序數碼管【C語言】595聯控制數碼管
    發(fā)表于 01-06 14:18 ?11次下載

    BERT模型的PyTorch實現

    BertModel是一個基本的BERT Transformer模型,包含一個summed token、位置和序列嵌入層,然后是一系列相同的self-attention blocks(BERT-base是12個blocks,
    的頭像 發(fā)表于 11-13 09:12 ?1.4w次閱讀

    關閉WIN10升工具應用程序免費下載

    本文檔的主要內容詳細介紹的是關閉WIN10升工具應用程序免費下載。
    發(fā)表于 01-22 08:00 ?2次下載
    關閉WIN10升<b class='flag-5'>級</b>工具<b class='flag-5'>應用程序</b>免費下載

    allegro free viewer 16.6應用程序免費下載

    本文檔的主要內容詳細介紹的是allegro free viewer 16.6應用程序免費下載免費使用,不需要破解,可以看brd文件快速瀏覽PCB的軟件工具。
    發(fā)表于 04-28 08:00 ?249次下載
    allegro free viewer <b class='flag-5'>16.6</b><b class='flag-5'>應用程序</b>免費下載

    如何導出硬件平臺并啟動SDK開發(fā)應用程序及板支持包

    本文介紹如何導出硬件平臺, 并啟動SDK開發(fā)應用程序及板支持包(BSP)。
    的頭像 發(fā)表于 02-08 10:56 ?2390次閱讀
    如何導出硬件平臺并啟動SDK開發(fā)<b class='flag-5'>應用程序</b>及板<b class='flag-5'>級</b>支持包

    文本分類任務的Bert微調trick大全

    ,bert等預訓練模型煉丹一定程度的時候很難有所提升,分數達到了瓶頸,這個時候需要針對具體的任務如何進行微調使用,就涉及到了考經驗積累的tricks。 這篇論文做了非常大的充足實驗,為我們提供了寶貴的
    的頭像 發(fā)表于 07-18 09:49 ?2444次閱讀

    PyTorch教程9.2之將原始文本轉換為序列數據

    電子發(fā)燒友網站提供《PyTorch教程9.2之將原始文本轉換為序列數據.pdf》資料免費下載
    發(fā)表于 06-05 09:57 ?0次下載
    <b class='flag-5'>PyTorch</b>教程9.2之將原始文本轉換為<b class='flag-5'>序列</b>數據

    PyTorch教程14.2之微調

    電子發(fā)燒友網站提供《PyTorch教程14.2之微調.pdf》資料免費下載
    發(fā)表于 06-05 14:42 ?0次下載
    <b class='flag-5'>PyTorch</b>教程14.2之<b class='flag-5'>微調</b>

    PyTorch教程15.9之預訓練BERT的數據集

    電子發(fā)燒友網站提供《PyTorch教程15.9之預訓練BERT的數據集.pdf》資料免費下載
    發(fā)表于 06-05 11:06 ?0次下載
    <b class='flag-5'>PyTorch</b>教程15.9之預訓練<b class='flag-5'>BERT</b>的數據集

    PyTorch教程15.10之預訓練BERT

    電子發(fā)燒友網站提供《PyTorch教程15.10之預訓練BERT.pdf》資料免費下載
    發(fā)表于 06-05 10:53 ?0次下載
    <b class='flag-5'>PyTorch</b>教程15.10之預訓練<b class='flag-5'>BERT</b>

    PyTorch教程16.6針對序列令牌應用程序微調BERT

    電子發(fā)燒友網站提供《PyTorch教程16.6針對序列令牌
    發(fā)表于 06-05 10:51 ?0次下載
    <b class='flag-5'>PyTorch</b>教程<b class='flag-5'>16.6</b>之<b class='flag-5'>針對</b><b class='flag-5'>序列</b><b class='flag-5'>級</b>和<b class='flag-5'>令牌</b><b class='flag-5'>級</b><b class='flag-5'>應用程序</b><b class='flag-5'>微調</b><b class='flag-5'>BERT</b>

    PyTorch教程16.7之自然語言推理:微調BERT

    電子發(fā)燒友網站提供《PyTorch教程16.7之自然語言推理:微調BERT.pdf》資料免費下載
    發(fā)表于 06-05 10:52 ?0次下載
    <b class='flag-5'>PyTorch</b>教程16.7之自然語言推理:<b class='flag-5'>微調</b><b class='flag-5'>BERT</b>

    PyTorch教程21.7之序列感知推薦系統(tǒng)

    電子發(fā)燒友網站提供《PyTorch教程21.7之序列感知推薦系統(tǒng).pdf》資料免費下載
    發(fā)表于 06-06 09:31 ?0次下載
    <b class='flag-5'>PyTorch</b>教程21.7之<b class='flag-5'>序列</b>感知推薦系統(tǒng)