TensorSpace.js:ニューラルネットワークの構造を可視化するフレームワーク

Twitterで知ったブラウザ上でインタラクティブにCNN(Convolutional Neural Network)のネットワーク構造を3Dで可視化できるオープンソースのフレームワークTensorSpace.js。ネットワーク構造だけでなく、特徴マップも可視化できる。
Apache License 2.0だそうです。

TensorSpace.js

TensorSpace.js

TensorSpaceは、TensorFlow.js, Three.js, Tween.jsで構築されたニューラルネットワークの3D視覚化フレームワークです。TensorSpaceは、ディープラーニングのレイヤー構築、訓練済みモデルの読み込み、ブラウザ上での3D可視化できるKerasライクなAPIを提供します。
TensorSpaceなら、モデルの構造とは何なのか、モデルはどのように訓練されているのか、モデルが中間情報に基づいてどのように結果を予測しているのかを直感的に学ぶことができます。
TensorSpaceでは、モデルの前処理を行うことでTensorFlow, Keras, TensorFlow.jsで事前に訓練したモデルの可視化をサポートしています。



例のごとく、ソースコードはGitHubにある↓
https://github.com/tensorspace-team/tensorspace

ドキュメントはこちら↓
https://tensorspace.org/html/docs/startIntro.html
Documentation

ただ、自分で動作環境を構築しなくてもデモページで有名なニューラルネットワーク(LeNet, AlexNet, VGG-16, ResNet-50, MobileNetv1, YOLOv2-tiny, ACGAN)の可視化を試すことができる↓
https://tensorspace.org/html/playground/index.html

LeNet

LeNet

AlexNet

AlexNet

YOLOv2-tiny

YOLOv2-tiny

ResNet-50

ResNet-50

ACGAN

ACGAN

オイラは仕組み・プロセスの可視化が大好物なので、こういう可視化ツールすごく好きです。


畳み込みニューラルネットワーク (CNN: Convolutional Neural Network)
例の書籍「ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装」を一通り読み終わりました。「あえてPythonを使わずにUnity C#で実装しながら勉強する」とか言っておきながら、結局途中でコーディン...


高橋 啓治郎さんのGANのUnity移植もそうだったけど、この可視化実装の敷居が下がっているのはTensorFlow.jsの存在がかなり効いているんだろうか。
https://qiita.com/keijiro/items/8874c5730feaf80b7943

関連記事

第25回コンピュータビジョン勉強会@関東に行って来た

AfterEffectsプラグイン開発

PyMC:Pythonのベイズ統計ライブラリ

オープンソースの物理ベースレンダラ『Mitsuba』をMay...

機械学習に役立つPythonライブラリ一覧

AMIMOTO(PVM版)で作成したインスタンスをAMIMO...

ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...

trimesh:PythonでポリゴンMeshを扱うライブラ...

PythonのHTML・XMLパーサー『BeautifulS...

pythonの機械学習ライブラリ『scikit-learn』

UnityのGameObjectの向きをScriptで制御す...

ディープラーニング

Russian3DScannerのトポロジー転送ツール『Wr...

網元AMIで作ったWordpressサイトのインスタンスをt...

ニューラルネットワークと深層学習

オープンソースの人体モデリングツール『MakeHuman』の...

YOLO (You Only Look Once):ディープ...

MLDemos:機械学習について理解するための可視化ツール

OpenCV 3.1とopencv_contribモジュール...

RSSフィードを読込んで表示するWordpressプラグイン...

Math.NET Numerics:Unityで使える数値計...

株式会社ヘキサドライブの研究室ページ

Caffe:読みやすくて高速なディープラーニングのフレームワ...

Model View Controller

represent

機械学習での「回帰」とは?

Pythonの自然言語処理ライブラリ『NLTK(Natura...

OpenCV 3.3.0-RCでsfmモジュールをビルド

GeoGebra:無料で使える数学アプリ

BlenderProc:Blenderで機械学習用の画像デー...

LLM Visualization:大規模言語モデルの可視化

UnityユーザーがUnreal Engineの使い方を学ぶ...

Kornia:微分可能なコンピュータービジョンライブラリ

PCA (主成分分析)

OANDAのfxTrade API

Open3D:3Dデータ処理ライブラリ

python-twitterで自分のお気に入りを取得する

オープンソースのネットワーク可視化ソフトウェアプラットフォー...

3分の動画でプログラミングを学習できるサイト『ドットインスト...

Javaで作られたオープンソースの3DCGレンダラ『Sunf...

フィクションに登場するUIデザインのまとめサイト

Adobeの手振れ補正機能『ワープスタビライザー』の秘密

コメント