Home | News | Documentation | Download

TMVA GUI doesn't show learning curves

I am doing an analysis with MLPs, so I have added three MLPs to a Factory with different number of neurons. Concretely 8 neurons in a hidden layer, 8+4 in two layers and 12+4. Their names are MLP8, MLP8-4 and MLP12-4. When I try to use the option 9b (learning curves) of the GUI, it doesn’t display the curves.
Is this caused by the fact that there are three neural nets? In fact the option 9a works.

Hi,

Exactly which plot you are referring ? The plot named “Network convergence test (MLP)” ?
I am having a newer version of TMVA GUI and the numbers I get are different .

If this is the case can you please post a simple example, e…g .based on the data of the macro TMVAClassification.C ?

Thank you

Lorenzo

Yes, it is “Network convergence test”. I’m attaching the program.
TMVAexampleSimpleANNBDT.C (2.5 KB)
Where is that macro TMVAClassification.C? The documentation says it is in tmva/test, but that folder does not exist. My ROOT version is 6.14.04.

Hi,

I will look at your macro, but I need your data files to run it
TMVAClassification.C is in tutorials/tmva, you can see it also here
https://root.cern.ch/doc/master/TMVAClassification_8C.html

Lorenzo

Hi,
I’ve run TMVAClassification.C and I get exactly the same error of my macro:

+++ Could not locate directory 'Method_MLP
Could not locate directory 'Method_MLP' in file TMVA.root

Apparently, the problem is that the name of the method is not exactly “MLP” (in this case it was “MLPBNN”, in my macro it was “MLP8-4” and others). However, the option “Network architecture” works with any name.

Luis

Hi,

It looks like the directory Method_MLP is not in the output file, TMVA.root. I am not getting this error with a newer version of ROOT. Can you try with a newer version 6.18 or the master ?

Lorenzo

The problem is that I’m running ROOT in a remote computer that is not mine, so I can’t directly change the version. I’ll contact the owners.
What is the “master”?

Now I’m trying with the version 6.18 and the problem persists. The option “Network convergence tests” only shows learning curves for MLPs with the name “MLP” (not “MLP8” or “MLP12-4”).

Hi

I am sorry but I have not well understood. Normally by clicking on the GUI you should see all the learning curves produced for all the methods MLP (type = TMVA::kMLP ) and each one will have a different name depending of the name the user provides.
I cannot reproduce this problem with TMVAClassification.C. Can you please maybe attach the macro showing this with the data of TMVACLassification or just send me a link to your data file and I can run the macro you have posted before

Lorenzo

Here is a link to the output file:


And here are links to the data files:

Hi

Thank you for posting your files. I could run your macro with both 6.18.02 and master and everything seems fine to me. The directory Method_MLP is present in the outrput file and it contains three sub-directory,
MLP8-4, MLP8, MLP12-4 for each of the MLP methods that are booked in the macro.

On the other hand your outputfile does not contain the Method_MLP directory.
I have tested also this with 6.16 and I obtain the same as you. So this was due to a bug which has been already fixed.

Lorenzo