使用Databricks进行营销效果归因分析的应用实践| 学习笔记

简介: 快速学习使用Databricks进行营销效果归因分析的应用实践

开发者学堂课程【Databricks数据洞察公开课使用Databricks进行营销效果归因分析的应用实践】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1058/detail/15566


使用Databricks进行营销效果归因分析的应用实践

 

内容介绍:

一、本次机器学习的主题:精准分析客户流量,归因评估广告效果

二、代码部分

 

主要内容是学习 DDI notebook营销数据分析里,一站式的完成机器学习的整个流程,包括,数据集的校验,模型的训练以及模型的预测。

一、本次机器学习的主题:精准分析客户流量,归因评估广告效果


是在当下的信息化时代用户每天会收到媒体投放大量的广告信息,那么如何精准地做到广告投放,通过分析广告产生的效应来合理地分配广告渠道,本文可以通过归因分析模型来分析不同渠道下的 New York City 快餐店人流量的数据,量化影响人们去快餐店消费的主要活动因子,同时会介绍面对多而杂的数据, DDI 是如何通过一站式的数据分析平台和 Delta Lake 架构来简化这些流程的。

如以下技术架构图。

image.png

首先是从不同的媒体网站上,去获要需要的人流量的数据:社交媒体网站、谷歌趋势图,还有 Safety Graph ,是一个地点模式的数据集,它是匿名的方式汇总游客的浏览信息,将这部分数据 load Data Lake里,在 Data Lake 分了经典的三层架构:基础层架构Bronze 层、数据清洗 schema 的变更存到Silver 层,数据的聚合等数据集的展示层 Gold 层,可以对这部分数据进行 Machine Learning以及离线的事故查询,做报表展示等等,都可以在 Data Lake 这架构里进行完成,同时简单提一下,在做机器学习的时候,其实前期有很多 Delta Enging 的工作要进行,比如做 Feature 的校验,那么我们可能会有字段的变更,这部分字段的变更在传统意义上,需要对这个数据进行一个重新的 alright 或者是从源头开始进行清洗工作,那么我们有了 Data Lake 架构后,在 Data Transaction log 里,直接可以对一张表进行 update ,这可以大大简化数据分析的效率

首先进行一条的数据清洗工作,那么在本小节的notebook下,我们将执行以下几个步骤。

模拟人流量的数据,存到 Bronze层,同时对数据进行清洗,将清洗后的数据写入到 Silver 层,接下来对数据影响人流量的因素进行一个聚合,将聚合后的表写入到gold 表, gold 表就是接下来想要进行机器学习训练集的数据,这部分数据需要进行进一步的校验,看是否满足训练集的要求。

 

二、代码部分


首先引入了 spark conf ,在 conf 下设置了适合本次学习资源大小的 spark session ,然后定义了一些变量,这些变量存储了一些数据集的 OSS 路径。

DDI 的架构里计算和存储是分离的,所以数据都统一存储的 OSS 上,将数据 loadData Insight 里,展示数据集的样子:如下图

image.png

可以看到 region New York stage ,纽约州, city new york cityLocation name是一家快餐店的名称,需要格外注意的是visits_by_date这个阶段,那么这个阶段它是 Array 的形式,接下来需要对它进行打平。

image.png

接下来对这段进行一个筛选,筛选出需要的字段,上图就是对visits_by_date 进行打平,理想的结果是需要将每日的访问人流量进行展示。

image.png

上图是8月的每天的顺序的人流量的情况,将数据进行打平后,它就是 by date的人流量的数据情况,将这部分数据写入到 server path 下,同时如果做机器学习模型训练集,仅仅依靠Visitor Number是不够的,需要引入不同的快餐店人流量的数据来丰富的数据工程,所以接下来又创建了一个赛百味的fast food 数据集,对数据集做了丰富,模拟了它的广告投放以及社交媒体还有它的每户网站的  Visitor 这几个参数的人流量情况,复制到 food traffic 这张表里,又通过调用Google Trends API来丰富 food traffic 这个数据,可以看到这个数据,这个数据是by week的形式,平均去访问这个关键字的人数,将人数也加入到 Traffic food这张表里,就得到了一个聚合后的数据,将聚合后的数据写入到 delta golden path 里,这样就完成了数据的一条工作。

机器学习模块

image.png

在以上架构图中,前期已经将不同的来源的人流量的数据,统一load Data Lake 架构里,通过数据清洗,同时得到了 gold table ,需要对 gold table 里的一段进行校验,校验的目的就是查看是否, feature以及这张表,它满足我们接下来的机器学习模型训练的需求,通过Xgboost  的模型来做 Machine learning

 

通过使用预测的模型来量化不同渠道的访问的人流量来最终影响消费,接下来们在本小节的 notebook 只要执行以下步骤,是使用汇总后的 gold 表作为训练集,然后对 feature 进行分部校验,同时使用 Xgboost 学习框架做训练得到训练模型,然后分析这个模型得出不同渠道下的广告,是否真实有效的影响客流量,接下来利用SHAP 模型来整合各个媒介的渠道,影响客流量的百分比,然后并对这个广告投放的优化提出一个可行性的见解,下图是需要依赖的 python 库的环境。

