本文原作者:彭江军,经授权后发布。
导语:
模型是机器学习三问里面的怎么去学的环节。是确定特征与因变量之间关系最为核心的步骤。这部分涉及到模型的选择,和优化目标以及损失函数的选取。排序由第一节讲到,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散度也会得到一个权重的重要性数值。
系列文章:
【技术分享】一:搜索排序—概述
https://cloud.tencent.com/developer/article/1523867
【技术分析】二:搜索排序—工业流程
https://cloud.tencent.com/developer/article/1525595
【技术分享】三:搜索排序—机器学习化建模
https://cloud.tencent.com/developer/article/1527336
【技术分享】四:搜索排序—数据的采集与构造
https://cloud.tencent.com/developer/article/1528253
【技术分享】五:搜索排序-特征分析
https://cloud.tencent.com/developer/article/1531448
【技术分析】六:搜索排序—指标介绍与选择
https://cloud.tencent.com/developer/article/1532635