Apache SINGA
A distributed deep learning platform .
|
Base layer for RBM models. More...
#include <neuron_layer.h>
Public Member Functions | |
void | Setup (const LayerProto &proto, int npartitions) override |
Setup layer properties. More... | |
const Blob< float > & | neg_data (const Layer *layer) |
Blob< float > * | mutable_neg_data (const Layer *layer) |
const std::vector< Param * > | GetParams () const override |
Layers that have paramters must override this function. More... | |
virtual Blob< float > * | Sample (int flat) |
Public Member Functions inherited from singa::Layer | |
virtual void | ComputeFeature (int flag, Metric *perf)=0 |
Compute features of this layer based on connected layers. More... | |
virtual void | ComputeGradient (int flag, Metric *perf)=0 |
Compute gradients for parameters and connected layers. More... | |
virtual ConnectionType | src_neuron_connection (int k) const |
Return the connection type between one neuron of this layer and its source layer. More... | |
virtual ConnectionType | dst_layer_connection () const |
Return the connection type of this layer and all dst layers. More... | |
virtual const std::string | DebugString (int step, int flag) |
For print debug info about each layer, e.g., norm of feature vector, norm of parameters. More... | |
int | partition_dim () const |
int | partition_id () const |
int | type () const |
const std::string & | name () const |
Return name of this layer. | |
virtual const Blob< float > & | data (const Layer *from) const |
virtual Blob< float > * | mutable_data (const Layer *from) |
virtual const Blob< float > & | grad (const Layer *from) const |
virtual Blob< float > * | mutable_grad (const Layer *from) |
const std::vector< Layer * > | srclayers () const |
return LayerS that connected to this layer | |
const std::vector< Layer * > | dstlayers () const |
return LayerS that this layer connected to | |
int | srclayers_size () const |
int | dstlayers_size () const |
void | clear_dstlayers () |
void | clear_srclayers () |
void | add_srclayer (Layer *src) |
void | add_dstlayer (Layer *dst) |
Protected Attributes | |
bool | gaussian_ |
if ture, sampling according to guassian distribution | |
int | hdim_ |
dimension of the hidden layer | |
int | vdim_ |
dimension of the visible layer | |
int | batchsize_ |
bool | first_gibbs_ |
Param * | weight_ |
Param * | bias_ |
Blob< float > | neg_data_ |
Blob< float > | neg_sample_ |
Blob< float > | sample_ |
Protected Attributes inherited from singa::Layer | |
LayerProto | layer_proto_ |
Blob< float > | data_ |
Blob< float > | grad_ |
std::vector< Layer * > | srclayers_ |
std::vector< Layer * > | dstlayers_ |
Additional Inherited Members | |
Static Public Member Functions inherited from singa::Layer | |
static Layer * | Create (const LayerProto &proto) |
Base layer for RBM models.
|
inlineoverridevirtual |
Layers that have paramters must override this function.
flag | used to get the calling phase, e.g., forward of training (kForward | kTrain) |
Reimplemented from singa::Layer.
|
overridevirtual |
Setup layer properties.
Setup the shapes for data and parameters, also setup some properties based on the layer configuration and connected layers.
proto | layer configuration. |
npartitions | num of total partitions of the original layer. This layer should be setup as one partition. |
Reimplemented from singa::Layer.
Reimplemented in singa::RBMHidLayer, and singa::RBMVisLayer.