Xgboost ==0.90

shap==0.35.0

plotly

首先是将 gold table load insight里,通过对 table 进行分析。

这张表是整个纽约州的不同城市之间流量的分布图。

image.png

纽约人流量的分布图:

image.png

通过这两张图能够直观的认识到不同城市之间,人流量的差距是比较大的。

所以要对每个州下面的每个城市进行一个单独的分析,选择了纽约这个城市的人流量的数据集,这个数据集比较符合对训练集的要求,接下来就要对数据集里面的这些 feature做一个校验,看它是否满足要求,使用的是 Pandas 库,对数据进行解析。

image.png

然使用 Plot 的通过 Python 绘图,可以看到数据的分布情况,可以通过放大和缩小,来看到分布情况。

image.png

也可以看到整体的连续性。

image.png

比如广告投放,每日的联系情况以及4家媒体网站浏览的人流量的情况,可以看到连续的模型。

通过 Q-Q plots数据集的整体的分布进行校验,观察 Feature 的分布情况。

image.png

通过上图能够清晰观察到  feature 的分布是符合预期的。

所以综上所述,这个数据集可以满足,接下来机器学习训练的要求,使用 Xgboost 的机器学习框架进行训练,可以通过调整它的参数来选择一个相对损失较小的训练 model ,拿到这个 model 后,对 model 做实际的预测,从下图就可以看到。

红色的线就是预测出来的结果,蓝色线是真实的客户流量,线的拟合效果较好,细节处的一些峰值,有消峰的情况。

image.png

已经有了训练出来的模型,接下来要使用模型来进行实际的预测,首先预测影响是不同媒体渠道对客流量影响的百分比,从下图,就能够直观的看到。

通过Social media以及 landing page 这两个影响客流量真实消费的因素是占比最大的。

image.png

也可以通过量化的指标来看到社交媒体的占比是50.7% ,网页浏览占了39%

image.png

同时也可以把时间长度扩大,扩大到一年或者是更长的范围,也能发现不同的feature 对效应产生的影响。

image.png

全年度的的影响效果,社交媒体的影响,页面浏览的影响,以及关键字的影响,谷歌搜索的影响,能够看出来影响消费趋势。

总结:

根据绘制的图标,准确地找到影响客流的最大因素,像社交媒体以及烘培制访问是推动人流量的最有效的渠道,所以做预算分配的时候,就可以有的放矢,然后以提高销售的市场份额。


image.png

相关文章
|
4天前
|
搜索推荐 算法 数据挖掘
十个最全网站营销方法案例分析
本文探讨了10种网站营销策略:SEO优化提升搜索引擎排名;内容营销建立品牌信任;社交媒体营销扩大影响力;搜索引擎广告吸引目标用户;电子邮件营销促进销售;网站设计优化提升用户体验;移动端优化适应移动设备;数据分析驱动策略优化;视频营销吸引关注;合作伙伴营销扩展品牌覆盖。AokSend提供高效验证码发信服务,助力企业营销。选择合适策略,持续优化,以实现最佳营销效果。
|
4天前
|
机器学习/深度学习 算法 数据挖掘
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-2
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
|
4天前
|
机器学习/深度学习 Python
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-4
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
|
4天前
|
机器学习/深度学习 人工智能 搜索推荐
人工智能在营销中的应用非常广泛
【5月更文挑战第15天】人工智能在营销中的应用非常广泛
18 3
|
4天前
EDM营销平台有哪些?Top5平台分析
探索五大热门EDM营销平台:蜂邮EDM以其丰富功能备受喜爱;Constant Contact以用户友好体验著称;Sendinblue结合短信营销与广告管理,适合中小企业;GetResponse提供营销自动化解决方案,适合各类企业;AokSend以其历史底蕴和分析工具吸引用户。各平台特色各异,企业可根据需求选择。
|
4天前
|
算法 数据可视化 数据挖掘
聚类建模对智能助眠灯市场营销分析
聚类建模对智能助眠灯市场营销分析
|
4天前
|
搜索推荐
8个邮件营销平台分析及对比
本文对比了8个热门邮件营销平台:Aoksend适合初创企业,Constant Contact用户友好,Sendinblue提供多元营销服务,GetResponse功能全面,蜂邮EDM适合大规模活动,MailerLite价格实惠,Campaign Monitor专业定制,ActiveCampaign侧重营销自动化。选择时应考虑自身需求和预算。
|
4天前
|
机器学习/深度学习 数据可视化 数据挖掘
【视频】结构方程模型SEM分析心理学营销数据路径图可视化|数据分享
【视频】结构方程模型SEM分析心理学营销数据路径图可视化|数据分享
|
4天前
|
机器学习/深度学习 算法 Python
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享(下)
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
|
4天前
|
机器学习/深度学习 算法 数据挖掘
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享(上)
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享

热门文章

最新文章