The value of energy regression by DNN method is negative

I use DNN method to reconstruct gamma energy, the energy range of the training set is 20-50MeV, but the energy predictions are negative as shown below. However, the activation function of the output layer of my neural network is RELU, this confuses me.


Could you help me?@moneta,I am sorry to bother you again. :face_holding_back_tears:

Hi,
Can you please share the code and input data, so I can have a closer look ?
Thanks

Lorenzo

Hi, thanks for your reply! This my code and data.Because of the 3MB limit of the file size, I remove some data of the root file
Thanks,
David

DNNRegression.C (3.3 KB)
TrainData.root (2.7 MB)

Hi,

The problem is in using the old kDNN method that is now deprecated. You should use the new kDL method. The correct booking string is:

factory->BookMethod(dataloader, TMVA::Types::kDL, "DNN_CPU", nnOptions);

By doing this I think I am getting only positive results and a much better regression.

Cheers
Lorenzo

1 Like

Hi, moneta,Thank you a lot. By changing “KDL”, I have got a better regression :grinning: