復旦大學提出中文分詞新方法,Transformer連有歧義的分詞也能學

復旦大學邱錫鵬等研究者提出新型分詞方法,只有能 Cover 多個分詞標準和最新 Transformer 的方法,纔是好的中文分詞方法。算法

機器之心報道,參與:思源、一鳴。
架構

從不一樣的角度看待中文句子,可能使中文分詞任務(CWS)的標準徹底不一樣。例如「總冠軍」既能夠當作獨立的詞,也能理解爲「總」和「冠軍」兩個詞。之前這種狀況很是難解決,咱們只能定一些字典或規則來增強這些詞的劃分。併發

但這些應該是分詞模型應該要學的呀,咱們不能只關注分詞模型在單一標準中的表現,還須要關注不一樣分詞標準中的共同特性。這些共同特性纔是模型須要重點學習的,它們能構建更合理的分詞結果。app

鑑於這一點,復旦大學提出了一個簡潔而有效的模型,它能適用於多種中文分詞標準。這種模型使用共享的全鏈接自注意力機制,從而能根據不一樣的標準進行分詞。框架

研究者已經在八個數據集上測試了這種基於 Transformer 的中文分詞,它自然使用了多個分詞評價標準。結果說明,與單一標準的學習不一樣,每一個語料上的表現都獲得了顯著提高。學習

論文:Multi-Criteria Chinese Word Segmentation with Transformer測試

論文地址:arxiv.org/pdf/1906.12…ui

中文分詞難在什麼地方編碼

和英語不一樣,中文句子由連續的漢字構成,詞語之間缺少明顯的分界線。因爲詞語被認爲是最小的語義單位,所以中文分詞任務十分重要。spa

目前中文分詞效果最佳的方法是監督學習算法,它們將中文分詞任務視爲基於漢字的序列標註問題。在這個問題中,每一個漢字都有對應的標籤,用於表示詞和詞之間的分界信息。

然而,構建高質量的帶標註中文分詞語料面臨兩個挑戰。首先,標註須要語言學專家,成本高昂。其次,現有幾個相互衝突的、依據不一樣語言學角度的分詞標準。

例如,對一個句子,不一樣語料的分詞標準是不同的,它們每每作不到一致性的分割。

表 1: 不一樣的分詞標準對比。

如表 1 中所示,給定句子「林丹贏得總冠軍」,在三個經常使用語料中,北大的人民日報語料(PKU)、賓州中文樹庫(CTB)和微軟亞洲研究院(MSRA)使用的標註標準不一樣。

如今,大部分中文分詞方法集中於提高單一分詞標準的表現。若是不能徹底弄清楚使用不一樣標準的語料特徵,這種研究是浪費資源的。所以,如何高效利用這些(語料)資源依然是一個有挑戰性的問題。

之前有解決思路嗎?

雖然很大程度上中文分詞的難點在於標準不一樣,但幸運的是它們之間有一種共性知識。從一種分詞標準學到的知識能夠給其餘語料帶來收益。

在本論文以前的研究中,做者們考慮了一種多標準的中文分詞學習框架。具體來講,它們將每一個分詞標準視爲在多任務學習下的單獨任務。在這個多任務學習框架使用一個共享層級,用於提取不一樣分詞標準下都不變特徵。同時有一個內部層級用於提取對應不一樣分詞標準的特徵,這個內部層也是共享的,由於不一樣標準常常有重疊的地方。

例如,在表 1 中,CTB 和 MSRA 對詞語「林丹」的分詞標準是相同的,三個標準對「贏得」的分詞是一致的。所以,不一樣分詞標準間是有相同知識的,模型學習它們也是可能的。

基於 Transformer 的多標準中文分詞

論文提出了一個簡單的模型,模型可以共享來自多個分詞標準中的知識,能夠應對多標準中文分詞任務。因爲 Transformer 的啓發,研究人員設計了一種徹底共享的結構。在模型中,共享編碼器用於抽取對分詞標準敏感的語境特徵(criteria-aware contextual features),而共享解碼器則用於預測針對標準而不一樣的標籤(criteria-specific labels)。最終,他們在 8 個不一樣的分詞標準上進行了測試,使用了 5 個簡體和 3 個繁體中文的語料。實驗說明,模型能夠有效提高在多標準分詞中文任務中的表現。

模型架構

在邱錫鵬等研究者的論文中,編碼器和解碼器能夠共享全部的分詞標準。惟一的不一樣之處在於他們會採用惟一的指示器做爲輸入,從而分辨不一樣的分詞標準。以下圖 1 展現了研究者提出的方法和之前模型的不一樣之處。

圖 1: 單分詞標準和多分詞標準所採用的架構,其中淡黃色的模塊是不一樣標準所共享的部分。

以下圖二展現了多標準中文分詞模型的主要架構,其總體分爲嵌入層、編碼層和解碼層。


圖 2: 研究者提出用於多標準中文分詞的模型。

嵌入層:嵌入層的目的即將詞映射某個向量,除了標準的字符嵌入,研究者還引入了分詞標準嵌入、位置嵌入、Bigram 嵌入三種額外信息。其中分詞標準嵌入用來指按期望的輸出標準;二元語法嵌入用於增強字符級嵌入的能力,從而實現更強的分詞效果;最後的位置編碼也就是 Transformer 所須要的位置信息了。

編碼層:編碼層就是一個 Transformer,主要會經過自注意力機制和 Multi-head Attention 模塊抽取中文字的語義信息。

解碼層:與標準多標準中文分詞不一樣,新模型的解碼層一樣是共享的,這主要歸功於嵌入層已經將分詞標準的相關信息添加到字符上。研究者採用了條件隨機場和多層感知機兩種解碼方式,並發現 CRF 效果要好一些,所以將其做爲默認解碼層。

實驗

從 SIGHAN200 到 SIGHAN2008,實驗選擇了 8 箇中文分詞數據集。在它們之中,AS、CITYU 和 CKIP 是繁體中文數據集,而 MSRA、PKU、CTB、NCC 和 SXU 是簡體中文。除非另有說明,AS、CITYU 和 CKIP 都先從繁體轉換成簡體。

表 2 提供了 8 個數據集在預處理後的細節信息。整個實驗使用標準的評價方法——評價精度、召回率和 F1 分數。

表 2: 預處理後的 8 個數據集的具體信息。
「Word Types」表示惟一詞的數量,「Char Types」表示惟一字的數量。
「OOV Rate」表示集外詞所佔的百分比。

表 5 展現了模型在 8 個測試集上的表現。

表 5:
模型在測試集上的表現。
P、R、F、OOV 分別表示精度、召回率、F1 分數和不在詞表的詞語的召回率值。
每一個數據集上最高的 F1 分數和 OOV 值已加粗。

下圖 3 展現了 8 中不一樣分詞標準的二維 PCA 降維結果,它們都是經過本論文的模型學習而來。咱們能夠看到,8 種分詞標準在嵌入空間會映射到 8 個離散的點,這代表每個分詞標準都有所不一樣。其中 MSRA 與其它分詞標準最爲不一樣,可能的緣由是 MSRA 將命名實體視爲獨立的詞,這和其它分詞標準有很大不一樣。

圖 3: 多標準中文分詞學到的不一樣分詞基準。
相關文章
相關標籤/搜索