type
status
date
slug
summary
tags
category
icon
password
oCPC出价原理
上篇文章讲了 eCPC 的智能出价的原理,本篇文章讲讲 oCPC 的出价原理。oCPC 产品有两个核心:
- 转化目标
- 模型
先来说转化目标,广告确定了转化目标后将会直接影响其出价策略,这块可以参考文章最下方的链接文章建立一个“四点三率两控制一加强”的分析框架有助于后续的理解。在大众的视野里,对转化目标往往有个误解:
展示->点击->转化链路中广告主的转化目标定的越靠前对媒体方越友好。理由是媒体方的曝光流量稳定,这样媒体方的收入也会比较稳定。可理论证明无论转化目标定在链路的哪个位置,对媒体方的收入都是稳定的。因为广告主的转化成本是固定的,所有的转化目标、出价最终都会根据转化成本来折算(转化目标越靠后,转化成本越高)
- 在媒体看来,其实希望广告主的转化目标更靠后,这样能够准确控制转化成本,为后续扩量工作提供统一的成本标准
- 在广告主看来,同样也希望转化目标更靠后,这样就不用人工核算成本与出价,可以把精力放在提高产品或者服务质量上
因此,媒体更希望广告主转化目标定在转化链路靠后的位置,而计费动作定在靠前的位置。这也是近来 oCPM 得以兴起的原因
模型是 oCPC 的核心,oCPC 的模型原理是通过机器学习算法,根据每个流量对每个广告的预估转化率,结合广告主的投放数据,从而实现对点击进行智能出价。可以得出下面的公式:
媒体智能出价 = 广告主目标电话出价 * pcvr
如果模型预测稳定性或准确性不行,就不能很好预测出广告主的转化成本,就无法实现精准出价,很容易出现超成本的情况。也就必须在成本控制上发力,即得出下面公式的 k(矫正因子):
媒体智能出价 = 广告主目标电话出价 * pcvr * k
接着说说成本控制,该部分起效果主要是负责在 oCPC2 阶段,因为此时智能出价是由媒体基于模型预测的 pcvr 给出的,如果模型预测结果不准的话自然无法保证成本符合广告主设定的目标电话成本。既然是媒体负责出价,也就必须为出价折算得到的真实转化成本负责,当真实转化成本低于广告主设定的电话成本将造成媒体资损,当真实转化成本高于广告主设定的电话成本将造成广告主资损要媒体进行赔付。
假设某一个推广广告主的目标转化成本为 given_cpa,媒体方的出价为 ocpc_bid,实际转换成本为 real_cpa。成本控制算法的期望是 given_cpa = real_cpa
- 抽象成控制问题:被控变量为 real_cpa,控制变量为ocpc_bid,被控系统为广告投放系统,控制器算法为 ocpc_bid 计算方法,且 ocpc_bid 和 real_cpa 成正比
- 建立控制模型:期望最小化 real_cpa 和 given_cpa 的差值
minimize |real_cpa - given_cpa|
ocpc_bid = f(given_cpa, ...)
假设成本控制函数 f 是线性的,则有 ocpc_bid = given_cpa * pcvr * k,其中 k 为控制参数
- 引入反馈:反馈给控制系统的是误差信号,误差信号是衡量系统实际输出与期望输出之间差异的一种方式,用于指导控制系统调整其行为,以减少差异并达到期望的输出 a. cpa_delta = given_cpa - real_cpa b. cpa_radio = given_cpa / real_cpa c. cpa_radio_delta = given_cpa / real_cpa - 1
- 计算控制参数 k,然后计算 ocpc_bid。下面来分析控制算法,但是有三个前提
a. 控制变量和被控变量成正比
b. 模型的 pcvr 和实际 cvr 偏差稳定
c. 成本控制函数 f 是线性的
基于模型控制算法:逆系统控制
上面说了成本控制函数 ocpc_bid = f(given_cpa) = given_cpa * pcvr * k ,当控制参数 k 准确的话可以实现 given_cpa = real_cpa。下面根据基础广告指标进行推导:
charge 消耗、cv 转化数、click 点击数、cvr 真实转化率、acp 平均点击消费、acb 平均点击出价、jfb 平均点击消费与平均点击出价之比、pcvr 预测转化率、pcoc 预测转化率与真实转化率之比
- cpa = charge / cv
- cpa = (charge / click) * (click / cv)
- cpa = acp / cvr
- cpa = acb * jfb / (pcvr / pcoc)
- 根据上一步可获取 acb 对 real_cpa 的反函数:acb = given_cpa * pcvr / jfb / pcoc。也就是说当 acb = given_cpa * pcvr / jfb / pcoc 时满足 given_cpa = real_cpa
当 jfb 和 pcoc 稳定时,则
ocpc_bid = given_cpa * pcvr / jfb / pcoc
结合上面的成本控制函数,可得
k = 1 / ( jfb * pcoc )
此时可保证 given_cpa = real_cpa。但是如上文所说,逆系统控制算法也是有前提的,满足这些前提会快速响应给定转化成本变化,适合给定转换成本频繁变化的系统;但该算法的缺点是不会考虑系统过去的成本情况而造成平台损失