很多朋友估计没有做过这一块,争取最简洁的语言描述清楚。

一、业务简述

从业务上看    整个智能广告系统,主要分为:

1)业务端:广告主的广告后台

2)展现端:用户实际访问的页面

业务端,广告主主要有两类行为:

1)广告设置行为:例如设置投放计划,设置地域,类别,关键字,竞价等

2)效果查看行为:例如广告展示次数是多少,广告点击次数是多少等

展现端,用户主要也有两类行为:

1)站点浏览行为:用户浏览实际的信息,此时广告系统决定出广告主的什么广告

2)广告点击行为:此时广告系统会对广告主进行扣费

二、业务流程

下面通过一个的例子,让业务流程更直观。

步骤一:广告主在业务端投递广告

广告主登录业务端后台,进行设置:

  • 今日投放地域是“北京-上地”

  • 投放类别是“租房”

  • 定向人群为“女”,“30岁以下”

  • 需要推广的广告内容是他发布的一条“房屋出租”的帖子

  • 竞价设置的是0.2元

  • 单日预算是20元

这些数据,当然通过业务端存储到了数据层,即数据库和缓存里。

步骤二:用户来到了网站,进入了“北京-上地-租房”类别,广告初筛实施

用户产生了平台浏览行为,网站除了展示自然内容,还要展示广告内容。被展现的广告不能太离谱,太离谱用户也不会点击。

合适的广告,必须符合“语义相关性”,即基础检索属性(广告属性)必须符合(广告能否满足用户的需求,满足了点击率才高),这个工作是通过BS-basic search检索服务完成的。

BS从数据层检索到“北京-上地-租房”的广告帖子。

步骤三:用户属性与广告主属性匹配,广告精筛实施

步骤二中,基础属性初筛了以后,要进行更深层次的策略筛选(用户能否满足广告的需求),此例中,广告主的精准需求为:

  • 用户性别为“女”

  • 用户年龄为“30岁以下”

  • 用户访问IP是“北京”

系统将初筛出来的M条广告和用户属性进行匹配筛选,又过滤掉了一部分,最后剩余N条待定广告,这些广告既满足用户的需求(初筛),这些用户也满足广告主的需求(精筛),后者是在AS-advanced search策略服务完成的。

步骤四:综合排序,并返回Top X的广告

经过步骤2和步骤3的初筛和精筛之后,待选的N条广告既能满足用户当前的需求,用户亦能满足广告主的筛选需求,但实际情况是,广告位只有3个,怎么办呢?就需要我们对N条广告进行综合打分排序(满足平台的需求,广告平台要多赚钱嘛)。

打分排序的依据是什么呢?

有人说按照竞价排序bid,出价高的打分高(这是大家对百度最大的误解,百度是cpc收费)

有人说按照CTR点击率排序,CTR高的点的人多(百度的kpi指标可不是pv)

出价高,但没人点击,广告平台没有收益;点击率高,但出价低,广告平台还是没有收益。最终应该按照广告的出价与CTR的乘积作为综合打分排序的依据,bid*CTR。

既然bid*CTR是所有广告综合打分的依据,且出价bid又是广告主事先设定好的,那么实际上,广告排序问题的核心又转向了广告CTR的预测,CTR预测是推荐系统、广告系统、搜索系统里非常重要的一部分,是一个工程,算法,业务三方结合的问题,本文就不展开讨论了。

无论如何,N条广告,根据bid*预估CTR进行综合打分排序后,返回了打分最高的3个广告(广告位只有3个)。

有些系统没有第二步骤用户属性过滤,而是将用户属性因素考虑到综合排序中。

步骤五:展现端展示了广告,用户点击了广告

展示了广告后,展现端js会上报广告展示日志,有部分用户点击了广告,服务端会记录点击日志,这些日志可以作为广告算法实施的数据源,同时,他们经过统计分析之后,会被展示给广告主,让他们能够看到自己广告的展示信息,点击信息。

这些日志(一般会实施AB测),也是算法效果好坏评估的重要依据,根据效果逐步优化改进算法。

步骤六:对广告主进行扣费

用户既然点击了广告,平台就要对投放广告的广告主进行扣费了,扣费前当然要经过反作弊系统的过滤(主要是恶意点击),扣费后信息会实时反映到数据层,费用扣光后,广告就要从数据层下线。

三、系统综述

聊完业务流程,再来看系统架构,任何脱离业务的架构设计都是耍流氓。

从系统分层架构上看,智能广告系统分为三层:

  • 站点层:用户和广告主直接面向的网站站点

  • 服务层:为了实现智能广告的业务逻辑,提供的通用服务,此处又主要分为四大类服务:

    策略服务BS:实施广告策略,综合排序

    检索服务AS:语义相关性检索

    计费服务:用户点击广告时进行扣费

    反作弊服务:不是每次点击都扣费,要经过反作弊,去除恶意点击(相对独立,未在架构图中画出)

  • 数据层:用户数据,广告数据,竞价数据,日志数据等等等等

四、总结

智能广告系统的业务流程与系统架构:

1)广告主投放与设置广告

2)用户访问平台,展现合适广告

通过广告属性,进行“语义相关性”初筛,通过BS完成

通过用户属性,出价信息,点击率预测信息,进行综合打分排序筛选,通过AS完成

3)记录展现日志,点击日志,进行扣费

广告是展现,是一个:

  • 广告满足用户需求(初筛)

  • 用户满足广告需求(精筛)

  • 平台利益最大化(bid*CTR综合排序)

