- 1
- 0
- 约8.84千字
- 约 11页
- 2018-12-05 发布于湖北
- 举报
在机器学习方面使用rhadoop方案计划计划真的有那么好_光环大数据培训机构
光环大数据--大数据培训人工智能培训
在机器学习方面使用 R + Hadoop 方案真的有那么好_光环大数据培训机构
R:
R 的应用场景不在于无与伦比的统计学习能力,而在于结构化数据下无与伦
比的单位代码产出量。神经网络,决策树等基于结构化数据的算法一行代码搞定,
预测又只是一行代码。这样,商业数据库(如包括Oracle,Netezza,Teradata,
SAP HANA 等)提供了R 接口供统计分析人员进行高效实施。 同样的,SAS 和IBM
SPSS 也做到了一部分高效实施能力,他们没有的是R 独有的庞大cran packages
群。但相似的一点是,R 的package 群也把它的用户惯坏了,惯坏到这些人只是
觉得这是一个SAS 或者SPSS 的免费版,而不是去通过代码学习如何做机器学习
哪怕一点点核心原理。你要做的,就是高效的最新结构化数据算法的实施。
最重要的是,从Hadoop 上的数据加载到这些库,不仅保证了数据本身的正
确性和结构化,也已经保证了数据模型的第二、第三范式化(CAErwin 的第一课),
想做任何一个分析,你手边的数据库简单的 join 就形成了你需要的分析宽表。
想想SQL 里sum over 的设计含义:为什么它要制造数据的冗余?那一定是为了
BI 或者分析存在的。
Hadoop:
Hadoop 的应用场景不在于给统计分析软件提供强力的支持,而只是提供了
一个分布式数据的泛用免费框架,基于键值对(key value pair)高效的对原始
非结构化数据进行存储。
传统方式下目测可以做到对连续型数值、离散型数值、字符串、大型字符串
BLOB、地理信息(二维点,多边形)的存储,Hadoop 相当于直接把很多功能扩
光环大数据
光环大数据--大数据培训人工智能培训
展:比如Hive 作为一个基本工具,直接提供了更广泛的数据类型存储方案:数
组(array),结构体(struct),键值对(map)等。
业务场景:我存储一篇文章不再需要一坨文字灌进去,先做NLP 解析,然后
形成 (词,词性)的元组,再组成长数组(Array)即可方便的存储、分析,以及利
用内置UDF、自写UDF 对复杂结构行转列,提取信息。(当然,将NLP 解析本身
整合在UDF 甚至算法中都是可行的,如PySpark)
如果你至今觉得非结构化数据,键值对是一种卖弄概念,我就换一个至简的
说法:一个只有两列的数据表。两列的mn*2 和多列m*n 数据表是可以在一定加
工代价下互转的。这种数据结构被大量应用于Java,C++,Python 甚至JavaScript
中,当你看见类似Hashmap,Hashtable,dict,map 等字眼,那就是这货没跑了:
经过设计,用于存储的键(key)被散列后决定了它能够被均匀地分布式存储,值
(value)是键的跟班,随着键被存储。
对于非结构化数据而言,元数据和数据不像方表,极其容易抽象出来(无非
就是列名和方表的内容)。初看一个半结构化的Json/XML,元数据出现在键(key)
中,数据出现在值(value)中,容易理解。但在解析其他类型数据,(如网络日志
Url),键里的所谓元数据才是要分析的对象(一个用户反复的使用price=xxx 做
查询条件,说明价格敏感,有可能xxx 取了好多值甚至所有可能值,key 却很少,
可能只有price 和brand;此时用户行为模式出现在key 里了。)
结构化和非结构化数据库结合的R+Hadoop 看起来很美,实则困难重重。我
的看法是,任何一家在数据分析领域(文本挖掘暂时除外,理由在业务场景里描
述过)决定以一个稳健的态度涉足的企业,都无一例外的基于数据强一致性的考
虑,选择传统的结构化数据库作为后续结构化分析的依托—— 哪怕他们是收费
的。如果习惯代码开发,Hadoop+python 自己做初步的数据处理,而后使用基于
java 的Mahout 是一个很自然的选择:其提供的矩阵计算(SVD),迭代式聚类算
光环大数据
光环大数据--大数据培训人工智能培
原创力文档

文档评论(0)