2011-05-18 80 views
4

作爲我的學術研究項目的一部分,我正在嘗試構建一個應用程序,其中我將從Web中檢索一組網址。任務是將這些網址中的每一個歸類到某個類別中。使用lingpipe分類

例如,下面的URL是關於板球http://www.espncricinfo.com/icc_cricket_worldcup2011/content/current/story/499851.html 如果我給這個特定的URL分類器,它應該給輸出類別作爲「體育」。

爲此,我使用lingpipe分類器。我遵循分類教程並運行演示文件夾中的演示。我已經下載了從以下鏈接下載的20個新聞數據集。 http://people.csail.mit.edu/people/jrennie/20Newsgroups

後來,我將訓練樣本大小從20減少到8,並運行分類演示。它可以成功地訓練數據並可以測試數據。

但問題是,每次我想測試文檔類別時,是否需要訓練分類器? 如果我運行文件分類,則需要4分鐘的時間來進行培訓和測試數據。

我可以存儲一次訓練過的數據並分幾次執行分類嗎?

+0

順便說一下,S.O.要求你不要簽名。 (這也被認爲是不好的形式,「請儘量抽空來幫助我」)。 [查看常見問題](http://stackoverflow.com/faq) – Crisfole 2013-01-07 18:21:28

回答

4

您需要將訓練過的模型序列化到磁盤,然後您可以反序列化它們並讓分類器準備就緒。

一旦你有一個分類培訓了使用

AbstractExternalizable.compileTo(classifier,modelFile); 

要寫入模型到磁盤。

要閱讀你將需要

AbstractExternalizable.readObject(modelFile); 

看那Java文檔的AbstractExternalizable

由於 已被編譯,因此該模型將無法接受其他培訓活動。