class DistrMachine

This class can be used to implement a conditional distribution P(y|x;theta).

Inheritance:


Public Fields

[more]Distribution* distribution
the output distribution
[more]GradientMachine* machine
the machine that produces the parameters of distribution
[more]List input_machine
to interface the input
[more]real* der_params_distribution
to keep the derivative of the parameters for the machine alpha

Public Methods

[more] DistrMachine(Distribution* distribution_, GradientMachine* machine_)
creates a DistrMachine given a machine and and output distribution


Inherited from Distribution:

Public Fields

oint n_observations
oint tot_n_frames
oint max_n_frames
oreal log_probability
oreal* log_probabilities

Public Methods

ovirtual real logProbability(List* inputs)
ovirtual real viterbiLogProbability(List* inputs)
ovirtual real frameLogProbability(real* observations, real* inputs, int t)
ovirtual void frameExpectation(real* observations, real* inputs, int t)
ovirtual void eMIterInitialize()
ovirtual void iterInitialize()
ovirtual void eMSequenceInitialize(List* inputs)
ovirtual void sequenceInitialize(List* inputs)
ovirtual void eMAccPosteriors(List* inputs, real log_posterior)
ovirtual void frameEMAccPosteriors(real* observations, real log_posterior, real* inputs, int t)
ovirtual void viterbiAccPosteriors(List* inputs, real log_posterior)
ovirtual void frameViterbiAccPosteriors(real* observations, real log_posterior, real* inputs, int t)
ovirtual void eMUpdate()
ovirtual void decode(List* inputs)
ovirtual void eMForward(List* inputs)
ovirtual void viterbiForward(List* inputs)
ovirtual void frameBackward(real* observations, real* alpha, real* inputs, int t)
ovirtual void viterbiBackward(List* inputs, real* alpha)


Inherited from GradientMachine:

Public Fields

obool is_free
oList* params
oList* der_params
oint n_params
oreal* beta

Public Methods

ovirtual void init()
ovirtual int numberOfParams()
ovirtual void backward(List* inputs, real* alpha)
ovirtual void allocateMemory()
ovirtual void freeMemory()
ovirtual void loadFILE(FILE* file)
ovirtual void saveFILE(FILE* file)


Inherited from Machine:

Public Fields

oint n_inputs
oint n_outputs
oList* outputs

Public Methods

ovirtual void forward(List* inputs)
ovirtual void reset()


Inherited from Object:

Public Methods

ovoid addOption(const char* name, int size, void* ptr, const char* help="", bool is_allowed_after_init=false)
ovoid addIOption(const char* name, int* ptr, int init_value, const char* help="", bool is_allowed_after_init=false)
ovoid addROption(const char* name, real* ptr, real init_value, const char* help="", bool is_allowed_after_init=false)
ovoid addBOption(const char* name, bool* ptr, bool init_value, const char* help="", bool is_allowed_after_init=false)
ovoid setOption(const char* name, void* ptr)
ovoid setIOption(const char* name, int option)
ovoid setROption(const char* name, real option)
ovoid setBOption(const char* name, bool option)
ovoid load(const char* filename)
ovoid save(const char* filename)


Documentation

This class can be used to implement a conditional distribution P(y|x;theta). It is represented as a machine followed by a distribution. The machine, given some inputs "x", computes the parameters "theta" of the distribution, then given these parameters, the distribution computes its log probability.

oDistribution* distribution
the output distribution

oGradientMachine* machine
the machine that produces the parameters of distribution

oList input_machine
to interface the input

oreal* der_params_distribution
to keep the derivative of the parameters for the machine alpha

o DistrMachine(Distribution* distribution_, GradientMachine* machine_)
creates a DistrMachine given a machine and and output distribution


This class has no child classes.
Author:
Samy Bengio (bengio@idiap.ch)

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.