有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

大规模机器学习Python还是Java?

我目前正在着手一个项目,该项目将涉及抓取和处理大量数据(数百gig),并对其进行挖掘,以提取结构化数据、命名实体识别、重复数据消除、分类等

我熟悉Java和Python世界的ML工具:Lingpipe、Mahout、NLTK等。然而,当涉及到为如此大规模的问题选择一个平台时,我缺乏足够的经验来决定Java还是Python

我知道这听起来像一个模糊的问题,但我正在寻找关于选择Java或Python的一般建议。JVM提供了更好的性能(?)但是像Lingpipe等库是否与Python生态系统相匹配?如果我使用这种Python,那么在多台机器上扩展和管理它会有多容易

我应该和哪一个一起去?为什么


共 (3) 个答案

  1. # 1 楼答案

    由于Apache正在大力生产优秀的产品,比如用于搜索的Lucene/Solr/Nutch、用于大数据机器学习的Mahout、用于Map Reduce的Hadoop、用于NLP的OpenNLP,以及许多NoSQL产品。最好的部分是代表集成的大“I”,这些产品可以相互集成,当然在大多数情况下它们(这些产品)可以相互补充

    Python也是很棒的,但是如果你从ASF考虑上面的话,那么我会和Sean Owen一样使用java。Python将始终适用于上述内容,但主要类似于附加组件,而不是实际的内容。例如,您可以使用Python通过流媒体等来实现Hadoop

    部分地从C++切换到爪哇,以便利用一些非常流行的Apache产品,如Lucene、SoR&OpenNLP和其他流行的开源NoSQL Java产品,如Neo4j&;OrientDB

  2. # 2 楼答案

    我认为Java的一大优势就是Hadoop。如果你真的是指大规模,你会希望能够使用这样的东西。一般来说,Java具有性能优势,并且有更多的库可用。那么:Java

  3. # 3 楼答案

    如果您正在寻找适合ML任务的NoSQL数据库,那么Neo4J是更适合生产的(相对而言)数据库之一,并且能够处理大数据,它是JAVA的原生版本,但附带了一个漂亮的现成REST API,因此可以与您选择的平台集成。JAVA将为您带来性能优势