【技术分享】七:搜索排序—排序模型

本文原作者:彭江军,经授权后发布。

原文链接:https://cloud.tencent.com/developer/article/1533656

导语:

模型是机器学习三问里面的怎么去学的环节。是确定特征与因变量之间关系最为核心的步骤。这部分涉及到模型的选择,和优化目标以及损失函数的选取。排序由第一节讲到,LTR有三个模式,分别是pointwise, pairwise,listwise。在这里主要描述一下采用的模型Lightgbm模型。在后面我们将看到选择什么样的决策函数(优化目标)就会带来什么的效果。最后基于对于整个数据业务和模型的理解,实现了在listwise的模型下CTR和转化率各0.6的提升;在pointwise的模型下,实现转化率3个点的提升

1:Lightgbm简介

关于Lightgbm和Xgboost,两者的关系可以认为Lightgbm是Xgboost的一个轻量版,训练过程更快,对内存的消耗更小。这里贴上1篇博文,方便大家查找,细致的了解其预测的原理。

https://blog.csdn.net/meyh0x5vDTk48P2/article/details/79876825

简短概括来说,其实现的主要的模型是GBDT,是基于树模型的集成学习模型。GBDT的算法流程可以参加下面的链接,https://zhuanlan.zhihu.com/p/29765582,里面包含一些公式的推导,不想了解其推导公式可以不用点击去。因为下面我会用简短的语言和图像来描述算法的思想。

GDBT依赖于树模型。

树模型我们可以简单将其它看成许多IF-THEN规则的集合,如下图所示:可以根据样本特征的分裂将该样本预测成众多叶子节点中的一个值。

GBDT在树模型的基础上,基于预测的残差做了多轮的迭代。简单来说就是,在第一颗CART预测的基础上,对第一题预测的误差在去第2棵树中进行预测,如此重复。直到达到停止条件,于是GBDT的预测就是N个棵树预测的结果的加和。

2:项目实践

项目的背景和建模可以看第三节:搜索排序——机器学习化建模

在部分,将展示基于三种不同的优化目标下的结果。

当我们选定纯点击为优化问题的,我们的优化目标就唯一确定为以用户的点击为优化目标,此时选择为二分类的lightgbm 模型。二分类的pointwise的模型,记为click_point_model。

当我们选定纯长点击为优化问题的,我们的优化目标就唯一确定为以用户的长点击为优化目标(长点击可以理解为用户点击并观看的时长满足到一定的条件),此时选择二分类的lightgbm 模型。二分类的pointwise的模型,记为longclick_point_model。

当我们选定同时优化点击和长点击的时候,我们将label 设置为0-3个类别。Label的设置参照下表:

采用lightgbm 模型下的lambdamart,记为listwise_model。这里之所以没有采用多分类,有两个原因,1:类别的分别实际是很不均匀的。2: 想比准确的预测每个label而言,我们更关注他们之间的顺序关系。基于此,最后选了listwise的model.

Label的分布如下图所示:

 

在多个指标中,挑选出最有代表性的几个指标,最终的结果整理展示如下所示:

其中的长转化率1是经过一些处理后的值,主要是为了对标腾讯视频的竞品的数值,参照竞品的设计来设计的。具体会是哪个竞品了,不说。

配上几张趋势图:

分桶的CTR趋势图

分桶的长转化趋势图:

由此可见,选择好自己想要优化的目标,确定决策函数一件非常重要的事情,它决定了模型优化学习的方向。

另外利用Lightgbm还可以得到特征的重要性分布,如下图反映了长点击的训练得到的树模型权重重要性分布:

我们这里实际上做的是一个精排的工作,里面用到比较多的feature实际上已经做过一些处理,不是最原始的特征了,比如说pctr这个维度的特征的得到,就是基于一个有上亿级别的特征的DNN网络得到(很多稀疏的embedding 特征),在此就不做展开了。

这个图反应在集成学习的树模型之中各个特征的重要性程度。特征的重要性分析记得在前面的特征分析那一节里面讲过,选择不同的类别,基于信息熵得到JS散度也会得到一个权重的重要性数值。

系列文章:

【技术分享】一:搜索排序—概述

【技术分享】二:搜索排序—工业流程

【技术分享】三:搜索排序—机器学习化建模

【技术分享】四:搜索排序—数据的采集与构造

【技术分享】五:搜索排序-特征分析

【技术分享】六:搜索排序—指标介绍与选择

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值