A Problem with the Deep Belief Network C++ codes
I applied your dbn.cpp code . But for your all test data, the prediction results are equal. It is an unexpected situation (if we give a training sample as a train sample it can not find the true class, too). What is the problem? I expect your help.
you need to change the mod from Debug to Release, then the answer is right
Why changing from Debug mode to Release makes it work?Could anyone explain that?
I got it, in the HiddenLayer(int size, int in, int out, double **w, double *bp) construction function, after b = new double[n_out]; each element of b should be initialized to zero, otherwise they will be randomly initialized to be too large in debug mode. However in release mode, they are initialized to small values.
@carterbao it works