【R应用】R 语言企业级数据挖掘应用

有奖转发活动

回复“抽奖”参与《2015年数据分析/数据挖掘工具大调查》有奖活动。

三月底参加了中国人民大学统计学院海峡两岸数据挖掘研讨会,和大家简单聊了聊R语言在京东商城的数据挖掘应用。本来想接着写篇博文说明一下, 一直也没腾出时间,今天补上。

为什么要使用R语言

在互联网企业,在分析端使用闭源的商用软件几乎是不可能的,原因很简单:成本太高,不管是使用,还是研发及维护。 但我个人觉得这可能还不是最主要的原因,对于互联网企业来说,数据虽然获取更容易,但环境更为复杂。开源软件可以根据业务的变化 进行调整,但商业的闭源软件则很难做到。

R能不能处理大数据

好多人问过我这个问题,我会说你有多大内存就能处理多大数据,这话显然不负责任。这个问题确实不太好回答,因为每个人心中的大数据是不一样的。 比如有人觉得几百万就是大数据,有些人觉得没个几亿就不算大数据,甚至有人说你处理不了的就是大数据(擦!?)。这些还只是从记录 数(数据存储)的角度来看的,我们换个角度想想:建模工程师要做的事情无非是将用户和产品进行合理匹配,那最细粒度就是用户维(或产品维)。 试问你有超过千万的用户数据分析建模么?对于一般的分析(工程)师来说,常见的情况还是几十万甚或百万级别。这个量级对于R来说就很容易了, 比如我刚刚的工作就是在自己的PC上载入了一个50000000×3的数据框。

接着我们在说说速度,曾经有太多的人抱怨R的运行速度太慢,甚至堂而皇之的公开表明观点。但我发现大部分人是因为不熟悉R语言的编程, 而是直接套用C或Java的编程方式,因而导致无法快速得到结果。举两个例子:

有次在微博上一位朋友抱怨说R做了一个几千乘几千的相关矩阵花了他1天时间,我当时就愕然了,然后默默地给了一个几秒钟搞定的脚本。 还有一次更具有代表性:我的项目组有个R的项目需要上线,于是直接把原始代码交予了一位项目成员,嘱咐他稍作改动即可上线。 但他发现需要3个小时才能将线上的数据计算完毕,于是又找到我帮忙优化。我看了一下,果不其然,Java风格的R代码,向量化编程的思想 一点都没有用。改之,3分钟结束计算。

R语言的向量化运算几乎可以和底层语言的速度一较高下,并且向量化是天然的并行化方式,如果条件允许,R的向量化编程可以很方便的转化为并行框架, 这也就是为什么说R + Hadoop是大数据的发展方向的理由之一。

再说个例子:试问100万行,20万列的数据是大数据么(你没看错,是200000维)?恩,R能够处理,而且可以在这类数据上构建模型。

再看看大数据的流动

对于管理者来说,合适的人出现合适的岗位是衡量管理者是否合格的重要标准之一。对于数据分析人员,合适的工具匹配合适的数据则是是否胜任工作的 基本素质之一。R并不是通吃所有的数据场景,它只是在出现在该出现的分析建模环节。

R的位置在哪里?先让我们看看所谓的大数据是如何从企业中传递的(摘自本次人大的演讲材料)

  • 从最底层的原始数据来看,PB级数据确实不是R所擅长,但这些数据有Hadoop或者其他高性能存储和处理系统;
  • 向上是针对于不同业务场景的数据集市,经过清洗后,数据的规模则下降到了TB级;
  • 再向上则是针对于特定任务的分析和挖掘模块,数据已经被整理到了GB级,这时候R的处理则是非常方便
  • R分析的结果则是MB级的输出,比如图表、得分,或者是规则。比如规则很容易在数据集市这段做并行化计算

我的团队在大量使用R作为分析建模工具,看似比较另类,但其实Google、Facebook、Linkedin等公司已经有大量的直接使用R做分析挖掘的应用, 只是大家不太留意罢了。


一句话总结:R并不是在象牙塔里供科研人员玩耍的玩具,而是实实在在工业界使用的便捷环境。

