AI研究所 - AI(人工知能)に脅かされないために、AI(人工知能)を作る側の人間になる -

HOME  >  機械学習ライブラリ・フレームワークの一覧をまとめてみました!

公開日:2018.10.25 [最終更新日]2018.11.05

機械学習ライブラリ・フレームワークの一覧をまとめてみました!

カテゴリー: AI(人工知能)の作り方

機械学習ライブラリ・フレームワークの一覧を、限定厳選してまとめてみました。

「言語」「対応OS」「ライセンス」「GPU対応の可否」「開発元」の最後に、簡単な解説を記しています。それぞれが何に特化しているかを比較しながら、利用の一助になれば幸いです。

機械学習ライブラリ・フレームワークの一覧を、限定厳選してまとめてみました。

「言語」「対応OS」「ライセンス」「GPU対応の可否」「開発元」の最後に、簡単な解説を記しています。

・深層学習(Deep Learning)ライブラリ一覧

【Chainer】

https://chainer.org/
言語:Python
対応OS:「Ubuntu」「CentOS」「Mac OS」
ライセンス:「MIT License」
GPU対応:「可」
開発元:Preferred Networks(日本)

『解説』:Chainerは、Preferred Networksが開発したニューラルネットワークを実装する為のライブラリです。記法が直感的かつシンプルなので、単純なネットワークから、複雑なディープラーニングまで幅広くカヴァーできます。

また、端的に書く事ができます。
後述するライブラリCaffe上のコード2,058行がChainerでは167行で書けます。
加えて、設定ファイルや固定データセットが必要ありません。

Caffeでは、設定ファイルと構築したデータセットを主に使う事になっていましたので、動的にDataArgumentationしようとすると面倒です。
Chainerは、インストールが簡単という利点もあります。

これらの特徴から、AI研究所のセミナーでもChainerを使用しています。

【TensorFlow】

https://www.tensorflow.org/?hl=ja

言語:「Python」「C++」
対応OS:「Ubuntu / Linux」「Mac OS X」
ライセンス:「Apache2.0」
GPU対応:対応「可」
開発元:Google(米国)

『解説』:TensorFlowには、アプリケーションの理解、デバッグ、最適化を容易にする完全な「一通りの可視化ツール」が付属しています。

画像や音声からヒストグラムやグラフに至るまで、様々なスタイルをサポートする事で、大規模な深層(Deep)ニューラルネットワークを素早く簡単に訓練する事が可能です。

TensorFlow Mobileは、コードフットプリントと数学ツールを減らして、コードサイズの縮小を容易に可能にします。

Androidに適しているTensorFlow Mobileは、ネットワークアクセスが断続的、又は、高価である状況にも適しています。

TensorFlowを使用すると、AI開発の高速化に役立つ豊富なドキュメントやチュートリアルにアクセスできます。

また、TensorFlowには、定期的にコードを提出して、GitHubの問題を解決する利用者が、非常に活発に利用、活動している集落(コミュニティ)も存在します。

【Caffe】

http://caffe.berkeleyvision.org/
言語:「C++」
対応OS:「Windows」「Ubuntu」「CentOS」「Mac OS」「RHEL」「Fedora」
ライセンス:「BSD 2-Clause License」
GPU対応:対応「可」
開発元:Berkeley Vision and Learning Center

『解説』:CaffeはPython向けの代表的なディープラーニングライブラリです。
C++で実装されて、GPU対応ですので、高速な計算処理が可能です。

Caffe is a communityというキャッチコピーもあるほど、その開発コミュニティーが活発にGithubを更新していたり、サンプルコードも多く、初心者に推奨されています。

大規模画像認識のコンテスト「ILSVRC」で2012年に首位を獲得した「畳み込みニューラルネットワークの画像分類モデル」が直ぐに利用可能となっています。

Caffeは、カルフォルニア大学バークレー校のコンピュータヴィジョン及び、機械学習に関する研究センターである「BVLC」が中心となって開発に携わっています。

Yahoo!JAPANは2014年6月から同センターのスポンサーになっており、Caffeの開発を含めたセンターの研究の支援を行っています。

【Keras】

https://keras.io/ja/
言語:Python
対応OS:「Windows」
ライセンス:「MIT License」
GPU対応:対応「可」
開発元:various

『解説』:Kerasを利用すると深層学習の背後にある数学的な部分をスクラッチ(新規にゼロから開発する事)で実装しなくても、各層で利用するアルゴリズム(処理手順の集合)とパラメータを指定するのみなど、比較的短いコードで目的のネットワークを表現する事が可能になります。

その為、研究領域において非常に流れが早く、企業等でも素早く最新の実装が取り入られていると言う現状にある深層学習の最新手法を素早く試す事ができるのです。

また、Kerasの特徴としてドキュメント(文書のデータやファイル)が日本語化されている事も挙げられ、日本人にとってはありがたい一面です。

【dmlc MXnet】

https://mxnet.apache.org/
言語:Python C++ Scala R Matlab Julia
対応OS:「Windows」「Ubuntu / Debian」「Mac OS」
ライセンス:「Apache License2.0」
GPU対応:対応「可」
開発元:ワシントン大学&カーネギーホール大学

『解説』:MXnetはフル機能の深層学習(Deep Learning)フレームワークです。
「柔軟」「スケーラブル」「効率性」等を特徴とします。

最先端の深層学習技術「畳み込みニューラルネットワーク(CNN)」「長短期メモリネットワーク(LSTM)」等をサポートします。
クラウド環境からモバイルデバイスまでの幅広いデバイス(device:コンピュータに取り付ける様々な装置)に対応して、ディープニューラルネットワークの定義やトレーニング、開発が可能となっています。

『MXnetの豊富な深層学習モデルのサポート一覧』
1:CNN(畳み込みニューラルネットワーク)
2:LSTM(長短期メモリネットワーク)
3:RCNN(物体検出アルゴリズム)
4:Deep Q Network(強化学習手法 + ディープニューラルネットワーク)

『適応範囲』:「画像認識」「自然言語処理」「レコメンド生成」等、幅広い用途で利用されています。

「対応言語が多い」「対応OSが多種多様」ライブラリの特徴を照らし合わせながら、これからどの様なプログラミングに当たって行くのかを検討するのも悪くないでしょう。

Googleが開発に携わっていたり、Windowsで起動できたりする点は、これからAIを学び始める方にとっては安心ですよね。
多くの機械学習ライブラリはプログラミング言語「Python」を使用していますので、AI研究所のセミナーで是非学んでみてください。


参考になったら「いいね!」と「シェア」をお願いします!!

このエントリーをはてなブックマークに追加
AI(人工知能)セミナー開催中
AI(人工知能)入門セミナー AI(人工知能)入門セミナー IoT入門セミナー

AI入門ブログの中の人

AI研究所 研究スタッフ
通称:マサミ
アメリカ・サンフランシスコにある情報メディアの専門学校を卒業。大手金融会社での事務経験を経て、2016年9月よりAI研究所に入所。見習い研究員として、AI技術を日々勉強中。

Facebookページ