2010-03-02 46 views
3

如何編寫能夠找到相關(類似)文章的用戶正在閱讀的文章?如何實施「相關文章?」

例如,假設我有篇:(我想出了這些頭銜現在)

Python programming tips 
Python programming for newbies 
Programming in Python, ActionScript and Flash 
Programming in the Jungle 
Tarzan saves newbie Judy from using Fortran programming language 

我怎麼能查詢數據庫,發現他們都是有關係嗎?

我會很感激任何建議。

謝謝,Boda Cydo。

回答

1

您正在使用哪個數據庫? 「全文搜索」可能會對你有所幫助,而MySQL只是內置。谷歌關於它。

+0

我正在使用MySQL。谷歌,謝謝! – bodacydo

1

建議你看一看cosine similaritytf-idf

餘弦相似性是使用兩個文件(但不僅)之間進行測量相似性的簡單方法,用它不能作爲輸入加權字的矢量TF-IDF。
基本上,如果一個詞在當前文檔中很頻繁(詞頻 - tf),但在其他文檔(逆文檔頻率 - idf)中很少出現,則tf-idf權重更高。

2

This book包含一些提示,更具體地說,這聽起來像一個Collaborative Filtering問題。

有幾種方法可以解決這個問題。一個是標記,依靠讀者和貢獻者標記這些文章,並且您可以將關鍵字與標籤匹配以用於前。

另一種方法可能是結合搜索和分析,即Google方法。您顯示搜索查詢的結果,用戶點擊它們,超時點擊某些搜索查詢的用戶也會點擊相關的搜索查詢,您可以建立它們之間的關係。

0

如果您的案例真的是內容驅動的網站,那麼可能要求編輯爲每篇文章添加標籤是最好的方法。這是它通過網絡完成的方式(例如Wordpress)

此外,可以通過語言處理來完成此任務,但是由於您使用了Python,因此我會將其留給那些是Python專家的人......

0

一個建議是爲所有文章添加標籤。相關文章是標籤相似的文章。

+0

我會考慮這種方法,謝謝! – bodacydo