zoukankan      html  css  js  c++  java
  • 移动互联网广告

    一、互联网广告及其相关投放技术

    1.1 展示方式

      广告主要分为网络广告、电视广告以及杂志广告等,主要表现形式有文本、图片、富媒体及视频等。

      常见互联网广告有如下展示方式。

      搜索引擎广告:借助搜索引擎技术,广告主按照某种计价方式付费给搜索引擎公司来使自己的广告出于搜索结构中较好的位置,以此来吸引用户。这类广告,比较多的是关键词广告,关键是根据自己所需推广的产品或服务的内容、特点设定关键词,因为搜索引擎是利用关键词来搜索,从而相应的广告也随着搜索结果出现。

      目前针对关键词广告有两种排名方式:固定排名和竞价排名。固定排名方式下搜索结果比较固定且位置靠前,但费用较高。比较多的方式是竞价排名方式,搜索引擎公司通过搜买关键词,对购买同一关键词的广告商或网站按照谁出价高谁的排名就靠前的原则来排名。这种投放方式针对性较强,而且受众覆盖率从大。

      展示网络广告:发布在综合门户网站上的图片、flash、视频等形式的广告,称之为展示网络广告。这类广告一般具有较大的浏览量和点击率,而且知名度较高。比较适合做品牌推广,但缺点是不同意获得较为准确的用户信息。

      社交网络广告:因为社交网络广告由于有用户的真实数据、关系链以及大量的UGC数据,可以分析出用户的偏好,进行更有针对性的投放广告。

    1.2 计价模型

      广告主要的目的是吸引潜在受众的注意,进而通过商品或服务的购买活动来为交易各方带来经济利益。主要有以下几种计价模型,分别对应着不同的网络广告。

    1.2.1 CPM

      Cost Per Impression即为每千次展示费用。主要用在展示广告上,取决于Impression的尺度,其含义为一个人的眼睛在一定时间内注释广告的次数,其收费主要是根据网站的知名程度,因此CPM比较适合做品牌推广广告,具体的模型如下:

      Revenue = N * CPM

      N代表展示广告所在页面投放有效期内该页面被加载的总次数,CPM代表的价格是广告主通过对该广告展位的竞价得到。

    1.2.2 CPC模型

      Cost Per Click即每次点击的费用。这种计价模型对广告商来说是很受益的,但对于经营广告的网站来说会觉得不是很好,因为尽管受众没有点击广告,但受众已经看到了广告,广告也因此得到了展示,这种计价模型不适合展示广告,但对文本广告而言,却是一种不错的选择,具体的模型如下:

      Revenue = N * CTR * CPC

      CTR代表受众可能在广告展位所在页面上点击的概率,CPC的价格需要通过不同的竞价方式得到。

    1.2.3 CPA模型

      Cost Per Action即每个定义动作的交易成交的价格,主要根据广告投放效果来收费,它对网站来说有一定的风险,如果成功,受益会比CPM高很多,如果不成功,则会入不敷出。采用该类模型受众不仅产生了实际的点击行为,而且还会通过重定向方式,页面被连接到广告商的主页中。CPA的具体模型如下:

      Revenue = N * CTR * Conv.Rate * CPA

      Conv.Rate用来表示用户点击量与实际广告页面被加载次数的转换率。

    1.3 投放技术发展阶段

      互联网上的广告投放分为三种阶段。

      1.3.1 自建模式

      早起的广告投放方式就是服务器模式和JS Client模式。服务器模式是指网站主把所有的广告都放在自己网站服务器,当受众访问该网站的url时,网站的广告服务器对其作出响应并返回响应的广告;JS Client模式是指在网页上嵌套一段js代码,当受众浏览网页触发这段js代码的时候,服务器对其作出响应并返回相应的广告。这两种广告投放方式对于互联网平台来说不够灵活,很难与不断变化的网页内容相匹配,广告投放的效果不理想,虽然广告和网页相关性强,但是和受众的相关性较差,基本上没有考虑受众需求因素。

      1.3.2 集中模式

      对一些中小型的网站来说,它们经营的广告不多,如果每家网站都单独使用自己的广告服务器就有些浪费服务器资源。因此,集中模式就是在自建模式的基础上,将很多中小型网站的广告服务器集中起来,也就是说将所有网站的广告放在同一个广告服务器里面,每家网站使用规定好的协议从集中式的广告服务器中取出广告。虽然这种方式节约了广告服务器的成本、提高了资源利用率,但是仍然不能改变投放不灵活的现状,和自建模式实质相似,投放方式并没有本质的变化。

      1.3.3 交换模式RTB

      是现在最潮流的广告投放模式,以受众为中心,根据受众的个人特征、爱好及消费状况等综合因素,进行动态的广告投放,摆脱了传统广告投放不以受众为中心的状况。当受众访问网站时,通过触发网站的某段js代码,为其选择合适的展位,同时根据受众本身的综合特征,从广告服务器中选择合适的广告,进行RTB实时竞价投放,选择投放价格最高的广告返回给受众。这种交换模式不仅体现了以受众为中心的特点,同时增加了投放的精准度,提高了广告商的受益。

     

      SSP(supply side platform):卖方(提供展位的地方)

      ADX(Ad exchange):广告交易平台

      DSP(demand side platform):卖方(广告的代理商或广告发起人)

      互联网广告投放技术发展到第三阶段也是得益于计算广告学的不断发展,“计算广告学是为了实现用户、广告和语境三者的最佳匹配的目标,有计算机科学、信息科学、统计学以及围观经济学和广告创意学等多门学科共同交叉融合而成的”。它使互联网广告行业在三个方面得到了转变:广告的售卖由传递的合约方式变为实时的竞价、网页的定向投放由基于内容的定向转向为基于受众的定向、广告的目的逐渐由品牌展示转化为直接的市场营销。

    1.4 互联网广告投放相关技术

      目前精准广告投放系统中的核心是定向技术,该定向技术包括针对地点、时间等一个或多个通过布尔条件表达式组合后的定向,基于用户浏览当前网页的内容而定向,针对用户的行为特征而定向。

      基于内容的精准广告投放平台主要是根据用户浏览网页时,如果用户停留的时间相对较长,表明他对浏览的网页兴趣度较高。基于内容的精准广告投放系统正式利用了这个原理。通过分析网页的内容,提取出页面的关键词,然后在广告数据库中检索该关键词,进而对浏览网页的当前用户投放广告。

      这种广告投放系统的主要技术包括提取网页主题词、提出广告文本主题词及计算广告与网页主题词的匹配度。在关键词提取方面,TF-IDF,词的长度及其在页面中位置等综合特征来决定词的重要性,然后根据排序结果选出最能代表网页主题的关键词。在计算广告与网页主题词的匹配度时,比较常见的方式是构建空间向量模型,然后进行相关的计算。在空间向量模型中,网页关键词向量和广告关键词向量是被映射到同一空间中,网页和广告的相似度决定了网页内容和广告内容的匹配程度,它们之间的相似性可以由以下公式来计算。(其他基于广告和网页内容的十种匹配策略,基于及其翻译的广告和网页内容的匹配算法,以及基于语义角度通过构建人工分类树的方法来匹配广告和网页内容)。

      

      基于内容的精准广告投放系统主要流程:从原始网页->提取网页主题词->与广告关键词比较->进行词义扩展->计算网与广告相似度。

      然而基于用户行为特征的广告投放系统,主要通过深入挖掘受众访问网站时的行为特征,准确把握受众的特征,根据受众的特征投放相应的广告。基于用户行为特征的广告投放能够切实的改善网络广告的效果。当用户上网时,如果该网站提供注册服务并且用户注册过,根据用户的登录信息马上就可以得到用户的基本信息。如果没有注册,可以根据各种各样的方法来识别用户,比如cookies等,然后记录用户的上网行为并运用数据挖掘技术从中提取到用户的特征信息。最后对用户的特征信息进行分类,选择一个最合适的广告投放给用户。

      基于用户行为特征的广告投放系统主要的流程:用户登录->获取用户ID->用户基本信息+用户特征信息提取+挖掘用户特征->利用相关分类算法对用户分类->计算最佳匹配广告。

      其中用户特征提取主要是提取用户的固有属性(比如人口统计学特征等),以及用户访问网站时的动态属性。用户的固有属性,也即静态属性,主要来自用户的注册信息,比如用户的ID、姓名、性别、出生年月、职业信息、邮箱、大概收入以及兴趣爱好等。用户的动态属性主要包含的是用户的Cookies信息,访问网站的类别、访问的时间段、访问的IP地址、URL以及点击次数等信息。

      用户特征的提取目前有很多技术手段,比如马尔科夫链模型的算法,以及隐半马尔科夫链模型的用户兴趣特征模型,通过用状态驻留时间的概率来控制用户浏览行为。用户的上网行为按照强度分为以下几种:交易、交易之前的行为如商品浏览、搜索广告点击行为、普通广告点击行为、搜索点击、搜索、分享、页面浏览和广告浏览。另外也可借助于第三方的DMP数据管理平台来提供用户的特征信息。

      在精准广告投放系统中,在对用户的特征提取之后,对用户进行分类是系统的关键所在,从此判断出用户所对应的广告类别,从而有针对性的进行广告的投放。

    1.5 分类算法简介

      数据挖掘中常见的有决策树、贝叶斯、神经网络和支持向量机算法等。这些分类算法各有优缺点,适合不同的具体问题。

    1.5.1 决策树算法

      决策树算法采用自顶向下的方式构造,推理出决策树表示形式的分类规则。通过样本的属性值与决策树相比来对未知样本进行分类,分类过程如下:提供数据训练集->获取知识+递归方式->建立决策树模型->消除异常+树剪枝->测试测试集->决策树规则。

      从训练样本的单个根节点开始,使用分类属性递归的选择对应测试属性来划分样本,通常采用信息增益、Gini系数等方式进行筛选,一旦某个属性出现在一个节点上,那么该节点的后代节点则不会出现该属性节点;然后是树剪枝阶段,主要为了检测和减去训练集中的孤立点和噪声点,尽量消除模型中的异常。每条从根节点到叶结点的路径都对应一条规则,组成了一棵决策树。它有着明显的优点:计算简单,规则比较清楚,易解释,且能满足大多情况下的分类准确程度要求。它的缺点:当属性过多的时候,尤其是连续属性过多的情况下会有一些问题,以及对训练数据集的数据分布有一定要求。比如因树的规则过大而导致的数据系数,而且会使计算变得更加复杂,精确度得不到保障,可能出现过拟合和欠拟合的问题。

    1.5.2 神经网络算法

      通常神经网络用一组连接的输入输出单元来描述,并且其中的每个连接都有一个相应的权重。学习过程中,通过调节权重,使得能够正确的预测输入样本的类别信息。常见的神经网络结构有三种:前馈型神经网络、反馈型神经网络和自组织型神经网络。

      以前馈神经网络为例,它只在训练过程会有反馈信号,但间层没有向后的反馈信号,并且分类过程中数据只能向前传送直到到达输出层。感知机和BP神经网络就属于前馈网络、

      如下图示例3层的前馈神经网络图。

      

      图中描述的是一个3层的前馈神经网络,第一层、第二层、第三层分别表示为输入单元、隐含层、输出层。目前多层神经网络的分类能力较强,称之为神经网络分类器。第二层即为分类结果的判断逻辑层,其神经元个数为样本的类别个数,其个数视实际情况而定。神经网络的主要优点表现为抗噪声的能力强且对连续属性的处理有比较好的效果,其突出的缺点是分类不清晰、不易解释且训练时间长。

    1.5.3 支持向量机

      SVM基于计算学习理论的结构化风险最小原则。SVM算法选择和保留有用的训练数据,即支持向量。首先自动找出对分类有较好区分能力的支持向量,然后构造出分类器,构造原则是尽量使类与类之间的间隔最大化,类所属的分类准确度得到了提高,相应的时间复杂度也得到了降低。SVC方法比较适合解决两分类问题和现行不可分问题、比较适合解决小样本的二分类问题。

    1.5.4 朴素贝叶斯算法

      在已知先验概率和类条件概率来预测给定样本属于一个特定类的概率的算法。对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,选定其中概率最大的一个类别作为该待分类项的最终类别。贝叶斯分类算法处理大型数据集时,理论上将速度快、精度高,具有较小的错误率。

     

    二、互联网广告精准投放平台的设计

      主要针对广告主,广告主登录到系统后,可以在线对广告系列、广告组、广告创意、账户等进行管理。同时设置广告的定向信息等。当数据提交到后台后,通过与广告交易平台的对接,由后台程序为广告主或广告代理商投放广告。

    2.1 系统总体流程

      1. 广告主申请DSP账号、密码,进入系统后,上传广告,并设置广告的信息比如广告的名称、所属类别,广告的类型是图片、视频或者其他类型。设置广告的定向信息。主要包含广告的目标网站,不同类别的人群,受众的性别,受众的兴趣爱好、年龄阶段等信息;

      2. 广告主在系统中预存广告费、设置广告的预算等;

      3. 用户通过手机,电脑等设备访问某一网站时,如果该网站有广告展示位,广告提供方平台SSP发送消息到广告交易市场,广告交易市场向满足条件的DSP发送广告请求消息;

      4. DSP端受到了广告交易平台发送来的广告请求消息,第一步通过Cookie映射识别当前用户,然后分别查找用户信息,广告信息等;

      5. 返回当前用户信息,广告素材和广告的预存款信息;

      6. 进而检索到该用户的信息,通过用户特征分类模块,来选择特定的广告;

      7. 将符合条件的广告集合作为备选集合,运用广告投放策略和广告投放算法,选出最合适的广告;

      8. 将包含广告出价信息等广告相关信息发送给广告交易平台来参与竞价;

      9. 当广告交易成功后,广告主可以通过广告投放平台提供的各种工具查看广告的实时交易信息和广告的投放效果等。

      比如,当广告主通过DSP平台投放广告时,可以设定投放地点为北京地区,投放时间为晚上8点。假设某一用户登录某一网站,产生一个广告请求,然后发送到广告交易市场,广告交易市场对这个广告请求发送到符合条件的DSP端,DSP端通过Cookie映射等措施确定当前用户,通过对用户特征数据库的查找,发现用户是足球爱好者,并且在网上有过购买体育用品的行为,那么该用户是广告投放的目标受众之一,具有投放的价值。然后检索关键词为足球的广告,广告投放状态正常预算足够的待投放广告集合,并结合用户的信息,广告的投放地点范围、投放时间范围等各种因素加权求和得到一个值,其中权重可以自己设定也可以计算获得。如果综合各种因素后得分越高,那么广告投放的几率也就越大。最后选取综合因素得分最高的广告,将包含广告出价信息、广告的跳转页面等打包发送到广告交易平台参与对该广告扎内的竞价。如果竞价成功,用户页面向广告服务器发送请求并得到响应,同时日志服务器记录相关的操作,由此,该笔广告交易完成。

      如下系统逻辑结构图:

      

      日志服务器主要记录广告交易平台发送给web服务器的广告请求信息和匹配到合适的广告后的应答消息,同时记录广告投放模块参与竞价的广告的相关信息。当广告交易成功后还需要记录用户页面向广告服务器请求广告的信息,广告交易成功后相关广告的信息比如成交的价格等等;

      基础数据库,主要包括广告主的账户信息,广告的预算信息,广告信息和广告素材等;

      受众数据服务器,主要记录用户的人口统计学信息,用户的特征信息,用户的爱好信息等,并且维护一份Cookie映射表,接收到广告请求后快速的识别用户,除此之外当映射没成功时需要记录第三方的用于的信息;

      广告服务器,记录在广告交易成功后返回的价格,主要是因为最后结算价并非广告上设置的价格。对广告创意素材进行管理,并且提供素材服务等;

      广告投放服务器,处理广告交易平台发送过来的广告请求,分别从用户数据服务器,广告服务器取得相关信息,然后综合各种因素计算最匹配的广告并返回给ADX;

      广告管理Web服务器,主要提供界面管理,包含账户管理,订单列表管理,定位管理,报表管理等;

      Web服务器,web服务器需要带有负载均衡功能,它需要对广告交易平台发送过来的包进行解析,并把解析后的信息转发给广告投放模块;

      记录日志各种网上行为日志;

      数据缓存,主要用来缓存用户的Cookie等信息。

    2.2 系统核心业务数据流图

      系统的核心业务数据流图主要包括广告请求流程、广告投放流程和广告竞价成功后的处理流程。

    2.2.1 广告请求数据流图

        

      针对部分关键流程进行分析,如下所示:

      1. 当用户访问某一网站,且该网站有广告展位时,产生了一次广告请求;

      2. SSP反馈信息给用户浏览页面;

      3. 广告需求方平台通过事先与Adexchange协商好的协议发送广告请求到广告交易平台,通常该发送的信息有网站的URL,网站的类别,以及重要的Cookie信息;

      4. 广告交易平台将广告发送给各个互联网需求方平台DSP,DSP平台通过与广告交易平台事先建立好的Cookie映射库识别出该用户,并通过从Adexchange发送过来的信息,综合通过Cookie查找到该用户的信息进行计算得到符合要求的广告;

      5. DSP将符合要求的广告信息通过与交易平台协商好的协议发送到广告交易平台;

      6. 广告交易平台综合各方的DSP平台发送过来的广告信息,这些信息包括广告出价,广告素材地址、跳转页面地址、广告ID,广告类型等,然后根据一定策略选择一家DSP平台。当竞价成功后,用户页面从DSP的广告服务器中获取广告,同时广告交易平台发送广告交易成功信息给DSP平台;

      7. 用户页面从广告服务器获取广告;

      8. 服务器返回广告给用户页面;

    2.2.2 广告投放模块数据流图

      

      步骤2表示当有广告请求信息过来时,请求信息发送到广告投放模块,同时日志服务器记录该请求记录。其中Cookie映射主要用来识别用户,当用户识别成功后,分别向用户特征数据库,广告数据库,缓存中取得用户信息,广告信息等返回给Web服务器,同时记录相关信息,然后Web服务器返回给ADX。

    2.2.3 广告投放成功后数据流图

      当竞价成功后,页面向广告服务器请求广告。然后通知广告投放模块广告投放成功,同时记录竞价的结果信息并更新广告相关数据库等。

    2.3 物理结构设计

      

      考虑到运算速度问题,将广告投放模块部署在数据库服务器上面以减少数据读写带来的时延。Web服务器采用带负载均衡技术来将请求均匀的分配到各个节点上。

    2.4 系统的各个功能模块设计

      

      用户信息处理主要包含三个小模块,这里只介绍用户识别和用户分类模块。

    2.4.1 用户识别模块

      如何在复杂的互联网环境下有效的识别用户,是对实施精准投放的前提条件。如今很多网站都提供了注册服务,其中比较关键的信息如邮箱等。如果用户在这个网站上注册过,那么很容易识别用户。对众多的上网用户而言没有必要在所有的网站上都注册,这种没有注册的情况下如何识别用户,主要是通过挖掘Web日志信息,因为Web日志会记录用户在网上浏览行为,我们可以采用相关的数据挖掘技术来对用户的行为特征建模。Web日志主要是用户在浏览的过程中记录点击流数据,利用这些点击流数据可以对用户进行识别。目前有很多种方法来识别用户:IP地址识别、Cookie标识、嵌入的SessionID、物理地址识别、使用嵌入代理等。

      下面介绍几种常见的用户识别方法。

      1. 基于用户源ID地址的识别。Web日志里都会记载包含源IP地址信息,源IP地址相对来说比较容易获取。但互联网上越来越多的伪IP、动态IP地址、网络代理、局域网共享同一公网IP地址出口等使得获取用户的真实IP地址信息变的越发困难,因此很多情况下,我们都不会直接使用IP地址来识别用户。

      2. 基于源IP+Agent的用户识别。一般情况下Web日志中都会包含Agent信息,我们可以采用IP+Agent组合来对用户进行识别,依次来提高识别用户的准确性。实际情况表明这种方式可以一定程度上提高IP代理和共用IP这两类情况下用户的识别度。而且Agent对网络爬虫等特殊的身份也有一定的鉴别能力。

      3. 基于Cookie的用户识别。目前大多数互联网用户身份识别技术都是基于这种方式。Cookie是网站为识别用户而在用户的终端存储的数据,所以Cookie代表的是用户的终端而不是用户本人。用Cookie识别用户比较明显的缺陷是:用户清除了Cookie,导致了用户无法与原来的记录进行对应。或者是同一用户使用不同的电脑对同一网站进行访问,或者同一电脑被不同的人使用都可以导致用户身份的识别的不准确。

      4. 基于用户ID的识别。这种用户的识别技术的前提是网站提供了用户登录注册方法或者运用一些技术方法记录用户产生的点击流中的用户ID。这种方法是最为准确的,原因就是通常情况下用户的每个ID都是唯一的,并且用户大多数情况下是不会把自己的账号信息和其他人共享,数据中的用户ID也是唯一地指向该用户。

      使用Cookie来识别用户,主要是通过SSP发送到广告交易平台中的Cookie。首先DSP端向广告交易平台发起Cookie映射请求,广告交易平台响应后,DSP通过查找与广告交易平台建立起来的Cookie映射表,从而识别出用户。识别的详细过程为在从广告提供平台传过来的信息包中解析出Cookie信息后,首先判断在互联网广告DSP平台中的cookie匹配表中是否记载过该Cookie用户对应的adx_user_id,如果没有则向广告交易平台发送Cookie映射请求,请求成功后获得adx_user_id,然后查表得到用户的Cookie信息。如果有该记录,但超过了一定的时间限制,也要再一次发送Cookie映射请求更新adx_user_id。

    2.4.2 用户分类模块

      对用户进行分类是我们对用户实现精准投放的关键所在。在提取到用户的特征信息后,通过对用户进行分类,进而得到精确的用户信息,然后根据用户信息、广告信息等各种因素计算得到最佳广告从而有针对性的投放广告。在对用户分类之前需要用户的特征数据,结合用户点击的广告历史记录,运用分类算法,将用户归类到某一广告类别中,从而为后续计算奠定基础。分类模块这里重点设计一个分类算法来对用户进行分类。

      贝叶斯分类算法更加适合对用户分类工作。但是没有考虑到属性之间的相关性。如果忽视这点,分类效果会大打折扣。另外没有考虑到待分类项的属性对类属性的影响程度。实际上有些属性对分类的影响大,有些属性对分类的影响小。基于这种思想,对各个不同的属性赋给不同的权值来区分条件属性对分类的影响,称为加权朴素贝叶斯。

      

      其中属性的权值越大,那么它表示对分类的影响越大。

    2.4.3 广告投放模块

      广告投放模块的主要功能是首先接收从广告交易平台发送过来的广告请求,然后通过Cookie映射判断是否为系统所识别的用户,若是则取出该用户的信息,同时取得广告的信息,然后计算综合各种因素,选取最佳广告,发送包含广告出价等信息的数据包给广告交易平台来参与该广告展位的竞拍,其主要包括如下的小模块。

      1. 数据更新模块

      在系统初始化时,广告投放模块会把基本数据库中的元数据加载到内存表中并且每隔15分钟会再加载一次。

      2. 竞价更新模块

      当某广告系列赢得展位后,该模块会在数据库中记录广告交易的价格和该广告的展示次数,同时刷新内存保持数据的一致性。

      3. 请求与应答接口模块

      对广告交易平台发送来的广告请求排队,并且在应答广告平台时也要做排队处理,注意应答有一定的时效性。

      4. 系统有两类定时器,日终定时器和数据更新定时器。日终定时器用于当日终时,重新计算广告系列的状态是否到期,预算变更,统计信息等;数据更新定时器会每隔十分钟就会触发,刷新一下内存表,以感知UI管理数据的变化。

      

      当一个用户到来之后,根据兴趣爱好等信息会匹配很多广告的。比如说匹配了n个广告的时候,如何在这n个广告中选取最佳广告投放给受众也是面临的一个问题。在综合广告匹配度,受众价值,广告的出价,广告投放地点,广告投放时间这5个因素条件下,如何采取有效的方法保证我们广告的投放。

      其中我们利用加权求和来计算:

      设广告最终评价值为:

      value = w1 * 受众价值 + w2 * 广告价值 + w3 * 广告匹配度 + w4 * 广告位置 + w5 * 广告投放时间段。其中w1+w2+w3+w4+w5=1;

      且广告投放时间段和广告投放区间为区间型属性,而广告的价值主要用广告的出价成本来衡量,广告出价成本型属性,表示出价越少越好;受众的价值是效益型属性表示受众的价值越大越有利于广告的投放。根据不同类型的属性选择不同的量化方法。

      

      分别计算每个候选广告的value值,选择value值最大的那个广告进行投放。

    2.4.4 广告投放算法的优化

      在选择最佳广告进行投放时,采用的是综合各种不同的因素,采用加权法来计算每个广告的value值。考虑到权值的设置是个主观量化的过程,用户可以根据自己的需要来设置权重,通过引入信息熵理论来优化方案的选择没自动的选择相应的权重来计算最匹配的广告。

      第一步:构造决策矩阵,并利用适当的方法把它规范化;

      第二步:计算矩阵,得到归一化矩阵;

      第三步:计算属性输出的信息熵;

      第四步:计算属性权重向量;

      第五步:计算最终结果,比较结果大小,投放所得结果值最大的那个广告。

    2.5 广告的管理模块

      当广告主通过浏览器进入我们的系统后,对广告信息的管理和广告投放的管理过程,以广告主对某一广告创意的操作为例,当广告上增加一个广告创意时,前端提取页面数据后不是直接的修改数据库操作,而是按照设计的消息格式打包好发送到我们的proxy模块,proxy模块判断广告上的对数据库的操作,如果是增加或者修改或者删除数据库操作则对主数据库进行相关的操作,如果是查询操作直接对备份数据库操作。

      系统架构图如下:

      

      其中数据库采用MySQL数据库,单组数据库采用一主二从的架构模式,多组数据库构成MySQL数据库集群。

      广告管理又可以进一步划分为广告系列管理,广告组管理,广告创意管理,报告管理。

      1. 广告系列管理

      该模块内容主要是维护客户的广告系列信息,可以增加、删除,修改广告系列的信息。同时用户可以设置广告分类,设置广告相应的预算,设置广告的投放时间,投放地点等信息。

      2. 广告组管理

      该模块用于用户维护一个广告系列下的所有广告组的信息,包括增加、修改、删除一个广告组等功能;用户基于此设置广告投放的定向信息,广告的竞价策略等。

      3. 广告创意管理

      主要是用来维护具体的一个广告信息,增加、修改、删除广告创意素材,可以设置广告投放的地址,设置广告的表现形式,修改广告的投放状态等。

      4. 报告管理

      主要是提供具体的历史记录,包括广告主的历史操作记录等信息。另外为了展示广告投放的效果,需要按照季度、月、天来提供广告报告等。

    2.6 接口设计

      Web服务器的接口,与广告交易平台交互主要是Web服务器,它需要同时能够与广告交易平台的服务器、本地广告投放服务器和日志服务器进行实时通信。其主要功能包括接受广告交易平台发送来的广告请求并且把它转发到广告投放服务器,当广告匹配完成后还必须将广告匹配的结果发送回广告交易平台,同时通知日志服务器记录下所有的操作。因此需要设计一个请求和一个应答队列和三个线程。

      第一个线程从请求队列中读取请求包发送到广告投放模块。

      第二个线程实时接收广告投放模块匹配的结果并放到响应队列中。

      第三个线程实时记录请求和应答消息的相关记录,然后快速的写入到日志服务器中。

      广告投放模块的接口,广告投放模块需要处理Cookie映射,同时要有获取用户特征信息,要与数据库通信获取广告相关信息,接受Web服务器传过来的数据包。

    2.7 智能投放

      对每一个上网的用户都要给出一个评估其广告价值的分数,系统综合此分数及其他因素进行广告投放。

    总体因素评估线

      将影响投放的因素分成五大类,它们是:受众因素,占总体评估线的60%;网站因素,占总体评估线的20%;地域因素,占总体评估线的10%;时间因素,占总体评估线的5%;季节因素,占总体评估线的5%。可以对它们进行微调,也可以对每一个大类进行调整。

      受众因素评估线:其中受众年龄占受众因素的5%,受众性别占受众因素的5%,受众收入占受众因素的5%。专业训练占受众因素的5%,教育程度占受众因素的5%,购物倾向占受众因素的50%,兴趣爱好占受众因素的25%。针对该广告系列,你需要增加受众的兴趣爱好。

      网站因素评估线:其中是否为首页占网站因素的30%,网站排名占网站因素的20%,网站分类占网站因素的50%。针对该广告系列,你需要增加网站的分类。

      地域因素评估线:其中匹配所指定的地域占地域因素的100%,不匹配占地域因素的20%,不能确定占地域因素的70%。针对该广告系列,你需要增加投放的地理位置。

      时间因素评估线:其中0:00到7:59占时间因素的20%,8:00到11:59占时间因素的90%,12:00到13:59占时间因素的70%,14:00到17:59占时间因素的80%,18:00到23:59占时间因素的100%。

      季节因素评估线:其中春季占季节因素的70%,夏季占季节因素的50%,秋季占季节因素的60%,冬季占季节因素的100%,不关心占季节因素的70%。

    【致敬原作者:硕士学位论文《互联网广告精准投放平台的研究》 http://www.doc88.com/p-7174318045170.html

       

  • 相关阅读:
    CruiseControl.NET 三言两语
    在MFC程序中增加控制台
    VS2005 编译Release版本出现清单文件的错误
    内存泄露问题
    软件设计原则
    boost::shared_ptr 分析与实现
    corelDraw 的CDR格式解析
    13. 量词操作符—【LINQ标准查询操作符】
    SQL SERVER执行查询的顺序
    CSLA命令对象的简单封装
  • 原文地址:https://www.cnblogs.com/pythonMLer/p/6132347.html
Copyright © 2011-2022 走看看