How can I include prior information like a known relationship between my output variables of a regression problem into neural network design (fitnet)?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Hi
How can I include prior information like a known relationship between my output variables into neural networks design?
In my case, I have many input variables that are physically independant from one another, and 4 output variables that have to sum up to 1 (respectively 100 %). The neural network per se tries to to satisfy this criterium, since all the training targets fulfill it, but it never quite gets 100 %, but rather somewhere between 98 and 102 %, which is physically not possible.
I was wondering if anybody knows a way to constrain the outputs by a function that needs to be fulfilled, or similar.
Thanks in advance, FS
0 comentarios
Respuestas (1)
Greg Heath
el 1 de Jun. de 2017
It depends on the relationship.
For [ 0, 1 ] targets that sum to 1, just use the crossentropy function in the output layer and choose the output with the maximum value.
This is standard approach for classifiers where the outputs are interpreted as posterior probabilities conditional on the input.
Hope this helps.
Thank you for formally accepting my answer
Greg
2 comentarios
Greg Heath
el 3 de Jun. de 2017
If targets are 0 or 1 and the output sum is 1, crossentropy will yield what you want.
Although you are not designing a classifier, the conditions you have stated are, exactly, what defines a classier.
Hope this helps.
Greg
Ver también
Categorías
Más información sobre Sequence and Numeric Feature Data Workflows en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!