找回密码
 FreeOZ用户注册
查看: 2647|回复: 7
打印 上一主题 下一主题

[论坛技术] 如何实现论坛的相关文章搜索功能?

[复制链接]
跳转到指定楼层
1#
发表于 13-9-2008 01:29:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
答案是TF/IDF(term frequency/inverse document frequency) 算法,这个也是Google确定网页和查询相关性的所采用的算法。

参考:


1.
Google的TF/IDF算法简介
http://www.googlechinablog.com/2006/06/blog-post_27.html



2.
Javaeye网站的论坛用TF/IDF实现了相关文章推荐功能
http://www.javaeye.com/post/440835

http://robbin.javaeye.com/blog/197526


3.
lucence的TF/IDF算法实现:
http://lucene.apache.org/java/1_9_1/api/org/apache/lucene/search/similar/MoreLikeThis.html
回复  

使用道具 举报

2#
 楼主| 发表于 13-9-2008 01:32:11 | 只看该作者
谁能用这个算法帮大家实现个discuz!论坛的相关文章推荐功能啊,这可是很有趣,很有挑战性哦!
回复  

使用道具 举报

3#
发表于 18-9-2008 16:52:52 | 只看该作者
discuz作者有公司 目前都没搞定
牛人如果搞好了 可以开公司了。
中国多少个disucz 社区阿.
回复  

使用道具 举报

4#
发表于 9-10-2008 19:27:33 | 只看该作者
我来顶下,其实
http://www.googlechinablog.com/2006/06/blog-post_27.html

Google的TF/IDF算法不难的,关键是中文有特殊性(字词)。英文只有词加少量短语。所以比如搜索"澳大利亚",如果一个一个字的断就完了。两个两个断也不行,只有四个字一起才有意义,但是搜索"澳大利亚法律"又不能一起搜,要把断成"澳大利亚"和“法律"。至于怎么断呵呵商业机密吧。英文没这个问题“australian law",两个词很清楚。

评分

参与人数 1威望 +30 收起 理由
coredump + 30 谢谢分享!

查看全部评分

回复  

使用道具 举报

5#
发表于 9-10-2008 19:39:17 | 只看该作者
提示: 作者被禁止或删除, 无法发言
http://zzk.cnblogs.com/default.aspx

博客园的找找看使用了Lucene.NET引擎,那里也有一些讨论分词的信息,他们还在完善找找看。

http://space.cnblogs.com/group/zzk/

@子曰
你好,首先感谢你对ZZK的支持。
我们现在的分词方式很粗糙,在分词操作中使用了三个词库,算法是正向最大匹配,整个分词操作中没有使用词频、词性、语义等信息。
新的分词方式正在设计中,其效果应该会更好。
回复  

使用道具 举报

6#
发表于 9-10-2008 21:52:12 | 只看该作者



光这个分词就够做一个PHD论文了. 如果要做论坛的相关文章搜索功能,最好用两拨人,一拨做PAGE RANKING, 另一拨专门做中文的SEMENTIC分词.  
回复  

使用道具 举报

7#
 楼主| 发表于 10-10-2008 12:15:05 | 只看该作者
大家讨论的很有趣啊,看来牛人不少,有没有主动请缨的?
回复  

使用道具 举报

8#
发表于 10-10-2008 12:27:31 | 只看该作者

回复 #7 coredump 的帖子

提示: 作者被禁止或删除, 无法发言
我是冒牌的,看其他人吧。
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 3-11-2024 06:42 , Processed in 0.042073 second(s), 25 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表