index aff012b83a41d8869a23c3ef453f92e50d15b940..5c2c7cd5fc5cfdeff84d53c219ad1f8d0eb59ac9 100644 (file)
#define IMAGE_ROW 28
#define IMAGE_COL 28
#define IMAGE_CHANNEL 1
-#define ITER 2
+#define ITER 1000
#define BATCH_SIZE 100
-#define DATABASE_PATH "../../database/mnist"
+#define DATABASE_PATH "src/database/mnist"
/******************************************************************************/
{
int dim;
int err;
- long mem;
int iter;
int batchSize;
timlUtilImageSet training;
printf("[Test] CNN simple profile\n");
// build up the CNN
printf("1. Build CNN\n");
- cnn = timlCNNCreateConvNeuralNetwork(timlCNNTrainingParamsDefault(), 0);
+ cnn = timlCNNCreateConvNeuralNetwork(timlCNNTrainingParamsDefault());
+ cnn->params.maxBatchSize = 100;
+ cnn->params.batchSize = 100;
timlCNNAddInputLayer(cnn, IMAGE_ROW, IMAGE_COL, IMAGE_CHANNEL, timlCNNInputParamsDefault()); // input layer
timlCNNAddConvLayer(cnn, 5, 5, 1, 1, 6, timlCNNConvParamsDefault()); // conv layer
timlCNNAddNonlinearLayer(cnn, Util_Sigmoid); // sigmoid layer
timlCNNAddNormLayer(cnn, timlCNNNormParamsDefault()); // norm layer
timlCNNAddDropoutLayer(cnn, 0.2); // dropout layer
timlCNNAddLinearLayer(cnn, 10, timlCNNLinearParamsDefault()); // linear layer
- timlCNNAddNonlinearLayer(cnn, Util_Softmax); // softmax layer
+ timlCNNAddSoftmaxCostLayer(cnn); // softmax cost layer
timlCNNInitialize(cnn);
timlCNNReset(cnn);
timlCNNSetMode(cnn, Util_Train);
printf("3. Start profiling\n");
- timlCNNProfile(cnn, training.data, dim, batchSize, training.label, iter);
+ timlCNNProfile(cnn, training.data, IMAGE_ROW, IMAGE_COL, IMAGE_CHANNEL, training.label, 1, 1, batchSize, iter);
free(training.data);
free(training.label);