TensorSpace.js
Getting Start
Basic Concepts
Model Preprocessing
Models
Layers
Merge Function
Layer2d
Use this Layer when the API you are using cannot be found in the TensorSpace support list.
Create an abstract layer. You need to maintain the shape is the same as the shape of the data in the layer in your model. For example, 1-dimensional [100], use Layer1d API; 2-dimensional [100, 100], use Layer2d API; 3-dimensional [100, 100, 3]. dataFormat is channel last, use Layer3d API.
Abstract Layer, user can directly defined shape of the layer, but will not show any relation lines. Please submit Issue, we will support the corresponding API as soon as possible.️
Constructor
〔Method 1〕Use shape
TSP.layers.Layer2d( { shape: [Int, Int] } );
Arguments

Name

Tag

Type

Instruction

Usage Notes and Examples

shape

📦

Int[] shape of output shape=[100, 100] means the output is 2-dimensional array by 100*100

name

🔧

String Name of this layer. Highly recommend to arrange to make code more readable. name: "layerName"

color

⚙️🎨

color format Color of layer Layer2d default is #f08a5d

closeButton

⚙️🎨

Dict Close button appearance control dict, more about close button

display : Boolean. true[default] Show button, false Hide button

ratio : Int. Times to normal size, default is 1

For example, 2 means twice the normal size

initStatus

⚙️️🎦

String Layer status at beginning. Open or Close close[default] : Closed at beginning

animation-
TimeRatio

⚙️🎦

Int The speed of open and close animation Integer for multiple of speed. For example, 2 for 2 times of basic speed.
Properties
.inputShape : Int[]
filter_center_focusThe shape of input tensor, for example inputShape = [ 28, 2 ] represents 2 feature vectors and length of each one is 28.
filter_center_focusAfter model.init() data is available, otherwise is undefined.
.outputShape : Int[]
filter_center_focusThe shape of output tensor is 2-dimensional. 2️⃣
filter_center_focusdataFormat is channel last. for example outputShape = [ 32, 4 ] represents the output through this layer has 4 feature vectors and length of each one is 32.
filter_center_focusAfter model.init() data is available, otherwise is undefined.
.neuralValue : Int[]
filter_center_focusThe intermediate raw data after this layer.
filter_center_focusAfter load and model.predict() data is available, otherwise is undefined.
.name : String
filter_center_focusThe custom name for this layer.
filter_center_focusOnce created, you can get it.
.layerType : String
filter_center_focusType of this layer, return a constant: string Layer2d.
filter_center_focusOnce created, you can get it.
Method
filter_center_focusThis method only used in Functional Model (Non-sequential, Graph structure).
filter_center_focusLink this layer to layer which is the previous layer.
filter_center_focusTo crete a link between this layer and the previous layer. You don't need to use this method specifically to create links in Sequential Model; Instead, you can simply add layers along the lines of Keras or TensorFlow.js build the model syntax.
let inputLayer = new TSP.layers.GreyscaleInput( {

    shape: [28, 28]

} );

let layer2d = new TSP.layers.Layer2d( {

    shape: [28, 28]

} );

layer2d.apply( inputLayer );
filter_center_focusClick on the layer directly to open it by interacting directly with the object in the 3D scene.
filter_center_focusIn code, calling the method to open it.
let layer2d = new TSP.layers.Layer2d( {

    // configure some parameters for Layer2d.

} );

model.add( layer2d );

// ... add more layers for model.

model.init();

// Call openLayer API to open layer.

layer2d.openLayer();
filter_center_focusTo close by interacting directly with objects in a 3D scene by clicking the close button.
filter_center_focus In code, calling the method to close it.
let layer2d = new TSP.layers.Layer2d( {

    // configure some parameters for Layer2d.

} );

model.add( layer2d );

// ... add more layers for model.

model.init();

// If this layer already opened, call closeLayer API to close layer.

layer2d.closeLayer();
Example
filter_center_focus Declare an instance of Conv1D to facilitate reuse
let layer2d = new TSP.layers.Layer2d( {

    shape: [ 100, 100 ],
    name: "Layer2d1",
    initStatus: "open"

} );

model.add( layer2d );
filter_center_focusAdd Conv1D directly
model.add(new TSP.layers.Layer2d( {

    shape: [ 100, 100 ],
    name: "Layer2d2"

} ));
Tag Lookup
Tag Icon Meaning Instruction
⭐️ Required Must be provided, cannot be empty. Meanwhile constructor works properly if this arguments provided. Control arguments use default value.
🔧 Suggest Recommended for giving. The API can work without them.
⚙️ Optional As an auxiliary adjustment parameter when used, selectively added according to the specific situation The parameters here have no effect on the structure of the layer (3D visualized form).
📦 Model Configure the properties of the Layer. It changes the output shape.
🎨 Style Override the properties in TSP.model (model configuration)
🎦 Animation Override the properties in TSP.model (model configuration)
Source Code
tensorspace/src/layer/intermediate/Layer2d.js