简介: 本文介绍如何使用Databricks进行广告效果归因分析,完成一站式的部署机器学习,包括数据ETL、数据校验、模型训练/评测/应用等全流程。

作者:冯加亮   阿里云开源大数据平台技术工程师

本文介绍如何使用Databricks进行广告效果归因分析,完成一站式的部署机器学习,包括数据ETL、数据校验、模型训练/评测/应用等全流程。

内容要点:

  1. 在当下的信息化时代,用户每天都会收到媒体投放的广告信息,如何做到精准广告投放,可以通过分析广告产出结果来合理分配广告渠道。
  2. 归因分析(Attribution Analysis):通过归因分析模型,分析不同渠道的店铺客流量数据,量化评估影响客户消费的活动因子。
  3. 面对多且杂的数据,Databricks 如何通过一站式数据分析平台和 Delta Lake 架构简化执行过程。

一、数据ETL

本文通过归因分析模型,分析不同渠道下的NewYork City快餐店的人流量数据,量化影响人们去快餐店消费的主要活动因子。

首先,从不同的媒体网站,获取分析需要的人流量的数据,模拟SafeGraph月度的人流量数,将数据存储到Bronze层。然后,进行数据清洗,将每月的时间序列数据,每日访问次数,存储到Silver层,将影响快餐店人流量的数据汇总至Gold层,进行进一步校验,确定是否满足要求。

接下来,对相关字段进行筛选,筛选出需要的字段,将店铺每日访问的人流量展示出来。

本文的数据是8月店铺的人流量,如果进行机器学习模型训练,还需要引入不同快餐店的人流量数据,来丰富该数据工程。

为了丰富数据工程,数据工程师创建了赛百味的fastfood数据集,模拟广告投放、社交媒体、门户网站的流量参数,将人流量的具体情况,默认到这个food traffic表中。

通过调用谷歌的Google Trends API,来丰富food traffic的数据。然后,将聚合后的数据写入delta gold table里,完成数据的ETL工作。

Google Trends,即常说的谷歌趋势,是谷歌基于搜索数据推出的一款分析工具。它通过分析谷歌搜索引挚每天数十亿的搜索数据,告诉用户某一关键词或者话题,各个时期在谷歌搜索引擎中展示的频率及其相关统计数据。

二、机器学习

完成ETL的相关工作之后,进入机器学习模块,将不同来源的人流量数据,统一到Data Lake架构里。通过数据清洗,得到需要的数据。然后,对数据进行校验,确定是否满足机器学习的模型训练需求。

通过使用预测模型,量化不同渠道的人流量,对最终消费进行预测。

接下来,利用模型,整合各个媒介渠道影响客流量的百分比,对广告投放的优化提出可行性的见解。

如上图所示,第一张表是整个纽约州不同城市间的人流分布图,第二张表是New York City的人流分布图。通过上图,可以直观看到不同城市间的人流量差距较大,所以要对纽约州的每个城市进行单独的分析。

接下来,使用Plot features对数据进行校验,使用Pandas数据框进行数据搜索,数据解析。

通过Python绘图,可以看到数据的分布情况,比如广告投放的连续情况,以及社交媒体网站的浏览情况。

完成上述操作后,对数据集的整体分布进行校验,得出feature分布符合预期。综上所述,该数据集满足Xgboost学习训练的要求。

接下来,使用Xgboost机器学习框架进行训练。通过调整参数,选择一个相对损失较小的训练模型,对该模型进行实际预测,从上图可以看到,红色线是预测结果,蓝色线是真实的客户流量。

通过该模型进行实际预测,得出社交媒体对客流量的影响,占总体的50.7%,网页浏览对客流量的影响,占总体的39%。故得出,不同渠道的广告对客流的影响,真实有效。

综上所述,利用SHAP模型整合各媒介渠道客流的百分比,通过绘制图表,能够准确找到影响客流量最大的因子。社交媒体和home页面访问是推动客流量最有效的渠道,所以预算分配可以有的放失,从而提高整体销售或市场份额。

三、Demo演示

操作演示视频

https://developer.aliyun.com/live/249173


产品技术咨询

https://survey.aliyun.com/apps/zhiliao/VArMPrZOR

原文链接:http://click.aliyun.com/m/1000346558/

本文为阿里云原创内容,未经允许不得转载。

