Predict responses using a trained deep learning neural network
Deep Learning Toolbox / Deep Neural Networks
The Predict block predicts responses for the data at the input by using the trained network specified through the block parameter. This block allows loading of a pretrained network into the Simulink® model from a MAT-file or from a MATLAB® function.
Note
The Predict block does not support dlnetwork
objects.
input
— Image or sequence or time series dataThe input ports of the Predict block takes the names of the input
layers of the network that loaded. For example, if you specify
googlenet
for MATLAB function
, then the
input port of the Predict block is labeled data.
Based on the network loaded, the input to the predict block can be image, sequence, or
time series data.
The format of the input depend on the type of data.
Data | Format of Predictors |
---|---|
2-D images | A h-by-w-by-c-by-N numeric array, where h, w, and c are the height, width, and number of channels of the images, respectively, and N is the number of images. |
Vector sequence | c-by-s matrices, where c is the number of features of the sequences and s is the sequence length. |
2-D image sequences | h-by-w-by-c-by-s arrays, where h, w, and c correspond to the height, width, and number of channels of the images, respectively, and s is the sequence length. |
If the array contains NaN
s, then they are propagated through
the network.
output
— Predicted scores, responses, or activationsThe outputs port of the Predict block takes the names of the output
layers of the network loaded. For example, if you specify
googlenet
for MATLAB function
, then the
output port of the Predict block is labeled
output. Based on the network loaded, the output of the
Predict block can represent predicted scores or responses.
Predicted scores or responses, returned as a N-by-K array, where N is the number of observations, and K is the number of classes.
If you enable Activations
for a network layer, the
Predict block creates a new output port with the name of the selected
network layer. This port outputs the activations from the selected network
layer.
The activations from the network layer is returned as a numeric array. The format of output depends on the type of input data and the type of layer output.
For 2-D image output, activations is an h-by-w-by-c-by-n array, where h, w, and c are the height, width, and number of channels for the output of the chosen layer, respectively, and n is the number of images.
For a single time-step containing vector data, activations is a c-by-n matrix, where n is the number of sequences and c is the number of features in the sequence.
For a single time-step containing 2-D image data, activations is a h-by-w-by-c-by-n array, where n is the number of sequences, h, w, and c are the height, width, and the number of channels of the images, respectively.
Network
— Source for trained networkNetwork from MAT-file
(default) | Network from MATLAB function
| squeezenet
Specify the source for the trained network. Select one of the following:
Network from MAT-file
— Import a trained
network from a MAT-file containing a SeriesNetwork
or a DAGNetwork
object.
Network from MATLAB function
— Import a
pretrained network from a MATLAB function. For example, by using the
googlenet
function.
File path
— MAT-file containing trained network This parameter specifies the name of the MAT-file that contains the trained deep learning network to load. If the file is not on the MATLAB path, use the Browse button to locate the file.
To enable this parameter, set the Network parameter to
Network from MAT-file
.
MATLAB function
— MATLAB function nameThis parameter specifies the name of the MATLAB function for the pretrained deep
learning network. For example, use googlenet
function to import the
pretrained GoogLeNet model.
To enable this parameter, set the Network parameter to
Network from MATLAB function
.
Mini-batch size
— Size of mini-batchesSize of mini-batches to use for prediction, specified as a positive integer. Larger mini-batch sizes require more memory, but can lead to faster predictions.
Predictions
— Output predicted scores or responsesEnable output ports that return predicted scores or responses.
Activations
— Output network activations for a specific layerLayers of the network
Use the Activations list to select the layer to extract features from. The selected layers appear as an output port of the Predict block.
Usage notes and limitations:
The Language parameter in the Configuration
Parameters > Code Generation general category must
be set to C++
.
For a list of networks and layers supported for code generation, see Networks and Layers Supported for C++ Code Generation (MATLAB Coder).
Usage notes and limitations:
The Language parameter in the Configuration
Parameters > Code Generation general category must
be set to C++
.
For a list of networks and layers supported for CUDA® code generation, see Supported Networks and Layers (GPU Coder).
To learn more about generating code for Simulink models containing the Predict block, see Code Generation for a Deep Learning Simulink Model that Performs Lane and Vehicle Detection (GPU Coder).