前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据建模无从下手,看看这篇文章

数据建模无从下手,看看这篇文章

作者头像
Banber可视化云平台
发布2021-09-17 10:14:33
4140
发布2021-09-17 10:14:33
举报
“我最近在学习数学建模相关知识,一些模型,例如马尔科夫模型,数据包络分析,时间序列分析等等,我去网上各种论坛博客,搜索资料,看博主们写的文章,但总是有些一知半解,就是大概知道这些模型是干什么,但是好像也不是很清楚,一些术语啊什么的越看越模糊,想自己搞懂然后整理出实现的代码却发现无从下手。”

从这个问题来看,应该是对于为什么要学习数据建模不是非常清楚。我们从经验角度来做个分享,相信对于有所帮助。

也许学习数据建模知识是为了找数据分析工作,因为很多数据分析工作中都有要求说。要懂算法的数据建模,所以这是进入这个岗位必备具备的门槛。

但是很重要一个问题,你更多专注于这个技能包括哪些知识,哪些具体的算法。算法的原理是什么,如何实现。

但是像问题中提到的,下面的问题其实应该是要先了解清楚:

到底数据建模解决什么类型的问题。例如:如果你去负责C端的会员数据分析,业务方有这样的场景说,能否告诉我:

  • 每个用户未来流失的可能性是什么?
  • 针对可能的流失会员特征是什么?
  • 有相关的数据画像或者标签,或者有相关的数据后,可以针对性的构建运营方案,来降低会员流失率。
  • 后续可能流失高价值的会员提前预警,避免会员已经休眠了再来进行营销动作,从而效果会大大打折。
  • 在企业工作场景中,什么样的场景会用到数据建模?
  • 在实际企业工作中,数据建模的流程是怎么样的?
  • 在数据建模过程中,要注意哪些问题,才能保证建出来的模型是有效的?

如果没有搞清楚上述问题,当你去看网上别人写的文章或者分享的案例,往往就会一知半解。往往看了好多也没有感觉:

似乎好像学习到什么了,但是真要自己动手不知道如何下手。

我们以一个案例来完整描述一下,来解释如何学习数据建模:

一、商业价值理解阶段

商业问题:

  • 会员是公司核心资产,公司花了大量的钱把会员引入后。希望会员持续购买、持续完成在公司要的商业动作(有的未必是购买,例如:持续活跃,持续使用产品,公司通过广告变现等)。
  • 所以对于可能流失的会员进行相应的营销动作,把会员挽回。

商业目标:

  • 降低会员流失率10%。【在数据建模的时候,一定是要有非常非常清楚的商业目标,就是要解决的问题,具体改善哪些数据指标,改善多少。】

经验分享:

上述只是大概说明,在做模型之前相关的背景问题,目标必须花大量时间去理解,去确定。我之前团队的算法的小伙伴,我经常会问:

你这个模型做了要改善什么问题?

往往会说:要给会员打上流失概率标签;

解决业务具体什么问题?

解决会员流失预测,解决会员流失

这个模型能解决多少程度的问题?是10%,20%?

往往就没有办法明确回答。

所以很多公司算法工程师,往往就是在做模型,做模型。但是没有明确要解决问题到什么程度?

算法模型离线构建好后,要和业务沟通进行测试。要明确模型建好后,会在什么下的商业场景使用?例如:每周都会有流失概率达一定值的或者区间的进行主动营销。 还是有标签后,每天更新模型,系统自动会触发自动营销。 才能真正回答,模型能解决多大的问题。往往在商业环境说,很多人认为算法模型能解决所有问题一样,这是一个很可怕的想法。往往很难让花大量时间做的模型产生多大效果。

在这个阶段围绕商业价值与目标,多和业务讨论沟通。业务人员会给你很多业务知识上的输入:特别是描述清楚,从业务经验来说,什么类型的会员更可能会流失。

业务可能会说,一般第一次购买的会员,如果1个月不回来,一般就不会再来说了。因为之前通过数据分析,往往业务积累了很多业务洞察。

二、模型构建阶段

基于对于商业目标确定了。

建模数据周期:

会对建模对象进行定义,本案例中就是:流失会员的定义是什么?例如:截止到2020.8,最后一次购买时间离2020.8超过90天的。

建模的数据周期。例如:选择2019.1-2020.8作为建模的数据周期。

建模型的测试周期。例如:2020.8-2020.12作为模型验证周期。

算法模型选择:

算法是预测类,常用的算法如下。根据你选择的数据指标,数据类型来选择相应的算法模型。当然现在很多时候往往可以几个算法同时使用,可以结合几上算法预测结果综合使用。

  • 逻辑回归
  • 决策树
  • 随机森林
  • ......

但是建议,在实际应用的模型中,不像推荐算法这种实时应用场景。一般选择常规的算法模型都能满足商业的诉求。

建模数据指标构建:

构建模型,使用哪些数据指标

每个数据指标的定义

开始在数据库中清洗相应的数据指标

有时候也会对进入算法的数据指标进行相应的预处理,例如:归一化处理,相关性分析,删除一些高相关性变量;对缺失的数据记录进行处理等。

构建算法模型:

使用相应的算法工具来实现上述的选择算法。一般来说,大多数据的公司不会自己去开发底层的算法,一般使用相关的软件可以满足我们日常的商业应用,例如:

python,SAS等。

然后验证模型的有效性,模型命中率等模型本身的指标没有问题后。用建好的模型去跑验证数据集,看看效果如何。

开发模型阶段效果再好,也要放到实际环境中检验。往往在建模阶段不要过于追求模型效果多少,例如:超过90%。往往会存在模型的过拟合模型开发的数据,放到新的数据可能模型效果就很差的。所以模型的鲁棒性非常重要。

经验分享:

在跑模型的时候,你需要对模型不断进行调优。主要是:模型本身的参数,进入模型的数据指标数,新的数据指标。以我个人来看:我更喜欢从数据指标的构建来调优模型。不是纯从技术上调优,我认为模型最后还是体现人对业务的思考的结构化沉淀。

使用模型:

如果模型整体通过了,就跑出数据结果来。让业务方放在真正的业务场景去测试,收集效果。不管模型算法,或者过程使用了多少高深的技术,回过来还是要真正放到商业环境中跑与测试。

最后,我要说真正企业做数据分析。会用到算法模型,但是很少。因为往往业务方需要是希望先对基于数据进行商业洞察,设计商业策略,快速落地与迭代。但是当商业模型很大的时候,是要开始构建算法模型,考虑更多维度,更多指标来判断与发现商业机会点。

来源:知乎@数据海洋

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-09-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 RayData Report 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、商业价值理解阶段
  • 二、模型构建阶段
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档