什么是文本分類?
譯文?譯者 | 李睿
審校 | 孫淑娟
什么是文本分類?
文本分類是將文本分類為一個或多個不同類別以組織、構造和過濾成任何參數的過程。例如,文本分類用于法律文件、醫學研究和文件中,或者簡單地用于產品評論。數據比以往任何時候都更重要;很多企業花費巨資試圖獲取盡可能多的洞察力。
隨著文本/文檔數據比其他數據類型豐富得多,使用新方法勢在必行。由于數據本質上是非結構化的,并且極其豐富,因此以易于理解的方式組織數據以理解它可以顯著地提高其價值。使用文本分類和機器學習可以更快、更經濟高效地自動構造相關文本。
以下將定義文本分類、其工作原理、一些最知名的算法,并提供可能有助于開始文本分類之旅的數據集。
為什么使用機器學習文本分類?
- 規模:人工數據輸入、分析和組織既乏味又緩慢。機器學習允許進行自動分析,無論數據集的規模有多大。
- 一致性:人為錯誤是由于人員疲勞和對數據集中的材料不敏感而發生的。由于算法的無偏性和一致性,機器學習提高了可擴展性并顯著提高了準確性。
- 速度:有時可能需要快速訪問和組織數據。機器學習算法可以解析數據,以易于理解的方式傳遞信息。
6個通用步驟
一些基本方法可以在一定程度上對不同的文本文檔進行分類,但最常用的方法采用機器學習。文本分類模型在部署之前需要經歷六個基本步驟。
1.提供高質量的數據集
數據集是原始數據塊,用作模型的數據源。在文本分類的情況下,使用監督機器學習算法,為機器學習模型提供標記數據。標記數據是為算法預定義的數據,并附有信息標簽。
2.過濾和處理數據
由于機器學習模型只能理解數值,因此需要對提供的文本進行標記化和文字嵌入,以使模型能夠正確識別數據。
標記化是將文本文檔拆分成更小的部分(稱為標記)的過程。標記可以表示為整個單詞、子單詞或單個字符。例如,可以這樣更智能地標記工作:
- 標記詞:Smarter
- 標記子詞:Smart-er
- 標記字符:S-m-a-r-t-e-r
為什么標記化很重要?因為文本分類模型只能在基于標記的級別上處理數據,不能理解和處理完整的句子。模型需要對給定的原始數據集進行進一步處理才能輕松消化給定的數據。刪除不必要的功能,過濾掉空值和無限值等等。重組整個數據集將有助于防止在訓練階段出現任何偏差。
3.將數據集拆分為訓練和測試數據集
希望在保留20%的數據集的同時,在80%的數據集上訓練數據,以測試算法的準確性。
4.訓練算法
通過使用訓練數據集運行模型,該算法可以通過識別隱藏的模式和見解將提供的文本分類為不同類別。
5.測試和檢查模型的性能
接下來,使用步驟3中提到的測試數據集測試模型的完整性。測試數據集將被取消標記,以根據實際結果測試模型的準確性。為了準確測試模型,測試數據集必須包含新的測試用例(與以前的訓練數據集不同的數據),以避免過度擬合模型。
6.調整模型
通過調整模型的不同超參數來調整機器學習模型,而不會過度擬合或產生高方差。超參數是一個參數,其值控制模型的學習過程。現在可以部署了。
文本分類是如何工作的?
單詞嵌入
在以上提到的過濾過程中,機器和深度學習算法只能理解數值,迫使開發人員對數據集執行一些單詞嵌入技術。單詞嵌入是將單詞表示為實值向量的過程,實值向量可以對給定單詞的含義進行編碼。
- Word2Vec:這是谷歌公司開發的一種無監督單詞嵌入方法。它利用神經網絡從大型文本數據集中學習。顧名思義,Word2Vec方法將每個單詞轉換為給定的向量。
- GloVe:也稱為全局向量,是一種無監督機器學習模型,用于獲取單詞的向量表示。與Word2Vec方法類似,GloVe算法將單詞映射到有意義的空間中,其中單詞之間的距離與語義相似度有關。
- TF-IDF:TF-IDF是詞頻-逆文本頻率的縮寫,它是一種單詞嵌入算法,用于評估單詞在給定文檔中的重要性。TF-IDF為每個單詞分配一個給定的分數,以表示其在一組文檔中的重要性。
文本分類算法
以下是三種最著名和最有效的文本分類算法。需要記住,每種方法中都嵌入了進一步的定義算法。
1.線性支持向量機
線性支持向量機算法被認為是目前最好的文本分類算法之一,它根據給定的特征繪制給定的數據點,然后繪制一條最佳擬合線,將數據拆分并分類為不同的類別。
2.邏輯回歸
邏輯回歸是回歸的一個子類,主要關注分類問題。它使用決策邊界、回歸和距離來評估和分類數據集。
3.樸素貝葉斯
樸素貝葉斯算法根據對象提供的特征對不同的對象進行分類。然后繪制組邊界以推斷這些組分類以進一步解決和分類。
設置文本分類時,應避免什么問題
1.過度擁擠的訓練數據
為算法提供低質量數據將導致糟糕的未來預測。對于機器學習從業者來說,一個常見的問題是,向訓練模型提供的數據集過多,并且包括不必要的特征。過多地使用不相關的數據會導致模型性能的下降。而在選擇和組織數據集時,越少越好。
錯誤的訓練與測試數據的比率會極大地影響模型的性能,并影響數據的洗牌和過濾。精確的數據點不會被其他不需要的因素所干擾,訓練模型將更有效地執行。
在訓練模型時,選擇符合模型要求的數據集,過濾不必要的值,洗牌數據集,并測試最終模型的準確性。更簡單的算法需要更少的計算時間和資源,而最好的模型是可以解決復雜問題的最簡單的模型。
2.過擬合和欠擬合
在訓練達到峰值時,模型的準確性隨著訓練的繼續逐漸降低。這稱為過擬合;由于訓練持續時間過長,模型開始學習意想不到的模式。在訓練集上實現高精度時要小心,因為主要目標是開發其準確性植根于測試集的模型(模型以前沒有見過的數據)。
另一方面,欠擬合是指訓練模型仍有改進的空間,尚未達到其最大潛力。訓練不佳的模型源于訓練的時間長度或對數據集過度正則化。這體現了擁有簡潔和精確數據的意義。
在訓練模型時找到最佳位置至關重要。將數據集拆分為80/20是一個很好的開始,但調整參數可能是特定模型需要以最佳方式執行的操作。
3.文本格式不正確
盡管在本文中沒有詳細提及,但針對文本分類問題使用正確的文本格式將獲得更好的結果。一些表示文本數據的方?法包括GloVe、Word2Vec和嵌入模型。
使用正確的文本格式將改善模型讀取和解釋數據集的方式,進而幫助它理解模式。
文本分類應用程序
- 過濾垃圾郵件:通過搜索某些關鍵字,可以將電子郵件分類為有用郵件或垃圾郵件。
- 文本分類:通過使用文本分類,應用程序可以通過對相關文本(如項目名稱和描述等)進行分類,將不同的項目(文章和書籍等)分類為不同的類別。使用這些技術可以改善體驗,因為它使用戶更容易在數據庫中導航。
- 識別仇恨言論:某些社交媒體公司使用文本分類來檢測和禁止帶有冒犯行為的評論或帖子。
- 營銷和廣告:企業可以通過了解用戶對某些產品的反應來做出特定的改變來滿足他們的客戶。它還可以根據用戶對類似產品的評論推薦某些產品。文本分類算法可以與推薦系統結合使用,這是許多在線網站用來獲得重復業務的另一種深度學習算法。
流行的文本分類數據集
擁有大量標記和即用型數據集,可以隨時搜索符合模型要求的完美數據集。
雖然在決定使用哪一個時可能會遇到一些問題,但以下將推薦一些可供公眾使用的最知名的數據集。
- IMDB Dataset
- Amazon Reviews Dataset
- Yelp Reviews Dataset
- SMS Spam Collection
- Opin Rank Review Dataset
- Twitter US Airline Sentiment Dataset
- Hate Speech and Offensive Language Dataset
- Clickbait Dataset
Kaggle等網站包含涵蓋所有主題的各種數據集。可以嘗試在上述幾個數據集上運行模型進行練習。
機器學習中的文本分類
隨著機器學習在過去十年中產生了巨大的影響,企業正在嘗試一切可能的方法來利用機器學習實現流程自動化。評論、帖子、文章、期刊和文檔在文本中都具有無價的價值。而通過以多種創造性方式使用文本分類來提取用戶見解和模式,企業可以做出有數據支持的決策;專業人士可以比以往更快地獲取和學習有價值的信息。
原文標題:??What Is Text Classification???,作者:Kevin Vu?