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

関連記事

書籍『仕事ではじめる機械学習』を読みました

Swark:コードからアーキテクチャ図を作成できるVSCod...

OpenCVで顔のモーフィングを実装する

Quartus II

OpenCVで顔のランドマークを検出する『Facemark ...

TeleSculptor:空撮動画からPhotogramme...

Iterator

プログラミングスキルとは何か?

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

UnrealCV:コンピュータビジョン研究のためのUnrea...

WebGL開発に関する情報が充実してきている

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

SDカードサイズのコンピューター『Intel Edison』

1枚の画像からマテリアルを作成できる無料ツール『Materi...

Manim:Pythonで使える数学アニメーションライブラリ

adskShaderSDK

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

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

AR (Augmented Reality)とDR (Dim...

libigl:軽量なジオメトリ処理ライブラリ

Unity MonoBehaviourクラスのオーバーライド...

COLMAP:オープンソースのSfM・MVSツール

Unity ARKitプラグインサンプルのチュートリアルを読...

WordPressのテーマを自作する

機械学習で遊ぶ

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

openMVG:複数視点画像から3次元形状を復元するライブラ...

Deep Learningとその他の機械学習手法の性能比較

Structure from Motion (多視点画像から...

JavaScriptとかWebGLとかCanvasとか

konashiのサンプルコードを動かしてみた

2D→3D復元技術で使われる用語まとめ

チャットツール用bot開発フレームワーク『Hubot』

Qlone:スマホのカメラで3Dスキャンできるアプリ

C#で使える遺伝的アルゴリズムライブラリ『GeneticSh...

Kinect for Windows V2のプレオーダー開始

BlenderでPhotogrammetryできるアドオン

OpenCVの顔検出過程を可視化した動画

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

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

Raspberry PiでIoTごっこ

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

コメント