classificationLayer cannot output one-hot encoded matrix?

openExample('nnet/ConstructAndTrainAConvolutionalNeuralNetworkExample')
In this demo, the output of the net was a categorical vector.
But in most of the cnn tutorials, the output should be one-hot encoded. Why does matlab use a categorical vector instead?
How to feed a one-hot encoded matrix to the net? The function trainNetwork() does not accept this kind of Y data.
Is the classificationLayer itself implemented one-hot encoding?

2 Kommentare

Hi Xiaolong, Thanks for your question. Is there a particular reason (apart from seeing in other cnn tutorials) why you think one-hot encoded outputs are better over categorical vectors? Do you have a particular use case? I'm just trying to understand your feedback/question.
Hi can someone tell me how to do one hot encoding in MATLAB to feed to a network?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Himanshu tripathi
Himanshu tripathi am 10 Jul. 2019

0 Stimmen

Hey Xiaolong,
Why do you want to feed one hot encoded Y to the net?
The function trainNetwork() does not accept one hot encoded matrix and it's expected behaviour as per documentation.

Kategorien

Mehr zu Install Products finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2018a

Gefragt:

am 10 Jul. 2019

Kommentiert:

am 30 Jul. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by