Alexey
2017-01-02 b5938098d12d5c9fe48e7cc71ae3d75b7306833f
src/connected_layer.h
@@ -2,53 +2,23 @@
#define CONNECTED_LAYER_H
#include "activations.h"
#include "opencl.h"
#include "layer.h"
#include "network.h"
typedef struct{
    float learning_rate;
    float momentum;
    float decay;
typedef layer connected_layer;
    int batch;
    int inputs;
    int outputs;
    float *weights;
    float *biases;
connected_layer make_connected_layer(int batch, int inputs, int outputs, ACTIVATION activation, int batch_normalize);
    float *weight_updates;
    float *bias_updates;
    float *weight_prev;
    float *bias_prev;
    float *output;
    float *delta;
    #ifdef GPU
    cl_mem weights_cl;
    cl_mem biases_cl;
    cl_mem weight_updates_cl;
    cl_mem bias_updates_cl;
    cl_mem output_cl;
    cl_mem delta_cl;
    #endif
    ACTIVATION activation;
} connected_layer;
void secret_update_connected_layer(connected_layer *layer);
connected_layer *make_connected_layer(int batch, int inputs, int outputs, ACTIVATION activation, float learning_rate, float momentum, float decay);
void forward_connected_layer(connected_layer layer, float *input);
void backward_connected_layer(connected_layer layer, float *input, float *delta);
void update_connected_layer(connected_layer layer);
void forward_connected_layer(connected_layer layer, network_state state);
void backward_connected_layer(connected_layer layer, network_state state);
void update_connected_layer(connected_layer layer, int batch, float learning_rate, float momentum, float decay);
void denormalize_connected_layer(layer l);
void statistics_connected_layer(layer l);
#ifdef GPU
void forward_connected_layer_gpu(connected_layer layer, cl_mem input);
void backward_connected_layer_gpu(connected_layer layer, cl_mem input, cl_mem delta);
void update_connected_layer_gpu(connected_layer layer);
void forward_connected_layer_gpu(connected_layer layer, network_state state);
void backward_connected_layer_gpu(connected_layer layer, network_state state);
void update_connected_layer_gpu(connected_layer layer, int batch, float learning_rate, float momentum, float decay);
void push_connected_layer(connected_layer layer);
void pull_connected_layer(connected_layer layer);
#endif