如何打造个性化营销平台

关于营销                                                                     
     “我知道我的营销费有一半被浪费了,但是我不知道是哪一半?”           -----约翰.沃纳梅克(1875奥美广告创始人)

                                     
                                                                         
       看过一部经典的美剧《广告狂人》(Mad Men)。剧集设定在二战后六十年代,商业大发展的纽约,以一个著名广告公司广告人的事业生活为中心,讲述他们不断追求梦想的故事。抛开吃瓜群众关心的政治斗争和爱恨情仇,其中最让人印象深刻的还是总监德雷柏。他通过对人性,市场,客户的挖掘剖析,完成了一个又一个让人拍案叫绝的营销方案。一个成功的营销策略除了创意总监灵光一闪的创意外,还需要大量对目标客户群体的画像分析和挖掘。电视上,大部分人会关注灵光一闪的创意产生,很少人会注意到案例讨论前,主角会议桌,办公桌上堆积如山的客户信息材料。


       海量数据计算和存储能力的提升,使得互联网行业开启了大规模,自动化利用数据进行营销创收和改造产品的大门。 Google Facebook ,阿里巴巴每年从个性化广告和营销领域都能获取大量的利润。新世纪的广告总监“德雷柏”,可以通过个性化营销平台更快的完成用户画像创建,探索,比较和组合。可以通过平台快速的进行营销方案部署和实施;可以及时的对比( ABTest )营销方案,查看效果反馈,调整策略;某些特定的场景,系统甚至可以自动化的完成营销策略的调整和部署,不再需要人工干预。定投,资源位都可以通过平台的标签引擎计算服务,完成个性化,千人千面。

关于电商个性化营销业务的思考
        精准的用户刻画和需求理解,对于市场营销的重要性,就像战场上士兵对于先进性武器的需求一样,是商业决策是否奏效,营销方案是否成功的重要保证。通过观察运营的营销活动,当前考拉的营销业务大致可以归为两个大类:
用户生命周期管理
        通过划分用户生命周期,对不同周期用户进行引导和干预。例如,对用户首单,第二单新用户转化的干预方案;通过登陆,消费等行为数据,对即将或者已经流失的老用户进行挽留和召回等方案;通过用户生命周期划分和周期平台贡献,有针对性的对圈定的人群进行营销倾斜和优惠调整。
个性化营销活动
        考拉营销方案实施的主要需求是:从商业角度出发,找到最能完成业务KPI或者商业意图的目标人群,直接对其进行营销干预。营销手段包括优惠券,短信,Push,邮件,弹窗,资源位。例如生日发券,CDE类商品去库存,复购强化等
        同时,完成营销活动是有成本的。以之前考拉类目运营的一个简单的营销复购策略为例:历史购买过某一个有复购属性的类目或者商品,本月还没购买,那么给符合复购条件的这类用户一个策略,期望促成他本月成交。   
        预估的成本如下:  
  1. 短信,Push,邮件资源成本:例如:短信的每条成本为X分钱;EDM营销费用
  2. 资源位价值成本,例如APP弹窗,其实是一种页面资源的干预,可以通过日常资源位价值估算出来;
  3. 营销广告受众的疲劳度。用户每天能承受或者认可的广告数量应该控制在一个合理范围。
                         滥发低效的营销方案实际是对优秀营销方案的资源挤占
  继续提炼需求,从业务需求方的角度,这类需求的难点主要是三个:
  1. 如何找到目标人群;
  2. 如何适配最优的资源营销策略
  3. 从全站角度,还需要考虑成本(本身触达方式的成本+用户营销疲劳度)
 
技术分解
        从广告学角度看,营销广告的核心问题就是为多组用户与环境的组合找到最合适的广告营销投放策略以优化整体广告活动的利润 。
上述核心问题必须要转化为可计算维度,才能利用技术手段进行优化和落地。
    归纳后的最优化问题如下公式:

        注:公式来源[2]

        i表示第1次到第T次,某一个营销活动的第i个投放。 r表示这次投放带来的收益,q表示付出的总成本。
大部分情况一次广告方案的成本q,是可以通过事后成本核算得出固定的数值的。所以营销广告系统主要的优化和努力点应该在提升广告收益r上(也有一些场景会做限制优化)。广告收益r的计算公式如下:
 
r函数内影响参数定义:
  • a表示本次投放的广告(例如:以商品,品牌,类目,活动生成的营销主题)
  • u表示广告投放的用户群体,
  • c表示广告的环境,场景(包括上下文场景,资源位,弹窗,邮件EDM等触达方式)
关键技术实施
整体架构图:


第一,定制化的用户分群(受众定向Audience Targeting)。
        计算引擎/标签工程的搭建,依赖大数据集群,定时调度系统,数据仓库等海量数据处理技术。具体业务和技术上的划分方式,可以参考雅虎或者阿里妈妈的用户标签体系。具体业务可以根据具体情况进行划分。这里给出考拉的标签大纲划分供参考。注:实际线上系统的标签体系是规划大纲的子集,但是具体标签的维度会更丰富。
