Main Content

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. TheimageDatastorefunction 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. Selectimdsas 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:

  1. imageInputLayerwith theInputSizeproperty set to28,28,1

  2. convolution2dLayer

  3. batchNormalizationLayer

  4. reluLayer

  5. fullyConnectedLayerwith theOutputSizeproperty set to10

  6. softmaxLayer

  7. 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

|

Related Topics