# 最新文本分類綜述2020-《A Survey on Text Classification: From Shallow to Deep Learning》

0.png

**摘要。**文本分類是自然語言處理中最基本的任務。由於深度學習的空前成功,過去十年中該領域的研究激增。已有的文獻提出了許多方法,數據集和評估指標,從而需要對這些內容進行全面的總結。本文回顧1961年至2020年的文本分類方法,重點是從淺層學習到深度學習的模型。根據所涉及的文本以及用於特徵提取和分類的模型創建用於文本分類的分類法。然後,詳細討論這些類別中的每一個類別,涉及支援預測測試的技術發展和基準數據集。並提供了不同技術之間的全面比較,確定了各種評估指標的優缺點。最後,通過總結關鍵含義,未來的研究方向以及研究領域面臨的挑戰進行總結。

文本分類流程

在許多NLP應用中,文本分類-為文本指定預定義標籤的過程-是一項基礎而重要的任務。文本分類的主要流程:首先是預處理模型的文本數據。淺層學習模型通常需要通過人工方法獲得良好的樣本特徵,然後使用經典的機器學習演算法對其進行分類。因此,該方法的有效性在很大程度上受到特徵提取的限制。但是,與淺層模型不同,深度學習通過學習一組非線性變換將特徵工程直接集成到輸出中,從而將特徵工程集成到模型擬合過程中。
圖片1.png

文本分類發展歷程

主要文本分類方法的示意圖如圖2所示。從1960年代到2010年代,基於淺層學習的文本分類模型佔主導地位。淺層學習意味著基於統計的模型,例如樸素貝葉斯(NB),K近鄰(KNN)和支援向量機(SVM)。與早期的基於規則的方法相比,該方法在準確性和穩定性方面具有明顯的優勢。但是,這些方法仍然需要進行功能設計,這既耗時又昂貴。此外,它們通常會忽略文本數據中的自然順序結構或上下文資訊,這使學習單詞的語義資訊變得困難。自2010年代以來,文本分類已逐漸從淺層學習模型變為深層學習模型。與基於淺層學習的方法相比,深度學習方法避免了人工設計規則和功能,並自動為文本挖掘提供了語義上有意義的表示形式。因此,大多數文本分類研究工作都基於DNN,DNN是數據驅動的方法,具有很高的計算複雜性。很少有研究專註於淺層學習模型來解決計算和數據的局限性。
圖片2.png

文本分類模型

文本分類被稱為從原始文本數據中提取特徵,並基於這些特徵預測文本數據的類別。在過去的幾十年中,已經提出了許多用於文本分類的模型,如表1所示。將文本分類的主要模型的主要資訊(包括場所,應用程式,引文和程式碼鏈接)製成表格。該表中的應用程式包括情感分析(SA),主題標籤(TL),新聞分類(NC),問題解答(QA),對話行為分類(DAC),自然語言推斷(NLI)和事件預測(EP)。對於淺層學習模型,NB 是用於文本分類任務的第一個模型。此後,提出了通用分類模型,例如KNN,SVM和RF,它們被稱為分類器,廣泛用於文本分類。最近,XGBoost和LightGBM可能具有提供出色性能的潛力。對於深度學習模型,TextCNN在這些模型中擁有最多的參考文獻,其中首次引入CNN模型來解決文本分類問題。儘管BERT並不是專門為處理文本分類任務而設計的,但考慮到它在眾多文本分類數據集上的有效性,在設計文本分類模型時已被廣泛採用。

