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

関連記事

BlenderのPython環境にPyTorchをインストー...

Point Cloud Libraryに動画フォーマットが追...

プログラムによる景観の自動生成

MeshLab:3Dオブジェクトの確認・変換に便利なフリーウ...

畳み込みニューラルネットワーク (CNN: Convolut...

C++始めようと思うんだ

Super Resolution:OpenCVの超解像処理モ...

Google Chromecast

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

OpenGVの用語

写真から3Dメッシュの生成・編集ができる無料ツール『Auto...

Faster R-CNN:ディープラーニングによる一般物体検...

iOSで使えるJetpac社の物体認識SDK『DeepBel...

オープンソースのプリント基板設計ツール『KiCad』

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

Twitter APIのPythonラッパー『python-...

adskShaderSDK

ブログの復旧が難航してた話

Faceshiftで表情をキャプチャしてBlender上でM...

GAN (Generative Adversarial Ne...

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

OpenCV 3.1のsfmモジュールを試す

hloc:SuperGlueで精度を向上させたSfM・Vis...

ROMOハッカソンに行ってきた

Raspberry Pi 2のGPIOピン配置

D3.js:JavaScriptのデータビジュアライゼーショ...

Raspberry Pi 2を買いました

OpenCVでiPhone6sのカメラをキャリブレーションす...

続・ディープラーニングの資料

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

Mechanizeで要認証Webサイトをスクレイピング

R-CNN (Regions with CNN featur...

OpenCV3.3.0でsfmモジュールのビルドに成功!

Google XML Sitemap Generatorプラ...

オープンソースの顔の動作解析ツールキット『OpenFace』

オープンソースのIT資産・ライセンス管理システム『Snipe...

Autodesk Mementoでゴジラを3次元復元する

疑似3D写真が撮れるiPhoneアプリ『Seene』がアップ...

Raspberry PiのGPIOを操作するPythonライ...

IronPythonを使ってUnity上でPythonのコー...

Immersive Math:線形代数をインタラクティブに学...

書籍『ROSプログラミング』

コメント