基於seq2seq模型的中文糾錯任務

2020-11-25 人民網

摘要

用戶通過鍵盤或者語音輸入文字的時候,會遇到大量的錯誤,這些錯誤給用 戶的使用帶來了不便。而隨著智慧型手機的普及,用戶越來越多的使用觸屏來進行 文字的輸入,這使得問題進一步嚴重。深度學習近來在自然語言處理領域獲得了 廣泛運用,seq2seq 模型在諸多自然語言處理任務,如詞性標註、語義依存分析、 機器翻譯等,均取得了顯著的成績。本文首先對中文糾錯任務進行詳細的梳理, 包括錯誤的來源、目前的處理方法、相關的公開競賽、數據源等;第二,由於缺 少大規模公開的數據集,本文涉及顯示人工構造大規模糾錯數據集的算法;第三, 本文將深度學子中的 seq2seq 模型引入,處理中文糾錯任務,在基本的模型基礎 上引入 attention 機制(包括諸多變種)以及多任務學習的理念,嘗試多種組合, 並最終在構造數據集上 GLEU 評分達到了 0.75。

關鍵詞

語義識別;大數據;深度學習;中文糾錯;sequence to sequence learning;多任務學習

一、問題定義

用戶輸入一個中文句子,模型自動發現並改正句子中存在的問題。如「實現 供應與發展」句子中的「供應」改為「共贏」。

二、項目背景

根據目標用戶、錯誤來源的不同,糾錯系統可以分為多種類型,下面進行詳 細的闡述。

1. 目標用戶

糾錯有兩個主要的目標用戶群體:非母語學習者以及母語使用者。 所謂非母語學習者,指的是……。針對非母語學習者,有兩個代表性的公開比賽,分別是 CoNLL 以及 SIGHAN Bake-off。CoNLL 比賽任務在 2013[1]以及 2014[2] 年的時候針對英文的語法糾錯任務展開。CoNLL 2013 限定了錯誤的類型,包括 冠詞、介詞、名詞單複數、動詞形式以及主謂一致等;CoNLL 2014 則直接處理所 有的錯誤。SIGHAN Bake-off 2014[3]、2015[4]均針對母語非漢語的學習者,但是 一個問題在於並沒有涉及到語序問題,只考慮了拼寫錯誤。

針對母語使用者,英文的比賽有一些,而中文則較少,SIGHAN 2013[5]比賽是 其中一個。該比賽使用的數據來源於臺灣中學生的作文文本,過濾其他類型的錯 誤而只保留拼寫錯誤,拼寫錯誤具體而言有兩種:讀音相似導致的錯誤以及字型 相似導致的錯誤。本文認為,這樣的過濾處理是合理的。根據調研報告[6],中文 母語使用者寫作所犯錯誤中,76%的錯誤由讀音相似而引起的,46%的錯誤由於字 型相似引起的(兩種錯誤有重疊)。在用戶手寫的文章中,也發現了類似的現象。

2. 錯誤來源

根據錯誤的來源,可以將糾錯劃分為兩大類:輸入法端的糾錯以及文本端的糾錯。當然這兩類並沒有非常嚴格的界限。 輸入方法主要包含手寫輸入、拼音輸入、字型輸入以及語音輸入。由於手寫輸入同本項目關聯不大,故而並未專門針對此進行調研;拼音輸入法端的糾錯做了 很多,比較代表性的有 CHIME[9],該方法可以自動發現並改正用戶輸入的「錯誤 拼音」,使用的主要方法是信道模型以及基於 trie 樹的相似拼音匹配;字型輸入 法端的糾錯同拼音比較類似,因為字型輸入也是有一套編碼的,如倉頡編碼、五 筆編碼,拼音本身也是可以理解為一種編碼的;基於語音的糾錯,目前並沒有成熟的方法,而語音輸入具備的很多優點使得其有更大的可能性成為未來的主流輸入法,但是如何系統性的處理語音輸入糾錯則需要進一步開展研究。 輸入法端糾錯難以使用完整的上下文信息,因為用戶可能同時在幾個任務上進行輸入,如聊天的同時寫文檔。文本糾錯則可以獲得更全的上下文信息,故而 語言模型、統計機器翻譯模型等等均可以獲得更好的使用。

