Create Simple Image Classification Network Using Deep Network Designer
This example shows how to create and train a simple convolutional neural network for deep learning classification using Deep Network Designer. Convolutional neural networks are essential tools for deep learning and are especially suited for image recognition.
In this example, you:
Import image data.
Define the network architecture.
Specify training options.
Train the network.
Load Data
Load the digit sample data as an image datastore. TheimageDatastore
function automatically labels the images based on folder names. The data set has 10 classes and each image in the data set is 28-by-28-by-1 pixels.
digitDatasetPath = fullfile(matlabroot,'toolbox','nnet','nndemos',...'nndatasets','DigitDataset'); imds = imageDatastore(digitDatasetPath,...'IncludeSubfolders',true,...'LabelSource','foldernames');
打开深层网络设计师。创建一个网络,不rt and visualize data, and train the network using Deep Network Designer.
deepNetworkDesigner
To create a blank network, pause onBlank Networkand clickNew.
To import the image datastore, select theDatatab and clickImport Data>Import Image Data. Selectimds
as the data source. Set aside 30% of the training data to use as validation data. Randomly allocate observations to the training and validation sets by selectingRandomize.
Import the data by clickingImport.
Define Network Architecture
In theDesignerpane, define the convolutional neural network architecture. Drag layers from theLayer Libraryand connect them. To quickly search for layers, use theFilter layerssearch box in theLayer Librarypane. To edit the properties of a layer, click the layer and edit the values in thePropertiespane.
Connect layers in this order:
imageInputLayer
with theInputSize
property set to28,28,1
convolution2dLayer
batchNormalizationLayer
reluLayer
fullyConnectedLayer
with theOutputSize
property set to10
softmaxLayer
classificationLayer
For more information about deep learning layers, seeList of Deep Learning Layers.
Train Network
Specify the training options and train the network.
On theTrainingtab, clickTraining Options. For this example, set the maximum number of epochs to 5 and keep the other default settings. Set the training options by clickingClose. For more information about training options, seeSet Up Parameters and Train Convolutional Neural Network.
Train the network by clickingTrain.
The accuracy is the fraction of labels that the network predicts correctly. In this case, more than 97% of the predicted labels match the true labels of the validation set.
To export the trained network to the workspace, on theTrainingtab, clickExport.
For next steps in deep learning, you can try using pretrained networks for other tasks. Solve new classification problems on your image data with transfer learning. For example, seeGet Started with Transfer Learning. To learn more about pretrained networks, seePretrained Deep Neural Networks.
See Also
trainingOptions
|Deep Network Designer