主要なDeep Learning Libraryの一覧

このページでは,近年 (2021年 現在)よく使用されている代表的な Deep Learning Library をカテゴリごとに整理する.

公的な研究・論文向けの,無償で使用できるものを中心に一覧化してある.商用使用を目的とするものや,クラウドデプロイ目的の商用サービス (例えばAmazon SageMakerなど)は,このページではリストアップしていない.

代表的な コア Deep Learning Library

PyTorch と TensorFlowが(特に研究開発向けでは)2強である.(それに加えて MXNet 勢,というのが2021年現在の現状).

ニューラルネットのアーキテクチャ図の作成

  • NN-SVG: 単純な形式のCNNアーキテクチャ図をブラウザ上で作成できる.FCN, LeNet, AlexNetの3種から選べる.
  • PlotNeuralNet:LatexコードやPythonで,論文用の精緻なCNNアーキテクチャの図を作成できる.UbuntuもしくはWindows(Cygwin環境)で使える(※著者がMacで使いたくてたまらないソフトウェア).
  • conv_arithmetic:畳み込み演算のアニメーション,斜め上カメラ位置から見た図を作れる.
  • Tensorspace.js:TensorFlow.js, Three.js and Tween.js. を用いた,Keras的なAPIでコーディングしたニューラルネットワークアーキテクチャを,ブラウザ上で3次元可視化できる.

Computer Vision 向けのライブラリ

  • コンピュータビジョン全般
    • OpenMMLab:SenseTime関係各位が中心として公開されたライブラリ.特にDetectionのMMDetectionが有名. 全体像や,使用法は CVPR2021のチュートリアルが参考になる.
    • GluonCV:MXNetを使用したコンピュータビジョン用のフレームワーク.画像認識/物体検出/セグメンテーション/人物姿勢推定/アクション認識など,代表的な問題設定むけのDeepネットワークを,少ない行数で構築することができる.Model Zoo を見ると,用意されている学習済みネットワーク一覧を確認できる
  • 物体検出
  • モバイル向け
    • MediaPipe (from google) :スマホカメラ向けのリアルタイム画像認識ライブラリ.

NLP 向けのライブラリ

  • AllenNLP:Allen Instituteが提供するDeep Learning手法ベースの自然言語処理ライブラリ.
  • Huggingface🤗のTranformers:Transformersを基盤とするオープンソースの自然言語処理ライブラリで,最新のNLPモデルを誰でも簡単に使うことができる.このライブラリの初心者は公式提供のコース (Pytorch/Tensorflow)をまず参照のこと.登場の経緯については,TechBlitzでの創業者インタビュー が参考になる
  • spaCy: 実応用向けの,Pythonによる総合NLPツールキット.最先端の研究者やその成果を使いたい人はHuggingfaceになってきているが,spaCyは様々なタスクの学習済みモデルが収録されており使い勝手が良く,v2.3 から日本語モデルも正式に追加され,日本語でのNLPにも使える.更に, v3.0からTransformerモデルも導入された.64以上の言語向けでモデルが収録されており,Pytorch/Tensorflowで独自モデルも組める.
  • Stanza (github) : Stanford NLP Groupによる,PyTorchベースの自然言語処理ライブラリ.66言語向けの多言語に対応しており,Stanford としては,NLTKの後継ライブラリである.spacyでのラッパーを使うと,spacyからもStanzaの各機能を使えたりする.

その他 ライブラリ(用途別)

↓ ためになった方は,記事をSNSでシェアをしてくださると,管理人の記事執筆モチベーションが上がります