根據 SIGHAN Bake-off 2013 比賽的報告,參賽者使用了包括語言模型、分類模型(邏輯回歸以及 SVM)、統計機器翻譯模型、基於拼音字型的糾錯模型、規則等。

3. 可用資源

除了各個比賽提供的少量數據以及個參賽者根據自己模型選擇使用的數據外,

如下數據也可以應用於文本糾錯。非常遺憾的是這些數據都是非中文的。

a) Cambridge Learner Corpus (CLC)[10]。該數據集包含了將近 200 萬句對,是 非英語母語使用者參加英語考試的資料。數據的價值極高,然而該數據並不 對外開放。

b) FCE 。該數據集主要屬於 CLC 的一部分,包含了 30,995 句對語言學家人工標 注的 80 類錯誤,該數據可公開下載,但是數據規模較小。

c) Lang-8 Learner Corpora[11]。該數據包含了 59,455 個用戶撰寫的 334,379 個 多語言頁面,並經過校對,該數據可經過申請後獲取。

三、項目思考

相對於英文糾錯任務,中文糾錯有自己的特性。比如中文不存在「錯字」,無 論是拼音輸入、字型輸入、語音輸入、手寫輸入均返回正確的字。

根據調研結果,中文的母語使用者的錯誤集中在由於拼音導致的拼寫錯誤以 及由於字型導致的拼寫錯誤,而語序等其他錯誤類型則很少出現。研表究明,漢 字序順並不定一影響閱讀。比如,讀者在閱讀前一句話的時候並不一定可以注意 到其中存在的語序問題。故本項目應最先處理拼寫錯誤。

根據艾媒諮詢發布《2015-2016 年中國手機輸入法年度研究報告》,72.5%的 手機用戶使用拼音輸入法,僅有 8.3%的手機用戶使用字型輸入法。

綜上,本項目優先處理由於拼音導致的拼寫錯誤。

相比較於輸入法端的糾錯,基於文本的糾錯可以更為方便的獲取上下文信息,這為文本糾錯提供了更大的空間;此外,文本是用戶通過輸入法輸入的,故而文本端的糾錯不應同輸入法端的糾錯重疊太多,畢竟許多錯誤已經在輸入法端經過處理了。故而文本端的糾錯應更多的基於上下文信息,而不是簡單的字音字形。 在如何利用上下文信息上,SIGHAN Bake-off 2013 參賽隊伍提供了很好的範例,我們發現,基於統計機器翻譯模型的方法取得了不錯的效果,一些隊伍的具 體做法是先通過語言模型等判斷出出錯詞語的位置,再利用統計機器翻譯模型來 做詞語的「翻譯」,這樣做並沒有充分使用句子的語意信息。獲取上下文語意信 息的一種比較好的方式是通過 RNN 來學習,故而本項目選用 seq2seq 框架(兩組 RNN 分別構成 encoder 和 decoder,作為 encoder 的 RNN 學習句子語意表示)來 進行處理。此外,項目缺少可靠的數據來源,中文領域可利用的糾錯數據有限,如何有 效的構造大量訓練數據也成了本項目的一個關注點。

四、項目實驗

本節主要從三個部分來進行闡述,實驗數據準備、實驗模型以及實驗結果與 分析。

1. 實驗數據準備

實驗缺少大量的中文糾錯數據,故而只能通過構造的方式來獲取。 基於之前的分析,在構造數據的時候只引入因拼音相似導致的拼寫錯誤。而考慮到輸入法端(如 CHIME)已經處理了比較明顯的拼音錯誤,故而在數據構造 的時候主要考慮同音替換和模糊音替換兩種類型的錯誤。此外,考慮到拼音輸入 往往按照詞語來輸入的特點,所有的替換均基於詞語來進行。具體的構造步驟如下:

1) 基於哈工大社會計算與信息檢索研究中心研發的語言技術平臺(LTP)對 規範文本,如新華社新聞語料進行分詞,此外將語料中的數字串統一替 換為「<DIGIT>」且將不常見詞語替換為「_UNK」;

2) 基於逗號和句號將句子切割為更短的句子,切割後詞語個數超過 30 的句 子將會被丟棄;這樣做是因為真實環境中子句長度很少會超過 30 個詞 語,且句子長度過長對於 RNN 的性能會產生影響。

