预训练卷不动,可以卷输入预处理啊!
文 | 德志
編 | 小戲
目前伴隨著預訓練預言模型的興起,越來越多的 NLP 任務開始脫離對分詞的依賴。通過 Fine-Tune Bert 這類預訓練預言模型,能直接在下游任務上取得一個很好的結果。同時也有文章探討中文分詞在神經網絡時代的必要性。對于分詞任務本身也是如此。
那中文分詞這個任務有還意義嗎?或者換句話說中文分詞是不是一個已經解決的任務。那么接下來筆者將會帶大家梳理目前分詞的研究方向和進展。
本文的思維導圖如下圖所示。其中,“統計方法”和“神經網絡”兩部分會簡單介紹一下早期的傳統做法,熟悉的同學可以直接跳過。主體在最后的“預訓練模型”部分,會帶大家梳理一下2020年以來的最前沿的一些中文分詞工作。
▲本文思維導圖任務描述
分詞任務相信大家都不陌生了,其實就是給定一個句子,讓后將一個句子切分成一個個的基本詞。
例如:'上海浦東開發與建設同步' → ['上海', '浦東', '開發', ‘與', ’建設', '同步']。
對這個任務的解法也有很多中,比如最開始的前/后向最大匹配,后來的也有 N-gram語言模型 ,HMM/CRF 的分詞方法,再到現在的基于深度學習的端到端的分詞方法。總而言之,分詞的方法也是跟著時代是在不斷進步的。
前浪們:統計方法
對于分詞這項任務最早的方案是依靠詞典匹配的方式,到后來利用統計信息進行分詞,最后采用了序列標注的方案進行分詞。這些方案的代表方法有:
前/后向最大匹配:其樸素思想就是利用詞表采用貪心的方式切分出當前位置上長度最大的詞作為分詞結果返回。
N-gram 語言模型分詞:其思想在于利用統計信息找出一條概率最大的路徑。一般需要很大量的數據才能統計的很準。
HMM/CRF分詞:把分詞當做一個序列標注問題。序列單元是字,序列標簽有B,M,E,S,分別代表詞首,詞中,詞尾和單詞。
前浪們的方法就不贅述太多了,這些方式都或多或少存在一定的局限性,當然,這些方法顯著的優勢是它們速度都很快。
中浪們:神經網絡
步入到深度學習時代,開始涌現出形形色色利用神經網絡的分詞方式。一個樸素的方案是,給定一個中文的句子, ,輸出的一個 Label 序列 。
Label 序列是由{B,M,E,S}組成。其中,B 為詞的開頭,M 代表詞的中間,E 為詞的結尾,S 指的是單字。這種方案首先將句子切分成單字輸入到模型中,通過序列標注的形式進行學習。
之后,中浪們開始采用了各種模型去提取字符特征,然后利用 CRF 進行序列標注的學習。比較典型的方案是 LSTM+CRF 的方式。
LSTM 的優勢在于能夠保留之前的有效信息,以及減少窗口的限制。對比傳統方法而言,基于 NN 的方法效果好且對于歧義詞和未登陸詞有優勢,雖然在速度上不如傳統模型。
后浪們:預訓練時代
后 BERT 時代。在 BERT 出現之后,分詞任務也涌向利用 BERT 這種預訓練預言模型進行分詞。BERT 作為強特征抽取器,直接運用到分詞任務上可以看到極大的提升。一個典型的方式如下:
此時可能大家就會有一個疑問:是不是對于分詞任務,使用一個 BERT 就好了,還有什么可以研究的方向嗎?而我個人總結有如下幾個研究方向。
如何通過不同粒度標準的分詞預料聯合預訓練,讓分詞能夠通過某些簡單的控制能夠適應不用的分詞場景?
如何在 NN 模型中融合自定義詞典的功能?比如輸入時融入額外的 Embedding;
如何將 NN 分詞框架和外部知識結合?比如如何結合外部的字典樹等問題;
如何大的 NN 模型蒸餾成一個小的模型?即如何將大的 BERT → 小的 CNN/LSTM/BERT?由于分詞模型的場景對性能要求很高,因此把深度模型的速度提升是目前急需解決的問題。
對于以上的幾個熱門方向分別有如下代表方案:
LEBERT(2021 ACL)
LEBERT 的主要的方案是在輸入的時候需要采集句子中的字符-詞語 pair ,通過詞典匹配(字典樹)——這個詞典是由預訓練的 Word-Embeding 的詞組成的——然后通過 Lexicon Adapter 往 BERT 中注入詞特征。采用字向量+加權求和得到融合后的詞向量。詞向量本身是通過額外訓練的。
通過下圖可以明顯的看到整個 LEBERT 的整體結構。給定一個句子[美國人民],對于每個句子中的字都會有一個字符-短語的 pair,"美"->[美國,美國人,<pad>],<pad>是為了對齊。
然后在求和的時候作者設計了 Lexicon Adapter 對字向量和短語 pair 的詞向量進行求和,剩下的就和原生 BERT 一致了。額外的 Word-Embeding 則是采用了騰訊 AI-Lab 開源的詞向量。
論文題目:
Lexicon Enhanced Chinese Sequence Labelling Using BERT Adapter
論文鏈接:
https://arxiv.org/pdf/2105.07148.pdf
Meta-Seg(2021 NAACL)
Meta-Seg 構建了第一個多粒度的分詞預訓練語言模型。并通過元學習的方式進行多粒度的預訓練。其衍生的姊妹篇文章則是通過引入 Bigram+額外的損失函數來構建多粒度的分詞。共同的做法是輸入端增加來引入是哪種分詞粒度的信息,而不同的是,Meta-Seg目標是通過元學習讓模型學到不同數據集下的分割標準。
論文題目:
Pre-training with Meta Learning for Chinese Word Segmentation
論文鏈接:
https://arxiv.org/pdf/2010.12272.pdf
ZEN + Key-Value Memory Networks(2020 ACL)
ZEN + Key-Value Memory Networks一文的核心思想是在傳統的 CWS 模型上加入 Memory Networks 緩解OOV的問題。
Encoder 可以是任意的網絡(BERT/ZEN),Decoder部分則是 Softmax 或者 CRF 。核心是 Wordhood Memory Networks。
Wordhood Memory Networks 可以認為是一種 Key-Value 的存儲結構。該方法的核心在于首先構建一個 N-gram 的詞表。然后對于每一漢字而言,所有得到所有包含該字的 N-gram 作為Key,Value則是同樣的一個列表,表示的是字在 N-gram 中的位置。
給定一個詞“民”, Memory 的 Key 為[民,居民。民生,居民生活],Value則是[S,E,B,I],分別代表了“民”在 N-gram 中的位置。然后用民的 Embeding 對 N-gram 的詞進行點乘取 Softmax 就得到相關性。
論文題目:
Improving Chinese Word Segmentation with Wordhood Memory Networks
論文鏈接:
https://aclanthology.org/2020.acl-main.734v2.pdf
BERT + Model Compression + Multi-criterial Learing(2020 COLING)
BERT + Model Compression + Multi-criterial Learing 的想法非常簡單粗暴,由于分詞標注的主觀性導致了現有數據集在分詞粒度上會有分歧,所以想利用某種方式捕獲粒度不同且能夠利用共同基礎知識。
方案很簡單,構建一個共有的影層學習共有知識,構建一個私有隱層破獲獨特性,然后將兩個層的結果加起來進行標簽預測。而模型壓縮這塊還是使用了蒸餾的方式,蒸餾了一個 3 層的小 BERT 。Student 的學習是通過 Teacher-Students 損失+標簽損失學習。
論文題目:
Unified Multi-Criteria Chinese Word Segmentation with BERT
論文鏈接:
https://arxiv.org/pdf/2004.05808.pdf
ZEN = Bert + N-gram(2020 EMNLP)
ZEN = Bert + N-gram 引入 N-gram 編碼方式,方便模型識別出可能的字的組合。N-gram 的提取分成兩步,首先通過語料生成 N-gram 詞表,然后通過此表生成 N-gram ?Matrix。
N-gram Embedding 的方式則是和 BERT 的 Embeeding 一致。字 Embedding 和 N-gram Embedding 的結合方式則是直接做了矩陣相加。
論文題目:
ZEN: Pre-training Chinese Text Encoder Enhanced by N-gram Representations
論文鏈接:
https://arxiv.org/pdf/1911.00720.pdf
目前 SOTA 排行
常用的數據集
采用 F1 的評價標準
總結
本文回顧了分詞的發展歷程,以及目前的研究熱點方向。總的來說分詞任務其實發展至今可以看到在公開數據集上已經有了很好的效果,但是在實際運用上切詞的效果總是沒那么讓人滿意。其主要問題有:
實際使用上用戶比較關注效率問題,比如如何提升 NN 模型的效率?
每天有大量的新詞產生,對于 OOV 的問題如何更有效的解決?
詞的界限不明確,大家對分詞的標準不統一。
這三點導致了目前實際使用中分詞效果大大折扣。未來分詞還有很多方向需要大家探索,在 RethinkCWS 一文中也有很多對中文分詞的目前看法,感興趣的大家可以去參考查閱一下。
論文題目:
RethinkCWS: Is Chinese Word Segmentation a Solved Task?
論文鏈接:
https://arxiv.org/pdf/2011.06858.pdf
后臺回復關鍵詞【入群】
加入賣萌屋NLP/IR/Rec與求職討論群
后臺回復關鍵詞【頂會】
獲取ACL、CIKM等各大頂會論文集!
?
[1] Lexicon Enhanced Chinese Sequence Labelling Using BERT Adapter
[2] Lattice-BERT:Leveraging Multi-Granularity Representations in Chinese Pre-trained Language Model
[3] Pre-training with Meta Learning for Chinese Word Segmentation
[4] Unified Multi-Criteria Chinese Word Segmentation with BERT
[5] Improving Chinese Word Segmentation with Wordhood Memory Networks
[6] Toward Fast and Accurate Neural Chinese Word Segmentation with Multi-Criteria Learning
[7] ZEN: Pre-training Chinese Text Encoder Enhanced by N-gram Representations.
[8] A Concise Model for Multi-Criteria Chinese Word Segmentation with Transformer Encoder
[9] RethinkCWS: Is Chinese Word Segmentation a Solved Task?
[10] Distilling Task-Specific Knowledge from BERT into Simple Neural Networks
[11] Subword Encoding in Lattice LSTM for Chinese Word Segmentation Lattice LSTM-CRF + BPE subword embeddings
[12] State-of-the-art Chinese Word Segmentation with Bi-LSTMs
[13] Neural Networks Incorporating Dictionaries for Chinese Word Segmentation.
[14] Adversarial Multi-Criteria Learning for Chinese Word Segmentation
[15] Long Short-Term Memory Neural Networks for Chinese Word Segmentation BiLSTM-CRF
[16] Ambiguity Resolution in Chinese Word Segmentation
[17] 中文分詞十年回顧
[18] 中文分詞十年又回顧
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的预训练卷不动,可以卷输入预处理啊!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022年薪百万赛道:高性能神经网络与A
- 下一篇: one-hot(独热)、bag of w