Convolution 3D
Description
Setup and add the convolution 3D layer into the model during the definition graph step. Type : polymorphic.
Input parameters
Graph in : model architecture.
parameters : layer parameters.
n_filters : integer, the dimensionality of the output space.
Default value โ3โ. size : array integer, specify the depth, height and width of the 3D convolution window. Can be a single integer to specify the same value for all spatial dimensions.
Default value โ[3,3,3]โ. Never more 3 values stride : array integer, specify the strides of the convolution along the depth, height and width. Can be a single integer to specify the same value for all spatial dimensions.
Default value โ[1,1,1]โ. Never more 3 values dilation_rate : integer, specifying the dilation rate to use for dilated convolution.
Default value โ[1,1,1]โ. Never more 3 values activation : enum, activation function to use.
Default value โreluโ. use_bias? : boolean, whether the layer uses a bias vector.
Default value โTrueโ. padding : boolean, False = โvalidโ means no padding. True = โsameโ results in padding with zeros evenly to the left/right or up/down of the input such that output has the same height/width dimension as the input.
Default value โFalseโ. data_format : enum, one of channels_last or channels_first (default) . The ordering of the dimensions in the inputs. channel_last corresponds to inputs with shape (batch, steps, features) while channels_first corresponds to inputs with shape (batch, features, steps).
Default value โchannels_firstโ. optimizer :
algorithm : enum, (name of optimizer) for optimizer instance.
Default value โadamโ. learning_rate : float, define the learning rate to use.
Default value โ0.001โ. beta_1 : float, define the exponential decay rate for the 1st moment estimates.
Default value โ0.9โ. beta_2 : float, define the exponential decay rate for the 2nd moment estimates.
Default value โ0.999โ.
filter_initializer : enum, initializer for the kernel weights matrix.
Default value โglorot_uniformโ. bias_initializer : enum, initializer for the bias vector.
Default value โzeroโ. training? : boolean, whether the layer is in training mode (can store data for backward).
Default value โTrueโ. store? : boolean, whether the layer stores the last iteration gradient (accessible via the โget_gradientsโ function).
Default value โFalseโ. update? : boolean, whether the layerโs variables should be updated during backward. Equivalent to freeze the layer.
Default value โTrueโ. lda_coeff : float, defines the coefficient by which the loss derivative will be multiplied before being sent to the previous layer (since during the backward run we go backwards).
Default value โ1โ.
in/out param :
input_shape : integer array, shape (not including the batch axis). NB : To be used only if it is the first layer of the model.
output_behavior : enum, setup if the layer is an output layer.
Default โNot Outputโโโโ.
name (optional) : string, name of the layer.
Output parameters
Graph out : model architecture.
Dimension
Input shape
5-Dimension tensor with shape : [batch_size, channel, conv_dim1, conv_dim2, conv_dim3] (default โchannel_firstโ parameters).
In case of โchannel_lastโ setup, forward function will input shape [batch_size, conv_dim1, conv_dim2, conv_dim3, channel].
Output shape
Same shape as input 5-Dimension tensor with shape : [batch_size, channel, conv_dim1, conv_dim2 , conv_dim3] (default โchannel_firstโ parameters).
In case of โchannel_lastโ setup, forward function will input shape [batch_size, conv_dim1, conv_dim2, conv_dim3, channel].
Example
All these exemples are snippets PNG, you can drop these Snippet onto the block diagram and get the depicted code added to your VI (Do not forget to install HAIBAL library to run it).
Convolution 3D layer layer
1 โ Generate a set of data
We generate an array of data of type single and shape [batch_size = 10, channel = 5, conv_dim1 = 64, conv_dim2 = 64, conv_dim3 = 3] (channel first default layer configuration).
In case of channel last layer configuration, shape is [batch_size, conv_dim1, conv_dim2, conv_dim3, channel].
2 โ Define graph
First, we define the first layer of the graph which is an Input layer (explicit input layer method). This layer is setup as an input array shaped [channel = 5, conv_dim1 = 64, conv_dim2 = 64, conv_dim3 = 3].
Then we add to the graph the Conv3D layer.
3 โ Run graph
We call the forward method and retrieve the result with the โPrediction 5Dโ method.
This method returns two variables, the first one is the layer information (cluster composed of the layer name, the graph index and the shape of the output layer) and the second one is the prediction with a shape of [batch_size, filter, new_conv_dim1, new_conv_dim2, new_conv_dim3].
Convolution 3D layer, batch and dimension

1 โ Generate a set of data
We generate an array of data of type single and shape [number of batch = 9, batch_size = 10, channel = 5, conv_dim1 = 64, conv_dim2 = 64, conv_dim3 = 3] (channel first default layer configuration).
In case of channel last layer configuration, shape is [batch_size, conv_dim1, conv_dim2, conv_dim3, channel].
2 โ Define graph
First, we define the first layer of the graph which is an Input layer (explicit input layer method). This layer is setup as an input array shaped [channel = 5, conv_dim1 = 64, conv_dim2 = 64, conv_dim3 = 3].
Then we add to the graph the Conv3D layer.
3 โ Run graph
We call the forward method and retrieve the result with the โPrediction 5Dโ method.
This method returns two variables, the first one is the layer information (cluster composed of the layer name, the graph index and the shape of the output layer) and the second one is the prediction with a shape of [batch_size, filter, new_conv_dim1, new_conv_dim2, new_conv_dim3].