libeblearn
|
This module applies max subsampling. More...
#include <ebl_pooling.h>
Public Member Functions | |
maxss_module (uint thickness, idxdim &kernel, idxdim &stride, const char *name="maxss") | |
virtual | ~maxss_module () |
Destructor. | |
virtual void | fprop (Tstate &in, Tstate &out) |
forward propagation from in to out | |
virtual void | bprop (Tstate &in, Tstate &out) |
backward propagation from out to in | |
virtual void | bbprop (Tstate &in, Tstate &out) |
second-derivative backward propagation from out to in | |
virtual bool | resize_output (Tstate &in, Tstate &out) |
virtual int | replicable_order () |
order of operation | |
virtual fidxdim | fprop_size (fidxdim &i_size) |
virtual fidxdim | bprop_size (const fidxdim &o_size) |
virtual maxss_module< T, Tstate > * | copy (parameter< T, Tstate > *p=NULL) |
virtual std::string | describe () |
Returns a string describing this module and its parameters. | |
Protected Attributes | |
uint | thickness |
Number of features. | |
idxdim | kernel |
Kernel dimensions (1st dim is thickness). | |
idxdim | stride |
Stride dimensions (stride 1 in 1st dim). | |
idx< int > | switches |
Remember max locations. | |
bool | float_precision |
check the precision of the module | |
bool | double_precision |
check the precision of the module | |
idx< T > | indices |
Remember max locations. |
This module applies max subsampling.
ebl::maxss_module< T, Tstate >::maxss_module | ( | uint | thickness, |
idxdim & | kernel, | ||
idxdim & | stride, | ||
const char * | name = "maxss" |
||
) |
Constructor.
thickness | The number of features. |
kernel | Size of subsampling kernel (without thickness). |
stride | Stride of subsampling kernel (without thickness). |
fidxdim ebl::maxss_module< T, Tstate >::bprop_size | ( | const fidxdim & | o_size | ) | [virtual] |
Return dimensions compatible with this module given output dimensions. See module_1_1_gen's documentation for more details.
Just multiply each dimension by its stride
Reimplemented from ebl::module_1_1< T, Tstate >.
maxss_module< T, Tstate > * ebl::maxss_module< T, Tstate >::copy | ( | parameter< T, Tstate > * | p = NULL | ) | [virtual] |
Returns a deep copy of this module.
p | If NULL, reuse current parameter space, otherwise allocate new weights on parameter 'p'. |
Reimplemented from ebl::module_1_1< T, Tstate >.
fidxdim ebl::maxss_module< T, Tstate >::fprop_size | ( | fidxdim & | i_size | ) | [virtual] |
Return dimensions that are compatible with this module. See module_1_1_gen's documentation for more details.
Recompute the input size to be compliant with the output
Reimplemented from ebl::module_1_1< T, Tstate >.
bool ebl::maxss_module< T, Tstate >::resize_output | ( | Tstate & | in, |
Tstate & | out | ||
) | [virtual] |
resize the output based on input dimensions This returns true if output was resized/reallocated, false otherwise.