# Deep network: src/layers/convolution.hpp Source File

convolution.hpp
Go to the documentation of this file.
#ifndef CONVOLUTION_LAYER_HPP
#define CONVOLUTION_LAYER_HPP
#include <random>
#include "layer.hpp"
namespace Layer{
/*****************************************
* Implementation of a convolutionnal Layer
*/
class ConvolutionLayer:public Layer{
private:
size_t nf,ni,nj;
size_t mf,mi,mj;
size_t p,q;
Vector K;
Vector b;
Vector nabla_K;
Vector nabla_b;
public:
ConvolutionLayer(size_t nf,size_t ni,size_t nj,size_t p,size_t q,size_t mf);
~ConvolutionLayer();
void init(Real mu,Real sigma);
Vector feed_forward(Vector x) override;
void init_nabla() override;
Vector back_propagation(Vector e) override;
void update(Real eta) override;
};
}
#endif
Layer::ConvolutionLayer
Definition: convolution.hpp:12
Layer::ConvolutionLayer::~ConvolutionLayer
~ConvolutionLayer()
Definition: convolution.cpp:20
Layer::ConvolutionLayer::init_nabla
void init_nabla() override
Definition: convolution.cpp:62
Layer::ConvolutionLayer::update
void update(Real eta) override
Definition: convolution.cpp:125
Layer::ConvolutionLayer::init
void init(Real mu, Real sigma)
Definition: convolution.cpp:27
Layer::ConvolutionLayer::back_propagation
Vector back_propagation(Vector e) override
Definition: convolution.cpp:72
Layer::ConvolutionLayer::ConvolutionLayer
ConvolutionLayer(size_t nf, size_t ni, size_t nj, size_t p, size_t q, size_t mf)
Definition: convolution.cpp:5
Layer::ConvolutionLayer::feed_forward
Vector feed_forward(Vector x) override
Definition: convolution.cpp:39
Layer::Layer::x
Vector x
Definition: layer.hpp:32
layer.hpp
Layer
Definition: activation.hpp:7
Real
double Real
Definition: vector.hpp:9
Vector
Real * Vector
Definition: vector.hpp:45