Matlab Neural Network ToolboxのPython OSSの代替。相互比較はありますか?


16

私は科学研究のために商用ソフトウェアから独立したいと思います。将来的にMatlabにアクセスできるかどうかわからないし、言語が気に入らないので、Matlabやそのツールボックスなどの商用パッケージへの依存が不十分であることがわかりました。したがって、私は代替手段を探しています。

幸いなことに、私はPythonに非常に堪能であり(そしてこの言語が大好きです)、NumPy、SciPy、Matplotlib、Basemap、およびNetCDFの読み取りおよび書き込みルーチンで、ほとんどのニーズを満たします。ほとんど—フィードフォワード多層パーセプトロンを使用して衛星検索をトレーニングする必要がある場合、Matlabに戻ります。たとえば、人工ニューラルネットワークを使用します。

オープンソースソフトウェアでは珍しくありませんが、ニューラルネットワークを実行するパッケージは複数あります。かなり複数:

  • しばらく前に、「ニューラルネットワーキング用のスイスアーミーナイフ」であるPyBrainを試しましたが、短期間(開発時と実行時の両方)で満足のいく結果を得ることができませんでした。おそらく、私は十分に一生懸命に努力しなかったか、おそらくそれは私の正確な必要性に本当に向いていません。

  • たった今は有望に見えるニューロラボと呼ばれるパッケージがあることを発見しました。これは、MATLABのNeural Network Toolbox(NNT)のようなAPIを備えたPython用のシンプルで強力なニューラルネットワークライブラリです

  • ありFFnet迅速かつpythonのための使いやすいフィードフォワードニューラルネットワークトレーニングソリューションは、

  • simplennがあります

  • 計算インテリジェンスと機械学習のためライブラリであるPeachがあります

  • このStackOverflow投稿で事実上の標準として記述されているFANN高速人工ニューラルネットワークライブラリ)へのPythonバインディングがあります。

  • おそらく他にもあります。

使いやすさ、速度などの基準に基づいて、さまざまなオプションを相互比較する努力をした人はいますか?私自身の使用例は、衛星検索です。たとえば、多くの変数の強く非線形な関数を適合させます。私はニューラルネットのユーザーです。私は彼らの内部の仕組みを研究することに興味はありません。

Stats.SEに関するこの質問は関連していますが、焦点が異なります。


あなたの質問は非常に興味深いですが、あなたはあまりにも多くを求めていると思います。Pythonのさまざまなニューラルネットワークソフトウェアの包括的な評価は広すぎて、このフォーラムで回答することはできません。質問の焦点を特定の基準と関心のあるソフトウェアに絞り込むと役立つ場合があります。
ポール

さらに、質問が古すぎるため移行できません。別のSEサイトが質問に適していると思われる場合は、このサイトを削除して、他のサイトに再投稿する必要があります。質問を再投稿したとしても、質問の範囲を絞り込んで良い回答を得る可能性を高めることは、あなたにとって最善の利益であると感じています。
ポール

Pythonではありませんが、現在はニューラルネットワークにcaffeを使用しています。主に畳み込みニューラルネットワーク用ですが、従来のNNをセットアップする方が簡単です。
思源レン

クロスサイト複製:datascience.stackexchange.com/q/694/6
gerrit

回答:


1

scikit-learnをチェックアウトしましたか?それは完全に私のドメインではありませんが、いくつかの非常に前向きなユーザーエクスペリエンスを聞いたことがあります...


カテゴリーに入るだろう他の人はおそらくあります - ...追加まだリストに別のライブラリには、私の問題を解決するのではなく、私は見てほしいと思います相互比較の適用範囲を拡張していません
ヘリット・

さて、私が聞いて読んだことから、scikit-learnの利点は、多数のメソッドを含むフレームワークであることです。問題に適用されたメソッドを相互比較すると、作業が楽になるかもしれません。
GertVdE

3
scikit-learnにはニューラルネットワークメソッドが含まれていません。人工ニューラルネットワークモデルは0.12で削除され、その機能が必要なユーザーはPyBrainに切り替えることを推奨しました。
アロンアフマディア

1

テアノを見たことがありますか?それは非常に強力なようです。


1
実際、Theanoは非常に強力です。しかし、それはコンパイラー(またはフレームワーク)であり、GPU上でコンパイルおよび実行されるPythonコードを作成できます。Theano NNの実装に使用できますが、MLライブラリではありません。
アルテムソボレフ

1

私もMatlabでニューラルネットワークをPythonから使用しました。Pythonで最も強力なライブラリの1つは、「Pylearn2」http://deeplearning.net/software/pylearn2/です。現在、これは最もアクティブなライブラリであり、さまざまな機能を試すことができます。これはTheanoに基づいており、高速であるためGPUで実行できます。残念ながら、これも短所です。APIは絶えず変化しており、高い学習曲線を持っています。YAMLファイルも使用して、ニューラルネットワークを構成する必要があります。基本的なニューラルネットワークを作成するためにPyBrainを使用してより多くの成功を収めました。回帰要因の解決策が必要でした。そこでは、気象要因に基づいて発電所の負荷を予測する必要がありました。ここのガイド:http : //fastml.com/pybrain-a-simple-neural-networks-library-in-python/ 必要なソリューションの90%をくれました。

PyBrainで発見した問題の1つは速度でした。Pythonでネイティブに記述されています。ニューラルネットワークのトレーニングは、Matlabよりも50倍遅いことがわかりました。aracライブラリを使用してPyBrainのトレーニングプロセスを高速化することに成功した人もいます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.