文本分類中如何降維?

如果是以詞作為特徵,有的詞總是同時出現在某一篇文檔中,怎麼樣把這些詞合併起來?比如說在我的數據集合里,中國和北京這兩個詞大部分時間總是同時出現,那麼如果按正常的分詞,這就生成了兩維特徵,我怎麼把這兩維特徵合併呢?


做個lsi不久完了?


你的問題其實在數據挖掘裡面不難,其實也沒有涉及到降維,真在的降維是數量級的降維。

你的這個問題應該按照以下方案處理:

1、對文本做共現辭彙統計,可以統計相鄰距離不超5的詞,也可以統計鄰接詞。

2、選擇共現比較多的組合作為特徵,加入特徵集。

3、生成訓練模型。

傳統特徵選擇的方法包括以下幾種:信息增益(IG),互信息(MI),卡方檢驗(卡方

),最大熵等。降維的方法可以使用粗糙集(Rough Set,RS)屬性約簡。

分類器構築可以使用SVM等工具


請看Mahout In Action,其中提到了兩種方法,一是基於LDA的Topic Model,把相同主題的詞抽取為特徵。另一種方式我不太記得名字了。當然,使用各種MF(矩陣分解Matrix Factorization)方法也可以提取特徵,就是運算量太大。


為你推薦一篇經典的文本分類中特徵選擇的論文: http://courses.ischool.berkeley.edu/i256/f06/papers/yang97comparative.pdf

祝你好運:)


SVD、LAD、word2vec


推薦閱讀:

為什麼決策樹是一種分類方法卻可以用於預測?
模式識別和分類的區別?
什麼是好的數據科學家?
怎麼學慣用 R 語言進行數據挖掘?
Python 是一門適合做數據挖掘的語言嗎?

TAG:數據挖掘 | 文本挖掘 | 文本分類 | 特徵提取 |