How can I use sigmoid layer at output for multilabel classification?

7 visualizaciones (últimos 30 días)
Yeon Hwee Bae
Yeon Hwee Bae el 25 de Sept. de 2020
Comentada: Firas Abou Dalla el 25 de Nov. de 2021
layers = [ ...
sequenceInputLayer(11890)
bilstmLayer(100,'OutputMode','last')
fullyConnectedLayer(60)
sigmoidLayer
weightedClassificationLayer(classWeights)
]
I tried to use sigmoid activation function at output node for multilable classification, but it says "softmaxlayer is left out" whether classificationLayer is custom or not.
how to use sigmoid layer at output for classification?
  2 comentarios
Ankit Pasi
Ankit Pasi el 15 de Mayo de 2021
Hi,
Did you end up solving your issue? I have a similar problem where the network graph does not accept sigmoid as the final layer and throws random errors. Useless actually compared to pytorch and tensorflow..

Iniciar sesión para comentar.

Respuestas (1)

Pratyush Roy
Pratyush Roy el 29 de Sept. de 2020
The following link might be helpful:
sigmoidLayer has been introduced in MATLAB 2020b. The link to the documentation is given below:
  1 comentario
Tobe freeman
Tobe freeman el 19 de Jun. de 2021
Thanks for these links, they were a useful step foward.
But I was not able to get too much further with them. The link to sigmoidLayer contains the following Tip:
"...To use the sigmoid layer for binary or multilabel classification problems, create a custom binary cross-entropy loss output layer or use a custom training loop.
>> Create a custom binary cross-entropy loss output layer or use a custom training loop
How? Also, keep in mind that if an expert provides you with a choice between two options they are likely signalling that neither of them actually work. But I digress.

Iniciar sesión para comentar.

Categorías

Más información sobre Image Data Workflows en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by