AI說書 - 從0開始 - 131 | Next Sentence Prediction 訓練

更新於 發佈於 閱讀時間約 4 分鐘

我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。


回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BERT) 的訓練分為兩種,分別為:

  • Masked Language Modeling (MLM)
  • Next Sentence Prediction (NSP)


而我們在 AI說書 - 從0開始 - 130 已經介紹了 Masked Language Modeling (MLM),今天來介紹 Next Sentence Prediction (NSP):


在許多下游的 NLP 任務中,它們都是基於兩個句子的關係進行語意理解,這樣的資訊,語言模型其實並沒有辦法有效擷取,因此作者提出了 NSP 這樣的模型訓練,兩個句子 A、B 作為一筆訓練資料,其中 50% 的訓練資料從語料中連貫的兩句子而得,標籤為 IsNext,另外 50% 則隨機給與兩個不連續的句子,標籤為 NotNext。


並且引入兩個額外的 Token,其目的為:

  • [CLS]:Binary Classification Token 新增到第一個句子 A 的開頭,以預測第二個句子 B 是否位於第一個句子 A 之後,正樣本通常是從資料集中取出的一對連續句子,使用來自不同文件的序列建立負樣本
  • [SEP]:表示句子 A 結束的分隔標記


舉一個 A 和 B 句子的串接為例,假設原始句子為:「The cat slept on the rug. It likes sleeping all day」,那麼引入 [CLS] 和 [SEP] 的標記後,變成:「[CLS] the cat slept on the rug [SEP] it likes sleep ##ing all day [SEP] 」,這裡 ##ing 的符號和 sleep 分離了,主要是因為採用了 WordPiece Tokenization,這樣可以讓 Tokenizer 運作在比較比較小的 Subword 上。


了解 [CLS][SEP] 的用途後,把它和 IsNext 以及 NotNext 合併,例子為:

  • Input = [CLS] the man went to [MASK] store [SEP] he bought a gallon [MASK] milk [SEP] → Label = IsNext
  • Input = [CLS] the man [MASK] to the store [SEP] penguin [MASK] are flight ##less birds [SEP] → Label = NotNext


至於 Input Embedding 的獲得手法為以下三者相加:Token Embedding、Sentence Embedding、Positional Encoding,示意圖如下:

圖片出自書籍:Transformers for Natural Language Processing and Computer Vision, 2024

圖片出自書籍:Transformers for Natural Language Processing and Computer Vision, 2024


綜合目前有的素材,整體流程為:

  • 句子被切成 WordPiece Tokens
  • 在 Masked Language Modeling (MLM) 訓練中,[MASK] Token 被隨機置入取代原始文字
  • 在 Next Sentence Prediction (NSP) 訓練中,[CLS] Token 被放置於第一個句子的開頭,以作為 Classification Token
  • 在 Next Sentence Prediction (NSP) 訓練中,[SEP] Token 被放置於第一個句子和第二個句子中間
  • 實現為,將整個輸入序列經過模型,使用模型最後產生的 [CLS] Token,將它傳入一層 Classification Layer 進行矩陣轉換產出維度為 2 × 1 的向量,並且再透過 Softmax 得到 IsNextSequence 的機率




留言
avatar-img
留言分享你的想法!
avatar-img
Learn AI 不 BI
219會員
586內容數
這裡將提供: AI、Machine Learning、Deep Learning、Reinforcement Learning、Probabilistic Graphical Model的讀書筆記與演算法介紹,一起在未來AI的世界擁抱AI技術,不BI。
Learn AI 不 BI的其他內容
2024/08/30
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 125 到 AI說書 - 從0開始 - 155 | 文法判斷介面成果展示,我們完成書籍:Transformers for Natural
2024/08/30
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 125 到 AI說書 - 從0開始 - 155 | 文法判斷介面成果展示,我們完成書籍:Transformers for Natural
2024/08/30
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧一下目前手上有的素材: 訓練的必要模組安裝:AI說書 - 從0開始 - 135 載入資料集:AI說書 - 從0開始 - 136 資料集窺探:AI說書 - 從0
Thumbnail
2024/08/30
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧一下目前手上有的素材: 訓練的必要模組安裝:AI說書 - 從0開始 - 135 載入資料集:AI說書 - 從0開始 - 136 資料集窺探:AI說書 - 從0
Thumbnail
2024/08/29
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧一下目前手上有的素材: 訓練的必要模組安裝:AI說書 - 從0開始 - 135 載入資料集:AI說書 - 從0開始 - 136 資料集窺探:AI說書 - 從0
2024/08/29
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧一下目前手上有的素材: 訓練的必要模組安裝:AI說書 - 從0開始 - 135 載入資料集:AI說書 - 從0開始 - 136 資料集窺探:AI說書 - 從0
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 39 至 AI說書 - 從0開始 - 69 的第二章內容,我們拿 Encoder 出來看: 幾點注意如下: BERT 模型使用 M
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 39 至 AI說書 - 從0開始 - 69 的第二章內容,我們拿 Encoder 出來看: 幾點注意如下: BERT 模型使用 M
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經有資料集在 AI說書 - 從0開始 - 103 ,必要的清理函數在 AI說書 - 從0開始 - 104 ,現在把它們湊在一起,如下: # load Eng
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經有資料集在 AI說書 - 從0開始 - 103 ,必要的清理函數在 AI說書 - 從0開始 - 104 ,現在把它們湊在一起,如下: # load Eng
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 如 AI說書 - 從0開始 - 78 所述,經過 AI說書 - 從0開始 - 74 到目前為止的實驗,應可以漸漸感受到 Transformer 模型如何從數學層面漸漸往
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 如 AI說書 - 從0開始 - 78 所述,經過 AI說書 - 從0開始 - 74 到目前為止的實驗,應可以漸漸感受到 Transformer 模型如何從數學層面漸漸往
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Decoder
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 講完 Transformer 之 Encoder 架構中的 Embedding 與 Positional Encoding 部分,現在進入 Multi-Head Att
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 講完 Transformer 之 Encoder 架構中的 Embedding 與 Positional Encoding 部分,現在進入 Multi-Head Att
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News