一、從「斷句」到「分詞」:中文處理的歷史困境
2015 年我剛進入 NLP 領域時,辦公室最常聽到的抱怨是:「為什麼中文不能像英文一樣天生帶空格?」 當時我們團隊正在開發繁體中文客服系統,使用者輸入「請問臺中高鐵站到臺大怎麼走」,系統必須先判斷「臺中高鐵站」是一個詞,而不是「臺中高鐵 站」。這種看似簡單的斷句,在沒有空格的中文裡,曾是困擾全球工程師數十年的難題。
中文分詞的歷史可追溯至 1980 年代,臺灣中研院的 CKIP 分詞系統、大陸的 ICTCLAS 都是早期代表。這些系統依賴「詞典匹配 + 語法規則」,比如遇到「發票」先查詞典是否存在,再根據前後文判斷是「發 / 票」還是「發票」。2000 年前後,統計學習模型(如隱馬爾可夫模型 HMM)興起,隱馬爾可夫模型 HMM)興起,透過大量語料訓練機率分佈,分詞準確率從 85% 提升到 95%。
二、深度學習革命:端到端模型讓分詞「消失」?
2018 年 Google 釋出 BERT 模型,徹底改變了遊戲規則。我記得在臺北的 NLP 技術沙龍上,一位日本工程師展示了用 BERT 直接處理日文句子 —— 無需分詞,模型照樣能理解「東京駅から新宿まで」的意思。 這種「端到端」(end-to-end)技術的核心,是讓神經網路直接從字元序列中學習語義。以 GPT-4 為例,它接受「今天天氣很好我們去陽明山散步吧」的原始輸入,透過 Transformer 架構自動捕捉「陽明山」是地點實體,「散步」是動作。
技術突破點:
- 子詞單元(Subword Unit):將漢字拆分為更小單位(如「臺」「北」「市」),解決未登入詞問題
- 上下文語義:同一個字「發」在「發票」和「發光」中的嵌入向量完全不同
- 多語言統一:Meta 的 LLaMA-2 模型可同時處理英文單詞和中文漢字
三、爭議:分詞是「雞肋」還是「剛需」?
儘管技術進步顯著,分詞在產業界仍存在兩極觀點。
支援方:不可替代的預處理步驟
- 傳統系統依賴:臺灣玉山銀行的風控系統仍在用分詞標註交易文字,「詐騙」「盜刷」等關鍵詞必須精準識別
- 效率考量:日本 LINE 的聊天機器人團隊發現,先分詞再輸入模型可減少 30% 計算量
- 法律文字需求:美國律師事務所處理中文合同時,要求「條款」「權利義務」等法律術語必須準確切分
反對方:冗餘的中間環節
- 實驗資料:Google Brain 團隊 2023 年論文顯示,在 SIGHAN 中文分詞基準測試中,端到端模型(如 ERNIE 3.0)已達到 98.7% 準確率,超過傳統分詞 + 序列標註的 97.2%
- 成本最佳化:臺灣蝦皮購物 APP 去掉分詞模組後,推薦系統延遲降低 15%,使用者點選率反而提升 2%
- 跨語言趨勢:蘋果 iOS 的中文語音助手直接處理連續語音流,不再需要文字轉寫後的分詞步驟
四、臺灣經驗:在技術浪潮中尋找平衡
作為參與過 3 箇中文 NLP 專案的工程師,我觀察到臺灣業界的務實選擇:
-
垂直領域保留分詞
- 醫療領域:長庚醫院的電子病歷系統堅持分詞,確保「糖尿病併發症」不被拆分為「糖尿病 併 發症」
- 古籍處理:中研院「瀚典全文檢索系統」用分詞標註《四庫全書》,實現「之乎者也」的語法分析
-
通用場景逐步淘汰
- 社交媒體分析:PTT 八卦版的情感分析模型直接處理原始文字,「鄉民」「推」等網路用語透過子詞單元學習
- 語音助手:臺灣大哥大的 AI 客服已實現「語音 - 語義」直接對映,中間無需生成文字分詞
五、未來猜想:分詞會成為「技術化石」嗎?
回顧技術史,類似爭議並不罕見:
- 2000 年代 OCR 技術成熟時,有人質疑手寫識別是否必要
- 2010 年代機器翻譯突破時,語法分析曾被宣判「死刑」
但現實是,這些技術並未消失,而是退化為特定場景的解決方案。中文分詞可能會走向兩條路:
- 標準化介面:像 Unicode 一樣成為底層協議,供需要的系統呼叫
- 隱形嵌入:模型內部仍有分詞邏輯,但對開發者透明
技術的本質是解決問題,而非追求「純粹」
去年在東京 NLP 會議上,我遇到開發 MeCab 分詞器的日本人谷口雅春。他笑稱:「20 年前我以為分詞會統治世界,現在卻在研究如何讓模型忘記分詞。」
或許中文分詞的命運,正印證了計算機科學家萊斯利・蘭波特的名言:「所有問題都可以透過增加一個間接層來解決,除了太多間接層的問題。」當深度學習讓間接層變得高效,分詞的價值,終將由真實的應用場景定義。