的过程

广告的排序不是由出价(bid)决定的,而是由出价(bid)*点击率(ctr)决定的。

点击率(ctr)是一个未来将要发生的行为,智能广告系统的核心与难点是点击率预测。

==【完】==

原文地址:https://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651960148&idx=1&sn=7c8a2d789fb20981355e49c3defe0229&chksm=bd2d06888a5a8f9e5ef5cf6cfa415d06800f5468148a0ba7a802e646aeec9610823ec0fc6d5d&scene=21#wechat_redirect

广告系统,业务与架构细节相关推荐

  1. 网店系统_优惠券系统业务逻辑架构设计_OctShop免费开源商城系统

    优惠券系统.优惠券核销.线上线下都可使用 优惠券系统:优惠券不仅可以线上抵用,也可以线下核销抵用.优惠券分两种:抵用券和折扣券,商家可自由发布. 线上抵用:买家获取优惠券后,在下单支付时,选择相应可用 ...

  2. 【转载】广告系统架构解密

    广告.增值服务.佣金,是互联网企业最常见的三种盈利手段.在这3大经典中,又以广告所占的市场份额最大,几乎是绝大部分互联网平台最主要的营收途径,业务的重要性不言而喻. 从技术角度来说,广告业务涉及到 A ...

  3. 干货 | 广告系统架构解密

    广告.增值服务.佣金,是互联网企业最常见的三种盈利手段.在这3大经典中,又以广告所占的市场份额最大,几乎是绝大部分互联网平台最主要的营收途径,业务的重要性不言而喻. 从技术角度来说,广告业务涉及到 A ...

  4. QQ 空间社交广告系统技术架构实践

    作者|冯启航 编辑|小智 QQ 空间的在增值营收服务上探索了多年,本文将展示负责增值服务体系的后台工程师如何在众多增值业务需求面前找到最合适的技术架构的支撑这个年入几十亿的产品,以及如何利用好大数据为 ...

  5. 大型广告系统架构 — 检索模块

    广告系统主要解决一个问题:在给定展示场景.用户的情况下,返回收益最大化的广告.下图是一个广告系统最简单的架构图.其中,Router,检索模块,排序模块一般称为广告系统的核心.同时,与之辅助的至少包含三 ...

  6. 【广告架构day1】爱奇艺广告系统的演进之路:实践中的一些经验

    本文来自爱奇艺的分享孙立伟.近年来爱奇艺快速发展,优质内容层出不穷,爱奇艺广告也随之发展和壮大,广告在线服务同时服务于品牌.中小.DSP 等不同客户,形成了可以满足不同需求类型的较为完善的商业广告变现 ...

  7. 【广告架构day2】新浪广告系统架构的演进之路:服务化改造

    按:广告系统是互联网商业化过程中核心系统之一,像今日头条.百度等,大头利润都靠卖广告.广告系统有何独特的特性?可从中多学习.本文来自新浪徐挺的分享. 摘要 其实新浪很早就开始研究广告系统了,根据Use ...

  8. 史上最详细的新浪广告系统技术架构优化历程

    内容来源:2017 年 08 月 10 日,新浪广告开发技术专家徐挺在"第二届APMCon中国应用性能管理大会[大规模网络架构优化专场]"上进行的<新浪广告系统的服务化优化历 ...

  9. 广告系统架构:要啥自行车!

    ◆◆◆ 6. 广告系统构架:要啥自行车! 一句话解释广告系统架构:"道生一,一生二,二生三,三生万物." 场景1 坐在车里,手机打开为知笔记,想再瞅一眼的树的几种遍历方法.眼睛跟着 ...

最新文章

  1. PNAS顶刊文:情侣分手3个月前就有预兆!聊天记录还能反映分手后遗症
  2. linux centos 挂载ntfs文件系统
  3. boost : has_to_string的用法测试程序
  4. 图论算法(三)--最短路径 的Bellman-Flod [ 带负权值图 ] 的解法(JAVA )
  5. 【UOJ 50】树状数组2
  6. squid 简单介绍及代理说明
  7. 中车四方时速600公里高速磁浮试验样车试跑成功
  8. PyTorch 入坑九:权重初始化
  9. Java基准测试工具JMH使用
  10. 如何更改node.js的控制台字体颜色?
  11. 租车APP都哪些,租车平台成功案例
  12. 冷链生鲜配送路径规划【附源代码】
  13. 计算机网络实验路由器配置
  14. 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(1)
  15. 计算机二级-公共基础考点
  16. Android Fragment异常:java.lang.IllegalStateException: Fragment XXXFragment not attached to Activity
  17. 【04741】2022年10月高等教育自学考试-计算机网络原理
  18. JAVA数据结构和算法:第一章(时间复杂度和空间复杂度)
  19. Invoke-Obfuscation混淆免杀过360和火绒
  20. 大腕出手看门道,谈BAT的投资战略差异 三家战略投资的思考原点并不相同虎嗅网)

热门文章

  1. Cass10.1独立地物简码识别功能
  2. 记录 | Latex 双栏排版插入图片后图片太大的问题 一种解决方案
  3. 计算机网络-哈尔滨工业大学mooc-第2周作业解答
  4. Hairpin流量, 发卡流量怎么理解
  5. (超详细)XSS和SQL注入-网络渗透测试实验三
  6. IntelliJ IDEA 15 MAC破解版
  7. 【leetcode】解数独
  8. 数据库ALTER语句使用
  9. 人工智能在材料科学的应用
  10. 量化思维与常见的量化标