Tenncor
Public Member Functions | Private Member Functions | Private Attributes | List of all members
layr::RBM Struct Referencefinal

#include <rbm.hpp>

Inheritance diagram for layr::RBM:
Inheritance graph
[legend]
Collaboration diagram for layr::RBM:
Collaboration graph
[legend]

Public Member Functions

 RBM (teq::DimT nhidden, teq::DimT nvisible, UnaryptrT activation, layr::InitF< PybindT > weight_init, layr::InitF< PybindT > bias_init, const std::string &label)
 
 RBM (DenseptrT hidden, DenseptrT visible, UnaryptrT activation, std::string label)
 
 RBM (const RBM &other, std::string label_prefix="")
 
RBMoperator= (const RBM &other)
 
 RBM (RBM &&other)=default
 
RBMoperator= (RBM &&other)=default
 
RBMclone (std::string label_prefix="") const
 Return deep copy of this layer with prefixed label. More...
 
size_t get_ninput (void) const override
 Implementation of iLayer. More...
 
size_t get_noutput (void) const override
 Implementation of iLayer. More...
 
std::string get_ltype (void) const override
 Implementation of iLayer. More...
 
std::string get_label (void) const override
 Implementation of iLayer. More...
 
teq::TensptrsT get_contents (void) const override
 Implementation of iLayer. More...
 
NodeptrT connect (NodeptrT visible) const override
 Implementation of iLayer. More...
 
NodeptrT backward_connect (NodeptrT hidden) const
 Return visible reconstruction from hidden. More...
 
- Public Member Functions inherited from layr::iLayer
virtual ~iLayer (void)=default
 
iLayerclone (std::string label_prefix="") const
 Return deep copy of this layer with prefixed label. More...
 

Private Member Functions

iLayerclone_impl (const std::string &label_prefix) const override
 
void tag_sublayers (void)
 
void copy_helper (const RBM &other, std::string label_prefix="")
 

Private Attributes

std::string label_
 
DenseptrT hidden_
 
DenseptrT visible_
 
UnaryptrT activation_
 

Additional Inherited Members

- Protected Member Functions inherited from layr::iLayer
void tag (teq::TensptrT tensor, LayerId subs) const
 
void recursive_tag (teq::TensptrT root, teq::TensSetT ignores, LayerId subs) const
 

Detailed Description

Layer implemnetation that connects forward and backward through 2 Dense layers sharing a weight

Constructor & Destructor Documentation

◆ RBM() [1/4]

layr::RBM::RBM ( teq::DimT  nhidden,
teq::DimT  nvisible,
UnaryptrT  activation,
layr::InitF< PybindT >  weight_init,
layr::InitF< PybindT >  bias_init,
const std::string &  label 
)
inline

◆ RBM() [2/4]

layr::RBM::RBM ( DenseptrT  hidden,
DenseptrT  visible,
UnaryptrT  activation,
std::string  label 
)
inline

◆ RBM() [3/4]

layr::RBM::RBM ( const RBM other,
std::string  label_prefix = "" 
)
inline

◆ RBM() [4/4]

layr::RBM::RBM ( RBM &&  other)
default

Member Function Documentation

◆ backward_connect()

NodeptrT layr::RBM::backward_connect ( NodeptrT  hidden) const
inline

Return visible reconstruction from hidden.

◆ clone()

RBM* layr::RBM::clone ( std::string  label_prefix = "") const
inline

Return deep copy of this layer with prefixed label.

◆ clone_impl()

iLayer* layr::RBM::clone_impl ( const std::string &  label_prefix) const
inlineoverrideprivatevirtual

Implements layr::iLayer.

◆ connect()

NodeptrT layr::RBM::connect ( NodeptrT  visible) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ copy_helper()

void layr::RBM::copy_helper ( const RBM other,
std::string  label_prefix = "" 
)
inlineprivate

◆ get_contents()

teq::TensptrsT layr::RBM::get_contents ( void  ) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ get_label()

std::string layr::RBM::get_label ( void  ) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ get_ltype()

std::string layr::RBM::get_ltype ( void  ) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ get_ninput()

size_t layr::RBM::get_ninput ( void  ) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ get_noutput()

size_t layr::RBM::get_noutput ( void  ) const
inlineoverridevirtual

Implementation of iLayer.

Implements layr::iLayer.

◆ operator=() [1/2]

RBM& layr::RBM::operator= ( const RBM other)
inline

◆ operator=() [2/2]

RBM& layr::RBM::operator= ( RBM &&  other)
default

◆ tag_sublayers()

void layr::RBM::tag_sublayers ( void  )
inlineprivate

Member Data Documentation

◆ activation_

UnaryptrT layr::RBM::activation_
private

◆ hidden_

DenseptrT layr::RBM::hidden_
private

◆ label_

std::string layr::RBM::label_
private

◆ visible_

DenseptrT layr::RBM::visible_
private

The documentation for this struct was generated from the following file: