libeblearn
|
An abstract class for a module with two inputs and one energy output. More...
#include <ebl_arch.h>
Public Member Functions | |
ebm_2 (const char *name="ebm_2") | |
virtual void | fprop (Tin1 &i1, Tin2 &i2, Ten &energy) |
fprop: compute output from input | |
virtual void | bprop (Tin1 &i1, Tin2 &i2, Ten &energy) |
bprop: compute gradient wrt inputs, given gradient wrt output | |
virtual void | bbprop (Tin1 &i1, Tin2 &i2, Ten &energy) |
bprop: compute diaghession wrt inputs, given diaghessian wrt output | |
virtual void | bprop1_copy (Tin1 &i1, Tin2 &i2, Ten &energy) |
virtual void | bprop2_copy (Tin1 &i1, Tin2 &i2, Ten &energy) |
virtual void | bbprop1_copy (Tin1 &i1, Tin2 &i2, Ten &energy) |
virtual void | bbprop2_copy (Tin1 &i1, Tin2 &i2, Ten &energy) |
virtual void | forget (forget_param_linear &fp) |
virtual void | normalize () |
virtual double | infer1 (Tin1 &i1, Tin2 &i2, Ten &energy, infer_param &ip) |
compute value of in1 that minimizes the energy, given in2 | |
virtual double | infer2 (Tin1 &i1, Tin2 &i2, infer_param &ip, Tin2 *label=NULL, Ten *energy=NULL) |
virtual void | infer2_copy (Tin1 &i1, Tin2 &i2, Ten &energy) |
An abstract class for a module with two inputs and one energy output.
double ebl::ebm_2< Tin1, Tin2, Ten >::infer2 | ( | Tin1 & | i1, |
Tin2 & | i2, | ||
infer_param & | ip, | ||
Tin2 * | label = NULL , |
||
Ten * | energy = NULL |
||
) | [virtual] |
compute value of in2 that minimizes the energy, given in1 if label is given, fill the corresponding energy.
Reimplemented in ebl::fc_ebm2< T, Tin1, Tin2, Ten >, ebl::euclidean_module< T1, T2, Tstate1, Tstate2 >, ebl::fc_ebm2< Tdata, Tstate, bbstate_idx< Tlabel >, Tstate >, and ebl::euclidean_module< Tdata, Tlabel >.