如果你需要跟大数据打交道,不知道你周围是不是也有几个这样被称为“数据科学家”的神秘人物?他们头顶着高大洋气的光环,每天对着电脑不知道神神秘秘在捣腾什么。其实“数据科学家”作为一个新兴的名词,他们主要是采用科学方法、运用数据挖掘工具来做大数据洞察的工程师。一个优秀的数据科学家需要具备诸如数据采集、模型算法、数学软件、分析预测、市场应用等多方面的素质。如果你也想成为一名数据科学家,那么可以先从本文介绍的数据挖掘过程中的五个关系开始,一点点探索整个数据挖掘的蓝图。
1.样本和总体的关系问题
大家念书时要是学到统计学相关课程,数学老师会扔给你一批样本数据,然后让你去根据课堂上的知识做个分析或者建个模型。当时大家心里有没有想过,自己拿这么点数据分析出来的结果到底能用到实际中去么?其实平常工作学习中,我们在数据挖掘或建模的时候,采用的往往是样本数据而非总体数据。以贷款业务为例,一个P2P贷款公司只有曾在其公司有过贷款行为的客户的数据,而这些客户是所有贷款客户的一个样本。那么,有很多人就会担心这样一个问题:采用这样的样本数据训练模型是否会对结果造成影响?
这个问题的答案取决于样本大小和样本偏差。
首先来聊聊样本大小。假设我们要做一个信用评分模型,这个模型以某一客户群体的数据作为训练样本。假设每个客户由性别和职业两个变量来描述,如果性别有2种取值,而职业有18种取值,则描述这个客户群体的特征分布需要2*18=36个参数。在这种情况下,如果仅有几百个样本,那么样本量恐怕是不足够的。
一般来说,描述客户群体的维度越多,需要的样本量也越大。如果每个客户由K个变量表示,而每个变量有V种取值,则描述这个群体的特征分布需要O(K^V)个参数,需要样本量至少为10^2~10^3*O(K^V)。
再来聊聊样本偏差。如果所抽取的样本不是随机的,那么无论其选择的样本量有多大,则根据这些样本数据所估计的参数就不能准确反映所研究的总体性质的分布,这种情况下样本存在偏差。
样本偏差在实际问题中是不可避免的。还是以贷款业务为例,一个针对大学生群体的P2P公司的样本数据与贷款客户的总体数据是有偏差的。如果用存在偏差的样本训练风险评分模型,那么其在总客户群体上的表现可能一般。这种情况下,可以通过对样本加权重的方法来调整其特征分布,从而修正样本偏差。
2.数据质量和模型选择的关系
聊完数据样本的问题,我们接着看看数据质量和模型选择的关系。人们常说garbagein garbage out. 所以有人要说:“数据质量最重要,模型是浮云!”这个时候,每天研究各种模型算法的人抬头看一眼那哥们,怒火中烧。那么这两者到底什么关系呢?其实,数据质量和模型选择是实现准确预测的关键。数据质量决定了预测准确性的上限,而模型选择(包括参数调优)决定了如何达到上限。数据质量包括三个方面:一个是数据的长度,即有多少数据能够供我们分析使用,另外一个是数据的宽度,即数据的信息量是否全面。最后一个是数据的饱和度,即对于每一个研究的单元对象,其信息是否都真实反应了本体,而不存在大量缺失。训练数据集的质量直接决定了模型的可靠程度,故数据质量测试、数据清洗是在建立模型之前不可或缺的一步。
为了实现某一个商业目标,有很多模型可以作为候选。例如解决最常见的分类预测问题时,有非常多的备选的模型:线性回归模型(逻辑回归)、概率图模型(Tree-augmentedna?ve bayes)、深度学习模型等。然后可以通过KS、AUC等指标,调整模型中的参数,从而提高其表现。在数据挖掘竞赛中,单个模型表现往往中庸,而一个广泛采用的策略是通过多模型混合来提升预测的稳定性和表现。
然而,相对数学模型,数据质量乃是最关键的要素。一个数据挖掘工程师可能80%的时间用在筛选变量和清洗数据上。在现实环境中,我们首要的是经常问这样一个问题:“Whereis the data?”
3.模型准确性和模型可解释性的关系
有时候会发生这样一个场景:建模型的人欣喜若狂的拿着个评分卡模型去给业务部门看,骄傲的说了一通自己的模型有多牛逼,能如何准确地发现潜在风险违约客户。结果业务部门的人一脸困惑的问了一句:“我拿你这个结果拒绝了客户的话,我要怎么跟客户解释原因?”这里模型的准确性指的是能否准确地发现潜在风险违约客户,而模型的可解释性指的是如何理解模型评分,即,如果一个客户的信用评分为400分,那么是什么造成了他的分数比较低的。
通常情况下,模型的准确性和模型的可解释性是不可兼得的。模型越简单,则其越容易理解,但简单的模型预测准确性往往不好,例如,决策树模型可以让人一目了然的知道哪个群体的人存在风险,但其表现往往在所有模型中垫底。而一些非参数模型(如随机森林等),其规则复杂到难以用自然语言描述,无法直观的被人理解,但其预测效果却很优秀。
那么,在两者不可兼得的情况下,我们应该更重视模型的准确性还是其可解释性?相信很多人会认为准确性更重要。的确,在大多数数据挖掘竞赛中,模型算法是通过其准确性来衡量优劣的。这很容易理解,如果一个P2P借贷公司完全依靠评分卡模型来做准入审核,那么模型的准确性会直接影响到贷后的违约率,直接决定了这个公司的CEO是要跑路还是走向人生巅峰。
然而实际情况是,评分卡模型仅仅是其准入审核的一个环节,在初筛之后,风控专家会对评分卡模型不能有效分辨好坏的客户进行人工审核。人工审核的过程不仅会全面收集客户的信息,更需要通过话术策略有效的鉴别客户所提供信息是否虚假。例如,有时候风控人员可能会故意将客户提供的一些资料说错而观察其反应等。
在这种情况下,模型的可解释性就变的尤为重要。设想,如果一个评分卡模型不仅能告诉风控人员客户的潜在违约率,更可以帮风控人员在错综复杂的客户数据中梳理出一条明晰的调查线索,告诉风控专家应该着重调查客户的哪个方面以及客户之前提供的信息有哪些初看起来正常但实际自相矛盾的地方,这将对提高风险控制能力有很大作用。
4.统计分析与数据挖掘的关系
统计分析与数据挖掘都是商业智能的一方面。统计分析是运用统计方法,基于假设分布和假设检验的理论方法,总结数据与基础群体之间的联系并做预测。
数据挖掘是基于训练(Training)、验证(Validation)、测试(Test)数据集的关联,通过算法,搜索出隐藏于其中的信息。统计分析需要更多的概率分布假定,而数据挖掘更注重验证结果的可靠性。但是两者往往互通互容、相互支持,之间并没有明确的界限。
5.当前模型和模型迭代的关系
人类的行为模式在科技发展的今天是在不断演变的,所以当前模型只能反应出过去的历史规律和判断,且一般都有一个有效期。模型迭代是保证模型有效性的必然步骤。
在迭代模型的过程中,需要在风险管理阶段对上一阶段的执行情况作出判断、规划下一步的执行内容、评估风险及控制时间与资源。
附赠3句秘籍
▪ 在最终的分析中,所有知识皆为历史
▪ 在抽象的意义下,所有科学皆为数学
▪ 在理性的世界里,所有判断皆为统计
这三句秘籍可不是好信侠说的,是来自印度的传奇数学家拉曼努杨。好信侠听说,能深切体会上面三句话的真正含义,是优秀的“数据科学家”功力所在。在漫漫历史长河里,所有的判断结论皆为概率存在,这也是这个世界之所以迷人的终极原因。