搜索算法和推荐算法、广告算法的区别

广告和推荐算法的技术框架比较相似,在线计算时都分为召回(candidates generating)和排序(candidates ranking)两个阶段(这似乎是计算资源有限条件下,所有检索问题的通用架构)。

在某角度上可以把推荐系统理解成计算广告的一部分。不考虑品牌广告等其他广告形式,在我看来,计算广告和推荐系统的联系在于业务上的融合和技术上的重合。

搜推广要解决的问题区别:

回到根本问题上来,三个方向解决的问题本身是不一样的

广告:一个公司要搭建广告系统,它的商业目的非常直接,就是要解决公司的收入问题。所以广告算法的目标就是为了直接增加公司收入。

推荐:推荐算法虽然本质上也是为了增加公司收入,但其直接目标是为了增加用户的参与度。只有用户的参与度高了,才能让广告系统有更多的inventory,进而增加公司营收。

搜索:搜索要解决的关键问题全部是围绕着用户输入的搜索词展开的。虽然现在搜索越来越强调个性化的结果,但是一定要清楚的是,推荐算法强调的个性化永远只是搜索算法的补充。“围绕着搜索词的信息高效获取问题“才是搜索算法想解决的根本问题。

正是因为三者间要解决的根本问题是不同的,带来了三者算法层面的第一个区别,那就是优化目标的区别。

一、搜推广优化的目标区别

广告:广告算法的预估目标非常统一,就是预估CTR和CVR。这是跟当前效果类广告的产品形态密切相关的。因为CPC和CPA计价仍是效果类广告系统的主流计价方式。所以只有预估出CTR和CVR,才能反向推导出流量的价值,并进一步给出合理的出价。所以针对这样的目标,广告算法非常看重把预估偏差当作首要的评价指标。

因为广告的主要收入就是,在将商家的roi平衡的前提下,增加公司广告收入的优化目标,而广告收入是来源于商家的广告出价的,因此,提高预估的CTR和CVR,根据出价模式排列分布更合理的PV,才能为公司带来更多的收入。广告更关注估的更准,才能分散更准的流量。

推荐:推荐算法的预估目标就不尽相同,视频类更多倾向于预测观看时长,新闻类预测CTR,电商类预估客单价等等这些跟用户参与度最相关的业务指标。而且由于推荐系统的推荐场景是生成一个列表,所以更加关注item间的相对位置,因此评估阶段更倾向于用AUC,gAUC,MAP这些指标作为评价标准。

推荐更关注于用户的参与度,即如何抓住用户的兴趣,因此个性化比较重要。推荐更关注排的更好,提升用户兴趣。

搜索:搜索的预估目标又有所不同,因为相比广告和推荐,搜索某种意义上说是存在着“正确答案”的。所以搜索非常看重能否把这些正确答案给召回回来(广告和推荐也关注召回率,但重要性完全不同)。所以搜索系统往往会针对召回率,MAP,NDCG这些指标进行优化。

二、算法模型设计中的区别

广告:由于广告算法要预测“精准”的CTR和CVR,用于后续计算精确的出价,因此数值上的“精准”就是至关重要的要求,仅仅预估广告间的相对位置是无法满足要求的。这就催生了广告算法中对calibration方法的严苛要求,就算模型训练的过程中存在偏差,比如使用了负采样、weighted sampling等方式改变了数据原始分布,也要根据正确的后验概率在各个维度上矫正模型输出。此外,因为广告是很少以列表的形式连续呈现的,要对每一条广告的CTR,CVR都估的准,广告算法大都是point wise的训练方式。

推荐:推荐算法的结果往往以列表的形式呈现,因此不用估的那么准,而是要更多照顾一个列表整体上,甚至一段时间内的内容多样性上对于用户的“吸引力”,让用户的参与度更高。因此现在很多头部公司在算法设计时,不仅要考虑当前推荐的item的吸引力,甚至会有一些list level,page level的算法去衡量整体的效果进行优化。也正因为这一点,推荐算法有大量不同的训练方式,除了point-wise,还有pair-wise,list-wise等等。此外为了增加用户的长期参与度,还对推荐内容的多样性,新鲜度有更高的要求,这就让探索与利用,强化学习等一些列方法在推荐场景下更受重视。

搜索:对于搜索算法,我们还是要再次强调搜索词的关键性,以及对搜索词的理解。正因为这样,搜索词与其他特征组成的交叉特征,组合特征,以及模型中的交叉部分是异常重要的。对于一些特定场景,比如搜索引擎,我们一定程度上要抑制个性化的需求,更多把质量和权威性放在更重要的位置。

三、搜推广辅助策略上的区别

广告系统中,CTR等算法只是其中关键的一步,估的准CTR只是一个前提,如何让广告系统盈利,产生更多收入,还需要pacing,bidding,budget control,ads allocation等多个同样重要的模块协同作用,才能让平台利益最大化,这显然是比推荐系统复杂的。

