搜索、推荐场景中的技术栈分析--LTR,pointwise, ctr究竟是什么

搜索、推荐场景中的技术栈分析-- LTR,pointwise, ctr究竟是什么

背景

在搜索和推荐场景中,我们经常遇到一些名词,LTR(learning to rank)、CTR预估模型、GBDT模型等,很容易引起概念混乱,这里尝试对这些概念做一个概述。

名词解释

LTR:learning to rank,即学习排序,是指当多个商品需要展示时,如何对商品顺序进行调整的方式。在推荐和搜索场景中,当多个商品被召回后,都需要使用LTR技术对商品进行排序。LTR的实现方式分为三种:pointwise、pairwise和listwise。这三种方式都是技术框架,通过修改损失函数来实现,并不限定使用的模型是什么,例如pairwise可以通过xgb实现,也可以通过神经网络来实现。
CTR预估模型:是一种二分类模型,就是给定一个商品,输出这个商品可能被用户点击的概率,当我们知道这个概率之后,其实就可以按照概率高低对商品进行排序了,因此CTR预估属于LTR技术中的一种,具体来说属于LTR中的pointwise技术。
GBDT模型:是一种以树模型为基分类器的加法模型。GBDT模型的创新点在于:用损失函数的负梯度在当前模型的值作为回归提升树算法中残差的近似值,拟合一个回归树。这就解决了一些损失函数残差不便于计算的问题。

三者的层级关系可以表示为:
概念层级划分

定义一个模型f,一个损失函数L,就可以对模型中的参数进行提度下降。
pointwise、pairwise、listwise改变的是损失函数L,并不关心模型是什么,gbdt或者神经网络都可以。
因此搜索场景中模型的升级,既可以是pointwise中GBDT到FM的优化,也可以是pointwise到pairwise的升级优化。

CTR模型:

模型优缺点
LR优点:简单、易于并行化实现、可解释性强。缺点:特征相互独立,不能组合特征;不能处理目标与特征之间的非线形关系。其他:LR一般会将连续性特征划分为多个区间,如等频划分或者等间距划分,特征离散化能够把线性函数变成分段线性函数,引入了非线形结构,而且对于数据中的噪声有更好的鲁棒性(异常值落在同一区间)
GBDT+LRGBDT是用来解决LR模型的特征组合问题。通常将一些连续型特征、值空间不大的类别型特征都丢给GBDT模型,空间很大的ID特征留在LR模型中训练。LR易于处理大规模稀疏数据1。GBDT优势在于处理连续性特征,由于树的分裂算法,具有一定的特征组合的能力。但同时,GBDT的特征组合能力有限,远不能与DNN相比。
FM/FFMGBDT对于高度稀疏数据的特征组合学习效率很低,而且不能学习到训练数据中很少或者没有出现的特征组合。但是FM可以通过隐向量的内积提取特征组合,对于很少或者没出现的特征组合也可以学习到。LR不能自动处理交叉特征的问题,而FM有处理特征二次交叉的能力。
GBDT+(LR,FM,FFM)GBDT适合处理连续值特征,而LR,FM,FFM更加适合处理离散化特征。将连续型特征和值空间不大的特征给GBDT,其他高维度稀疏特征和GBDT的叶子节点一并给LR/FM/FFM进行处理。
MLR混合逻辑回归LR的推广,采用分而治之的策略:如果分类空间本身是非线形的,按照合适的方法将空间分为多区域,每个区域用线形的方式进行拟合,最后MLR的输出就变成了多个子区域预测值的加权平均。
DNN模型表达能力强,能够学习出高阶非线形特征;容易扩充其他类别的特征,如特征是图片或文字类时。
DeepFMDeepFM是为了解决DNN的不足而推出的一种并行结构模型
DIN

备注:
1.在工业界中,往往是根据业务场景做统计类特征使用gbdt模型快速拿到收益,然后考虑加入海量离散类特征(比如个性化因素等),使用LR/FM模型进一步提升效果,原有的统计类特征通过gbdt处理之后转成叶子节点加入到LR/FM中。


  1. 为什么LR比GBDT更适合处理高维稀疏特征?
    1)性能上,高维特征会导致gbdt运行过于耗时。
    2)因为高维情况下,数据在特征空间中分布的很稀疏,gbdt容易拟合某个稀疏特征和label的偶然关系,拟合到噪声,也就是在特征空间上进行分块划分,容易分的很稀疏;而线性模型是在特征空间上找一个超平面进行划分,前者更容易过拟合。
    3)树的分割往往只考虑了少量的特征,大部分特征都用不到,因此容易抛弃一些“小而美”的内部关系。
    GBDT是对历史的一个记忆罢了,没有推广性,而LR有较强的扩展性。 ↩︎

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值