java ML/数据挖掘/大数据:编程和社区支持的流行语言[已关闭]

qzwqbdag  于 2023-05-21  发布在  Java
关注(0)|答案(5)|浏览(76)

已关闭,此问题为opinion-based。目前不接受答复。
**想改善这个问题吗?**更新问题,以便editing this post可以用事实和引用来回答。

昨天关门了。
Improve this question
对于机器学习/数据挖掘,我们需要学习数据,这意味着你需要学习Hadoop,它在Java中实现了MapReduce(如果我错了,请纠正我)。Hadoop还提供了一个流API来支持其他语言(如Python)。我认识的大多数grad生/研究人员都用Python解决ML问题。我们经常看到Hadoop和Java结合的招聘职位。
我观察到Java和Python(在我的观察中)是这个领域使用最广泛的语言。
我的问题是在这个领域工作的最流行的语言是什么。在决定应该选择哪种语言/框架时涉及哪些因素?
我知道Java和Python,但总是感到困惑:

  • 我是否开始用Java编程(因为Hadoop实现)
  • 我是否开始用Python编程(因为它更容易和更快地编写)

这是一个非常开放的问题,我相信这个建议可能会帮助我和有同样疑问的人。

67up9zun

67up9zun1#

不幸的是,在我看来,统治语言是MATLAB...我说不幸的是,因为我既不喜欢也不使用这种语言,我更有可能用C++/Java编程。但是我周围的数据挖掘者和机器学习人员倾向于坚持使用MATLAB。
编辑:我刚刚在Wikipedia's page on R中读到一行非常有趣的代码:
根据Rexer在2010年的年度数据挖掘调查,R已经成为数据挖掘工具中使用最多的数据挖掘工具(43%)。

wi3ka0sx

wi3ka0sx2#

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

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

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

1aaf6o9v

1aaf6o9v3#

R是数据挖掘(当然)和机器学习的绝佳候选者。
(当然是概括性的。)
Java和Hadoop在大数据和/或扩展需求的背景下非常有意义。Java给你提供了库和程序员大军. Hadoop为您提供了相当轻松的分发和不断增长的将各种算法Map到框架的知识库。
Python似乎有学术界的支持,特别是最近的毕业生,他们现在在专业实践中非常活跃和有影响力。此外,如果你只是想尝试一些东西,像Python这样的表达性动态语言显然将被证明是非常有用的。
然后是R。(还有很多,但这是我的知识范围/g/)
我认为,除了明显关注R带来的数据之外(因此也有一个数据极客社区来帮助科学部分),它是一个令人愉快的轻量级系统和not too shabby at all in terms of libraries as well
也就是说,人们会认为(~)函数式语言(JVM上的Scala、Clojure; Haskell等)将非常适合操作数据和处理大型数据集。

yhuiod9q

yhuiod9q4#

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

bvjxkvbb

bvjxkvbb5#

Python越来越受欢迎,有很多库,对于原型设计非常有用。我发现,由于Python的许多版本及其对C库的依赖,很难部署。
R也很受欢迎,有很多库,并且是为数据科学而设计的。然而,底层的语言设计往往使事情变得过于复杂。
就我个人而言,我更喜欢Clojure,因为它有很好的数据操作支持,并且可以与Java生态系统互操作。目前它的缺点是还没有太多的数据科学库!

相关问题