读《检索匹配:深度学习在搜索、广告、推荐系统中的应用》
2023-5-4|2023-5-4
wuxiaobai24
type
status
date
slug
summary
tags
category
icon
password
检索匹配:深度学习在搜索、广告、推荐系统中的应用
第1章 深度学习时代
使用embedding建立索引时,为了在性能和准召之间进行平衡,有一套独特的检索方法,称作ANN(Approximate Nearest Neighbor)检索。
根据query识别的结果从索引中检索文档,这一步又称之为召回。如果采用结构化表示,一般采用布尔检索;如果采用分布式表示,一般采用ANN检索。
在相关性等指标相似的情况下,权威性越高的网页越要排在前面。
如何衡量一个网页的权威性呢?PageRank算法的诞生正好解决了这个问题。该算法基于一个很朴素的思想:如果一个网页被很多其他的网页链接,那么这个网页是具有权威性的。如
在搜索行为中,用户的需求是明确的,通过Query进行表达,连接是用户主动发起的;而在推荐系统中,用户的需求是不明确的,只能通过用户画像和用户的实时行为进行推测,连接是被动的。
为了大广告主投放的快捷高效并综合使用广告主和平台的数据/技术能力,诞生了DPA(Dynamic Product Ads)和RTA(RealTime API)。
RTA则给了广告主干预平台PV级别决策的权力,广告主可以在一个广告请求上选择要不要触发广告、平台还是广告主预估CTR/CVR、出价多少、触发什么商品等。
内容理解
用户进行理解。
。从特征的实时性来分,特征中台主要包括实时特征和离线特征。
第2章 深度学习简介
另外一个较为理论的解释是:·任何函数:可以用“分段”线性函数来逼近。·激活函数:让线性的神经网络具备了“分段”表达的能力。因此深度神经网络可以拟合任意函数。
第3章 标签拼接
标签拼接是模型上线的第一步,模型的样本一般来自用户的行为日志。
滑动时间窗口是进行标签拼接的简单方法,也是业内主流的方法。
相比于点击率预估模型,转化率预估模型面临两个固有的难题:一是转化的样本非常稀疏,远少于点击样本;二是转化样本存在延迟问题,转化样本有可能在几天之后到来。
目前业内解决延迟反馈的方法可以分为两大类:对延迟时间建模和重要性采样。
延迟反馈模型(DFM)假定了转化时间呈指数分布,并在此基础上提出了两个模型:一个模型关注CVR预测,另一个模型关注转化延迟预测。
重要性采样方法通过能观察到的有转化延迟的有偏分布来拟合无法被观察到的无转化延迟的真实分布。重要性采样的方法包括FNW、FSIW和DEFER等。
第4章 特征处理
特征按照类型来分,包括dense和sparse特征。
评估特征的重要性主要有以下方法。1)将候选特征加入模型训练,观察测试集上AUC、bias、loss等指标是否有提升。2)将候选特征加入模型训练,在测试集中将候选特征清除并重新进行随机设置,观察测试集指标的变化。3)在模型训练时加入SE Block结构,自动学习特征的重要性,如图4-4所示。
第6章 模型训练与预测
双塔模型(DSSM)。
第7章 检索算法理论
业务中往往是将检索算法分成召回、粗排、精排等多个阶段,采用多个相互协同的模型算法,从而进行效果和性能的平衡。
一种方法是将检索算法转化成函数拟合问题,通过数学规划或者是深度神经网络拟合一个函数f,f输入是用户、商品和上下文等特征,输出用户对商品的喜好程度,这种方法可以称之为无表示匹配。
搜索系统注重对Query和Item的理解,而推荐系统注重对用户的理解,其标签体系往往包括用户的性别、年龄、地域、实时位置、商业兴趣等。
TDM(Tree-based Deep Model,基于树的深度匹配模型)
第8章 检索算法演进
协同过滤(Collaborative Filtering)通过分析用户或者事物之间的相似性(“协同”)来预测用户可能感兴趣的内容,并将此内容推荐给用户。
矩阵分解是推荐系统中运用最广泛的协同过滤模型。
强化特征高阶交叉的网络有DeepFM、DeepCross模型等,以模型层面的交叉来替代特征的交叉
ESSM巧妙利用了pCTCVR=pCTR*pCVR这样一种递进关系,通过学习全样本空间的pCTR和pCTCVR来间接地在全空间使用的pCVR
在多任务学习中,往往会出现这样一种现象:通过样本、特征或者模型结构的升级,一个任务指标提升了,其他的任务指标反而下降了,这就是多任务学习中的跷跷板现象。
第三代召回算法为全库召回
可以采用beam search的算法,先计算用户感兴趣的高层类目,再计算用户最感兴趣的单个item,这就是全库召回的思想。
第10章 计算机系统
一致性指“All nodes see the same data at the same time”,即所有节点在同一时间的数据完全一致;可用性指“Reads and writes always succeed”,即服务在正常响应时间内一直可用;分区容错性指“The system continues to operate despite arbitrary message loss or failure of part of the system”,即分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性或可用性的服务。
·AP架构:重点关注可用性和分区容错性。绝大多数的互联网系统都采用了AP架构,分布式机器学习系统也是采用了AP架构。·CA架构:重点关注一致性和可用性。在金融业务中通常会采用CA架构。
第11章 分布式机器学习设计与实现
分布式机器学习的并行方式包括数据并行、模型并行、流水并行。
数据并行是指每个节点使用样本集的一部分对整体模型进行训练
模型并行是指每个节点都使用整体样本对模型的一部分进行训练
模型分布式训练同样可以根据协做方式的不同分为两类:主从式架构(Parameter Server)和对等式架构(All Reduce)。
All Reduce有多种实现方式,目前一种主流的实现方式为Ring All Reduce。在Ring All Reduce架构中,所有的节点按序排列在一个环上(该拓扑结构类似于通信结构中的令牌环网)