2016-01-28 23:30:38 +03:00
|
|
|
|
2016-09-25 09:12:54 +03:00
|
|
|
#ifndef RNN_LAYER_H
|
|
|
|
#define RNN_LAYER_H
|
2016-01-28 23:30:38 +03:00
|
|
|
|
|
|
|
#include "activations.h"
|
|
|
|
#include "layer.h"
|
|
|
|
#include "network.h"
|
2016-09-25 09:12:54 +03:00
|
|
|
#define USET
|
2016-01-28 23:30:38 +03:00
|
|
|
|
2016-09-25 09:12:54 +03:00
|
|
|
layer make_rnn_layer(int batch, int inputs, int hidden, int outputs, int steps, ACTIVATION activation, int batch_normalize, int log);
|
2016-01-28 23:30:38 +03:00
|
|
|
|
2016-09-25 09:12:54 +03:00
|
|
|
void forward_rnn_layer(layer l, network_state state);
|
|
|
|
void backward_rnn_layer(layer l, network_state state);
|
|
|
|
void update_rnn_layer(layer l, int batch, float learning_rate, float momentum, float decay);
|
2016-01-28 23:30:38 +03:00
|
|
|
|
|
|
|
#ifdef GPU
|
2016-09-25 09:12:54 +03:00
|
|
|
void forward_rnn_layer_gpu(layer l, network_state state);
|
|
|
|
void backward_rnn_layer_gpu(layer l, network_state state);
|
|
|
|
void update_rnn_layer_gpu(layer l, int batch, float learning_rate, float momentum, float decay);
|
|
|
|
void push_rnn_layer(layer l);
|
|
|
|
void pull_rnn_layer(layer l);
|
2016-01-28 23:30:38 +03:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|