在Rails中获取类似文章列表的最佳方法是什么

时间:2015-11-30 10:19:00

标签: ruby-on-rails ruby

我正在开发一个Rails应用程序,在那里我可以使用标签创建大量帖子。我知道我可以使用标签生成帖子列表,但我想根据帖子的标题获得类似的帖子列表。 例如,

我有3个帖子,比如
你好加德满都,你 你好世界,
你好,你好吗

所以,如果我导航到Hello Kathmandu帖子,我想将上述3个帖子作为类似帖子,因为它有Hello关键字常见。

我在我的应用中使用弹性搜索来处理搜索请求。我尝试将页面标题传递给弹性搜索并从那里获得响应,但我的应用程序生成错误。

我试过了,

<%
    require 'net/http'
    uri = URI('http://localhost:3000/search.html?q=rails')
    req = Net::HTTP.get(uri) 
    %>
<%= req %>

我认为这是错误的方法。我试图在谷歌中找到相关主题。
请分享您的想法。

1 个答案:

答案 0 :(得分:0)

我建议你使用矢量空间模型来匹配文本之间的相似性。它将帮助您根据最接近的匹配对这些文本进行排名。有关更多信息,请查看此链接。

https://en.wikipedia.org/wiki/Vector_space_model

我也找到了这个gem,它可以将它集成到你的Rails应用程序中。

https://github.com/jpmckinney/tf-idf-similarity

我也发现了这个演示文稿,它会让你清楚地知道它是如何工作的!它被Lucene / Solr等文本搜索引擎使用。

http://www.slideshare.net/dalal404/document-similarity-with-vector-space-model

希望这有帮助! :)