推荐系统笔记6-排序算法&深度学习模型(一)

本文深入讨论CTR问题,从定义到实践,涵盖LR与FM的特征组合特性,以及在广告和推荐系统的应用。重点介绍了DNN在CTR预估中的作用,如DSSM、DSSM-CNN和Deep Crossing模型,强调了特征组合和上下文信息的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章接着该文章后面继续介绍,主要介绍的是CTR的问题;
在介绍以前,总结一下之前腾讯面试的一个问题:LR能不能组合出没出现的特征?FM能不能组合出没出现的特征?
解答: LR不能组合出未出现的特征,而FM是可以组合出未出现的特征的,考虑如下数据集:
在这里插入图片描述
其中Poly2参数可以看作LR的特征组合,对于测试集来说,训练集是没有NBC和Adidas的组合特征的,因此LR就无法通过特征组合来学习到参数 W N B C , A d i d a s W_{NBC,Adidas} WNBC,Adidas,但是FM可以,首先通过(NBC,Nike)学习到NBC的隐藏向量,然后通过(EPSN,Adidas)学习到Adidas的隐藏向量,然后做dot便可以得到测试集的评分。这样反映了FM模型在稀疏情况下能提高模型的泛化能力,也就是说,只要和NBC有关的都可以用来学习NBC,很大程度上避免了数据稀疏性的影响。下面回到正题:

一、CTR问题的定义

首先介绍一些基础概念:

  • Item、User、Ad (主要在广告中应用)
  • 曝光、浏览、展现、PV (也就是展现次数)
  • 点击量、点击率、CTR
  • 转化率、CVR
  • GMV、RPM( R P M = 点 的 次 数 ∗ 广 告 主 的 出 价 RPM=点的次数*广告主的出价 RPM=广, GMV衡量电商网站成交能力,卖家的GMV可以看作是卖了多少钱, G M V = c t r ∗ c v r ∗ p r i c e GMV=ctr* cvr*price GMV=ctrcvrprice

对于CTR预估,其数据集特征一般包含User Feature、Item Feature、Label(click,buy)等,具体可参考(天池CTR数据集定义)。一般将CTR定义为一个二分类问题{0,1},且损失函数一般是Logloss和AUC。关于二分类模型可参考(该文章)。

二、关于CTR问题的实践

2.1: 推荐2个网站,是百度做CTR的介绍:机器学习在百度凤巢中的应用百度凤巢:DNN在凤巢CTR预估中的应用

  • 最开始使用线性模型+大规模特征,靠特征提升模型,但逐年变难;
  • 替换为DNN后出现了线下线上不一致的情形,因为线下使用的只有展现出来的点击日志,而未点击的占绝大多数,且这是模型的关键;为什么LR没有出现这个问题,因为LR变化小(删减特征),且参与迭代;
  • 数据优化:加入Position Bias,因为点击行为差别很大,但是在深层网络中不可行(因为位置参数权重被稀释了),所以提出如下两个思想:在这里插入图片描述
  • 使用LR特征:历史统计可以被看作是单特征LR,如下图所示(下面的特征组可看作不同的特征群:统计特征+时序特征等):在这里插入图片描述

2.2、DNN的兴起,如NLP领域的Word2Vec,Embed&MLP萌芽,DNN正式在搜索、推荐领域实用化。
这里以搜索+Deep Rank为例,简要介绍微软的三个模型: MS - DSSM、MS - DSSM CNN、MS - Deep Crossing
2.2.1、MS-DSSM(Deep Structured Semantic Models): 其典型结构如图所示
在这里插入图片描述
DSSM的任务是map a query to its relevant documents at the semantic level where
keyword-based
,这里有几个注意点(可参考该博文):

  • 传统的计算方式基于LSA,PLSA,LDA(unsupervised),因为是无监督的,所以中间会引入误差 ,DSSM直接采用统一的有监督训练,不需要做无监督映射;
  • 在输入层的时候,比如词语letter,那么会进行WordHash,这样子可以减少复杂度,上述letter可切分为(let,ett,tte,ter),一般选择3个为一组,然后可以大幅度降低输入数据维度;
  • 中间层通过DNN :来学习非线性变换;
  • 输出层先计算Query和Doc的余弦相似度,然后通过softmax 函数把Query 与正样本 Doc 的语义相似性转化为一个后验概率,然后用反向传播算法更新参数;
  • 最终的性能表现可通过NDCG指标衡量;
  • DSSM缺点: DSSM 采用词袋模型(BOW),因此丧失了语序信息和上下文信息。另一方面,DSSM 采用弱监督、端到端的模型,预测结果不可控。

2.2.1、MS-DSSM-CNN: 只要解决的问题是DSSM存在的丢失语序信息的问题,如下图
在这里插入图片描述
采用word-n-gram的方式考量上下文信息,比如(online auto body),并且通过上面的WordHashing方法,将每一个词降维到30k维,然后拼接起来组成90K维,然后利用CNN处理文本的思路,来进行卷积-池化操作,如下图所示;
在这里插入图片描述
具体的CNN做文本卷积我就不介绍了,网上资料很多,最后通过全连接层将矩阵维度变为128维,然后后面做的方式是计算余弦相似度和Softmax处理,同DSSM;

  • 优点:CNN-DSSM 通过卷积层提取了滑动窗口下的上下文信息,又通过池化层提取了全局的上下文信息,上下文信息得到较为有效的保留。
  • 缺点:对于句子较长且上下文信息间隔较远时,举个例子,I grew up in France… I speak fluent French,显然 France 和 French 是具有上下文依赖关系的,但是由于 CNN-DSSM 滑动窗口(卷积核)大小和N-gram限制,导致无法捕获该上下文信息,这也导致了RNN的应用产生;

2.3 Deep Crossing: Web-Scale Modeling without Manually Crafted Combinatorial Features
Deep Crossing(Paper链接)是针对CTR预估问题而产生的,其初衷是因为特征组合是非常有必要的,但是人工找到好的组合特征非常耗时耗力,所以这个模型是用来自动组合特征(DNN可自动的学习出特征交互作用),并且通过ResNet构建更深的网络,其典型结构如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值