考拉标签体系大纲设计如下: 


       通过大数据计算平台(SqoopHadoopHive)完成离线数据的收集和用户规则标签的计算。规则标签主要通过ETL过程,不断迭代统计得到。关于数据的清洗,归档,可以通过离线或者实时计算进行处理和分类。一般情况下,标签或者特征计算方法,可以参考数据仓库建设中的ETL建设过程来完成,数据源上也可以直接使用现成的数据仓库成果进行二次加工。规则标签的产品迭代,可以按照业务需求制定优先级和深入程度。

        通过Spark 或者 MapReduce进行挖掘标签的计算和预测。利用购买的商品属性特征,可以补充一部分用户的性别,身材;基于统计的毛利,消费额可以在各个类目级别对用户的毛利消费水平进行分类,可以获取类似低毛利,高消费用户(襦羊毛用户)这类标签。利用用户在整个考拉的消费,售后,履约情况给出考拉用户级别的信用体系。

        当然,还有对高潜用户购买预期的概率预测。针对用户的基础属性,商品级别的浏览,加购,下单等行为特征建模,给出未来时间窗口下单的概率得分。特征需要完成哑变量,归一,去脏,空值等处理。后续还有特征转化和特征选择。特征工程和数据处理是数据挖掘中最耗费时间,但收益最大的环节。大概占整个开发周期的7-8成。

第二,人群/标签查询引擎系统的选择

        查询引擎的选取,可以利用RedisSparkImpala等组件来进行人群标签的划分和组合。标签引擎有如下几个非常重要的技术选型要求:

  1. 千万甚至亿级别用户,秒级别的人群标签创建,探索和组合能力
  2. 海量标签存储和离线计算的能力
  3. 支持维度分布,指标范围的筛选(标签除了:0,1 还有分布和范围)

如果标签只需要支持1,2项,那么可以选择Redis,KV存储内存级别计算。

如果标签需要支持1,2,3项,可以考虑采用Spark或者Impala。

        考拉在技术和运维评审后,选择通过impala集群作为个性化营销平台的查询引擎。Impala可以无缝对接Hive或者HDFS的标签数据。并且支持imaplaUDF开发和插件扩展。

        缺点:内存级别运算特别吃资源,OOM概率比较高。除了不断优化计算程序外,极端情况只能通过加资源或者裁剪数据规模来解决问题。稳定性和资源限制,对开发和运维的挑战都比较大。

        PS:感谢杭研大数据团队搭建的Impala集群,感谢花总,老蒋,冯神的大力支持!

第三,营销广告投放服务
负责对接资源投放系统,打通能够获得的尽可能多的触达方式。


触达方式的对接会碰到非常多的问题,例如触达投放效果反馈追踪;投放性能调优;投放引擎高可用等


==========技术分水岭,以上三步已可以实现较复杂的定向投放逻辑。完成个性化营销 
第四,营销广告效果反馈
回到前文提到的公式:


首先要搭建数据分析平台,对每一次投放结果进行分析反馈。可以覆盖到点击通过率CTR(Click Through Rate),转化率CVR(C onversion Rate )。转化率可以形成多级转化率的转化漏斗。对于技术优化团队来说,投放效果优化主要影响的是CTR。但是最终这个方案的营销利润是由受众(audience)最终成交的订单转换率决定的。
其次要有ABTest的分流探索工具,能对比营销投放的策略,甚至可以是多组样本和策略的对比。
最后,需要数据对比分析的维度矩阵:


营销对象主题(ad)

触达方式(c)

类目

品牌

商品

活动

优惠券





邮件





短信





Push





弹窗





资源位





第五 效益优化
优化有几个方向:
算法策略优化
  1. 优化挖掘标签的准确性(这块需要持续提升挖掘标签的覆盖率和准确率);
  2. 对商品,ad(活动,优惠券等)也要进行特征挖掘;
  3. 疲劳度检查:按照触达方式和营销对象维护用户的广告疲劳度,例如优惠券发放时需要考虑用户账户中已有优惠券的状态;给用户收到的营销推送设置资源上限;
  4. 程序化投放:对于生命周期管理营销和固有的类目营销需求,可以探索和计算出最佳的投放场景和方式,利用平台进行程序化投放。初始可以采用灰度测试或者ABTest,比较人工策略和机器策略的投放效果。通过优化最资深的运营投放策略,改善或者替换类似场景下的运营投放策略。
系统优化:
1 大规模特征存储:impala,HBase
  • impala性能优化(SQL调优,基础表更新等)
  • HBase(提升查询性能)
2 海量数据离线计算:MapReduce,Hive
  • 从稀疏数据压缩,业务冗余表检查方向考虑等
  • 大量运行慢HQL,值得改造优化
3 实时标签服务:Storm 流式计算
  • 结合实时上下文定向,可以做更实时的投放决策。
4 数据接口服务化:Dubbo
  • 工程规范,服务接口代码统一。
5 能支持海量用户和标签的广告投放引擎。
  • ms级别,高可用


本文来自网易实践者社区,经作者陈文翔授权发布。