AI說書 - 從0開始 - 295 | 各 Tokenizer 之優勢與安裝

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

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


Transformer 模型通常使用 Byte-Pair Encoding (BPE) 和 WordPiece Tokenization,接著,我們將了解為什麼選擇 Subword Tokenizer 而不是其他 Tokenizer 會顯著影響 Transformer 模型。


選擇 Tokenizer 取決於 NLP 項目的目標,儘管 Subword Tokenizer 對於 Transformer 模型來說更有效,但 Word 和 Senetence Tokenizer 提供了有用的功能,可用於許多任務,包括:

  • 在 Sentence 或 Word 層面的文本處理對於文本分類等自然語言處理任務已經足夠,此外,將文本拆分為 Sentence 和 Word 可以作為流水線的一部分,用來創建 Transformer 模型的監督式訓練數據集,例如,獲得的句子可以被正規化,然後添加 Labeling 函數到輸出中,從這裡開始,Subword Tokenizer 可以接管,開始 Transformer 的預訓練過程
  • Sentence 或 Word 層級的 Tokenization 足以完成簡單的機器學習任務,例如用於垃圾郵件偵測的分類器
  • Part-of-Speech (POS) 和 Named Entity Recognition (NER) 在 Word 層面進行時,可以從 Word 或 Sentence 的 Tokenization 中受益


我們可以安裝各種 Tokenizer,以作為後續實驗用途:

!pip install transformers # Hugging Face Transformers
!pip install tabulate # Printing tabular data in Python
!pip install nltk # Natural Language Toolkit


當中 Word 和 Sentence 的 Tokenizer 由 nltk 包主責,而 Subword Tokenizer 由 Transformers 包主責。


以下載入常見的 Word 和 Sentence 的 Tokenizer:

import nltk
nltk.download('punkt')
from nltk.tokenize import sent_tokenize, word_tokenize, RegexpTokenizer, TreebankWordTokenizer, WhitespaceTokenizer, PunktSentenceTokenizer, WordPunctTokenizer, MWETokenizer
avatar-img
175會員
466內容數
這裡將提供: AI、Machine Learning、Deep Learning、Reinforcement Learning、Probabilistic Graphical Model的讀書筆記與演算法介紹,一起在未來AI的世界擁抱AI技術,不BI。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Learn AI 不 BI 的其他內容
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 替換生僻字詞本身就是一個項目,這項工作是為特定任務和項目保留的,例如,假設公司預算可以支付建立航空知識庫的成本,在這種情況下,值得花時間查詢 Tokenized Dir
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「pie」及「logic」兩詞之間的相似度計算結果: word1 = "pie" word2 = "logic" print("Similarity", s
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「etext」及「declaration」兩詞之間的相似度計算結果: word1 = "etext" word2 = "declaration" print(
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在 AI說書 - 從0開始 - 290 | Tokenizer 重要性範例之展示 2 中,我們給了一個範例,當中包含未知的字詞,假設一個 AI 團隊發現了這個問題並嘗試
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「corporations」及「rights」兩詞之間的相似度計算結果: word1 = "corporations" word2 = "rights" pr
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 首先展示「freedom」及「liberty」兩詞之間的相似度計算結果: word1 = "freedom" word2 = "liberty" print("Si
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 替換生僻字詞本身就是一個項目,這項工作是為特定任務和項目保留的,例如,假設公司預算可以支付建立航空知識庫的成本,在這種情況下,值得花時間查詢 Tokenized Dir
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「pie」及「logic」兩詞之間的相似度計算結果: word1 = "pie" word2 = "logic" print("Similarity", s
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「etext」及「declaration」兩詞之間的相似度計算結果: word1 = "etext" word2 = "declaration" print(
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在 AI說書 - 從0開始 - 290 | Tokenizer 重要性範例之展示 2 中,我們給了一個範例,當中包含未知的字詞,假設一個 AI 團隊發現了這個問題並嘗試
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 接著展示「corporations」及「rights」兩詞之間的相似度計算結果: word1 = "corporations" word2 = "rights" pr
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 首先展示「freedom」及「liberty」兩詞之間的相似度計算結果: word1 = "freedom" word2 = "liberty" print("Si
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 原始 Transformer 架構的 Transduction Process 使用編碼器堆疊、解碼器堆疊而用所有模型參數來表示參考序列,我們將該輸出序列稱為參考。
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 擁有先進的翻譯能力,能夠捕捉多種語言中單字序列的意思,在第四章中,我們將介紹一些關鍵的翻譯概念,並探討它們在 Google Trax、Googl
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們在AI說書 - 從0開始 - 42中,見識了 Tokenizer 做的事情了,以下來羅列幾個要點: 它將原始文字轉成小寫 有可能將原始文字再進行切割 通常 T
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在AI說書 - 從0開始 - 41中,我們提及 Transformer 的 Encoder 架構如下圖所示,同時我們羅列幾個要點於圖示右邊: 原始 Transform
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 中的 Attention 機制是 'Word-to-Word' 操作,抑或是 'Token-to-Token' 操作,白話來講就是:「對於句子中
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在AI說書 - 從0開始 - 17中,介紹了大型語言模型 (LLM)世界裡面常用到的Token,現在我們來談談OpenAI的GPT模型如何利用Inference
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧我們在AI說書 - 從0開始 - 4中說Transformer的精髓就是考慮「字與字之間的配對關係」,我們稱其為Attention Layer,再搭配我們在機器學習
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 0,我們從Transformer開始談起: ChatGPT的火紅使得Transformer架構也跟著成為主流,相關應用從Googl
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 原始 Transformer 架構的 Transduction Process 使用編碼器堆疊、解碼器堆疊而用所有模型參數來表示參考序列,我們將該輸出序列稱為參考。
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 擁有先進的翻譯能力,能夠捕捉多種語言中單字序列的意思,在第四章中,我們將介紹一些關鍵的翻譯概念,並探討它們在 Google Trax、Googl
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們在AI說書 - 從0開始 - 42中,見識了 Tokenizer 做的事情了,以下來羅列幾個要點: 它將原始文字轉成小寫 有可能將原始文字再進行切割 通常 T
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在AI說書 - 從0開始 - 41中,我們提及 Transformer 的 Encoder 架構如下圖所示,同時我們羅列幾個要點於圖示右邊: 原始 Transform
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 中的 Attention 機制是 'Word-to-Word' 操作,抑或是 'Token-to-Token' 操作,白話來講就是:「對於句子中
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在AI說書 - 從0開始 - 17中,介紹了大型語言模型 (LLM)世界裡面常用到的Token,現在我們來談談OpenAI的GPT模型如何利用Inference
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧我們在AI說書 - 從0開始 - 4中說Transformer的精髓就是考慮「字與字之間的配對關係」,我們稱其為Attention Layer,再搭配我們在機器學習
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 0,我們從Transformer開始談起: ChatGPT的火紅使得Transformer架構也跟著成為主流,相關應用從Googl