2

この質問が正しいかどうかはわかりませんが、私が持っている疑問を解決するように求めています。

  • の場合Machine Learning/Data Mining、データについて学習する必要があります。つまりHadoop、の実装があるデータJavaについて学習する必要があります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)

これは非常に自由形式の質問です。アドバイスは私と同じ疑問を持つ人々に役立つと確信しています。
よろしくお願いします

4

5 に答える 5

2

残念ながら、現在の言語はMATLABのようです...残念ながら、私はこの言語が好きでも使用もしていないため、C ++/Javaでプログラミングする可能性がはるかに高くなります。しかし、私の周りのデータマイナーと機械学習の人はMATLABに固執する傾向があります...

編集:ウィキペディアのRのページで本当に興味深い行を読んだばかりです:

2010年のRexerの年次データマイニング調査によると、Rは他のどのデータマイニングよりも多くのデータマイニング(43%)によって使用されるデータマイニングツールになりました。

于 2011-06-22T07:54:33.600 に答える
1

私はJavaとHadoopの経験はありませんが、機械学習にPythonとMATLABの両方を使用しており、MATLABをより頻繁に使用しています。実際、私の場合の重要な要素は次のとおりです。

  • 私の同僚のほとんどすべてがMATLABとC++を使用しており、Pythonを使用している人はほとんどいません。それらのPythonの使用は、特定の機械学習のものではなく、一般的なスクリプトに制限されています。したがって、Pythonを使用する場合、ヘルプを取得する唯一の方法はWebであり、ラボ内でコードを共有する際に問題が発生します。
  • MATLABのIDEとその広範なドキュメントにより、私の場合は強力になります。
  • MATLABで大きなデータセットを処理できます。リンク1リンク 2
  • MATLABで記述された多くの機械学習/データマイニングライブラリがあり、C ++/Javaで記述されたライブラリのほとんどにはMATLABラッパーがあります。

Pythonにもいくつかの点が当てはまります。しかし、私が言ったように、私が働いているコミュニティは言語を決定する上で重要な役割を果たしています。

于 2011-06-22T06:51:34.277 に答える
1

Rは、データマイニング(確かに)や機械学習の優れた候補です。

(もちろん、一般化。)

JavaとHadoopは、真剣にビッグデータやスケーリング要件のコンテキストで本当に意味があります。Javaは、ライブラリとプログラマーの軍隊を提供します。Hadoopは、非常に簡単な配布と、さまざまなアルゴリズムをフレームワークにマッピングするための知識ベースを提供します。

Pythonには学者がいるようで、特に最近の卒業生は現在、専門的な実践に積極的で影響力を持っています。また、何かを試してみたいだけの場合は、Pythonのような表現力豊かな動的言語が非常に役立つことは明らかです。

次にRがあります(もっとたくさんありますが、これは私の知識の範囲です/ g /)

Rがテーブルにもたらすデータへの明らかな焦点(したがって、科学の部分も支援するデータオタクのコミュニティ)に加えて、それは非常に軽量なシステムであり、ライブラリの観点からはまったく粗末ではないと思います。よく

そうは言っても、(〜)関数型言語(Scala、JVM上のClojure、Haskellなど)は、データの操作や巨大なデータセットでの作業に非常に適していると思います。

于 2011-06-24T22:57:45.840 に答える
0

この分野で最も人気のある組み合わせはJava/Hadoopだと思います。必要要員がpython/perl / ruby​​も必要とする場合、それは通常、スタートアップコードベースからエンタープライズに移行するために、それらのスクリプト言語(通常はそれまでの主要言語)からJavaに移行していることを意味します。また、実際のデータマイニングアプリケーションでは、Pythonはプロトタイピングや小規模なデータ処理タスクに頻繁に使用されます。

于 2011-06-22T08:23:13.230 に答える
0

Pythonは人気が高まっており、多くのライブラリがあり、プロトタイピングに非常に役立ちます。ただし、Pythonのバージョンが多く、Cライブラリに依存しているため、デプロイが難しいことがわかりました。

Rも非常に人気があり、多くのライブラリがあり、データサイエンス用に設計されています。ただし、基礎となる言語設計は、物事を過度に複雑にする傾向があります。

個人的には、Clojureは優れたデータ操作サポートを備えており、Javaエコシステムと相互運用できるため、私はClojureを好みます。現在の欠点は、データサイエンスライブラリがまだあまり多くないことです。

于 2017-06-29T13:53:46.897 に答える