3) 對句子中每個詞語隨機執行同音替換和模糊音替換,確保每個詞語可能 被替換的概率相同,且每個句子最多有 4 處被替換;

如此獲得 20,000,000 句對的訓練語料,5,000,000 句對的開發語料以及 6,000句對的測試語料。

2. 實驗模型

RNN 由一系列相同的網絡構成(圖 1 中的長方形表示一個網絡),上一個詞語的向量表示作為計算下一個網絡的輸入,如此循環。整個句子每個詞軍計算完成, 便得到了一個句子的語意向量。

Seq2seq 模型使用 RNN(此時被稱為 encoder)將輸入句子表示為一個向量, 再使用另一個 RNN(此時被稱為 decoder)解碼這個向量獲取輸出。如在英漢機 器翻譯任務中,先使用 encoder RNN 處理英文句子獲取語意向量,將該向量作為 decoder RNN 的初始輸入,按順序解碼每個英文單詞獲取中文。

為了充分獲取上下文的語意信息,初始模型在基本 seq2seq 模型的基礎上增 加了 bi-direction 以及 attention 機制。初始模型見圖 2。

在初始模型的基礎上,考慮到糾錯任務中前後兩個詞語的 attention 值之間存 在比較強的關聯。如 decoder 中第一個詞語 attend 到 encoder 中第一個詞語,則 decoder 中第二個詞語「應該」attend 到 encoder 中的第二個詞語。基於此,借鑑 Jan Chorowski[7]的工作,引入 localized attention 的做法,詳細見圖 3。

分析具體的數據,我們發現在許多情況下原先正確的詞語經過 decoder 的操 作生成錯誤的詞語,於是我們考慮引入一個新的任務來幫助判斷某個詞語是否需 要進行 decode,即 multitask。在具體的做法上有兩種,分別為 multitask1 和 multitask2,模型見圖一。Multitask1 中新增的任務與原先的模型公用一個 encoder, 在 decoder 端並無直接關聯;在 multitask2 中,新任務的 decoder 結果作為初始 任務 decoder 輸入的一部分。

3. 實驗結果與分析

為了合理的評價模型的性能,需要有一套評價標準。除了基本的 F1 值之外,我們還計算了 F0.5 值,此外,結合基於翻譯模型的糾錯任務,進過調研,採用 GLUE[8] score 來作為模型的性能指標。GLUE 標準在 BLUE 標準的基礎上增加對糾 錯任務的針對性處理,實驗結果表明 GLUE 標準最接近人的判斷。

共進行六組實驗,實驗基於 google 公司發布的 TensorFlow[12]開發,實驗結果 見表 1:

實驗結果表明,localized attention 以及 multitask 機制均有助於系統性能的提升,而二者結合起來可以進一步提升系統的性能。目前去的最優性能的模型是在初始模型的基礎上增加 localized attention 機制以及 multitask2 機制。 下面是一些典型的輸出結果,每組數據第一句為正確的句子,第二句為輸入的句子,第三句為模型輸出的句子。

1) 兩 國 不僅 邊界 線 長 。

兩 國 不進 辯結 線 長 。

兩 國 不僅 邊界 線 長 。

2) 由於 塔利班 揚言 要 破壞 此 次 選舉 。

遊寓 塔利班 狼煙 要 破壞 此 次 選舉 。

由於 塔利班 _UNK 要 破壞 此 次 選舉 。

3) 由於 中國 上海 和 香港 等 亞洲 地區 其他 主要 股市 走低 。 遊寓 忠國 上海 和 香港 等 亞洲 地區 其他 主窯 故史 走低 。 由於 中國 上海 和 香港 等 亞洲 地區 其他 主要 股市 走低 。

4) 在 與 韓國隊 的 金牌 爭奪戰 中 。 在 與 韓國隊 的 金牌 爭奪戰 中 。 在 與 韓國隊 的 金牌 金牌 中 。

注意到在第四組的數據中,模型將「金牌 爭奪戰」輸出成了「金牌 金牌」, 這是由於 localized attention 機制導致的。

五、參考文獻

