mlpack
Public Member Functions | List of all members
mlpack::ann::RBF< InputDataType, OutputDataType, Activation > Class Template Reference

Implementation of the Radial Basis Function layer. More...

#include <radial_basis_function.hpp>

Public Member Functions

 RBF ()
 Create the RBF object.
 
 RBF (const size_t inSize, const size_t outSize, arma::mat &centres, double betas=0)
 Create the Radial Basis Function layer object using the specified parameters. More...
 
template<typename eT >
void Forward (const arma::Mat< eT > &input, arma::Mat< eT > &output)
 Ordinary feed forward pass of the radial basis function. More...
 
template<typename eT >
void Backward (const arma::Mat< eT > &, const arma::Mat< eT > &, arma::Mat< eT > &)
 Ordinary feed backward pass of the radial basis function.
 
OutputDataType const & OutputParameter () const
 Get the output parameter.
 
OutputDataType & OutputParameter ()
 Modify the output parameter.
 
InputDataType const & InputParameter () const
 Get the parameters. More...
 
InputDataType & InputParameter ()
 Modify the input parameter.
 
size_t InputSize () const
 Get the input size.
 
size_t OutputSize () const
 Get the output size.
 
OutputDataType const & Delta () const
 Get the detla.
 
OutputDataType & Delta ()
 Modify the delta.
 
size_t WeightSize () const
 Get the size of the weights.
 
size_t InputShape () const
 Get the shape of the input.
 
template<typename Archive >
void serialize (Archive &ar, const uint32_t)
 Serialize the layer.
 

Detailed Description

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat, typename Activation = GaussianFunction>
class mlpack::ann::RBF< InputDataType, OutputDataType, Activation >

Implementation of the Radial Basis Function layer.

The RBF class when use with a non-linear activation function acts as a Radial Basis Function which can be used with Feed-Forward neural network.

For more information, refer to the following paper,

@article{Volume 51: Artificial Intelligence and Statistics,
author = {Qichao Que, Mikhail Belkin},
title = {Back to the Future: Radial Basis Function Networks Revisited},
year = {2016},
url = {http://proceedings.mlr.press/v51/que16.pdf},
}
Template Parameters
InputDataTypeType of the input data (arma::colvec, arma::mat, arma::sp_mat or arma::cube).
OutputDataTypeType of the output data (arma::colvec, arma::mat, arma::sp_mat or arma::cube).
ActivationType of the activation function (mlpack::ann::Gaussian).

Constructor & Destructor Documentation

◆ RBF()

template<typename InputDataType , typename OutputDataType , typename Activation >
mlpack::ann::RBF< InputDataType, OutputDataType, Activation >::RBF ( const size_t  inSize,
const size_t  outSize,
arma::mat &  centres,
double  betas = 0 
)

Create the Radial Basis Function layer object using the specified parameters.

Parameters
inSizeThe number of input units.
outSizeThe number of output units.
centresThe centres calculated using k-means of data.
betasThe beta value to be used with centres.

Member Function Documentation

◆ Forward()

template<typename InputDataType , typename OutputDataType , typename Activation >
template<typename eT >
void mlpack::ann::RBF< InputDataType, OutputDataType, Activation >::Forward ( const arma::Mat< eT > &  input,
arma::Mat< eT > &  output 
)

Ordinary feed forward pass of the radial basis function.

Parameters
inputInput data used for evaluating the specified function.
outputResulting output activation.

◆ InputParameter()

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat, typename Activation = GaussianFunction>
InputDataType const& mlpack::ann::RBF< InputDataType, OutputDataType, Activation >::InputParameter ( ) const
inline

Get the parameters.

Get the input parameter.


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