2010-07-08 42 views
1

我一直在尋找開源解決方案來建議提供問題或文本的類別。爲一段文字建議類別

例如,「Lady Gaga是誰?」可能會返回'娛樂','音樂'或'名人'。

「棒球有多少次擊球?」會給我'棒球',或'運動'。

分類不一定是完美的,但應該是一些什麼接近。

還有,我可以得到一個熱門類別列表?

回答

0

沒有太多的答案,但也許這個分類詞典將幫助:

http://www.provalisresearch.com/wordstat/WordNet.html

我想你可以提取字符串中的生僻字,看看他們在分類字典,並返回在您的條款中獲得最多匹配的類別。處理像「Lady Gaga」這樣的流行文化參考資料會很棘手,但是......也許你可以做Google搜索並分析結果。

3

這是一個document classification problem - 您的「文檔」只是查詢或文本。

您首先需要確定可能的類別列表。 「Lady Gaga是誰?」可以是娛樂,名人,英語問題,傳記,人物等。接下來,您將應用決策框架爲文本中的每個類別分配一個分數。最高分是其分類 - 只要它高於噪聲閾值,並且沒有第二個分類太接近於區分。決策框架可以包括諸如貝葉斯網絡或一組定製規則的方法。

實現分類一些開源項目包括:

0

其他人已經做了相當多的工作以你的名義,所以我建議只使用som就像OpenCalais API一樣。在http://code.google.com/p/python-calais/有一個python封裝API。

「Lady Gaga是誰?」似乎太短的一段文字讓他們給出一個體面的迴應。但是,如果您不費吹灰之力地執行兩個步驟並從Ladypedia的第一段wiki中獲取Lady Gaga,然後將其提供給OpenCalais API,您將獲得非常好的結果。

只需將第一段從維基百科剪切並粘貼到OpenCalais viewer即可快速查看。其結果是以100%置信度估計對「娛樂文化」主題進行分類。

同樣,棒球例子返回「體育」與「娛樂」的進一步社會性標籤的話題,「棒球」等

編輯這裏是由加萊使用社會性標籤的提示一種思路:發送維基百科網址的Lady Gaga到美味的API與

curl -k https://user:[email protected]/v1/posts/suggest?url=http://en 
.wikipedia.org/wiki/Lady_gaga 

回報 <?xml version="1.0" encoding="UTF-8"?> <suggest> <recommended>music</recommended> <recommended>wikipedia</recommended> <recommended>wiki</recommended> <recommended>people</recommended> <recommended>bio</recommended> <recommended>cool</recommended> <recommended>facts</recommended> <popular>music</popular> <popular>gaga</popular> <popular>ladygaga</popular> <popular>wikipedia</popular> <popular>lady</popular>

等應很容易igno重新維基百科/維基類型條目。