現在Octaveで作業していますが、ドキュメントが不十分なため、進捗は非常に遅くなっています。
どの言語が学習および使用が簡単で、機械学習の問題を解決するために十分に文書化されていますか?私は小さなデータセット(数千の例)のプロトタイプを探しているので、速度は重要ではありません。
編集:私は推奨エンジンを開発しています。したがって、私は正則化線形回帰、ニューラルネット、SVN、または協調フィルタリングの使用に興味があります。
現在Octaveで作業していますが、ドキュメントが不十分なため、進捗は非常に遅くなっています。
どの言語が学習および使用が簡単で、機械学習の問題を解決するために十分に文書化されていますか?私は小さなデータセット(数千の例)のプロトタイプを探しているので、速度は重要ではありません。
編集:私は推奨エンジンを開発しています。したがって、私は正則化線形回帰、ニューラルネット、SVN、または協調フィルタリングの使用に興味があります。
回答:
すぐに使えるものを使いたい場合は、Wekaが出発点として最適です。何もプログラムする必要はありません。データをインポートして視覚化し、さまざまなモデルで遊んでみます。
チェーンの次はRになります。特に、Rデータ構造に適合するようにデータを変更することで、学習曲線が関連付けられますが、それを乗り越えると、多くの労力をかけずにすべての機械学習機能を提供する多数のライブラリがあります。
次は、機械学習アルゴリズムを手動でプログラミングします。すでにOctaveを使用していて代替案を探しているので、他のシステムでコードアルゴリズムを渡すのではなく、他の人が作成したライブラリーを使用するだけでよいでしょう。
Rパスをたどると、Luis Torgo著の本(Rを使用したデータマイニング:ケーススタディを使用した学習)が非常に役立つことがあります(開示:所属なし)。問題に適応できるケーススタディについて詳しく説明します。
興味のある特定のアルゴリズムを指定すると、より良い答えが得られる可能性があります。この種のことにはRを使用します(ただし、機械学習ではなく、時系列計量経済学を使用します)。ここで既存の機能を確認できます。
http://cran.r-project.org/web/views/MachineLearning.html
そして、ハスティー、ティブシラーニ、フリードマンの統計学習の要素に分析を実装するRコードがあります。
http://www-stat.stanford.edu/~tibs/ElemStatLearn/
Rのパッケージングシステムは非常に優れており、コードのドキュメント化に向けて人々を惹きつけます。これはオープンソースであるため、いつでも実装を確認できます。私は数年前にMatlabを使用していなかったため、多くの機械学習に使用していませんでした-それらのツールボックスは通常十分に文書化されていますが、高価になる可能性がありますが、ユーザーが提供したコードは他の文書ほど文書化されていません。
Andrew Ngは、機械学習のオンラインコースでOctave / Matlabの使用を提案しています。
このコースの次のエディションに登録することをお勧めします。これは本当に便利で、Octaveやさまざまな機械学習アルゴリズムについて多くのことを学びます。
編集1:私はRで作業することを好む他の人々に同意します。ただし、機械学習の問題を解決する場合、ほとんどの計算は行列形式で行われ、@ Wayne、Matlab、またはOctave言語で非常に人気があります彼らの力のために。他の学生が提案した機械学習コースの演習のソリューションを確認することをお勧めします。きっとあなたはそれらからいくつかのことを学ぶことができます:
t(A) %*% B
はMatlabよりも直感的ではありません。
scikit-学ぶ(今はsklearn
)あなたがターゲットとするアプリケーション(L1 / L2等回帰、SVMを、ペナルティ)を含む、(速度、データ、モデル、および結果を処理するためのうまく設計されたクラス)に記載の条件のいくつかを満たす必要があります。豊富なドキュメントセットと多くの例が付属しています。JMLRで公開された論文の説明も参照してください。
Pythonの代替フレームワークはOrangeで、穏やかなGUIまたはコマンドラインから直接使用できます。協調フィルタリングの場合、pyrsvdは興味深いかもしれませんが、試したことはありません。ただし、Apache Mahoutは確かに協調フィルタリングに使用できます。
工業用プロトタイプ(つまり、純粋な研究ではなく実際の人が使用するために行われるもの)を参照する場合、現時点ではpythonが唯一の方法です。
Matlab、Octave、またはRを使用する場合、ML研究のための使いやすい環境が得られますが、ユーザーインターフェースまたはWebサービスを使用してモデルを機能させるのは悪夢になります。
Pythonで、私たちは、大規模な科学的なエコシステム(両方持っているラッキーですsklearn(考える可視化のためのMLのため、データwraglingためのパンダ、matplotlibの/ seaborn)とアプリケーションのエコシステムをジャンゴと、その静止フレームワーク)。
Pythonは学ぶのが簡単な言語です。将来的には、JavaScriptエコシステムがpythonエコシステムとして科学的に健全になることを願っていますが、いくつかの素晴らしいプロジェクトにもかかわらず、すぐには実現しないと思います。
ボックスに身を包むのではなく、一般的な言語を使用してください!