1. Kao, Ting-Hui, Yu-Wei Chang, Hsun-Wen Chiu, Tzu-Hsi Yen, Joanne Boisson, Jian-Cheng Wu, and Jason S. Chang. "CoNLL-2013 Shared Task: Grammatical Error Correction NTHU System Description." In CoNLL Shared Task, pp. 20-25. 2013.

2. Ng, Hwee Tou, Siew Mei Wu, Ted Briscoe, Christian Hadiwinoto, Raymond Hendy Susanto, and Christopher Bryant. "The CoNLL-2014 Shared Task on Grammatical Error Correction." In CoNLL Shared Task, pp. 1-14. 2014.

3. Yu, Liang-Chih, Lung-Hao Lee, Yuen-Hsien Tseng, and Hsin-Hsi Chen. "Overview of SIGHAN

2014 Bake-off for Chinese spelling check." In Proceedings of the 3rd CIPSSIGHAN Joint

Conference on Chinese Language Processing (CLP』14), pp. 126-132. 2014.

4. Tseng, Yuen-Hsien, Lung-Hao Lee, Li-Ping Chang, and Hsin-Hsi Chen. "Introduction to SIGHAN

2015 Bake-off for Chinese Spelling Check." ACL-IJCNLP 2015 (2015): 32.

5. Wu, Shih-Hung, Chao-Lin Liu, and Lung-Hao Lee. "Chinese spelling check evaluation at SIGHAN Bake-off 2013." In Proceedings of the 7th SIGHAN Workshop on Chinese Language Processing, pp. 35-42. 2013.

6. Liu, C-L., M-H. Lai, K-W. Tien, Y-H. Chuang, S-H. Wu, and C-Y. Lee. "Visually and phonologically

similar characters in incorrect Chinese words: Analyses, identification, and applications." ACM Transactions on Asian Language Information Processing (TALIP) 10, no. 2 (2011): 10.

7. Chorowski, Jan K., Dzmitry Bahdanau, Dmitriy Serdyuk, Kyunghyun Cho, and Yoshua Bengio.

"Attention-based models for speech recognition." In Advances in Neural Information

Processing Systems, pp. 577-585. 2015.

8. Mutton, Andrew, Mark Dras, Stephen Wan, and Robert Dale. "GLEU: Automatic evaluation of sentence-level fluency." In ACL, vol. 7, pp. 344-351. 2007.

9. Zheng, Yabin, Chen Li, and Maosong Sun. "Chime: An efficient error-tolerant chinese pinyin input method." In IJCAI, vol. 11, pp. 2551-2556. 2011.

10. Nicholls, Diane. "The Cambridge Learner Corpus: Error coding and analysis for lexicography and ELT." In Proceedings of the Corpus Linguistics 2003 conference, vol. 16, pp. 572-581. 2003.

11. Mizumoto, Tomoya, Mamoru Komachi, Masaaki Nagata, and Yuji Matsumoto. "Mining Revision

Log of Language Learning SNS for Automated Japanese Error Correction of Second Language

Learners." In IJCNLP, pp. 147-155. 2011.

12. Abadi, Mart?n, Ashish Agarwal, Paul Barham, Eugene Brevdo, Zhifeng Chen, Craig Citro, Greg S.

Corrado et al. "Tensorflow: Large-scale machine learning on heterogeneous distributed systems." arXiv preprint arXiv:1603.04467 (2016).

(責編:溫靜、趙光霞)

