愛奇藝發(fā)布FASPell:最強簡繁中文拼寫檢查工具
本文介紹了愛奇藝被EMNLP workshop "The 5th Workshop on Noisy User-generated Text (W-NUT)"接收的一篇論文。
論文:FASPell: A Fast, Adaptable, Simple, Powerful Chinese Spell Checker Based On DAE-Decoder Paradigm
項目鏈接:https://github.com/iqiyi/FASPell
自1990年代初期開展了一些開拓性工作以來,關(guān)于檢測和糾正中文文本中的拼寫錯誤的研究已過很長時間。然而,盡管在大多數(shù)研究中拼寫錯誤已被簡化為替換錯誤以及最近多個公開任務(wù)的努力,中文拼寫檢查仍然是一項困難的任務(wù)。
而且,英語等類似語言的方法幾乎不能直接用于中文,因為中文單詞之間沒有定界符,且單詞缺乏形態(tài)上的變化,使得任何漢字的句法和語義解釋都高度依賴其上下文。
幾乎所有以前的中文拼寫檢查模型都部署了一個通用范式,其中將每個漢字的固定的相似字符集(稱為困惑集或混淆集)用作候選項,然后用一個過濾器選擇最佳候選項作為待糾錯句子中的替換字符。
這種樸素的設(shè)計面臨兩個主要瓶頸,而其負面影響未能在過去的提出的方案中得到緩解:
一是在稀缺的中文拼寫檢查數(shù)據(jù)上的過擬合問題。
由于中文拼寫檢查數(shù)據(jù)需要乏味繁冗的專業(yè)人力工作,因為一直資源不足。為了防止模型的過擬合,Wang等人(2018)提出了一種自動方法來生成偽拼寫檢查數(shù)據(jù)。 但是,當(dāng)生成的數(shù)據(jù)達到40k句子時,其拼寫檢查模型的精度不再提高。
Zhao等人(2017)使用了大量的語言學(xué)規(guī)則來過濾候選項,但結(jié)果卻比我們的表現(xiàn)差,盡管我們的模型沒有利用任何語言學(xué)知識。
二是困惑集的使用所帶來的漢字字符相似度利用上的不靈活性和不充分性問題。
困惑集因為是固定的,因此并非在任何語境、場景下都能包含正確候選項(一個比較極端的例子是,如果困惑集按照繁體中文制定,那么繁體中文的 “體”和“休”肯定不在困惑集的同一組相似字符中,但是在簡體中文中對應(yīng)的“體”和“休”缺是相似字符,如果錯誤文本中是把“休”寫成了“體”,那么繁體中文困惑集下就無法檢出,必須專門再制定一個簡體困惑集才可以),這會極大降低檢測的召回率(不靈活性問題)。
另外,困惑集中的字符的相似性的信息有損失,沒有得到充分利用,因為一個字符在困惑集中相似字符是無差別對待的,然而事實上每兩個字符間的相似度明顯是有差別的,因此會影響檢測的精確率(不充分性)。
Zhang等人 (2015)提出了考慮了很多并沒有字符相似度重要的特征(例如分詞)來彌補字符相似度利用上的不充分性,但這會為其模型添加更多不必要的噪音。
論文概述:
論文提出一個基于新范式的中文拼寫檢查器– FASPell。新的范式包括去噪自動編碼(DAE)和解碼器。
與以前的SOTA模型相比,新范式使得我們的拼寫檢查器可以更快地進行計算,易于通用于簡體或繁體、人類或機器產(chǎn)生的各類場景下的中文文本,結(jié)構(gòu)更簡單,錯誤檢測和糾正性能更強大。
這四點成就,是因為新的范式規(guī)避了兩個瓶頸。
第一,DAE通過利用無監(jiān)督預(yù)訓(xùn)練方法(如BERT,XLNet,MASS等),減少了監(jiān)督學(xué)習(xí)所需的中文拼寫檢查數(shù)據(jù)量(<10,000個句子)。
第二,解碼器有助于消除困惑集的使用,因為它在靈活和充分地利用漢字相似性這一關(guān)鍵特征上的不足。
論文貢獻和方法:
本論文提出通過更改中文拼寫檢查的范式來規(guī)避上述的兩個瓶頸。作為主要貢獻,并以我們在提出的中文拼寫檢查模型FASPell為例,這種新范式的最一般形式包括一個降噪自動編碼器(DAE)和一個解碼器。
DAE生成可以將錯誤文本修改為正確文本的可能的候選項矩陣,解碼器在這個矩陣中尋找最佳候選項路徑作為輸出。DAE因為可以在大規(guī)模正常語料數(shù)據(jù)上無監(jiān)督訓(xùn)練而僅在中文拼寫檢查數(shù)據(jù)上fine-tune,避免了過擬合問題。
另外,只要DAE足夠強大,所有的語意上可能的候選字符都可以出現(xiàn),且候選字符是根據(jù)周圍語境即時生成的,這避免了困惑集所帶來的不靈活性;解碼器根據(jù)量化的字符相似度和DAE給出的字符的語境把握度來過濾出正確的替換字符,這樣字符相似性上的細微差別信息都可以得到充分利用。
本文提出的模型FASPell中,DAE是由BERT中的掩碼語言模型(MLM)來充當(dāng),解碼器是本文提出的把握度-字符相似度解碼器(CSD)來充當(dāng),如下如所示:
CSD中使用的量化的字符相似度也是本文提出的,較過去提出的字符相似度量化方法,我們的方法更加精準(zhǔn)。
我們在字形上采用Unicode標(biāo)準(zhǔn)的IDS表征,它可以準(zhǔn)確描述漢字中的各個筆畫和它們的布局形式,這使得即使是相同筆畫和筆畫順序的(例如“田”與“由”,“午”與“牛”)的漢字之間也擁有不為1的相似度,與此相比,過去基于純筆畫或者五筆、倉頡編碼的計算方法則粗糙很多。
在字音上我們使用了所有的CJK語言中的漢字發(fā)音,盡管我們只是對中文文本檢錯糾錯,但是實驗證明考慮諸如粵語、日語音讀、韓語、越南語的漢字發(fā)音對提高拼寫檢查的性能是有幫助的,而過去的方法均只考慮了普通話拼音。
CSD的訓(xùn)練階段,利用訓(xùn)練集文本通過MLM輸出的矩陣,逐行繪制語境把握度-字符相似度散點圖,確定能將FP和 TP分開的最佳分界曲線。
推理階段,逐行根據(jù)分界線過濾掉FP得到TP結(jié)果,然后將每行的結(jié)果取并集得到最終替換結(jié)果。
以前述圖片為例,句子首先通過fine-tune訓(xùn)練好的MLM模型,得到的候選字符矩陣通過CSD進行解碼過濾,第一行候選項中只有“主”字沒有被CSD過濾掉,第二行只有“著”字未被過濾掉,其它行候選項均被分界線過濾清除,得到最終輸出結(jié)果,即“苦”字被替換為為“著”,“豐”被替換為“主”。
論文實驗和結(jié)果:
論文在4個數(shù)據(jù)集上分別進行了消融實驗,證明了MLM的fine-tune和CSD分別對FASPell性能的貢獻,實驗也證明FASPell達到了SOTA的準(zhǔn)確性。