机器学习和生物信息学实验室联盟

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4377|回复: 2
打印 上一主题 下一主题

Ranking SVM

[复制链接]
跳转到指定楼层
楼主
发表于 2013-9-14 15:57:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hllysx 于 2013-9-14 15:57 编辑

Ranking SVM是一种Pairwise的排序算法, 给定查询q, 文档d1>d2>d3(亦即文档d1比文档d2相关, 文档d2比文档d3相关, x1, x2, x3分别是d1, d2, d3的特征)。为了使用机器学习的方法进行排序,我们将排序转化为一个分类问题。我们定义新的训练样本, 令x1-x2, x1-x3, x2-x3为正样本,令x2-x1, x3-x1, x3-x2为负样本, 然后训练一个二分类器(支持向量机)来对这些新的训练样本进行分类。
H. Joachims的主页上有Ranking SVM的开源实现,可执行文件以及相应的论文,有兴趣的可以前去研究下哈。
一,输入文件: 数据的格式与LIBSVM的输入格式比较相似, 第一列代表文档的相关性, 值越大代表越相关, 第二列代表查询, 后面的代表特征
# query 1
3 qid:1 1:1 2:1 3:0 4:0.2 5:0
2 qid:1 1:0 2:0 3:1 4:0.1 5:1
1 qid:1 1:0 2:1 3:0 4:0.4 5:0
1 qid:1 1:0 2:0 3:1 4:0.3 5:0
# query 2
1 qid:2 1:0 2:0 3:1 4:0.2 5:0
2 qid:2 1:1 2:0 3:1 4:0.4 5:0
1 qid:2 1:0 2:0 3:1 4:0.1 5:0
1 qid:2 1:0 2:0 3:1 4:0.2 5:0
# query 3
2 qid:3 1:0 2:0 3:1 4:0.1 5:1
3 qid:3 1:1 2:1 3:0 4:0.3 5:0
4 qid:3 1:1 2:0 3:0 4:0.4 5:1
1 qid:3 1:0 2:1 3:1 4:0.5 5:0

(rankingsvm会处理数据将数据转变为样本对格式,如下(1.jpg):)
二, 训练模型和对测试数据进行排序的代码分别为:
  ./svm_rank_learn path/to/train path/to/model
./svm_classify path/to/test path/to/model path/to/rank_result

推荐大家看一看下面两位大牛的论文:刘铁岩、李航等,参考的主要几篇文章如下:
1: Adapting Ranking SVM to Document Retrieval. (Liu Tie Yan. et al. MSRA)
2: Learning to rank for Information Retrieval– tutorial. (Liu Tie Yan. et al. MSRA)
2: Learning to rank: From Pairwise Approach to Listwise Approace. (Liu Tie Yan. et al. MSRA)

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享
回复

使用道具 举报

沙发
发表于 2013-9-14 22:29:04 | 只看该作者
开源软件网址的链接?在什么系统下运行?用什么语言写的?有无什么注意事项?
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2013-9-16 19:02:32 | 只看该作者

H. Joachims的网站:http://www.cs.cornell.edu/people/tj/svm_light/svm_rank.html
网站上提供有源代码和可执行文件:xp,linux均支持哈,代码是c语言写的
上面提供有测试样本,可不用修改直接执行。
回复 支持 反对

使用道具 举报

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

本版积分规则

机器学习和生物信息学实验室联盟  

GMT+8, 2024-11-2 08:31 , Processed in 0.073640 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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