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

関連記事

OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる

pythonもかじってみようかと

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

Google App EngineでWordPress

U-Net:ディープラーニングによるSemantic Segmentation手法

OpenSfM:PythonのStructure from Motionライブラリ

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

Math Inspector:科学計算向けビジュアルプログラミングツール

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

fSpy:1枚の写真からカメラパラメーターを割り出すツール

Iterator

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

書籍『データビジュアライゼーションのデザインパターン20』読了

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

ブログをGoogle App EngineからAmazon EC2へ移行

JavaScriptとかWebGLとかCanvasとか

3D Gaussian Splatting:リアルタイム描画できるRadiance Fields

MPFB2:Blenderの人体モデリングアドオン

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

HD画質の無駄遣い

NumSharp:C#で使えるNumPyライクな数値計算ライブラリ

ManimML:機械学習の概念を視覚的に説明するためのライブラリ

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

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

UnityからROSを利用できる『ROS#』

NeuralNetwork.NET:.NETで使えるTensorFlowライクなニューラルネットワー...

ROSの薄い本

bpy-renderer:レンダリング用Pythonパッケージ

Open Shading Language (OSL)

UnityのAR FoundationでARKit 3

Russian3DScannerのトポロジー転送ツール『WrapX』

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

Iridescence:プロトタイピング向け軽量3D可視化ライブラリ

Physics Forests:機械学習で流体シミュレーションを近似する

Unity ARKitプラグインサンプルのドキュメントを読む

hloc:SuperGlueで精度を向上させたSfM・Visual Localization

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

ニューラルネットワークで画像分類

画像認識による位置情報取得 - Semi-Direct Monocular Visual Odome...

iOSデバイスと接続して連携するガジェットの開発方法

ブラウザ上でJavaScript,HTML,CSSを書いて共有するサイト『jsdo.it』

ポイントクラウドコンソーシアム

コメント