I am working on a problem of multi-class classification by MLP. I have set dropout
to each middle layer. Now I observe the training accuracy is around 10% less than the testing accuracy.
My guess is, dropout
is active only during training but inactive during testing. So part of the neurons are reset at training (leading to low accuracy), but it is not happening for testing.
My questions:
- Is my understanding correct? In other words, if I remove the
dropout
part, will the training accuracy increase but the testing accuracy will remain the same? - When reporting the MLP accuracy, should I report training acuracy or testing accuracy?