TensorSpace.js
Getting Start
Basic Concepts
TensorSpace Converter
Model Preprocessing
Models
Layers
Merge Function
Model
In the TensorSpace, the idea of a "model" is not the models (aka ML model) we trained by other machine learning libraries (such as TensorFlow, Keras and TensorFlow.js). It is the fundamental concept of the TensorSpace, which is used to construct, render and maintain the neural network 3D visualization.
The model is not only a carrier
The elements used for both visualization and ML model inferences are maintained in the model. Developers can add different layers in the model as well as catch any existed layers from the model. Developers can load a pre-trained ML model as well as interact with the loaded ML models for inferences. All necessary components used to complete the neural network 3D visualization are covered in the TensorSpace model.
Fig. 1 - Expanded layers in a TensorSpace model
But also a linkage between the visualization and the inferences
The components used for visualization are actually created within the model based on the provided ML model, which builds up the correct relations between the visualizing components and the ML models. While the ML model is computing for inferences, the intermediate outputs are rendered by the corresponded TensorSpace layers, the relations among different layers are linked by relation lines, the dimensions of feature maps are labeled by text utilities ... All visualizable components and loaded ML models are related in the model.
Fig. 2 - Visualizing inference process
Summary
The model integrates the process from preprocessing the ML model to rendering the intermediate outputs, which makes it possible to 3D visualize the neural network not only the structure but also the data flow among all hidden layers.
Highlights
Model
  • filter_center_focus The Model object is one of the fundamental elements of TensorSpace.
  • filter_center_focus It is the implementation to maintain components.
  • filter_center_focus See Model for more details.
Layer
  • filter_center_focus The Layer object is one of the fundamental elements of TensorSpace.
  • filter_center_focus It is used to build the main structure of the visualization model.
  • filter_center_focus Different Layer objects could have different configurations, features and functionality.
  • filter_center_focus See Layer for more details.
Create
  • filter_center_focus init() method is the actual start of the TensorSpace visualization.
  • filter_center_focus All objects involved in visualization are actually lazy initialization by using the configurations properly.
  • filter_center_focus Since almost all of object creations are involved in the init(), it takes the longest execution time to complete.
  • filter_center_focus Once init() is called, all objects are created and the updates on configuration may require new initializations for some objects.
  • filter_center_focus A callback function can be added as a parameter to handle events after init() complete. E.g. to predict a sample input after initializing the model immediately.
Load
  • filter_center_focus load() method provides the way to involve pre-trained networks in 3D visualization.
  • filter_center_focus See Load for more details.
Inference
  • filter_center_focus predict() method plays the role of a "bridge" which extract the output data from network to the visualization components.
  • filter_center_focus See Predict for more details.