淺層學習模型:淺層學習模型加快了文本分類速度,提高了準確性,並擴大了淺層學習的應用範圍。首先是對原始輸入文本進行預處理,以訓練淺層學習模型,該模型通常包括分詞,數據清理和數據統計。然後,文本表示旨在以對電腦來說更容易的形式來表達預處理的文本,並最大程度地減少資訊丟失,例如詞袋(BOW),N-gram,術語頻率倒排文檔頻率(TF-IDF),word2vec [94]和GloVe [95]。BOW的核心是用字典大小的向量表示每個文本。向量的單個值表示對應於其在文本中固有位置的詞頻。與BOW相比,N-gram考慮相鄰單詞的資訊,並通過考慮相鄰單詞來構建字典。TF-IDF使用單詞頻率並反轉文檔頻率來對文本建模。word2vec使用本地上下文資訊來獲取單詞向量。GloVe -具有局部上下文和全局統計功能-訓練單詞-單詞共現矩陣中的非零元素。最後,根據所選特徵將表示的文本輸入分類器。

Snipaste_2020-08-13_08-50-36.png

Snipaste_2020-08-13_08-50-58.png
Snipaste_2020-08-13_08-51-17.png

淺層學習方法是機器學習的一種。它從數據中學習,數據是對預測值的性能很重要的預定義功能。但是,要素工程是一項艱巨的工作。在訓練分類器之前,我們需要收集知識或經驗以從原始文本中提取特徵。淺層學習方法基於從原始文本中提取的各種文本特徵來訓練初始分類器。對於小型數據集,在計算複雜度的限制下,淺層學習模型通常比深層學習模型表現出更好的性能。因此,一些研究人員研究了數據較少的特定領域的淺層模型的設計。

深度學習模型:DNN由人工神經網路組成,該人工神經網路模擬人腦以自動從數據中學習高級功能,在語音識別,影像處理和文本理解方面比淺層學習模型獲得更好的結果。應該分析輸入數據集以對數據進行分類,例如單標籤,多標籤,無監督,不平衡的數據集。根據數據集的特徵,將輸入單詞向量發送到DNN中進行訓練,直到達到終止條件為止。訓練模型的性能由下游任務驗證,例如情感分類,問題回答和事件預測。在表2中顯示了多年來的DNN,包括與相應基本模型,評估指標和實驗數據集不同的設計。如表2所示,前饋神經網路和遞歸神經網路是用於文本分類任務的前兩種深度學習方法,與淺層學習模型相比,它們可以提高性能。然後,將CNN,RNN和注意力機制用於文本分類。許多研究人員通過改進CNN,RNN和注意力,或模型融合和多任務方法,提高了針對不同任務的文本分類性能。可以生成上下文化詞向量的來自變壓器的雙向編碼器表示(BERT)的出現,是文本分類和其他NLP技術發展的重要轉折點。許多研究人員已經研究了基於BERT的文本分類模型,該模型在包括文本分類在內的多個NLP任務中比上述模型具有更好的性能。此外,一些研究人員研究了基於GNN的文本分類技術,以捕獲文本中的結構資訊,這是其他方法無法替代的。

Snipaste_2020-08-13_08-51-50.png
Snipaste_2020-08-13_08-52-09.pngSnipaste_2020-08-13_08-52-25.pngSnipaste_2020-08-13_08-52-40.pngSnipaste_2020-08-13_08-53-00.pngSnipaste_2020-08-13_08-53-15.png

深度學習由神經網路中的多個隱藏層組成,具有更高的複雜度,並且可以在非結構化數據上進行訓練。深度學習架構可以直接從輸入中學習特徵表示,而無需太多的人工干預和先驗知識。但是,深度學習技術是一種數據驅動的方法,通常需要大量數據才能實現高性能。儘管基於自我注意的模型可以為DNN帶來一些單詞間的可解釋性,但與淺層模型進行比較並不足以解釋其原因和工作方式。

技術挑戰

