目录
一、论文背景介绍
我们今天讲的论文属于框架中的排序层。
1. CRT预估
- CTR预估(对每次广告的点击情况做出预测:点击还是不点击)可以广泛应用于个性化推荐、信息检索、在线广告等领域,是互联网广告中最核心的算法之一,预估的准确性与否直接直接影响公司的广告收入。
- CTR预估中的常用模型是LR(逻辑回归),但该线性模型的学习能力有限,需要通过大量特征工程预先分析出有效的特征、特征交叉,从而去间接增强LR的非线性学习能力。
问题:如何自动发现有效的特征和特征交叉?弥补人工经验的不足?避免大量人工特征工作?
解决: 1. FM:二阶特征自动交叉,局限性是自动交叉的阶数有限。
2. GBDT:进行特征交叉选择
2. 推荐模型的特点
在推荐系统中,模型在训练学习中具有一下特点:
- 包含大量的离散特征,如人口属性,设备分类,用户分类兴趣等。
- 包含大量高维度的稀疏特征。
- 特征交叉或组合对预测效果非常关键。
对于一个基于CTR (点击率) 预估的推荐系统,最重要的是学习到用户点击行为背后隐含的特征交叉。在不同的推荐场景中,低阶特征交叉或者高阶特征交叉可能都会对最终的CTR产生影响。
特征交叉:根据用户信息或物品信息的本身特征或交互作为特征,再通过一系列操作得到的特征称之为特征交叉。(FM的点积就是特征交叉)
google一系列文章认为:高阶的特征交叉(泛化)和低阶的特征交叉(记忆)都非常重要,同时学习到这两种交叉特征的性能要比只考虑其中一种性能好。
Eg. 大雁:翅膀(特点1) >> 飞(特点2);
鹦鹉:翅膀(特点1) >> 飞(特点2);;
企鹅:翅膀(特点1) >> 不会飞(特点2);
问题:如何高效地提取(高阶)交叉特征?
解决: DNN。
并提出了许多方法:LR, FM, NFM, Wide & Deep 等。
二、本篇文章
1. 引言
- 推荐系统可以被看成一个搜索排序系统,其中输入的query是一个用户和上下文的集合,输出是一个物品列表。推荐认为就是在候选库中找到相关的物品,并且基于目标(点击概率)对物品进行排序。
- 推荐系统与搜索排序系统相同挑战是:满足记忆和泛化两个要求。
记忆:学习物品和特征间的共现率,并利用这种关系发掘历史数据中存在的共现性-----------低阶交叉特征
基于记忆的推荐系统:偏向学习历史数据的样本,推荐用户直接相关的物品–>获得推荐结果的准确性
推荐的内容都是精准内容,用户兴趣收敛,无新鲜感,不利于长久的用户留存;
泛化:基于迁移相关性,探索之前几乎没有出现过的新特征组合。----------高阶交叉特征
基于泛化的推荐系统:偏向推荐长尾物品–>提升推荐结果的多样性
推荐内容过于泛化,用户的精准兴趣无法得到满足,用户流失风险很大。
2. 内容
提出了Wide & Deep Learning 模型框架:考虑到了低阶交叉特征和高阶交叉特征都重要,构建了一个低阶交叉特征和高阶交叉特征组合的模型,旨在结合记忆和泛化的优点。
- 低阶特征可通过特征变换(特征交叉)来记忆特征是有效且可解释的,但泛化需要更多的特征工程工作,即需要学习到更高阶的特征交叉
- 利用较少的特征工程,深度神经网络可以通过稀疏特征学习到的低维稠密向量生成更好的未知特征的组合,但是可能会过拟合导致推荐一些并不太相关的东西,需要低阶特征去约束。
3. 贡献
- 提出了通用于具有稀疏输入的推荐系统的wide&deep框架(同时训练带有嵌入的前馈神经网络和带有特征变换的线形模型)。
- 在Google Play上实施的Wide&Deep推荐系统的实施和评估,Google Play是一个拥有超过10亿活跃用户和超过100万个应用的移动应用商店。
- 开源了基于Tensorflow1的高级API的实现。
虽然这个想法很简单,但是实践表明wide&deep框架显著提高了移动app score 的app下载率,同时满足了训练和服务的速度要求。
三、Model
思想来源:
根据人脑有不断记忆并且泛化的过程,这里将宽线性模型(Wide Model,用于记忆)和深度神经网络模型(Deep Model,用于泛化)相结合,汲取各自优势形成了Wide & Deep模型,以用于推荐排序。
1. Wide 模型
记忆(Memorization)主要是学习特征的共性/相关性,根据已有用户对物品的行为产生相关物品。我们通过 Wide 模型来学习记忆。
Wide 模型是一个广义线性模型:
y = w T x + b y=\boldsymbol{w}^T\boldsymbol{x}+b y=w