初识计算广告
第一部分 认识商业化体系
免费倾销+后向变现
互联网三项可变现核心资产
知名协会:iab、4A、ANA
直观认识在线广告:目的与形式
品牌触达(Brand Awareness):提升长时期内的转化率和利润
直接效果(Direct Response):有短期内明确用户转换行为诉求
投入产出比 Return on Investment ROI
偏直接效果性广告形式:条幅广告(Banner) 、文字广告(Textual)、邮件营销(Email Direct Marketing,EDM)
偏品牌触达性广告形式:视频广告(video)、富媒体广告(rich-media)、开屏广告
移动广告普通形式:条幅、开屏、推荐墙、信息流广告
激励性广告:为了刷榜、游戏显得有人气
泛广告商业产品:团购、网址导航、游戏联运(腾讯)
计算广告的核心问题:给定用户和环境,找到最合适的广告投放策略以优化整体广告活动的利润。
先画漏斗、分成多个步骤、找到各阶段转化率、多维护分析报表找问题
eCPM = effective cost per mile 千次展示可获得的收入
如何标识一个用户?
web用cookie、ios app用IDFA、android app用android id、除此之外用FingerPrint(IP + User Agent 都存在于http头中)
6大算法问题:
用户过程:
结算方式:CPT(按时间结算)、CPM(千次展示结算)、CPC(按点击率、最主流)、CPS
离线:hadoop 在线:storm、spark
广告系统特点:高并发低延迟(同时关注QPS和Latency)、数据处理的规模很大(用户、环境、广告三元建模)、数据处理速度优先于精度、主流程一致性要求不高
广告系统设计原则:弱一致性、避免集中读写、不存在关系型数据库、利用开源社区成熟技术
排序算法是核心业务逻辑不能开源!大公司往往排序和检索一起做了!
第二部分 相关知识
最优化、信息检索、机器学习
1、最优化 Optimization
推荐两本书 《凸优化》、《数值优化》
第一类:无约束最优化问题 minf(x) f为标量、x为矢量
一般思路
目标函数不可/不易求导:下降单纯形法(Ameoba变形虫法)
目标函数易求导:梯度下降(找到最快下降方向,走一步),可采用批处理模式(实际过程中用的很少,因为有zigzag问题)或串行模式(随机梯度下降法,SGD)
第二类:带约束最优化问题 minf(x) s.t. g(x)中的每一个都小于等于0 或 h(x) = 0(g表示关于x的一组函数、x为矢量)
拉格朗日法:利用拉格朗日对偶函数变原问题为对偶问题
2、信息检索 Information Retrieval
词袋(Bag of Words)表示:用关键词TFIDF组成的矢量来表示文档
TF(Term Frequency):某文档中该词出现的次数
IDF(Inverse Document Frequency):词权重
用余弦距离衡量两个文档的相似度
用户检索谷歌、跳槽->求倒排链->求交得到D1、D3->两句话变成词袋->与query算余弦距离
O(1)、因为求倒排链的过程之前做了
3、统计机器学习 Statistical Machine Learning
贝叶斯学习、指数族分布(map/reduce)
4、深度学习 Deep Learning
全连接多层感知机(MLP)、线性+非线性(sigmod等)迭代最后用反向传播求解
深度学习跟大数据紧密联系
卷积神经网络CNN:采用层(n*n*4)、卷积层、采用层、全连接MLP。核心:参数、卷积核共享
递归神经网络RNN:解的时候问题很多、优化过程麻烦、其中常用的有LSTM
生成对抗网络GAN:可能work无监督学习
深度学习优化基础设施:GPU方案、并行计算方法(Google)、开源框架Tensorflow等(可以一定程度上忽略硬件)
第三部分 合约广告
广告位与展示量合约
CPT合约:典型场景有开屏广告、高曝光广告位、导航网站等
展示量合约与担保式投送:采用千次展示付费CPM方式结算、典型场景有视频广告、富媒体广告
如何高效混合静态与动态广告?
高并发的广告系统:在线投放引擎
nginx:轻量级Web服务器、与FastCGI(C语言)一起使用
Zookeeper:解决分布式应用中的一些数据管理问题(Paxos算法)、集群管理(出现宕机迅速重新分配流量、Watch机制)
频次控制:一个用户看了多次之后效果就不好了
flume:高可用的、高可靠的、分布式的海量日志采集、聚合和传输的系统
redis:KV存储系统、value可支持string、list等、批量写且高并发的实时读取、多种语言API
广告监播和广告安全:确保广告是否出现在了页面上、是否对品牌不利(比如优衣库不想让广告出现在钓鱼岛页面上)
第四部分 竞价广告
类似市场经济、谁出价高谁展示
A个广告要放到S个位置上去,当某一个广告主提高或者降低价格,其收入都不会有明显变化,就称为达到了纳什均衡状态。
第二高价:比如1个位置多个广告主争夺,第一名出价5,第二名出价3,那么需要按3元对第一名收取广告投放费用才能达到纳什均衡。
最赚钱的广告产品:搜索广告(按eCPM排序)
北区东区统一竞价、属于同一个竞价序列、一般有底色
北区保证与搜索词的强相关性、东区可以出现弱相关性广告
搜索广告决策过程:查询扩展(增加query)、在广告库中检索(触发)、排序(根据eCPM)、放置(北区放几个东区放几个 )、定价(北区和东区底价不同)
谷歌FB百度等不是实时竞价产品!
查询扩展主要模式
查询扩展主要方式:基于推荐方法(利用搜索日志数据)、基于主题模型的方法(利用一般文档数据)、基于历史效果的方法(利用广告本身的历史eCPM数据)
Google推出的关键词竞价广告产品AdWords 关键突破 1、按eCPM排序 2、引入了GSP
淘宝直通车:淘宝专门服务于卖家的广告产品,按CPC售卖,按照eCPM排名
剩余流量变现产品:竞价广告网络
与搜索广告相比只有2个区别,其一是需要页面标签和用户标签作触发,其二是不需要广告放置。
Facebook audience network:移动应用首选的变现方式,对无FB账号用户不出广告
与搜索技术的不同:广告检索技术
lucene
开源的全文检索引擎
含index(离线或在线建倒排索引)和retrieval(给query返回结果)模块
简单易用API实现大量文档检索
实现了布尔检索(根据size加速 )、模糊查询等
不支持相关性检索
市场发展方向是语义检索
广告检索和搜索不同的在于超长的query和大文档集,只是求相关最大的TopK
语义检索思路:最邻近检索,当把广告与用户向量化后,检索这个向量空间里最相关的K篇文档等价于计算向量距离并取K近邻的问题,用到方法局部敏感哈希(LSH),ID变成向量是嵌入的过程,嵌入过程的起源是Word2Vec
kafka:分布式消息系统,数据消费模式支持pull
与搜索广告对应的需求方产品为搜索引擎营销(SEM)
参考 @北冥乘海生,自学用,侵删!