当然,这里还有很多问题没有展开,比如:

  • R语言的数据挖掘应该在并行化环境完成还是在单台机器的计算环境完成?
  • 抽样可否解决大数据挖掘问题?
  • 生产中直接实施R环境是否可行?

我们有时间再聊~

文章来源:http://www.bjt.name/2013/05/big-data-r-application/

1、回复“数据分析师”查看数据分析师系列文章

2、回复“案例”查看大数据案例系列文章

3、回复“征信”查看相关征信的系列文章

4、回复“可视化”查看可视化专题系列文章

5、回复“SPPS”查看SPSS系列文章

6、回复“答案”查看hadoop面试题题目及答案

7、回复“爱情”查看大数据与爱情的故事

8、回复“笑话”查看大数据系列笑话

9、回复“大数据1、大数据2、大数据3、大数据4”查看大数据历史机遇连载

PPV课大数据ID: ppvke123 (长按可复制)

本公众号专注大数据和数据科学领域,分享领域知识和相关技术文章,探索大数据商业价值,培养和挖掘大数据专业人才,欢迎大家关注!

原文发布于微信公众号 - PPV课数据科学社区(ppvke123)

原文发表时间:2016-01-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人称T客

多种云管理:2017 年可以期待哪些变化?

T客汇官网:tikehui.com 原文作者:Andrew Froehlich 编译 | 徐婧欣 ? 本文旨在让读者了解,在多种云解决方案领域,2017 年真正...

3247
来自专栏张俊红

一起来学习用户活跃的方法

本篇内容来源于图书《增长黑客》与文章《用户活跃计划分析》的学习整理。整篇内容在学习前辈的基础上进行改编,对前辈的一些理论选择性地写出来,并根据理论,配了自己平常...

3325
来自专栏mini188

谈谈敏捷开发

我对敏捷开发是源于10多年前看了一本关于迭代开发的书,从而对迭代开发有了一些兴趣。从那时开始有了迭代开发的概念。随着项目经验的增加迭代的重要性也越发觉得明显。随...

1600
来自专栏WeTest质量开放平台团队的专栏

2015马上过去了,你还没有腾讯限量版猴年公仔吗

? 2015即将逝去,新的一年就要到来, 有没有给即将到来的新年准备一份礼物呢? WeTest平台在这里准备了可爱的猴年公仔哟! ? 是不是觉得很萌很可爱,...

2114
来自专栏大数据和云计算技术

运营商常见大数据业务

3.1 运营商常见的大数据业务 第1章介绍了运营商拥有的数据资产,运营商拥有从底层的设备和网络数据到上层的用户行为数据。有了这些数据,运营商大数据便可以衍生出...

44210
来自专栏云计算D1net

如果云计算服务提供商停止提供服务,用户该怎么办?

企业在决定采用特定的云计算提供商的服务时,执行尽职调查至关重要,应该评估与提供商合作的风险。此外,IT部门必须确保业务用户参与决策过程,并了解将数据迁移到云端的...

3685
来自专栏DevOps时代的专栏

浅谈海量平台的质量管理

4403
来自专栏腾讯研究院的专栏

腾讯云平台部总经理陈磊:大数据背后的技术支撑

image.png 大数据似乎在一夜之间迅速走红,它势不可挡地冲击着金融、零售等各个行业。云计算将如何改变计算的世界?未来将有怎样的应用前景?如何解决“...

3307
来自专栏SDNLAB

企业网络战略之边缘计算:细数它的5大优势

对于希望超越传统基于云的计算架构的限制的公司而言,边缘计算已迅速成为热门。虽然企业级数据中心依旧在现代网络中发挥重要作用,但物联网设备提供的能够在更接近源的地方...

1102
来自专栏PPV课数据科学社区

数据科学家养成记:成为数据科学家八步走

但如何能成为一个数据科学家呢? 首先,各个公司对数据科学家的定义各不相同,当前还没有统一的定义。但在一般情况下 ,一个数据科学家结合了软件工程师与统计学家的综合...

4068

扫码关注云+社区

领取腾讯云代金券