ML /数据挖掘/大数据:用于编程和社区支持的流行语言

时间:2011-06-21 17:54:57

标签: java python hadoop machine-learning bigdata

我不确定这个问题是否正确,但我要求解决我的疑虑。

  • 对于Machine Learning/Data Mining,我们需要了解数据,这意味着您需要了解Hadoop,其中Java的{​​{1}}实施了MapReduce错误)。
  • Hadoop还提供streaming api支持其他语言(例如python
  • 我认识的大多数研究生/研究人员在python中解决ML问题
  • 我们经常看到hadoop and Java combination的职位

我发现JavaPython(在我的观察中)是这个领域最广泛使用的语言。

  • 我的问题是most popular language处理此域名的问题。
  • factors涉及决定选择哪种语言/框架的内容
  • 我知道Java和python,但总是困惑:
    • 我是否开始使用Java(because of hadoop implementation)
    • 进行编程
    • 我是否开始使用Python(because its easier and quicker to write)
    • 进行编程

这是一个非常开放的问题,我相信这些建议可能对我和有同样疑问的人有所帮助 非常感谢提前

5 个答案:

答案 0 :(得分:2)

不幸的是,在我看来,统治语言是MATLAB ...我不幸地说,因为我既不喜欢也不使用这种语言,我更有可能用C ++ / Java编程。但是我周围的数据挖掘者和机器学习者倾向于坚持使用MATLAB ......

编辑:我刚刚在Wikipedia's page on R中读到了一段非常有趣的内容:

  

根据Rexer在2010年的年度数据矿工调查,R已成为   更多数据挖掘者使用的数据挖掘工具(43%)比其他任何人都多。

答案 1 :(得分:1)

我没有Java和Hadoop的经验,但我使用Python和MATLAB进行机器学习,现在我更经常使用MATLAB。实际上,我案例的重要因素如下:

  • 我的几乎所有同事都使用MATLAB和C ++,其中很少有人使用Python。他们的Python使用仅限于通用脚本,而不是特定的机器学习内容。因此,当我使用Python时,获取帮助的唯一方法是使用Web,我们在实验室中共享代码时遇到问题。
  • MATLAB的IDE及其丰富的文档使我的案例更加强大。
  • 您可以在MATLAB中处理大型数据集。 link 1 link2
  • 有许多用MATLAB编写的机器学习/数据挖掘库,大多数用C ++ / Java编写的库都有MATLAB包装器。

Python也有一些观点。但正如我所提到的,我所在的社区在决定语言方面起着重要作用。

答案 2 :(得分:1)

R是数据挖掘(当然)和机器学习的绝佳选择。

(概括,当然。)

Java和Hadoop在严重的大数据和/或扩展要求的背景下非常有意义。 Java为您提供了库和一大批程序员。 Hadoop为您提供了相当轻松的分发以及将各种算法映射到框架的不断增长的知识库。

Python似乎有学术上的支持,特别是近期毕业生,他们现在在专业实践中活跃并且有影响力。另外,如果你只想尝试一些东西,像Python这样富有表现力的动态语言显然会非常有用。

然后是R.(还有更多,但这是我的知识范围/ g /)

我认为除了明显关注R带给桌面的数据(因此也是一个帮助科学部分的数据极客社区),它是一个令人愉快的轻量级系统not too shabby at all in terms of libraries as well

也就是说,人们会认为(〜)函数式语言(Scala,JVM上的Clojure; Haskell等)非常适合处理数据和处理大型数据集。

答案 3 :(得分:0)

我认为在这个领域最流行的组合是Java / Hadoop。当职位空缺也需要python / perl / ruby​​时,通常意味着他们从那些脚本语言(通常是主要语言,直到那个时候)迁移到java,因为从启动代码库迁移到企业。 同样在现实世界的数据挖掘应用程序中,python经常用于原型设计,小型数据处理任务。

答案 4 :(得分:0)

Python越来越受欢迎,拥有大量库,对原型设计非常有用。我发现由于python的许多版本及其对C lib的依赖性很难部署。

R也很受欢迎,有很多库,专为数据科学而设计。但是,基础语言设计往往会使事情过于复杂。

就个人而言,我更喜欢Clojure,因为它具有出色的数据操作支持,并且可以与Java生态系统互操作。目前的缺点是,目前还没有太多的数据科学库!