How do you do multi-class classification with a CNN network?

26 visualizzazioni (ultimi 30 giorni)
Currently I have a CNN network with a the classification layer.
net = alexnet;
layersTransfer = net.Layers(1:end-3);
numClasses = 5;
layers = [
layersTransfer
fullyConnectedLayer(numClasses,'Name', 'fc','WeightLearnRateFactor',1,'BiasLearnRateFactor',1)
softmaxLayer('Name', 'softmax')
classificationLayer('Name', 'classOutput')];
There are 5 different classes and each image can have multiple classes. However I can not find a way to train a network where each image has more than one possible class. How can I change my network so I can train it with data where there are multiple labels?

Risposta accettata

Mahesh Taparia
Mahesh Taparia il 19 Apr 2021
Hi
As per your problem, I am assuming you are having multiple categorical objects in a single image. So the problem is no longer an image classification, it is an object detection problem. You can refer to the documentation of object detection, here are some useful links:
Hope it will help!
  4 Commenti
Michael Bilenko
Michael Bilenko il 24 Apr 2021
Thanks for the suggestion. How do I implement a custom loss layer?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Recognition, Object Detection, and Semantic Segmentation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by