文本分類-作為有效的資訊檢索和挖掘技術-在管理文本數據中起著至關重要的作用。它使用NLP,數據挖掘,機器學習和其他技術來自動分類和發現不同的文本類型。文本分類將多種類型的文本作為輸入,並且文本由預訓練模型表示為矢量。然後將向量饋送到DNN中進行訓練,直到達到終止條件為止,最後,下游任務驗證了訓練模型的性能。現有的模型已經顯示出它們在文本分類中的有用性,但是仍有許多可能的改進需要探索。儘管一些新的文本分類模型反覆擦寫了大多數分類任務的準確性指標,但它無法指示模型是否像人類一樣從語義層面「理解」文本。此外,隨著雜訊樣本的出現,小的樣本雜訊可能導致決策置信度發生實質性變化,甚至導致決策逆轉。因此,需要在實踐中證明該模型的語義表示能力和魯棒性。此外,由詞向量表示的預訓練語義表示模型通常可以提高下游NLP任務的性能。關於上下文無關單詞向量的傳輸策略的現有研究仍是相對初步的。因此,我們從數據,模型和性能的角度得出結論,文本分類主要面臨以下挑戰:

**1)數據層面:**對於文本分類任務,無論是淺層學習還是深度學習方法,數據對於模型性能都是必不可少的。研究的文本數據主要包括多章,短文本,跨語言,多標籤,少樣本文本。對於這些數據的特徵,現有的技術挑戰如下:

  • Zero-shot/Few-shot learning。當前的深度學習模型過於依賴大量標記數據。這些模型的性能在零鏡頭或少鏡頭學習中受到顯著影響。
  • **外部知識。**我們都知道,輸入的有益資訊越多,DNN的性能就越好。因此,認為添加外部知識(知識庫或知識圖)是提高模型性能的有效途徑。然而,如何添加以及添加什麼仍然是一個挑戰。
  • 多標籤文本分類任務。多標籤文本分類需要充分考慮標籤之間的語義關係,並且模型的嵌入和編碼是有損壓縮的過程。因此,如何減少訓練過程中層次語義的丟失以及如何保留豐富而複雜的文檔語義資訊仍然是一個亟待解決的問題。
  • 具有許多術語辭彙的特殊領域。特定領域的文本(例如金融和醫學文本)包含許多特定的單詞或領域專家,可理解的語,縮寫等,這使現有的預訓練單詞向量難以使用。

**2)模型層面:**現有的淺層和深度學習模型的大部分結構都被嘗試用於文本分類,包括集成方法。BERT學習了一種語言表示法,可以用來對許多NLP任務進行微調。主要的方法是增加數據,提高計算能力和設計訓練程式,以獲得更好的結果如何在數據和計算資源和預測性能之間權衡是值得研究的。

**3)性能評估層面:**淺層模型和深層模型可以在大多數文本分類任務中取得良好的性能,但是需要提高其結果的抗干擾能力。如何實現對深度模型的解釋也是一個技術挑戰。

  • **模型的語義魯棒性。**近年來,研究人員設計了許多模型來增強文本分類模型的準確性。但是,如果數據集中有一些對抗性樣本,則模型的性能會大大降低。因此,如何提高模型的魯棒性是當前研究的熱點和挑戰。
  • **模型的可解釋性。**DNN在特徵提取和語義挖掘方面具有獨特的優勢,並且已經完成了出色的文本分類任務。但是,深度學習是一個黑盒模型,訓練過程難以重現,隱式語義和輸出可解釋性很差。它對模型進行了改進和優化,丟失了明確的準則。此外,我們無法準確解釋為什麼該模型可以提高性能。

•表1中介紹了文本分類的過程和發展,並根據出版年份總結了經典模型的必要資訊,包括場所,應用程式,引文和程式碼鏈接。
圖片3.png

•根據模型結構對從淺層學習模型到深度學習模型的主要模型進行全面的分析和研究。總結了經典或更具體的模型,並主要在表2中概述了基本模型,度量和實驗數據集的設計差異。
圖片4.png

•介紹了當前數據集並給出了主要評估度量的表述,包括單標籤和多標籤文本分類任務。在表3中總結了主要數據集的必要資訊,包括類別數,平均句子長度,每個數據集的大小,相關論文和數據地址。
圖片5.png

•在表5中總結了經典模型在基準數據集上的分類準確度得分,並通過討論文本分類面臨的主要挑戰。

圖片6.png