当前位置 : IT培训网 > Java开发 > Java培训 > 郑州Java培训机构:大数据时代的数据建模

郑州Java培训机构:大数据时代的数据建模

时间:2016-09-01 10:28:26  来源:Java培训网  作者:IT培训网  已有:名学员访问该课程
要定义清楚你想要分析什么东西,业务需要什么样的结果,如何去量化这个业务问题。

大数据时代的到来,对传统数据统计方式造成了冲击。数据建模也需要适应时代的表格。郑州Java培训机构小编和大家探讨一下,新时代下,数据建模需要做到哪些。

1、业务问题的定义

第一步我们认为在任何大数据分析、大数据建模之前,首先要做业务问题的定义。要定义清楚你想要分析什么东西,业务需要什么样的结果,如何去量化这个业务问题。业务问题定义是很重要的,它直接决定了模型的价值和意义所在,如果模型最后的结果不能回答最开始的业务问题,或者不能满足业务的需求,我们认为这个模型分析其实是失败的。

2、数据的提取和理解

要针对一个已经定义清楚的一个业务问题去提取相关的数据。数据在哪里?去哪些数据库提取,去MySQL,SQL Server提取,还是去Greenplum里提取,还是去HBase或Codis集群里边提取。不同的数据库需要用到不同的工具和语言去做数据提取。对于数据的提取部分,一般大数据公司都会有专门的数据工程师去做。

进一步到数据的理解部分,拿到数据之后千万不要马上进入到分析的环节去,先要做大量数据理解,包括描述性的统计分析,包括一些相关性分析,包括绘制大量的图表,例如散点图、残差图等,帮助我们建立对数据的理解,这一步也是非常关键。往往通过数据的理解,就能部分回答你的业务问题,或者说建立起一系列的假设。

3、数据预处理

我们认为数据预处理会占据大概50%的时间,有一些大数据工程师或数据分析师认为拿来数据,只要尝试各种模型,就能解决这个业务问题,其实我们认为是不对的。50%以上的时间需要花在数据的预处理部分,这也是大数据和小数据的差异。

因为在大数据建模的领域,数据的噪音是非常大的。需要首先去做一些数据的清洗、降噪,例如补充缺失值,怎么去填充缺失值?是全用均值去填充?还是用模型预测的值去填充?异常值要不要去除?怎么定义Outlier?

这些都有相关的技术。需要做数据的集成,包括冗余的属性,冗余的维度,进一步在数据预处理时,还要做数据的变换,包括数据的平滑。要去做数据的规范化,数据量纲的统一,如果数据量纲差得太多的话,可能分析出来这个系数有的是0.0000几,那它的可读性是非常不好的。

在数据预处理的部分,还要去做一些数据的规约,这个部分其实是要在海量数据中提取出有代表性的数据。因为如果这个数据太大的话,其实分析起来是浪费资源的。所以如果能用一些代表性的数据去分析,而不损失信息量的话,就是规约的目的。

数据的规约包括数据离散化,抽样的技术等。这些都是数据预处理的技术,也是我个人认为在大数据建模的过程里最重要的一个环节。有一个说法叫Garbage In,Garbage Out,意思就是说,如果你不做任何数据的清洗加工,就直接进入模型的话,它其实是垃圾进入,然后出来的也会是垃圾,没有价值的结果。

4、模型算法选型

面对无数的模型算法,要选择哪个?其实是取决于你的数据情况,取决于你的业务问题。当然有大量的可供选择的模型,例如在统计建模的领域有线性、非线性的回归,有时间序列的算法等。在机器学习领域,有分类、聚类、关联规则、神经网络等。在优化运筹领域,有线性、非线性规划,模拟退火、遗传算法等。

模型的算法不是越复杂越好,从我们的经验来看,线性模型和逻辑回归能解决很多的问题。所以说能解释业务问题的模型就是好的模型,而不要盲目追求算法的复杂度。

5、分析工具和语言的选型

通常会有一些熟知的工具,例说R、Python、Java、C++等,某个模型算法,例如分类,可以用R实现,也可以用Python,也可以直接用C++

去写,这个其实取决于数据建模工程师的偏好,或者取决于分析团队负责人的偏好。一般来说,建议大家掌握2-3种工具,精通其中的一种。

6、建模挖掘

我们会利用模型算法选型决定的模型,利用分析工具选型决定的工具去进行建模的挖掘。大多数情况会尝试多几种模型,然后对比单个模型效果,或者通过Bagging、Boosting方法去投票,做组合,提高准确率。前五步的功夫做足,真正的建模挖掘步骤反倒不会是多么困难的部分。

7、进入到模型评估

模型评估其实也是一个非常重要的部分,什么样的模型才是好模型?评估模型优劣性的指标有很多种,比如说准确率、召回率。如果是统计模型,会用R Square去评估模型对于方差的解释度;会用均方根误差,RMSE这个指标去评估模型的预测效果。模型的速度、健壮性也是很重要的,包括模型的扩展性,就是在数据量大的时候,能否保证运算的效率,也是需要评估的一个指标。

另外模型的可解释性,对于业务人员也是很重要的。有一些黑箱模型,神经网络等,它天生不具备像逻辑回归的可解释性。另外,郑州Java培训机构小编认为最重要的指标是模型的结果是否是可用的,是否回答了业务的问题,这个其实是评估模型的一个最重要的指标。

8、结果可视化

需要用大量的图表去展示模型的结果,要让它的可读性变得很强,逻辑很清晰,结论很清楚,这样你才能讲给业务人员听,让业务人员理解你的模型是怎么出来的,数据分析的结果如何支撑业务,如何回答业务问题。有些数据分析师不重视可视化,他们会认为模型预测准就好了,其实可视化的过程也是帮助你总结的一个过程。

9、模型的部署

模型与企业现有的应用系统、生产系统,包括推荐、营销系统、CRM等对接,把这个模型投入到生产和业务中,让它切实发挥作用。

郑州Java培训机构小编总结的这些步骤,是供大家参考学习的。如果小伙伴们有更好的方式,欢迎和我们互动交流。

顶一下
(0)
0%
踩一下
(0)
0%

IT培训0元试听 每期开班座位有限.0元试听抢座开始! IT培训0元试听

  • 姓名 : *
  • 电话 : *
  • QQ : *
  • 留言 :
  • 验证码 : 看不清?点击更换请输入正确的验证码

在线咨询在线咨询

温馨提示 : 请保持手机畅通,咨询老师为您
提供专属一对一报名服务。

------分隔线----------------------------
------分隔线----------------------------

推荐内容