Change number of output classes in Squeezenet?

I want to retrain a slightly modified squeezenet on the CIFAR100 dataset. Here are the last few layers of Squeezenet:
Usually, a fully connected layer is replaced to change the number of output classes, or the pooling layer is changed. However, MATLAB's Deep Network Designer doesn't give any options to adjust output size of the globalAveragePooling2dLayer. And Squeezenet doesn't have any fully connected layers.
My question is, how do I change the network output class size from 1000 (imagenet) to 100 (cifar100)?

1 Comment

First store the values set for different features in last 4 layer the "convolution2dLayer" then delete and select a new "convolution2dLayer" where copy rest of the values for parameters and change "NumFilters" to the number of classes you have.

Sign in to comment.

Answers (0)

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2020b

Asked:

on 18 Feb 2021

Commented:

on 22 Jun 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!