| | |
| | | #include "cost_layer.h" |
| | | #include "utils.h" |
| | | #include "mini_blas.h" |
| | | #include <math.h> |
| | | #include <stdlib.h> |
| | |
| | | { |
| | | if (!truth) return; |
| | | |
| | | |
| | | copy_ongpu(layer.batch*layer.inputs, truth, 1, layer.delta_cl, 1); |
| | | axpy_ongpu(layer.batch*layer.inputs, -1, input, 1, layer.delta_cl, 1); |
| | | |
| | | cl_read_array(layer.delta_cl, layer.delta, layer.batch*layer.inputs); |
| | | *(layer.output) = dot_cpu(layer.batch*layer.inputs, layer.delta, 1, layer.delta, 1); |
| | | //printf("%f\n", *layer.output); |
| | | } |
| | | |
| | | void backward_cost_layer_gpu(const cost_layer layer, cl_mem input, cl_mem delta) |