分詞 是什麼?
Tokenization — 分詞 的完整解釋
分詞是自然語言處理(NLP)中的基礎步驟,旨在將連續的文本序列拆解成更小的、具有語義意義的單元,例如詞彙、子詞或字符,這些單元稱為 tokens。
容易混淆
分詞 vs 符記 分詞是切分動作 符記是切完後的單位 最關鍵的區別:一個是過程,一個是結果
分詞 vs 斷詞 中文常會用斷詞這個說法 英文更常直接說 tokenization 最關鍵的區別:不同語言的習慣用語不同
分詞 vs 詞典切分 詞典切分是其中一種方法 子詞切分、字元切分也很常見 最關鍵的區別:方法不只一種
記住這句就好
切得好,模型才知道哪裡是字、哪裡是意思。
實際案例
中文客服 「自然語言處理」可能被切成多個子詞,這能讓模型遇到新詞時還保有一定理解能力
程式碼分析 把程式碼切成 token 後,模型更容易抓到關鍵字、運算子和結構符號
算法與應用
| 字元切分 | 每個字元都獨立成 token | 簡單但可能太碎 | | 子詞切分 | 把常見片段保留成 token | 平衡詞彙量和覆蓋率 | | BPE | 先從字元開始合併常見組合 | 很常見的實作方法 | | 特殊符號 | 保留空白、換行、標記符號 | 這些常影響模型理解 |
情境判斷
Q1(直覺題):你要讓模型讀懂一個新品牌名,分詞會影響嗎? → 會,切分得好,模型更容易把新詞拆成可理解的片段。
Q2(判斷題):你把所有句子都硬切成單字,效果一定最好嗎? → 不一定,切太細會讓序列變長,成本和學習難度都可能上升。
相關術語
常見問題
分詞器可以自己設計嗎?
可以,但通常要配合語言特性和模型用途,不是越複雜越好。
為什麼大模型常用子詞切分?
因為它能兼顧常見詞的完整性和罕見詞的可處理性。
分詞做錯會有什麼影響?
會讓模型看到奇怪的切法,進而影響理解、生成和費用估算。