1 在线广告相关问题
在评价广告时,必须要考虑如下几个因素:
- 广告在列表中的位置将对它是否被点击有很大的影响;
- 广告的吸引力可能取决于查询词项;
- 在较精确地估计出点击率之前,所有的广告都应该有展示的机会。
2 在线和离线区别
能不能看到全部的数据
- 离线算法:将算法所需要的所有数据准备好,然后,算法以任意次序访问数据,最后,算法输出结果。这类算法称为“离线" (off-line) 算法。
- 在线算法:只能保存有限的流数据,必须在对未来一无所知时对当前每个元素进行决策。这类算法称为在线算法,这类算法中通常会包括一个称为"贪心法" (greedy)
竞争率:一个具体的在线算法的结果至少是最优离线算法结果的c倍。常数c如果存在的话,将被称为在线算法的竞争率。
- 普通贪心匹配算法的竞争率不会大于 1/2
3 Adword 问题定义
问题会给定下列信息。
(1) 众多广告商为搜索查询设定的投标价格集合;
(2) 每个广告商-查询对所对应的点击率;
(3) 每个广告商的预算。我们假定预算的周期为一个月,当然实际中任意时间单位都有可能使用;
(4) 每个搜索查询所显示的广告数目上限。
算法结果满足:
(1) 该集合的大小不会超过上述每条查询所显示的广告数目的上限;
(2) 该集合中的每个广告商都对本条搜索查询出价;
(3) 每个广告商必须剩余足够的预算来为广告的点击付费。
3.1 Adword 贪心例题
贪心的收益我们直接推导,没有一个固定的流程。离线算法的收益我们也可以直接看出来,不能用公式或者流程证明。
3.2 Balance 算法
Balance 在贪心的基础上,优先把查询分配给预算更多的广告商,这样获得的收益会更多。
- Balance 算法的竞争率不会低于 3/4
- 当广告商很多时,Balance 算法的竞争率可能会低于 3/4,但也不会低太多。