Joseph Redmon
2015-01-31 0f1a31648c5292fa49b35eac90a2ee676d6c13e6
src/dropout_layer.h
@@ -1,23 +1,27 @@
#ifndef DROPOUT_LAYER_H
#define DROPOUT_LAYER_H
#include "opencl.h"
typedef struct{
    int batch;
    int inputs;
    float probability;
    #ifdef GPU
    float scale;
    float *rand;
    cl_mem rand_cl;
    float *output;
    #ifdef GPU
    float * rand_gpu;
    float * output_gpu;
    #endif
} dropout_layer;
dropout_layer *make_dropout_layer(int batch, int inputs, float probability);
void forward_dropout_layer(dropout_layer layer, float *input);
void backward_dropout_layer(dropout_layer layer, float *input, float *delta);
    #ifdef GPU
void forward_dropout_layer_gpu(dropout_layer layer, cl_mem input);
void backward_dropout_layer(dropout_layer layer, float *delta);
#ifdef GPU
void forward_dropout_layer_gpu(dropout_layer layer, float * input);
void backward_dropout_layer_gpu(dropout_layer layer, float * delta);
#endif
#endif