Neural Network: Custom Loss Function: Minimize Range/Amplitude

9 visualizzazioni (ultimi 30 giorni)
Hello,
I have a dataset of errors and an LSTM neural network which is predicting these errors.
Overall, the network is doing a decent job, if I substract the predicted error from actual error on my test-set, the error is reduced by about 80%.
However, my max(abs(error)) (error = target - prediction) stays about the same, because the network overcorrects sometimes too much, which is a highly undesirable property for my case.
To handle these overcorrections, I would like to change my loss function.
Is there a possibility to tell the network to not minimize MeanSquaredError (as the last regressionLayer does it), but to tell it to minimize max(abs(error)) ?, i.e. I would allow the mean-error to be higher if the overall corrected maximum error will be lower
Thank you for any help

Risposta accettata

Abolfazl Chaman Motlagh
Abolfazl Chaman Motlagh il 17 Feb 2022
From 2021a version, Matlab allows you to define and use customize data, layer, training loop, network and in as you need loss function. for more information follow below link:
for example for how to defien you own custom network or training, these are good examples:
but generally it made your work hard to follow all these from scratch.
so maybe just create a simple custom layer for your output and train your network. see this documentation:

Più risposte (0)

Categorie

Scopri di più su Sequence and Numeric Feature Data Workflows 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