我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。
在本章中,我們測量了 Tokenization 對 Transformer 模型後續層的影響,Transformer 模型只能關注堆疊的嵌入層和位置編碼子層中的 Token,無論模型是編碼-解碼器、僅編碼器或僅解碼器,都是如此,此外,數據集看起來是否足夠好來進行訓練也是如此,如果 Tokenization 過程失敗,即使只是部分失敗,我們的 Transformer 模型也會錯過關鍵的 Token。
我們看到,原始數據集可能足夠用於標準語言任務來訓練 Transformer 模型,然而,我們發現即使預訓練的 Tokenizer 已經處理過十億個單詞,它只會為遇到的詞彙創建一小部分字典,就像我們一樣,Tokenizer 捕捉到它所學語言的精髓,並只記住那些最重要且經常使用的詞彙,這種方法對於標準任務運行良好,但在處理特定任務和詞彙時會產生問題。
我們探討了 Sentence 和 Word Tokenizer,以了解文本序列如何被分解成 Sentence 和Word,我們回顧了幾種 Sentence 和 Word Tokenization 方法,Sentence 和 Word Tokenizer 對許多自然語言處理任務都有用,某些情況下還可用於預處理訓練 Transformer 模型的數據集,然而,在大規模語料庫上,它們會生成大量詞彙表,從而減慢 Transformer 模型的訓練過程,因此,我們探索了 Subword Tokenizer,例如Unigram 語言模型分詞法、SentencePiece、Byte Pair Encoding 和 WordPiece,我們重點關注了 WordPiece 分詞器,深入研究了Token ID 的映射。
Tokenization 的技術需要在保留訊息和優化計算性能之間取得平衡,必須選擇適合你的任務和模型的方法。
從 AI說書 - 從0開始 - 281 | 第十章引言 到 AI說書 - 從0開始 - 307 | Token ID 映射品質管控,我們完成書籍:Transformers for Natural Language Processing and Computer Vision, Denis Rothman, 2024 第十章說明。
以下附上參考項目:
以下附上額外閱讀項目: