G検定 AIに関するオープンソースソフトウェア

株式会社リュディアです。今回は AI に関するオープンソースソフトウェア (OSS : Open Source Software) についてまとめてみたいと思います。以前に機械学習用プラットフォームのまとめも用意しており、そこには OSS 以外も含まれています。参考にご一読ください。今回はAI に関するソフトウェア開発用の OSS についてのまとめです。

大きくわけると機械学習全般の OSSディープラーニングに特化した OSSにわけることができると思います。

機械学習全般

機械学習全般についての OSS は Python 用のライブラリが多いです。

NumPy:数値計算を行うためのライブラリ。ナンパイと読みます。当初は機械学習に特化したものではなく行列演算等のライブラリでしたが、画像や音声処理に有効なライブラリを多数含むために機械学習のプログラミングでも用いられるようになりました。

Pandas:パンダまたはパンダスと読みます。NumPy と Pandas はよく似た機能を提供しています。個人的な意見ですが pandas の方はデータサイエンスに向いているように思います。個々人での好みがあるのであくまで私見です。

SciPy:サイパイと読みます。Python の科学計算用ライブライです。こちらは科学計算に特化しているので一部 NumPy とかぶりますが機械学習に適してるのは NumPy で科学技術計算向けとしては SciPy と考えてよいのではと思います。

scikit-learn :サイキットラーンと読みます。機械学習に適したライブラリで研究者の方に人気です。機械学習に特化すると実装が容易になるライブラリと言えます。

ディープラーニング

TensorFlow:C++ および Python 用のライブラリとして Google から提供されています。ディープニューラルネットワークの構造をしっかりと理解している人に向いていると言われています。

MXNet:エムエックスネットと読みます。ワシントン大学とカーネギーメロン大学で開発されたライブラリで AWS(Amazon WEB Sertive)でサポートされているので AWS 上で開発する場合のデファクトスタンダードと考えてよいと思います。

PyTorch:パイトーチと読みます。自然言語処理で利用する機械学習ライブラリ Torch を元に作られたディープラーニング用の OSS です。Facebook の AI グループが初期の開発を行いました。非常に人気のあるライブラリです。

Caffe:UC Berkeley の Berkele Vision and Learning Cener (BVLC) を中心に開発されています。C++ と Python による開発が行われています。C++ 用のライブラリも提供されているので高速な演算が必要な用途に向いています。

一時期は新しい OSS がどんどん登場してきましたが、最近は上記にまとめたもので落ち着いてきているように思います。

では、ごきげんよう。


この記事が気に入ったらサポートをしてみませんか?