AI×IoT×ビッグデータ技術 エンジニアの成長ブログ

人工知能(AI)やIoT、ビッグデータ技術に関連する「技術書、Eラーニング、事例、勉強会」などでの学びブログです。

ディープラーニング・機械学習技術のツール/ライブラリ比較(IoT軸)

1.chainer

  PFN系の国産ライブラリ、動かしながら実装する作り。

  基本的にどこかのクラウド依存とかない。

  環境をdockerとかで、綺麗に設計する必要あり。

  chainer UIも出て、tensorflowに横並びしつつある。最近、AWS sagemaker対応したり、MS AZUREよりだったりする。

  Chainer: A flexible framework for neural networks

 

2.tensorflow

  google系、GCPとの相性が良い。

  作って、検証する流れ。

  pythonで書けるけど、踏み込み次第で、c++を使う。エッジコンピューティング用のliteもあり、軽いモデルも作れる。

  API化する際に、大分楽で、tensorboardも便利。

  kerasを使うこともできし、JS化されたモジュールも便利。

www.tensorflow.org

 

3.neural network library

  ソニー系、エッジコンピューティングを強く意識している。3回書き直したらしい。チップセットが独自でも動くのがすごい。さすが、メーカー。

  aiboとかでも実績あるけど、Windowsによっている。でも、GUIでチューニングまでサポートしていて、強力。datarobotを意識したのか?

nnabla.org

 

4.CNTK

 MS系、LUISなどとの連携を想定するなら、便利。

 意外にWindows依存しないオープンな戦略をとっている。あまり、流行っていないのは、商用利用しにくいから?
www.microsoft.com

 

5.MXNET

MXNet: A Scalable Deep Learning Framework

AWSによるapacheプロジェクト。

AWS sagemakerとの相性が良く、かなりスケーラブル。

 

6.pytorch

PyTorch

 Facebook系。

画像認識系が強くて、顔認識の研究が当然進んでいる。

 

7.scikit-learn

scikit-learn: machine learning in Python

機械学習では、古くから定番。

決定木などベタな技術が便利。

 

とりあえず、使う分にはどれでもいいけど、

車とか計器とかによっていくものは、エッジコンピューティングとかFPGAが強くないときついので、後先を考えて導入比較をする必要あり。

あと、相当スケーラブルな要件がある場合は、MXNETやモバイルレベルで動く与件で作るのが無難。