在网上看到关于排序学习的早期文章,这两篇文章大致都使用了Random Forest和Boosting方法。

一.paper

1.Web-Search Ranking with Initialized Gradient Boosted Regression Trees,2011

主要将Random Forests(RF)和Gradient Boosted Regression Trees(GBRT)做了一个sequence的combine.他们用RF得到了非常不错的效果,甚至比GBRT还要好。他们最后所用的方法是先用RF学习一个ranking function, 用这个ranking function的输出去初始化GBRT,做一个sequence 的combine, combine的结果要比他们单独的结果都要好。他们最后分析也认为,分类能比回归得到更好的效果,这个结论和[7]相同,很值得尝试。从他们的结果看,RF和GBRT的combine还是很有意义的,RF的一些优点在最后的model中都有体现,比如对parameter choice不敏感,不容易过拟合等。RF和GBRT的combine也解决了一个GBRT的缺点,因为GBRT是一个gradient boosting的方法,这一类方法存在一个trade-off, 就是step size和迭代轮数之间。如果要达到真正的global minimum, step size就必须很小,迭代轮数就必须增大,通过与RF的combine,对这个问题有所缓解,RF给了GBRT一个接近终点的start point, 这样即使step size比较小,也能比较快的结束迭代。

(1).rf

(2).gbrt

(3).使用rf初始化gbrt

2.Generalized BROOF-L2R: A General Framework for Learning to Rank Based on Boosting and Random Forests,2016

这篇文章的作者来自巴西的University Federal of Minas Gerais。文章的核心思想非常直观,就是要把Boosting和Random Forest(RF)结合起来做Learning to Rank。有这样想法的人过去也有不少,已经有了很多类似思路。这篇文章的思路是使用RF来做Weak Learner,然后用Boosting的想法把这些Weak Learner串起来。

当然,文章不是仅仅限于这么一个简单的思路,而是提出了一个叫BROOF的框架,很多算法的变种都可以在这个框架里实现。比如Weak Learner的Weight如何确定,是否选择使用Validation Set等,有兴趣的读者可以去看看文章的细节。

文章比较了提出的框架和很多知名算法的性能,比如AdaRank、LambdaRank、RankSVM等等。选用的数据集是LETOR 2003、2004和Yahoo Learning to Rank数据集。结果还是比较引人注目的,基本上在所有的数据集上,提出的算法性能不是最好,就是和最好的算法持平。

这篇文章的另外一个亮点是Related Work,对于Boosting或者RF在Learning to Rank里的应用有兴趣的读者,建议好好看看Related Work里的文献。

---------------------
原文:http://www.cnblogs.com/zjgtan/p/3652689.html
原文:https://blog.csdn.net/heyc861221/article/details/80127850

两篇将rf和boosting方法用在搜索排序上的paper的更多相关文章

  1. 以Random Forests和AdaBoost为例介绍下bagging和boosting方法

    我们学过决策树.朴素贝叶斯.SVM.K近邻等分类器算法,他们各有优缺点:自然的,我们可以将这些分类器组合起来成为一个性能更好的分类器,这种组合结果被称为 集成方法 (ensemble method)或 ...

  2. javamail模拟邮箱功能发送电子邮件-中级实战篇【新增附件发送方法】(javamail API电子邮件实例)

    引言: JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html 此篇是紧随上篇文章而封装出来的,阅读本 ...

  3. 《转载-两篇很好的文章整合》Android中自定义控件

    两篇很好的文章,有相互借鉴的地方,整合到一起收藏 分别转载自:http://blog.csdn.net/xu_fu/article/details/7829721 http://www.cnblogs ...

  4. 网易云安全两篇论文入选计算机视觉顶级会议ICCV

    本文由  网易云发布. 10月22日至29日,全球计算机视觉顶尖专家们共聚威尼斯,参加ICCV2017国际计算机视觉大会,就领域内最新成果展开集中研讨,大会论文集也代表了计算机视觉领域最新的发展方向和 ...

  5. 两篇文章带你走入.NET Core 世界:CentOS+Kestrel+Ngnix 虚拟机先走一遍(一)

    背景: 上一篇:ASP.Net Core on Linux (CentOS7)共享第三方依赖库部署 已经交待了背景,这篇就省下背景了. 折腾的过程分两步: 第一步是:本机跑虚拟机部署试一下: 第二步是 ...

  6. javamail模拟邮箱功能获取邮件内容-中级实战篇【内容|附件下载方法】(javamail API电子邮件实例)

    引言: JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html 此篇是紧随上篇文章而封装出来的,阅读本 ...

  7. 小白两篇博客熟练操作MySQL 之 第一篇

    小白两篇博客熟悉操作MySQL  之   第一篇 一.概述 1. 什么是数据库? 答: 储存数据的仓库, 如: 在ATM的事例中创建的一个db 目录, 称为数据库 2. 什么是Mysql, Oracl ...

  8. 两篇论文之CNN中正交操作

    CNN的权值正交性和特征正交性,在一定程度上是和特征表达的差异性存在一定联系的. 下面两篇论文,一篇是在训练中对权值添加正交正则提高训练稳定性,一篇是对特征添加正交性的损失抑制过拟合. 第一篇:Ort ...

  9. 【进阶之路】Redis基础知识两篇就满足(二)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

随机推荐

  1. hashMap,hashTable,TreeMap,concurrentHashMap区别

    hashMap: 基于哈希表实现 treeMap: 基于二叉树实现,适用于排序 hashTable: 底层还是HashMap,在方法上加了同步 concurrentHashMap: java7底层通过 ...

  2. tomcat 虚拟目录 连接池

  3. C#面向对象11 里氏转换

    里氏转换 1.子类可以赋值给父类. using System; using System.Collections.Generic; using System.Linq; using System.Te ...

  4. 搭建自己的框架WedeNet(五)

    WedeNet2018.WedeWcfServices-WCF服务层:结构如下: 就是定义了服务契约接口和服务类,以OrderServices为例,如下: using System; using Sy ...

  5. 三主机配置 keepalived VIP高可用

    三台主机: 192.168.33.134 192.168.33.136 192.168.33.137   实验前: 关闭selinux 和iptables     1). 192.168.33.134 ...

  6. VS调试 启动vs报错--未启动IIS

    VS调试 启动程序报错——未启动IIS Express Web服务 解决办法: 1.关闭VS. 2.删出项目文件下的".vs"文件. 3.重新启动解决方案. 4.编译,运行OK. ...

  7. openlayers 地图移动缩放动画

    map.getView().animate({ // 只设置需要的属性即可 center: [data.jd, data.wd], // 中心点 zoom: 11, // 级别 rotation: u ...

  8. 巧用Map缓存提升"翻译"速度

    在业务编码中,很多情况都需要用到code2Name或者id2Name之间的"翻译",在我的过往经历中发现不少开发人员都是直接双重循环实现这种"翻译".如果一次& ...

  9. shell脚本视频学习1

     一.知识点:变量,参数传递 练习1:使用shell脚本,输出当前所在的目录 练习2:计算/etc目录下有多少个文件,用shell脚本实现 ls -l--->数一下, ls -l|wc -l ( ...

  10. 链接进入react二级路由,引发的子组件二次挂载

    这个问题很怪,我两个二级路由从链接进入的时候,会挂载两次子组件. 从链接进入,是因为新页面在新标签页打开的. 有子组件是因为公共组件提取 同样的操作,有一些简单的二级路由页面,就不会挂载两次. 讲道理 ...