web-dev-qa-db-ja.com

機械学習:Tensorflow v / s Tensorflow.js v / s Brain.js

私は最近、機械学習技術を使用してコーディングを開始し、異なるプラットフォームに実装された機械学習を行き来していました。私がよく取り組んだフレームワークはTensorflow(Python)、Tensorflow.jsおよびBrain.jsでした。そして、私はそれらについていくつかの疑問を持っています。

  1. それらのほとんどがTensorflow.jsよりもTensorflow(Python)を好むのはなぜですか。 Tensorflowには、Tensorflow.jsにはない特別な機能があります。
  2. インターネットで見たほとんどの人は、brain.jsがJSONオブジェクトを使用しているため、開発者を煩わせずにTensorを作成し、メモリ管理などを行うにもかかわらず、brain.jsよりもTensorflow.jsを使用することを好みます。 brain.jsの実装は簡単ですが、なぜ人々はTensorflow.jsで作業することを好むのですか?
  3. Node.jsをバックエンドとして使用するWebサイトを作成している場合、長期的にMachine Learningに実装するのに適したライブラリはどれですか? Tensorflow.jsまたはBrain.js?または機械学習だけのためにTensorflowを個別に使用する必要がありますか?

私はこれらのトピックについて多くのことを探してきました。そして、私はまだ私の疑問に対する素敵な説明を持っていません。したがって、明確で詳細な説明を期待してください:)

18
Velan Salis

速度は異なります:Tensorflow> tfjs> brainjs。 Pythonはマシンコードに直接コンパイルしてCPUとGPUを直接使用できますが、tfjsはクライアントでコンパイルされているスクリプト言語であり、<canvas>ブラウザで、brain.jsと同じGPUにアクセスします(brain.jsがGPUアクセラレーションであるかどうかはわかりません)

別のことは、テンソルフローは全体のエコシステムであり、異なるプラットフォームの異なるバージョンと同期しているため、python(keras)モデルをtfjsに移植するのは本当に簡単であり、テンソルフローモデルのコーディング方法を知っていればどの言語でもできます。

また、nodejsを使用している場合、tfjsにとどまり、pythonに切り替えない唯一の理由は、JavaScript言語の方が好きか、JSバックエンドで作業しているため使用を余儀なくされることです。 。

PS:新しいライブラリがリリースされました( ML5 )。これはtfjsのラッパーであり、多くの機能を追加します。これにより、深い機械学習の背景がなくてもモデルを構築および使用できます。

19