2012-03-09 71 views
0

我正在用Weka庫構建java中的文本分類器。weka的文本分類

首先我刪除停用詞,然後我使用詞幹分析器(例如將汽車轉換爲汽車)。 現在我有6個預定義的類別。我對每個類別的文檔進行分類。文件的長度是相似的。

當要分類的文本很短時,結果正常。但是當文字比 長100個字以上的結果越來越陌生和陌生。

我返回每個類別的概率如下: 概率:

[0.0015560238056109177,0.02592,0.6657404531908249,0.004793498469427115,0.13253647895234325,0.014481613481534815]

其是相當可靠的分類。

但是,當我用文字長於約100字,我得到的結果類似:

概率:[1.2863123678314889E-5,4.3728547754744305E-5,0.9964710903856974,5.539960514402068E-5,0.002993481218084141,4.234371196414616E-4]

這是很好的。

現在我正在使用Naive Bayes Multinomial來分類文檔。我已經閱讀了 ,發現我可以在更長的文字上表現出奇怪的感覺。可能是我現在的問題?

任何人有任何好主意,爲什麼發生這種情況?

+1

培訓文件需要多長時間?如果它們很短,那麼當輸入較長時,分類器可能沒有足夠的信息。 – cgwyllie 2012-03-09 19:21:20

+0

大約200-400字。但是,正如我所說,我只使用每個類別5個文件。我想我應該使用更多的文檔來更好的分類,但我不認爲它會解決問題(當然分類會更準確,但我認爲錯誤仍然存​​在:/) – joxxe 2012-03-09 19:24:04

+1

對於您> 100個單詞的測試用例,是不是暗示機密文件是3級,P = 0.996?其他數字如此之小的事實表明,被分類的例子絕對不在這些類別中。第3類是否正確? – cgwyllie 2012-03-09 19:40:05

回答

1

這種行爲可能有多種因素。如果您的訓練和測試文本不在同一個域中,則可能發生這種情況。另外,我相信爲每個類別添加更多的文檔應該會有所幫助。每個類別中的5個文件看起來非常少。如果您沒有更多的培訓文檔或難以獲得更多的培訓文檔,則可以在您的培訓集合中綜合添加正面和負面的實例(請參閱SMOTE算法詳細信息)。讓我們發佈更新。