推荐系统中,由于需要更多照顾用户的长期兴趣,需要一些补充策略做出一些看似“非最优”的选择,比如探索性的尝试一些长尾内容,在生成整个推荐列表时要加入多样性的约束,等等。这一点上,广告系统也需要,但远没有推荐系统的重视程度高。

搜索系统中,大量辅助算法还是要聚焦在对搜索词和内容的理解上。因此搜索系统往往是应用NLP模型最重的地方,因为需要对大量内容进行预处理,embedding化,进而生成更理解用户语义的结果。比如最典型的例子就是airbnb对搜索词embedding化后,输入滑雪skiing,会返回更多滑雪胜地的地点,而不是仅仅是字面上的匹配。

四、模型本身的选择上

在广告模型中,用户的兴趣是不那么连贯的,因此容易造成sequential model的失效,attention机制可能会更加重要一些。

推荐模型中,如果不抓住用户兴趣的连续变化,是很难做好推荐模型的,因此利用sequential model来模拟用户兴趣变化往往是有收益的。

搜索模型中,搜索词和item之间天然是一个双塔结构,因此在模型构建的时候各种交叉特征,模型中的各种交叉结构往往是搜索类模型的重点。当然,在构建良好的交叉特征之后,使用传统的LTR,GBDT等模型也往往能够取得不错的结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/310629.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

行人重识别(ReID)基础知识入门

这里写目录标题 1、ReID技术概述1.1 基本原理1.2 实现流程1.3 重识别存在的技术挑战 2、训练数据格式介绍 1、ReID技术概述 1.1 基本原理 ReID,全称Re-identification,目的是利用各种智能算法在图像数据库中找到与要搜索的目标相似的对象。ReID是图像检…

【数据结构】栈和队列(栈的基本操作和基础知识)

🌈个人主页:秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343🔥 系列专栏:《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 目录 前言 栈 栈的概念和结构 栈的实现 ​…

nodejs+vue+ElementUi摄影预约服务网站系统91f0v

本系统提供给管理员对首页,个人中心,用户管理,员工管理,摄影套餐管理,套餐系列管理,客片欣赏管理,摄影预约管理,摄影订单管理,取片通知管理,摄影评价管理&…

写个定时任务也这么多BUG?

作者简介:大家好,我是码哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 学习必须往深处挖&#xf…

初识SpringBoot(2023最后一篇文章)

初识SpringBoot 1、SpringBoot概述 Spring是什么? Spring是一个于2003 年兴起的一个轻量级开源Java开发框架,由Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》。Spring是为了解决企业级应用开发的复杂性而创建的,使…

软件工程期末复习习题

知识点总结 第一章:软件工程概述 1、软件的定义:在运行中能提供所希望的功能与性能的程序使程序能够正确运行的数据及其结构描述软件研制过程和方法所用的文档。 2、软件危机:软件开发的生产率远远不能满足客观需要。开发的软件产品往往不能…

学习动态规划解决不同路径、最小路径和、打家劫舍、打家劫舍iii

学习动态规划|不同路径、最小路径和、打家劫舍、打家劫舍iii 62 不同路径 动态规划,dp[i][j]表示从左上角到(i,j)的路径数量dp[i][j] dp[i-1][j] dp[i][j-1] import java.util.Arrays;/*** 路径数量* 动态规划,dp[i][j]表示从左上角到(i,j)的路径数量…

迅软科技助力高科技防泄密:从华为事件中汲取经验教训

近期,涉及华为芯片技术被窃一事引起广泛关注。据报道,华为海思的两个高管张某、刘某离职后成立尊湃通讯,然后以支付高薪、股权支付等方式,诱导多名海思研发人员跳槽其公司,并指使这些人员在离职前通过摘抄、截屏等方式…

车牌识别系统设计与实现

车牌识别系统设计与实现 项目概述 本项目旨在设计和实现一套车牌识别系统,通过使用车牌字符数据集进行训练,应用OpenCV、CNN(卷积神经网络)和PyQt5技术,实现车牌图像的预处理、位置选定、定位、字符分割和最终的车牌…

【Matlab】CNN卷积神经网络时序预测算法

资源下载: https://download.csdn.net/download/vvoennvv/88681558 一,概述 CNN(Convolutional Neural Network,卷积神经网络)是一种前馈神经网络,主要用于处理具有类似网格结构的数据,例如图像…

24、Web攻防——通用漏洞SQL注入MYSQL跨库ACCESS偏移

文章目录 一、SQL注入原理   脚本代码在与数据库进行数据通讯时(从数据库取出相关数据进行页面显示),使用预定义的SQL查询语句进行数据查询。能通过参数传递自定义值来实现SQL语句的控制,执行恶意的查询操作,例如查询…

大模型推理部署:LLM 七种推理服务框架总结

自从ChatGPT发布以来,国内外的开源大模型如雨后春笋般成长,但是对于很多企业和个人从头训练预训练模型不太现实,即使微调开源大模型也捉襟见肘,那么直接部署这些开源大模型服务于企业业务将会有很大的前景。 本文将介绍七中主流的…