搜广推校招面经三十

虾皮推荐

一、收益是由什么带来的,出价提升是否会导致ROI降低(第一段实习是广告算法,竞价出价)

1.1. 收益的来源

(1)转化量

  • 转化量是直接带来收益的核心指标,例如购买次数、注册用户数、下载量等。
  • 转化量通常与流量(曝光)、点击率(CTR)、转化率(CVR)等因素相关。

(2)转化价值

  • 每次转化的价值(如单笔订单金额、用户生命周期价值 LTV)也直接影响收益。
  • 如果转化价值较高,即使转化量较低,也可能带来较高的收益。

(3)成本控制

  • 成本(如广告花费、运营成本)越低,在相同收益的情况下,ROI 会更高。成本控制是优化 ROI 的关键。

(4)市场环境

  • 市场需求、竞争态势、季节性因素等外部环境也会对收益产生重要影响。

1.2. 出价提升对ROI的影响

ROI = 收益(Revenue) − 成本(Cost) 成本(Cost) × 100 % \text{ROI} = \frac{\text{收益(Revenue)} - \text{成本(Cost)}}{\text{成本(Cost)}} \times 100\% ROI=成本(Cost收益(Revenue成本(Cost×100%
出价提升对ROI的影响,取决于以下几个因素:

(1)流量获取能力

  • 出价提升通常会增加广告的竞争力,从而获得更多流量(曝光和点击)。如果新增流量能够带来足够的转化,可能会提高收益。
  • 但如果新增流量的质量较差(例如点击率低、转化率低),则可能导致成本上升而收益增长有限,从而拉低 ROI。

(2)边际效益递减

  • 在某些情况下,随着出价的提升,新增流量的转化率可能逐渐下降(边际效益递减)。
  • 这是因为高意向用户的流量往往已经被较低出价获取,剩下的流量质量可能较低。

(3)目标人群匹配

  • 如果出价提升后,广告触达了更多与目标人群不匹配的用户,可能会导致转化率下降,进而降低 ROI。

(4)竞争对手行为

  • 如果竞争对手也提升了出价,市场竞争加剧,可能导致每次点击成本(CPC)或每次转化成本(CPA)上升,而转化量增长有限,最终拉低 ROI。

2.3. 总结

  • 收益来源:转化量、转化价值、成本控制和市场环境共同决定了收益。
  • 出价提升的影响:出价提升可能会增加流量,但也可能导致成本上升或转化质量下降,最终影响 ROI。

因此,出价提升是否会导致 ROI 降低并没有固定的答案,需要根据具体业务场景进行分析和调整。

二、 loss是list-wise还是point-wise(单点预估的话,是不是模板里面广告位多的list,loss就更大)

2.1. Pointwise Loss vs. Listwise Loss

(1)Pointwise Loss

  • Pointwise 方法将排序问题视为回归或分类问题。每个样本独立预测一个分数,损失函数通常基于单个样本的预测值与真实标签之间的误差(如 MSE 或 Cross-Entropy)。
  • 优点:简单易实现,适合初步实验。
  • 缺点:忽略了样本之间的相对关系,无法直接优化排序质量指标(如 NDCG、MAP)。

(2)Listwise Loss

  • Listwise 方法直接针对整个列表进行建模,优化目标是生成合理的全局排序。损失函数通常基于整个列表的排序质量指标(如 NDCG、MRR 或自定义的分布匹配损失)。
  • 优点:最接近实际排序任务的需求,能够直接优化排序质量。
  • 缺点:实现复杂度较高,计算成本较大。

2.2. 广告位多时,Loss 是否更大?

(1)Pointwise Loss

  • 在单点预估中,广告位增多可能导致以下问题:
    • 每个广告位的点击率预测误差累积,导致整体损失变大。
    • 广告位之间的竞争效应和位置偏差未被显式建模,进一步加剧了误差。
  • 因此,在广告位较多的情况下,Pointwise Loss 很可能更大。

(2)Listwise Loss

  • 在 Listwise 方法中,广告位增多的影响会有所不同:
    • 如果模型能够很好地捕捉广告位之间的相对关系和位置效应,则整体损失不会显著增加。
    • 然而,如果广告位数量过多且数据稀疏(例如,某些广告位的点击数据不足),模型可能难以准确建模复杂的交互关系,导致损失增大。

2.3. 总结

特性 Pointwise Loss Listwise Loss
建模对象 单个广告位的点击率/转化率 整个广告列表的排序质量
广告位多的影响 损失可能更大(忽略交互关系和位置效应) 损失可能更稳定(考虑全局排序质量)
适用场景 初步实验或简单任务 需要优化全局排序质量的任务
  • 单点预估(Pointwise):广告位多时,由于忽略了广告位之间的交互关系和位置效应,损失可能更大。
  • 全局排序(Listwise):广告位多时,通过建模广告位之间的相对关系,损失可能更稳定,但需要更多计算资源。

因此,在广告位较多的情况下,使用 Listwise Loss 通常更为合适,因为它能够更好地捕捉广告位之间的交互关系和位置效应,从而提高排序质量并降低整体损失。

三、广告推荐链路的常见模型和评价指标

1. 广告推荐链路的常见模型

(1)CTR 预估模型

  • 目标:预测用户点击广告的概率(Click-Through Rate, CTR)。
  • 常用模型
    • LR(Logistic Regression):线性模型,适合简单场景。
    • FM(Factorization Machine):捕捉特征之间的二阶交互关系。
    • DeepFM / Wide & Deep:结合深度学习和传统模型,提升非线性建模能力。
    • DIN(Deep Interest Network):引入用户兴趣建模,适用于个性化推荐。
    • DIEN(Deep Interest Evolution Network):进一步建模用户兴趣的动态演化。

(2)CVR 预估模型

  • 目标:预测用户点击后发生转化的概率(Conversion Rate, CVR)。
  • 常用模型
    • LR / FM:基础模型,用于简单的转化率预测。
    • Deep & Cross Network (DCN):通过交叉网络层增强特征交互。
    • ESMM(Entire Space Multi-Task Model):多任务学习框架,同时优化 CTR 和 CVR。

(3)排序模型

  • 目标:根据用户偏好对广告进行全局排序。
  • 常用模型
    • Pointwise 排序模型:基于单点预估(如 LR、FM)。
    • Pairwise 排序模型:关注样本对的相对顺序(如 RankNet)。
    • Listwise 排序模型:直接优化整个列表的排序质量(如 LambdaMART、ListNet)。

(4)召回模型

  • 目标:从海量广告中筛选出与用户相关的候选广告。
  • 常用模型
    • 协同过滤:基于用户或物品的相似性进行召回。
    • Embedding 基模型:如 Word2Vec、Item2Vec。
    • 双塔模型(Two-Tower Model):分别对用户和广告进行向量化表示,计算相似度。
    • 图神经网络(GNN):利用用户-广告交互图结构进行召回。

(5)冷启动模型

  • 目标:解决新用户或新广告的冷启动问题。
  • 常用方法
    • 内容特征建模:利用广告或用户的文本、图片等信息。
    • 迁移学习:将已有知识迁移到冷启动场景。
    • 多任务学习:结合其他任务的知识辅助冷启动。

3.2. 广告推荐链路的评价指标

(1)CTR 预估相关指标

  • AUC(Area Under Curve):衡量模型区分正负样本的能力。
  • LogLoss(对数损失):衡量预测概率与真实标签之间的差距。
  • Precision@K / Recall@K:在前 K 个推荐结果中,正确预测的比例。
  • F1-Score:综合考虑 Precision 和 Recall 的平衡指标。

(2)CVR 预估相关指标

  • AUC:评估模型对转化事件的区分能力。
  • LogLoss:衡量转化概率预测的准确性。
  • GMROI(Gross Margin Return on Investment):评估每单位广告成本带来的收益。

(3)排序效果相关指标

  • NDCG(Normalized Discounted Cumulative Gain):衡量排序结果的相关性。
  • MAP(Mean Average Precision):评估平均精确率。
  • MRR(Mean Reciprocal Rank):衡量首个相关广告的排名位置。
  • P@K(Precision at K):前 K 个推荐结果中相关广告的比例。

(4)业务指标

  • CTR(Click-Through Rate):点击率 = 点击量 / 曝光量。
  • CVR(Conversion Rate):转化率 = 转化量 / 点击量。
  • ROI(Return on Investment):投资回报率 = 收益 / 成本。
  • eCPM(Effective Cost Per Mille):千次展示收入 = 收益 / 曝光量 * 1000。

3.3. 总结

阶段 常见模型 评价指标
CTR 预估 LR、FM、DeepFM、DIN、DIEN AUC、LogLoss、Precision@K、Recall@K、F1-Score
CVR 预估 LR、FM、DCN、ESMM AUC、LogLoss、GMROI
排序 Pointwise、Pairwise、Listwise 模型 NDCG、MAP、MRR、P@K
召回 协同过滤、Embedding、双塔模型、GNN Recall@K、覆盖率
冷启动 内容特征建模、迁移学习、多任务学习 AUC、LogLoss、覆盖率

在实际应用中,模型选择和指标设计需要结合具体的业务场景和目标,确保既能提升系统性能,又能满足用户体验和商业价值的要求。

四、验证二叉搜索树(hot100_二叉树_中等)

搜广推校招面经三十_第1张图片
思路:这道题前中后序遍历都可以实现

class Solution:
    def isValidBST(self, root: Optional[TreeNode], left=-inf, right=inf) -> bool:
        if root is None:
            return True
        x = root.val
        return left < x < right and \
               self.isValidBST(root.left, left, x) and \
               self.isValidBST(root.right, x, right)

你可能感兴趣的:(搜广推面经,网络,leetcode,贪心算法,python,搜索引擎,推荐算法)