1700500040
数据挖掘与数据化运营实战:思路、方法、技巧与应用 8.1 数据的抽取要正确反映业务需求
1700500041
1700500042
一个数据挖掘(分析)需求一旦被分析师接受和认可,数据分析师接下来要做的事情就是抽取分析用的数据,并熟悉数据。在数据挖掘实践中,因为抽取的数据不能正确反映业务需求而导致挖掘项目失败的例子并不少见,原因很简单,从错误的数据里,肯定是不能找到正确的分析挖掘结论的。举例来说,某业务分析需求是找出因为使用店铺装修工具而带来显著销售收入提升的用户群体特征,如果不对此需求详加思考,仅仅凭借字面意思,就去抽取使用了该装修工具并且有明显销售收入提升的人群,然后对该人群加以特征分析,其结果就很有可能是“垃圾进,垃圾出(Garbage In,Garbage Out)”,错误的结论将严重误导业务方接下来的业务应用。本案例里为什么上面的抽取数据思路有误呢?是其没有正确反映业务需求吗?难道不是严格按照需求描述来抽取数据的吗?
1700500043
1700500044
之所以说上述的抽取思路是错误的,是因为对于本案例所在的平台来说,用户可以有很多不同的付费工具、付费服务去提升他们的销售收入,比如用户在平台上的竞价排名就可以很有效地提升其销售额。很有可能在购买和使用了店铺装修工具的用户中,有相当数量和相当比例的人也同时使用了竞价排名等多种方式去提升销售额,换句话说,如果仅仅抽取使用了店铺装修工具并且带来显著销售收入提升的用户,而没有排除同时也使用了其他诸如竞价排名等方式的用户,那得到的特征人群的描述肯定是不符合当初的业务需求定义的。
1700500045
1700500046
在本案例中,要如何避免出现上述的错误呢?如何保证数据的抽取能尽可能反映和满足业务的需求呢?一个常用的方法就是使用控制变量,确保抽取的用户群里,不包含使用了竞价排名等主要的提升流量和销售收入手段的用户,尽可能使得这个用户群的确是因为仅仅使用了店铺装修工具而带来的销售收入提升。
1700500047
1700500048
在数据挖掘分析的实践中,如何尽量确保数据的抽取能正确反映业务需求呢?以下一些方法、原则及技巧可供参考和借鉴。
1700500049
1700500050
❑真正熟悉业务背景,这是确保数据抽取能正确反映业务需求的王道。如果分析师对于业务背景非常熟悉,那么在上述的案例中,面对相应的分析需求,他在脑海里的第一反应就应该是排除掉诸如竞价排名之类的影响,真正过滤出仅仅使用了店铺装修工具并且提升了销售收入的特定用户群体。熟悉业务背景,这句话看似老生常谈,却是历久弥坚。在很多时候最朴素的总是最珍贵的,最平凡的总是最核心的,生活的哲理也是数据挖掘的哲理,即所谓的万法归宗。
1700500051
1700500052
❑确保抽取的数据所对应的当时业务背景,与现在的业务需求即将应用的业务背景没有明显的重大改变。数据挖掘分析所针对的分析数据是有时效性的,如果应用场景的基础条件发生了根本变化,根据历史数据做出的挖掘结论对于变化了的业务环境来说是没有意义的。举例来说,如果最初的产品销售是基于猛烈的折扣和赠品活动来推动的,后期的销售并没有类似的折扣和赠品,那么基于前面折扣和赠品所带来的销售数据所做的付费用户特征分析,或者付费用户预测模型,是不能用到后期(没有折扣和赠品)对付费用户的预测上的。类似的业务环境改变的场景在瞬息万变的企业经营中是司空见惯的,数据分析师在分析挖掘实践中,一定要有意识地提醒自己,建模数据所对应的当时的业务环境,与现在业务需求所对应的业务环境是否已发生了根本性的变化,这样才能确保数据的抽取可正确反映业务需求。
1700500053
1700500054
1700500055
1700500056
1700500058
数据挖掘与数据化运营实战:思路、方法、技巧与应用 8.2 数据抽样
1700500059
1700500060
“抽样”对于数据分析和挖掘来说是一种常见的前期数据处理技术和阶段,之所以要采取抽样措施,主要原因在于如果数据全集的规模太大,针对数据全集进行分析运算不但会消耗更多的运算资源,还会显著增加运算分析的时间,甚至太大的数据量有时候会导致分析挖掘软件运行时崩溃。而采用了抽样措施,就可以显著降低这些负面的影响;另外一个常见的需要通过抽样来解决的场景就是:在很多小概率事件、稀有事件的预测建模过程中,比如信用卡欺诈事件,在整个信用卡用户中,属于恶意欺诈的用户只占0.2%甚至更少,如果按照原始的数据全集、原始的稀有占比来进行分析挖掘,0.2%的稀有事件是很难通过分析挖掘得到有意义的预测和结论的,所以对此类稀有事件的分析建模,通常会采取抽样的措施,即人为增加样本中的“稀有事件”的浓度和在样本中的占比。对抽样后得到的分析样本进行分析挖掘,可以比较容易地发现稀有事件与分析变量之间有价值、有意义的一些关联性和逻辑性。
1700500061
1700500062
在抽样的操作中,有下列一些思考点需要引起数据分析师的注意:
1700500063
1700500064
❑样本中输入变量(或自变量)的值域要与数据全集中输入变量(或自变量)的值域一致。如果自变量是连续型变量(Interval),样本中自变量的值域要与数据全集中的一致;如果自变量是类别型变量(Category),样本中自变量的种类要与数据全集中的保持一致。
1700500065
1700500066
❑样本中输入变量(或自变量)的分布要与数据全集中输入变量(或自变量)的分布保持一致,或者说至少要高度相似。无论自变量是连续型变量还是类别型变量,其在样本中的分布要能代表其在数据全集里的分布。
1700500067
1700500068
❑样本中因变量(或目标变量)的值域或者种类的分布,也要与数据全集中目标变量值域或者种类的分布保持一致,或者说要高度相似。
1700500069
1700500070
❑缺失值的分布。样本中缺失值的分布(频率)要与数据全集中缺失值的分布(频率)保持一致,或者说至少要高度相似。
1700500071
1700500072
❑针对稀有事件建模时要采用抽样措施。由于抽样所造成的目标事件在样本中的浓度被人为放大了,样本中的事件与非事件的比例与数据全集中两者的比例将不一致,所以在建模过程中,数据分析师要记得使用加权的方法恢复新样本对全体数据集的代表性。在目前主流的数据挖掘软件里,对这种加权恢复已经做了自动处理,这给数据分析师带来了很大的便利。
1700500073
1700500074
正因为数据分析师要对比样本与全集的一致性,所以在数据分析挖掘实践中,会发生多次抽样的情况,以决定合适的样本。
1700500075
1700500076
1700500077
1700500078
1700500080
数据挖掘与数据化运营实战:思路、方法、技巧与应用 8.3 分析数据的规模有哪些具体的要求
1700500081
1700500082
“分析数据的规模”与8.2节介绍的“抽样”有很大的关联性,但是,抽样的目的主要是降低数据集的规模,而本节要探讨的“分析数据的规模”,主要是指用于数据分析挖掘建模时最起码的数据规模大小。在数据挖掘实践中,如果分析数据太少,是不适合进行有价值的分析挖掘的。那么,对于分析数据的规模有没有一个大致的经验判断呢?
1700500083
1700500084
分析数据的规模,重点是考量目标变量所对应的目标事件的数量。比如在银行信用卡欺诈预警模型里,目标事件就是实际发生了信用欺诈的案例或者涉嫌欺诈的信用卡用户,而目标事件的数量就是分析样本中实际的欺诈案例的数量或者涉嫌欺诈的信用卡的用户数量。一般情况下,数据挖掘建模过程会将样本划分为3个子样本集,分别为训练集(Training Set)、验证集(Validation Set)、测试集(Testing Set)。不过,在具体的挖掘实践中,根据样本数量的大小,有时候也可以只将样本划分为两个子集,即训练集和验证集,对于模型的实践验证,通常是通过另外的时间窗口的新数据来进行测试的。相对来说,训练集的样本数量要比验证集的数量更多。训练集的数据量大概应该占到样本总数据量的40%~70%。在理想的状况下,训练集里的目标事件的数量应该有1000个以上,因为在太少的目标事件样本基础上开发的模型很可能缺乏稳定性。但是,这些经验上的参考数据并不是绝对的,在数据挖掘的项目实践中数据分析师需要在这些经验值与实际的业务背景之间做出权衡或进行折中。比如,如果训练集里的目标事件数量少于1000个,只要分析师根据业务判断觉得可行也是可以进行分析挖掘的,只是需要更加关注模型的稳定性的检验。
1700500085
1700500086
另外,预测模型的自变量一般应控制在8~20个之间,因为太少的自变量会给模型的稳定性造成威胁,而任何一个自变量的缺失或者误差都可能引起模型结果的显著变动。但是,太多的自变量也会让模型因为复杂而变得不稳定。
1700500087
1700500088
前面说过,训练集里目标事件最好要在1000个以上,在此基础上,训练集样本的规模一般应该在自变量数量的10倍以上,并且被预测的目标事件至少是自变量数目的6~8倍。
[
上一页 ]
[ :1.700500039e+09 ]
[
下一页 ]