ConvNet  1.0
A GPU-based C++ implementation of Convolutional Neural Nets
 All Classes Namespaces Functions Variables
Public Member Functions | List of all members
DownSampleEdge Class Reference

Implements a down-sampling edge. More...

#include <downsample_edge.h>

Inheritance diagram for DownSampleEdge:
Edge

Public Member Functions

 DownSampleEdge (const config::Edge &edge_config)
 
virtual void ComputeUp (Matrix &input, Matrix &output, bool overwrite)
 Computes the output layer state given the input. More...
 
virtual void ComputeDown (Matrix &deriv_output, Matrix &input, Matrix &output, Matrix &deriv_input, bool overwrite)
 Computes the derivative w.r.t the inputs of this edge given the derivative w.r.t the outputs of this edge. More...
 
virtual void SetImageSize (int image_size)
 Set the spatial size of the input to this edge. More...
 
- Public Member Functions inherited from Edge
 Edge (const config::Edge &edge_config)
 Instatntiate an Edge from the config. More...
 
virtual void AllocateMemory (bool fprop_only)
 Allocate memory for the model. More...
 
virtual void Initialize ()
 Initialize the weights and biases. More...
 
virtual void SaveParameters (hid_t file)
 Write the weights and biases in an hdf5 file. More...
 
virtual void LoadParameters (hid_t file)
 Load the weights and biases from an hdf5 file. More...
 
virtual void InsertPolyak ()
 
virtual void BackupCurrent ()
 
virtual void LoadCurrentOnGPU ()
 
virtual void LoadPolyakOnGPU ()
 
virtual float GetRMSWeight ()
 Returns the root mean square weight value. More...
 
virtual void ReduceLearningRate (float factor)
 Reduce the learning rate by factor. More...
 
virtual bool HasNoParameters () const
 Returns whether the edge has any parameters. More...
 
virtual int GetNumModules () const
 Returns the number of modules. More...
 
virtual void DisplayWeights ()
 Displays the weights. More...
 
virtual void DisplayWeightStats ()
 Displays the statistics of the weights. More...
 
virtual void SetTiedTo (Edge *e)
 Sets the edge to be tied to another edge. More...
 
virtual void ComputeOuter (Matrix &input, Matrix &deriv_output)
 Computes the gradient for the weights and biases. More...
 
virtual void UpdateWeights ()
 Update the weights. More...
 
bool IsBackPropBlocked () const
 Returns whether back prop is blocked through this edge. More...
 
void SetSource (Layer *source)
 
void SetDest (Layer *dest)
 
LayerGetSource ()
 
LayerGetDest ()
 
const string & GetSourceName ()
 
const string & GetDestName ()
 
const string & GetName ()
 
void SetInputChannels (int a)
 Set the number of input channels. More...
 
void SetOutputChannels (int a)
 Set the number of output channels. More...
 
void SetMark ()
 
bool HasMark ()
 
string GetTiedEdgeName ()
 
bool IsTied ()
 
int GetGPUId () const
 
void ComputeStart (Matrix &mat)
 
void ComputeEnd (Matrix &mat)
 

Additional Inherited Members

- Static Public Member Functions inherited from Edge
static EdgeChooseEdgeClass (const config::Edge &edge_config)
 Selects the appropriate derived class for the edge config. More...
 
- Protected Attributes inherited from Edge
Layersource_
 
Layerdest_
 The source layer for this edge. More...
 
const string source_node_
 The destination layer for this edge. More...
 
const string dest_node_
 
const string name_
 
const string tied_edge_name_
 
Edgetied_edge_
 
int num_input_channels_
 
int num_output_channels_
 
int image_size_
 
int num_modules_
 
bool mark_
 
const bool block_backprop_
 A marker. More...
 
const bool is_tied_
 
ImageDisplayerimg_display_
 
const int gpu_id_
 

Detailed Description

Implements a down-sampling edge.

Only integer down-sampling factors are supported.

Member Function Documentation

void DownSampleEdge::ComputeDown ( Matrix deriv_output,
Matrix input,
Matrix output,
Matrix deriv_input,
bool  overwrite 
)
virtual

Computes the derivative w.r.t the inputs of this edge given the derivative w.r.t the outputs of this edge.

Parameters
deriv_outputDerivative w.r.t outputs of this edge.(In)
inputThe input to this edge.(In)
outputThe output of this edge.(In)
deriv_inputDerivative w.r.t inputs of this edge.(Out)

Implements Edge.

void DownSampleEdge::ComputeUp ( Matrix input,
Matrix output,
bool  overwrite 
)
virtual

Computes the output layer state given the input.

Applies the weights and adds bias.

Implements Edge.

void DownSampleEdge::SetImageSize ( int  image_size)
virtual

Set the spatial size of the input to this edge.

Reimplemented from Edge.


The documentation for this class was generated from the following files: