作家
登录

机器学习排序LTR入门——线性模型

作者: 来源: 2017-10-24 16:08:45 阅读 我要评论

沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散!


机械进修排序LTR入门——线性模型

很多搜刮达人都有如许一种冲动,想要“经由过程机械进修获得最优权重”然后用于搜刮萌芽中。对于搜刮这件事儿来说有点像打地鼠游戏,正如平日人们所说的“如不雅我能选择优化‘标题匹配’的权重照样‘内容匹配’的权重,那我肯定会做得更好”!

这种进修何种权重应用于萌芽的本能,就是最简化机械进修排序(learning to rank,LTR)模型的根来源基本理:线性模型。没错,就是传说中的线性回归!线性回归异常简单易用,甚至感到一点儿都不像是机械进修;更像是高中生的统计学一样,懂得该模型及其道理也异常地轻易。

本系列文┞仿中,我想先介绍成功实施LTR背后的关键算法,大年夜线性回归开端,慢慢到梯度 boosting(不合种类的boosting算法一路)、RankSVM和随机丛林等算法。

LTR起首是一个回归问题

举个例子:你须要什么样的数据才能猜测一家公司的利润?可能会有棘手边的汗青公共财务数据,包含雇员数量、股票价格、收益及现金流等。假设已知某些公司的数据,你的模型经由练习后用于猜测这些变量(或其子集)的函数即利润。对于一家新公司,你可以应用这个函数来猜测该公司的利润。

  1. titleScore,overviewScore,movieRating,comment 
  2. 12.28,9.82,6.40,# 7555  rambo@Rambo 
  3. 0.00,10.76,7.10,# 1368  rambo@First Blood 

LTR同样是一个回归问题。你手头上有一系列评价数据,来衡量一?文档与某个萌芽的相干度等级。我们的相干度等级取值大年夜A到F,更常见的情况是取值大年夜0(完全不相干)到4(异常相干)。如不雅我们锾戾酌一个关键词搜刮的萌芽,如下示例:

  1. grade,movie,keywordquery 
  2. 4,Rocky,rocky 
  3. 0,Turner and Hootch,rocky 
  4. 3,Rocky II,rocky 
  5. 1,Rambo,rocky 
  6. ... 

当构建一个模型来猜测作为一个时光旌旗灯号排序函数的等级时,LTR就成为一个回归问题。 相干度搜刮中的┞焚回,即我们所说的旌旗灯号,表示萌芽和文档间关系的随便率性度量;更通用的名称叫做特点,但我小我更建议叫经久旌旗灯号。原因之一是,旌旗灯号是典范的自力于萌芽的——即该结不雅是经由过程度量某个关键词(或萌芽的某个部分)与文档的相干程度;某些是度量它们的关系。是以我们可以惹人其他旌旗灯号,包含萌芽特有的或者文档特有的,比如一篇文┞仿的揭橥日期,或者一些大年夜萌芽采掏出的实体(如“公司名称”)。

来看看膳绫擎的片子示例。你可能困惑有2个依附萌芽的旌旗灯号能赞助猜测相干度:

  • 一个搜刮症礁绞糈标题属性中出现过若干次
  • 一个搜刮症礁绞糈摘要属性中出现过若干次

扩大膳绫擎的评价,可能会获得如下CSV文件所示的回归练习集,把具体的旌旗灯号值映射为等级:

  1. grade,numTitleMatches,numOverviewMatches 
  2. 4,1,1 
  3. 0,0,0 
  4. 3,0,3 
  5. 1,0,1 

对于本系列的文┞仿,正如你在前一篇及文档中懂得到的,我想把LTR映射为一个加倍通用的问题:回归。回归问题须要练习一个模型,大年夜而把一组数值特点映射到一个猜测数值。

你可以像线性回归一样应用回归流程,大年夜而经由过程其他列来猜测第一列。也可以在已有的搜刮引擎像Solr或Elasticsearch之上来构建如许一个体系。

我躲避了一个复杂问题,那就是:若何获得这些评价?若何知道一个文档对一个萌芽来说是好照样坏?懂得用户分析?专家人工分析?这平日是最难解决的——并且是跟特定范畴异常相干的!提出假设数据来建立模型固然挺好的,但纯属做无用功!

线性回归LTR

如不雅钠揭捉?过一些统计学,可能已经很熟悉线性回归了。线性回归把回归问题定义为一个简单的线性函数。比如,在LTR中我们把上文的第一旌旗灯号(一个搜刮症礁绞糈标题属性中出现过若干次)叫做t,第二旌旗灯号(一个搜刮症礁绞糈摘要属性中出现过若干次)叫做o,我们的

我们能评估出最佳拟合系数c0,c1,c2等,并应用最小二乘拟合的办法来猜测我们的练习数据。这里就不赘述了,重点是我们能找到c0,c1,c2等来最小化实际等级g与猜测值s(t,o)之间的误差。如不雅复习下线性代数,会发明这就像简单的矩阵数学。

模型能生成一个函数s,像下面如许对相干度来打分:

应用线性回归你会更知足,包含决定计划确切是又一个排序旌旗灯号,我们定义为t*o。或者另一个旌旗灯号t2,实践一一般定义为t^2或者log(t),或者其他你认为有利于相干度猜测的最佳公式。接下来只须要把这些值作为额外的列,用于线性回归进修系数。

任何模型的设计、测试和评估是一个更深的艺术,如不雅欲望懂得更多,强烈推荐统计进修概论。


  推荐阅读

  有关机器学习每个人都应该了解的东西

沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散! 本文科普了机械进修方面的常识,简单介绍了机械进修可以做什么,以及若何做的。以下是译文。在以前的几个月>>>详细阅读


本文标题:机器学习排序LTR入门——线性模型

地址:http://www.17bianji.com/lsqh/38146.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)