使用 Databricks 进行营销效果归因分析的应用实践【Databricks 数据洞察公开课】的更多相关文章

  1. 网易郑栋:数据采集与分析的那些事——从数据埋点到AB测试

    本文由  网易云发布. 4月8日晚,DTalk邀请到了网易互联网分析产品.可视化 BI 产品的负责人—郑栋老师,进行了一次关于<网易郑栋:数据采集与分析的那些事第一弹: 数据篇>的主题分享 ...

  2. 数据采集与分析的那些事——从数据埋点到AB测试

    作者:网易有数郑栋. 一.为什么企业需要一套完善的用户行为埋点和分析平台 产品初创期间,需要分析天使用户的行为来改进产品,甚至从用户行为中得到新的思路或发现来调整产品方向:产品成长过程,通过对用户行为 ...

  3. 11月30日《奥威Power-BI智能分析报表制作方法》腾讯课堂开课啦

    这么快一周就过去了,奥威公开课又要与大家见面咯,上节课老师教的三种报表集成方法你们都掌握了吗?大家都知道,学习的结果在于实际应用,想要熟练掌握新内容的要点就在于去应用它.正是基于这一要点,每一期的课程 ...

  4. 斯坦福ML公开课笔记15—隐含语义索引、神秘值分解、独立成分分析

    斯坦福ML公开课笔记15 我们在上一篇笔记中讲到了PCA(主成分分析). PCA是一种直接的降维方法.通过求解特征值与特征向量,并选取特征值较大的一些特征向量来达到降维的效果. 本文继续PCA的话题, ...

  5. 使用Docker快速部署ELK分析Nginx日志实践(二)

    Kibana汉化使用中文界面实践 一.背景 笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要 ...

  6. 鸿蒙内核源码分析(管道文件篇) | 如何降低数据流动成本 | 百篇博客分析OpenHarmony源码 | v70.01

    百篇博客系列篇.本篇为: v70.xx 鸿蒙内核源码分析(管道文件篇) | 如何降低数据流动成本 | 51.c.h.o 文件系统相关篇为: v62.xx 鸿蒙内核源码分析(文件概念篇) | 为什么说一 ...

  7. coursera 公开课 文本挖掘和分析(text mining and analytics) week 1 笔记

    一.课程简介: text mining and analytics 是一门在coursera上的公开课,由美国伊利诺伊大学香槟分校(UIUC)计算机系教授 chengxiang zhai 讲授,公开课 ...

  8. Hadoop项目实战-用户行为分析之编码实践

    1.概述 本课程的视频教程地址:<用户行为分析之编码实践> 本课程以用户行为分析案例为基础,带着大家去完成对各个KPI的编码工作,以及应用调度工作,让大家通过本课程掌握Hadoop项目的编 ...

  9. ifconfig源码分析之与内核交互数据

    <ifconfig源码分析之与内核交互数据>本文档的Copyleft归rosetta所有,使用GPL发布,可以自由拷贝.转载,转载时请保持文档的完整性.参考资料:<Linux设备驱动 ...

  10. 投资20万研发的JFinal项目《旅游线路营销管理系统》准备公开课中

    18年初上线了一套旅游营销管理系统,目前给几个合作客户内测试用,是基于JFinal研发的一套旅游行业旅游线路批发零售系统(SAAS)版. 系统终端: PC后台管理分:总部.线路批发商.旅行社门店.个人 ...

随机推荐

  1. 基于python的固定间隔时间执行实例解析

    一 概念 datetime的用法如下: import datetime. # 打印当前时间 time1 = datetime.datetime.now() print(time1) # 打印按指定格式 ...

  2. ble的notification和indication的区别和联系

    Ble服务端传输消息有两个常用手段,notification和indication.那么这两者之间有什么区别呢? Notification 不需要应答,所以服务端发送的消息,它自己并不知道消息是否发送 ...

  3. 单麦克风AI降噪模块及解决方案

    前记   随着以AI为核心的智能设备的广泛发展,语音这个非常重要的入口一直是很多厂商争夺的市场.作为音频采集的前端设备,能采集到的距离远,清晰度高,无噪声的信号是一个非常重要的能力.这样就对音频前端降 ...

  4. mybatis-plus处理blob字段

    转载自:www.javaman.cn 在 Spring Boot 项目中使用 MyBatis-Plus 处理 longblob 字段时,我们可以按照以下步骤进行操作.假设 longblob 存储的是字 ...

  5. Postman全网最详细使用教程

    Postman全网最详细使用教程 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章, 关注回复「postman」, 获取postman插件和安装程序: http://www.jav ...

  6. LoggerMessageAttribute 高性能的日志记录

    .NET 6 引入了 LoggerMessageAttribute 类型. 使用时,它会以source-generators的方式生成高性能的日志记录 API. source-generators可在 ...

  7. 像使用stl一样使用线段树 ——AtCoder Library(转载https://zhuanlan.zhihu.com/p/459579152)

    地址:https://zhuanlan.zhihu.com/p/459579152 我这里翻译一下官方的文档. 首先需要满足几个性质. (注意 ∗ 是个操作,不是单纯的一个乘号) 1)操作满足结合律 ...

  8. 使用 NVIDIA CloudXR 从 Google Cloud 流式传输 VR 和 AR 内容

    过去,与 VR 交互需要专用的高端工作站,以及(取决于头显).壁挂式传感器和专用物理空间.VR 中的复杂任务可能会突破传感器范围.电缆长度和空间边界的限制,使艺术家陷入困境并限制他们的行动.该解决方案 ...

  9. 对象池Pools优化

    目录介绍 01.什么是对象池 02.glide哪里用到对象池 03.多条件key缓存bitmap 3.1 多条件key创建 3.2 key值的复用 04.glide对象池总结 05.学以致用对象池 5 ...

  10. 三维模型OBJ格式轻量化的纹理压缩和质量关系分析

    三维模型OBJ格式轻量化的纹理压缩和质量关系分析 三维模型的OBJ格式通常包含纹理信息,而对纹理进行轻量化压缩可以减小文件大小和提高加载性能.然而,在进行纹理压缩时需要权衡压缩比率和保持质量之间的关系 ...