NLP之文本分类方法之基础知识
一:文本分類的處理大致分為文本預處理、文本特征提取、分類模型構建等。和英文文本處理分類相比,
中文文本的預處理是關鍵技術。
1:文本預處理(解決特征空間高維性、語義相關性和特征分布稀疏)
1.1中文分詞技術
為什么分詞處理?因為研究表明特征粒度為詞粒度遠遠好于字粒度,其大部分分類算法不考慮詞序信息,基于字粒度的損失了過多的n-gram信息。
中文分詞主要分為兩類方法:基于詞典的中文分詞和基于統計的中文分詞。
1.1.1:基于詞典的中文分詞:核心是首先建立統一的詞典表,當需要對一個句子進行分詞時,首先將句子
拆分成多個部分,將每一個部分與字典一一對應,如果該詞語在詞典中,分詞成功,否則繼續拆分匹配直到成功
所以:字典,切分規則和匹配順序是核心。
1.12:基于統計的中文分詞方法:
統計學認為分詞是一個概率最大化問題,即拆分句子,基于語料庫,統計相鄰的字組成的詞語出現的概率,相鄰的詞出現的
次數多,就出現的概率大,按照概率值進行分詞,所以一個完整的語料庫很重要。
1.2:去除停用詞
建立停用詞字典,目前停用詞字典有2000個左右,停用詞主要包括一些副詞、形容詞及其一些連接詞。通過維護一個停用詞表,實際上是一個特征提取的過程,本質 上是特征選擇的一部分。
1.3:文本特征提取
1.3.1:詞袋模型:
思想:建立一個詞典庫,該詞典庫包含訓練語料庫的所有詞語,每個詞語對應一個唯一識別的編號,利用one-hot文本表示。
文檔的詞向量維度與單詞向量的維度相同,每個位置的值是對應位置詞語在文檔中出現的次數,即詞袋模型(BOW))
問題:1:容易引起維度災難問題,語料庫太大,字典的大小為每個詞的維度,高維度導致計算困難,每個文檔包含的詞語數少于詞典的總詞語數,導致文檔稀疏。2:僅僅考慮詞語出現的次數,沒有考慮句子詞語之間的順序信息,即語義信息未考慮
1.3.2:TF-IDF文本特征提取
前面的博客整理過,這里再提一下吧,加強記憶:
利用TF和IDF兩個參數來表示詞語在文本中的重要程度
TF是詞頻:指的是一個詞語在一個文檔中出現的頻率,一般情況下,每一個文檔中出現的詞語的次數越多詞語的重要性更大,例如BOW模型一樣用出現次數來表示特征值,即出現文檔中的詞語次數越多,其權重就越大,問題就是在長文檔中 的詞語次數普遍比短文檔中的次數多,導致特征值偏向差異情況。
TF體現的是詞語在文檔內部文檔內部文檔內部的重要性(重要的話說三遍)
IDF是體現詞語在文檔間文檔間文檔間的重要性(還是三遍),即如果某個詞語出現在極少數的文檔中,說明該詞語對于文檔的區別性強,對應的特征值高,IDF值高,IDFi=log(|D|/Ni),D指的是文檔總數,Ni指的是出現詞語i的文檔個數,很明顯Ni越小,IDF的值越大。
最終TF-IDF的特征值的表達式為:TF-IDF(i,j)=TFij*IDFi
1.3.3:基于詞向量的特征提取模型:
想基于大量的文本語料庫,通過類似神經網絡模型訓練,將每個詞語映射成一個定維度的向量,送個維度在幾十到化百維之間,每個向量就代表著這個詞語,詞語的語義和語法相似性和通過向量之間的相似度來判斷。
常用的word2vec主要是CBOW和skip-gram兩種模型,由于這兩個模型實際上就是一個三層的深度神經網絡,其實NNLM的升級,去掉了隱藏層,由輸入層、投影層、輸出層三層構成,簡化了模型和提升了模型的訓練速度,其在時間效率上、語法語義表達上效果明顯都變好。word2vec通過訓練大量的語料最終用定維度的向量來表示每個詞語,詞語之間語義和語法相似度都可以通過向量的相似度來表示。
1.3.4:特征提取:
文本表示的特征提取對應特征項的選擇和特征權重計算兩部分,特征選擇的思想是根據某個評價指標獨立的對原始特征項(詞項)進行評分排序,從而選擇得分最高的一些特征項,過濾掉其余的特征項,常用的評價有文檔頻率、互信息、信息增益、X……2統計劑量的那個。特征權重主要是經典的TF-IDF方法及其擴展方法,主要思路是一個詞的重要度與在類別內的詞頻成正比,與所有類別出現的次數成反比。
2:分類模型
2.1:NB模型
這里NB模型前面的博客詳細說過,這里略過;
2.2:隨機森林模型(RF)
隨機森林是一種集成學習方法,這里主要說一下RF的構造過程:
(1)假設數據樣本集共有N個數據,數據的特征維度為M,采用有放回的隨機抽取n個數據樣本,并隨機選擇m個特征,形成單棵樹的訓練數據集和特征集。
(2)根據(1)中的數據集和m個特征,基于信息增益或者互信息等規則建立決策樹,每棵樹盡量生成且不做剪枝操作。
(3)根據設置的決策樹個數K,循環重復步驟(1)和(2),直至生成K棵決策樹。
RF通過隨機選擇樣本和特征來構建多棵決策樹,所以決策樹的構建是關鍵步驟,構造決策樹的根節點的分裂標準或者度量標準來作為判斷屬性分類樣例的能力的大小,然后根據根節點的每個可能的屬性值進行遞歸操作,直至最后回歸樹完成。
ID3決策樹算法選擇根節點的依據是信息增益;C4.5是根據信息增益率;還有的是根據基尼指數。
總結一句話就是:根據節點選擇指標選擇最優屬性作為分類屬性后遞歸的擴展決策樹的分支構造一顆完整決策樹
2.3:SVM分類模型
思想:任何一個分類問題可以認為求解數據集劃分超平面問題,即使該問題非線性,也可以利用核函數將其轉化為線性劃分的問題,SVM算法最終優化目標就是極大化最大分類間隔;
大部分SVM都是基于拉格朗日變換和二元優化得到參數的解,從而得到SVM分類模型。
但是現實分類問題一般都是非線性可分的,對于這類問題我們需要利用SVM中核函數來解決。核函數就是將低維度數據空間映射到高維度數據空間,這樣之后就使得其線性可分了,高維度的向量內積運算通過核函數來直接得到,避免在高維度數據空間的計算帶來時間成本的增高。
SVM近些年在研究其應用以及多分類問題,比如SVM模型研究信用評估模型,基于SVM模型提高圖形檢索關聯度,新型的多分類SVM模型Twin-KSVC,進一步提高多類別SVM模型的泛化能力。
2.4:KNN分類模型
思想:類別相似的樣本距離也較為靠近,從訓練集中找到和特定樣本距離最近的k個樣本,統計k個樣本的類別,通過投票得到特定樣本的類別。具體流程太簡單了我就不在說了;KNN就一個模型參數K,k的大小影響文本分類的結果,一般情況較大的k值能夠減小噪聲的影響,一個較好的K值可以通過交叉驗證來獲得防止過擬合,研究結合決策樹思想將每個訓練樣本和測試樣本結合起來,提出一種搞擴展的KNN算法,還有基于參數自動參數調節來解決錯誤數據問題的高容錯率KNN算法。
2.5:神經網絡分類模型
這里主要有BP神經網絡算法,輸入層為原始的文本特征項,隱藏層為原始特征的映射,輸出層為類別層與層之間通過權值相連,然后利用梯度下降法得到權值的更新法則。
CNN也可以用于文本分類,需要先將原始的文本進行預處理,得到其詞向量作為CNN的輸入。
總結
以上是生活随笔為你收集整理的NLP之文本分类方法之基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浏览(45) MiCT: Mixed
- 下一篇: asp企业建站系统 最新推出的 免费下载