相關焦點

  • 推斷速度達seq2seq模型的100倍,谷歌開源文本生成新方法LaserTagger
    序列到序列(seq2seq)模型給機器翻譯領域帶來了巨大變革,並成為多種文本生成任務的首選工具,如文本摘要、句子融合和語法糾錯。模型架構改進(如 Transformer)以及通過無監督訓練方法利用大型無標註文本資料庫的能力,使得近年來神經網絡方法獲得了質量上的提升。
  • 求解微分方程,用seq2seq就夠了,性能遠超 Mathematica、Matlab
    這篇論文提出了一種新的基於seq2seq的方法來求解符號數學問題,例如函數積分、一階常微分方程、二階常微分方程等複雜問題。其結果表明,這種模型的性能要遠超現在常用的能進行符號運算的工具,例如Mathematica、Matlab、Maple等。
  • 直觀理解並使用Tensorflow實現Seq2Seq模型的注意機制
    採用帶注意機制的序列序列結構進行英印地語神經機器翻譯Seq2seq模型構成了機器翻譯、圖像和視頻字幕、文本摘要、聊天機器人以及任何你可能想到的包括從一個數據序列到另一個數據序列轉換的任務的基礎。如果您曾使用過谷歌Translate,或與Siri、Alexa或谷歌Assistant進行過互動,那麼你就是序列對序列(seq2seq)神經結構的受益者。
  • QB期刊 |RNA-seq數據計算方法大匯總
    十年前,第二代RNA測序技術(RNA-seq)的誕生及其迅速發展使得研究者可以在對RNA序列沒有任何先驗信息的情況下高通量地對全轉錄組進行測序 [2]。現如今第二代RNA測序技術已經成為了研究基因和RNA表達最常用的手段之一,它的廣泛應用極大地促進了生物和醫學領域的各類研究,包括對基因表達與調控,RNA可變剪切以及蛋白質翻譯等多項生物過程的了解 [3]。
  • 綜述科普|染色質調控區域的研究:對CHIP-seq和ATAC-seq發展的深入思考
    快速、低成本的文庫製備允許組蛋白CHIP-seq使用10,000個細胞。基於超低輸入MNase的自然CHIP(ULI-NChIP)通過調整NChIP程序,生成從103個胚胎幹細胞到106個胚胎幹細胞的高質量組蛋白修飾圖譜。基於微流控振蕩洗滌的CHIP-seq(MOWChIP-seq)甚至可以應用於僅用100個細胞的組蛋白修飾的全基因組分析。
  • 論文寫作丨基於單細胞RNA-seq構建基因調控網絡如何發7分+SCI
    此外,基於單細胞轉錄組(scRNA-seq)構建的基因調控網絡(GRNs)對研究關鍵調控因子十分重要。作者使用scRNA-seq數據對TNBC患者構建了全面的基因調控機制網絡。使用scRNA-seq分析CNV並鑑定出545個惡性細胞。基於RAM50模型鑑定惡性細胞的亞型。細胞間通訊分析表明巨噬細胞在腫瘤微環境中起到重要作用。
  • Circular RNA的產生機制、功能及RNA-seq數據鑑定方法
    【Circular RNA的產生機制】Circular RNA,縮寫為circRNA,中文名為環狀
  • 比基線模型快100倍,Google開源文本生成「加速器」LaserTagger
    雷鋒網訊,2014年,Google提出了Sequence-to-Sequence模型,旨在將句子文本映射到fixed-length向量,其中輸入和輸出的長度可能會有所不同。Seq2Seq通常應用於NLP領域的文本生成任務,例如摘要生成、語法糾錯、句子合併等。
  • 從數據分析到結論產生,談談scATAC-seq
    目前,高通量測序分析轉座酶可及染色質(ATAC-seq)被認為是全基因組可及染色質的最易獲得和最具成本效益的策略。還開發了單細胞ATAC-seq(scATAC-seq)技術來研究包含異質細胞群體的組織樣本中細胞特異性染色質的可及性。然而,由於scATAC-seq數據固有的高噪聲和稀疏性,使得生物信號的準確提取和生物假設的有效制定變得困難。
  • 吳昊團隊開發檢測單細胞mRNA動態變化新技術scNT-seq
    該方法創新性的整合了mRNA代謝標記 (metabolic labeling),基於液滴微流控(droplet microfluidics)的高通量單細胞轉錄組分析技術和最近開發的4sU化學轉化反應 (chemically recode 4sU to cytosine analog )【1】;在數據分析方面,作者構建了基於unique molecular identifier(UMI) 的統計模型來更加準確地分析單細胞水平上新生成的
  • Nature重磅綜述 |關於RNA-seq,你想知道的都在這
    DGE的最後階段是構建樣本分組和其它協變量的統計模型,計算差異表達置信度。基於reads計數的工具(例如HTSeq或featureCounts)通常會丟棄許多比對的序列,包括那些具有多個匹配位置或比對到多個表達特徵的reads。這可以在隨後的分析中消除同源和重疊的轉錄本。RSEM使用期望最大化模型來分配模糊的reads,而無參考的比對方法(例如Kallisto)則將這些reads用於後續的定量,這可能會導致結果偏差。
  • ...學院張強鋒課題組利用深度學習人工智慧算法分析單細胞ATAC-seq...
    生命學院張強鋒課題組利用深度學習人工智慧算法分析單細胞ATAC-seq數據清華新聞網10月12日電 10月8日,清華大學生命學院的張強鋒課題組在《自然·通訊》(Nature Communications)上發表題為「SCALE方法基於隱特徵提取進行單細胞ATAC-seq數據分析」(SCALE method for
  • CHOM|用CRISPRi-seq研究病原菌致病機理
    2. 該技術將CRISPRi和illumina sequencing巧妙結合。然後作者用CRISPRi-seq,對目前肺炎鏈球菌領域裡常用的小鼠肺炎模型進行了研究,發現該模型中細菌侵染過程存在著顯著的瓶頸效應:起始構建侵染模型時用的菌量是108CFU,侵染過程中有的小鼠體內的菌量可以降到25個,然而這僅僅25個存活下來的菌便可以進一步繁殖最後造成肺炎以及進一步的菌血症。
  • The Scientist:從晶片到RNA-seq的轉型之路
    RNA-seq主要是將RNA轉化為cDNA文庫,然後進行直接測序。雖然處理原始數據比較麻煩,但RNA-seq能夠做得到晶片做不到的事。RNA-seq可以揭示未知的轉錄本、基因融合和遺傳多態性,而晶片只能檢出明確的已知目標。在測序深度足夠的情況下,RNA-seq在高豐度和低豐度轉錄本檢測中都比晶片有效。
  • scRNA-seq數據差異基因表達分析的有效方法有哪些?
    我們知道RNA-seq即轉錄組測序,是某個物種或者特定細胞類型產生的所有轉錄本的集合,而單細胞RNA測序(single-cell RNA-seq,簡稱scRNA-seq)則是以單個細胞為特定研究對象,提取其mRNA進行逆轉錄並進行高通量測序分析,可體現出個體細胞內表達水平的具體變化,目前已廣泛應用在生物學、醫藥研發、臨床醫學等各個領域。
  • Chip-seq簡介
    染色質免疫共沉定技術,可以研究生物體內DNA與蛋白質的相互作用,首先在活細胞內固定DNA與蛋白結合的複合體,然後用蛋白特異性的抗體,通過抗原抗體特異性結合的免疫學手段捕獲該複合體,然後洗脫蛋白質,得到與目的蛋白結合的DNA片段,將富集到的DNA片段進行上機測序,即形成了一套成熟的分析流程,稱之為chip-seq, 就是將傳統的chip技術和高通量測序結合起來,對應的英文如下
  • 五分鐘帶你了解ATAC-seq測序
    with high-throughout sequencing,中文可理解為結合高通量測序技術的靶向開放染色質的研究方法。例如:在某些疾病、腫瘤組織,根據RNA-seq的結果提示樣本轉錄表達的差異,在這些情況下,ATAC-seq可以從源頭,即基因轉錄的情況提供信息,從而有可能證明轉錄差異的表達是由轉錄起始的某些調控因子引起的。
  • C-Myc 與RNA-seq分析
    說到主題,RNA-seq, 一個2008年出現的技術,基於solexa測序,完成轉錄本(可以mRNA,也可以是non-coding RNA等)定量。這個技術相較於以往所用的microarray優勢明顯,可以不依賴參考基因組,還可以發現新的轉錄本等,成本也在隨著測序成本的降低而在降低,而且隨著單細胞轉錄組的測序發展,更極大的加深了我們對體內生物學過程的理解。
  • 研究探討RNA-seq數據分析方法
    高通量RNA測序(RNA-seq)有望描繪出轉錄組的整體圖像,實現樣本內所有基因及其亞型的完整注釋和定量。
  • Direct-seq:單細胞水平分析CRISPR基因編輯篩選實驗
    原文以 Direct-seq: programmed gRNA scaffold for streamlined scRNA-seq in CRISPR screen 為標題發布在 Genome Biology 期刊基於CRISPR基因編輯的正向遺傳篩選技術已經廣泛應用於「表型(