Edmond Yoo
2018-10-13 c59db54775606349f6ba5c6cab7fcb34498bb31d
src/cost_layer.h
@@ -1,24 +1,20 @@
#ifndef COST_LAYER_H
#define COST_LAYER_H
#include "opencl.h"
#include "layer.h"
#include "network.h"
typedef struct {
    int inputs;
    int batch;
    float *delta;
    float *output;
    #ifdef GPU
    cl_mem delta_cl;
    #endif
} cost_layer;
typedef layer cost_layer;
cost_layer *make_cost_layer(int batch, int inputs);
void forward_cost_layer(const cost_layer layer, float *input, float *truth);
void backward_cost_layer(const cost_layer layer, float *input, float *delta);
COST_TYPE get_cost_type(char *s);
char *get_cost_string(COST_TYPE a);
cost_layer make_cost_layer(int batch, int inputs, COST_TYPE type, float scale);
void forward_cost_layer(const cost_layer l, network_state state);
void backward_cost_layer(const cost_layer l, network_state state);
void resize_cost_layer(cost_layer *l, int inputs);
#ifdef GPU
void forward_cost_layer_gpu(cost_layer layer, cl_mem input, cl_mem truth);
void backward_cost_layer_gpu(const cost_layer layer, cl_mem input, cl_mem delta);
void forward_cost_layer_gpu(cost_layer l, network_state state);
void backward_cost_layer_gpu(const cost_layer l, network_state state);
#endif
#endif