在线广告搜索推荐系统中,检索引擎通常包括:
请求解析->用户特征获取->广告召回和截断->粗排->精排->广告返回
等这么一些步骤,其中我们都知道,广告召回是关键步骤,同时,怎么精准预测广告曝光后的效果也是重中之重,并且在这整个过程中,耗时又是不得不考虑的事情,耗时过长,可能ADX就不会等待你的返回了。因此,怎么样既能保证我们需要的广告不被过滤,同时尽可能缩短队列,减小在线预估的计算量,就是重中之重了,因此,本文来跟大家聊一聊广告实时推荐和检索过程中的【粗排】与【精排】。
一、粗排
广告检索过程的粗排是广告链路中的关键环节,主要目标是从数万量级的广告中初步筛选出几百量级的广告,以便进行后续的精排处理。粗排的实现主要依赖于一系列的策略和模型。
首先,粗排会使用大量的策略,包括多样性策略、相关性策略、冷启动策略以及探索策略。这些策略的目的是确保在初步筛选过程中,能够充分考虑到广告的多个维度,从而选出最有可能满足用户需求的广告。
其次,粗排还会使用多种模型来进行预测和排序。其中,LiteCXR模型是粗排环节最重要的模型之一。LiteCXR模型可以提供LiteCTR(预估点击率)和LiteCVR(预估转化率)的乘积,即粗排阶段的ECPM(每千次展示收益),用于广告的筛选。这种模型结构一般采用经典的双塔结构,其中user-embedding采用实时计算的方式,而ad-embedding则通过缓存推送到prerank模块。
此外,粗排还会考虑到广告主分级、离线CTR(点击通过率)、离线CVR(转化率)等数据,以及广告元数据等信息,以生成排序因子进行排序。这些因素都会被综合考虑,以确保粗排结果的准确性和有效性。
比较常见的方案是,检索服务会对不同广告位进行配置,当分片召回的结果超过阈值N1,则利用ctr * bid_price 进行排序截断(第一次截断),进入粗排,计算pctr & ecpm,截断选择N2个传给上游,并保存pctr(第二次截断),然后先将这些广告进行排序截断(使用粗排结果pctr),然后根据配置的截断数选择前 N3 个,再继续进行之后的流程。
二、精排
精排的话,一般是由预先跑好的算法模型对粗排结果进行直接的打分。
精排是确保最相关且质量最高的广告能够展示给用户的关键环节。精排的实现涉及多个复杂步骤和算法。
首先,精排算法会收集大量的数据,包括用户的行为数据、广告的特征数据、历史点击率、转化率等。这些数据是进行精准排序的基础。
其次,精排算法会使用各种机器学习模型,如深度学习模型,对收集到的数据进行处理和分析。这些模型能够学习并识别出用户兴趣和广告特征之间的复杂关系。
在排序过程中,精排算法会综合考虑多个因素,如广告的相关性、点击率、转化率、广告主出价等。通过给这些因素赋予不同的权重,并基于一定的算法进行加权求和,得到每个广告的最终得分。
为了提高排序的准确性和效率,精排算法还会采用一些优化技术,如特征工程、模型融合等。特征工程可以帮助算法更好地捕捉用户兴趣和广告特征之间的关联,而模型融合则可以将多个模型的预测结果进行整合,提高排序的稳定性。
此外,精排算法还会根据实时反馈进行动态调整。例如,当用户点击或跳过某个广告时,系统会根据这些反馈实时更新广告的得分,并调整后续广告的排序。
最后,精排会根据模型,实时计算出传入广告的CTR、CVR、ECPM(最为重要)等指标,并根据这些指标进行最终的排序和截断,传给上游服务
三、关于粗排、精排中ecpm预估的区别
粗排和精排阶段的ECPM计算,尽管都围绕着广告收入与展示次数展开,但在具体的计算细节和考虑因素上确有所不同。以下是更具体的解释:
粗排阶段的ECPM计算:
在粗排阶段,由于需要处理大量的广告数据,计算通常较为简化,以便快速筛选出候选广告。ECPM的计算可能主要基于广告的基本特征、出价以及用户的一些基础属性。
- 基础特征:这包括广告的类型、行业、关键词等,这些因素可能影响广告的展示机会和潜在收益。
- 出价:广告主愿意为每次点击或展示支付的金额,是ECPM计算中的重要因素。
- 用户基础属性:如年龄、性别、地理位置等,用于初步判断广告与用户的相关性。
粗排阶段的ECPM计算可能是一个相对简单的数学公式,结合了上述因素,用于初步评估广告的潜在价值。
精排阶段的ECPM计算:
精排阶段的ECPM计算则更为复杂和精细,需要综合考虑更多的因素。
- 预估点击率(PCTR):基于广告的历史数据、用户兴趣、广告内容等因素,预测广告被点击的可能性。
- 预估转化率(PCVR):预测用户点击广告后完成预期行为(如购买、注册等)的概率。
- 出价:与粗排阶段相同,是广告主愿意为广告支付的费用。
- 其他特征:这可能包括广告的创意质量、页面加载速度、用户与广告的历史互动等。
精排阶段的ECPM计算通常采用更复杂的数学模型和算法,结合上述因素进行精确计算。这些模型和算法能够更准确地评估广告的潜在收益,从而确保最优质、最符合用户需求的广告能够获得更高的展示优先级。
需要注意的是,不同的广告平台和系统可能采用不同的ECPM计算公式和算法,以适应不同的业务场景和需求。因此,具体的计算方式可能因平台而异。
总的来说,粗排和精排阶段的ECPM计算都是为了从大量广告中筛选出最具潜力和价值的广告进行展示,但精排阶段的计算更为复杂和精细,以确保最终的展示结果能够最大化满足用户和广告主的需求。