不熟练数据挖掘的人员有时太急于抛出不太可能有意义的变量,且只保存了他们认为重要的几个精心挑选的变量。数据挖掘方法要求数据本身能揭示它重要或不重要。
通常情况下当与其他变量结合使用时,原先被忽视的变量会具有预测价值。例如:一个信用卡者从未把把现金刷没又继续刷,通过数据挖掘发现他们仅在11月和12月才会使用用信用卡垫付。据推测,这些人非常谨慎,大部分时间他们都避免因多刷而产生的高利息,谨慎也推断出一个结论(他们比习惯使用现金垫款的人更加不太可能选择拖欠欠款),但在假期,他们需要一些额外的现金,并愿意为此付出较高的利息。
2.4数据必须包含什么?
最低限度,数据必须包含有可能有意义的结果的例子。有指导数据挖掘的目的是预测一个特定目标变量的值,但在有指导的数据挖掘中,模型集必须由分类好的数据组成。要区分哪些人拖欠贷款哪些人不可能拖欠,模型集的每个类都需要有成千上万的例子。当一个新的申请产生时,他的申请会与过去的客户的申请进行对比,可以直接把新的申请归类。这其中隐含的意思:数据可用来形容过去发生了什么事情,从错误总吸取教训,首先我们必须识别我们已经犯了什么错。
3、认识数据
在数据用于构建模型之前,在探索数据上花费时间的重要性通常没有得到足够的重视。后面我们会抽出绝对的篇幅来说明这个问题。优秀的数据挖掘工程师似乎非常依赖直觉——例如,某种程度上能够猜测将要派生的变量结果如何。要在陌生的数据集中利用直觉来感应发生了什么事情,唯一办法就是陷入数据之中,你会发现许多数据质量的问题,并能够得到启发提出在其他情况下不容易被发现的问题。
3.1检查分布
在数据库的初步探索阶段,数据可视化工具非常有益,如:散列图、条形图、地理地图、Excel等可视化工具对观察数据提供了强大的支持。
当你开始着手一个新数据源中的数据文件,就应该剖析数据了解到底发生了什么,包括计数和每个字段的汇总统计,分类变量不同值的数量,并在适当的情况下,需要基于产品和区域的交叉统计表。除了提供对数据的了解,剖析工作可能会产生不一致问题或定义问题的警告,这些问题可能会对后面的分析造成麻烦。
3.2值与描述的比较
观察每个变量的值,并把它们与现有文件中的变量描述进行比较。这项工作可以发现不准确或不完整的数据描述。其实是,你记录的数据,是否和你要描述的数据一致,这个要先确定。目的是什么?在实际的数据挖掘过程中,你要去揣测这个字段的数据到底是什么意思?如果业务人员知道,那是最好的了。如果业务人员都不知道,这个时候,可能就需要凭借经验去揣测了,而且这种情况经常发生,字段定义不明确。
3.3询问大问题
如果数据看上去似乎不明智或者不如所愿,记录下来。数据探索过程的一个重要输出是对提供该数据的人给出一个问题列表。通常,这些问题将需要进一步研究,因为很少有用户像数据挖掘工程师一样仔细地观察数据。对数据的探索的前期工作,判断字段,含义,是否有用,是否缺失,是否有问题等一系列问题,需要大量的工作,同时也是一件心细的过程。
4、创建一个模型集
模型集包含建模过程中使用的所有数据。模型集中的一些数据被用来寻找模式,对于一些技术,模型集中的一些数据被用来验证该模型是否稳定。模型集也可用来评估模型的性能。创建一个模型集需要从多个数据源聚合数据以形成客户签名,然后准备数据进行分析。
4.1聚合客户签名
模型集是一个表或一系列表,每一行表示一个要研究的项目,而字段表示该项目有利于建模的一切。当数据描述客户时,模型集的行通常称为客户签名。客户签名,每个客户都由他离开的踪迹唯一确定,你可以利用踪迹充分的了解每个客户。
从关系型数据库中聚合客户签名旺旺需要复杂的查询,这些查询往往需要关联很多的表去查询的数据,然后利用其他来源的数据增强结果。聚合数据的一部分过程是使数据位于正确的汇总层次,然后每一行都包含先关客户的所有信息。