This class can be used to implement a conditional distribution P(y|x;theta).
Inheritance:
Public Fields
-
Distribution* distribution
- the output distribution
-
GradientMachine* machine
- the machine that produces the parameters of distribution
-
List input_machine
- to interface the input
-
real* der_params_distribution
- to keep the derivative of the parameters for the machine alpha
Public Methods
-
DistrMachine(Distribution* distribution_, GradientMachine* machine_)
- creates a DistrMachine given a machine and and output distribution
Public Fields
-
int n_observations
-
int tot_n_frames
-
int max_n_frames
-
real log_probability
-
real* log_probabilities
Public Methods
-
virtual real logProbability(List* inputs)
-
virtual real viterbiLogProbability(List* inputs)
-
virtual real frameLogProbability(real* observations, real* inputs, int t)
-
virtual void frameExpectation(real* observations, real* inputs, int t)
-
virtual void eMIterInitialize()
-
virtual void iterInitialize()
-
virtual void eMSequenceInitialize(List* inputs)
-
virtual void sequenceInitialize(List* inputs)
-
virtual void eMAccPosteriors(List* inputs, real log_posterior)
-
virtual void frameEMAccPosteriors(real* observations, real log_posterior, real* inputs, int t)
-
virtual void viterbiAccPosteriors(List* inputs, real log_posterior)
-
virtual void frameViterbiAccPosteriors(real* observations, real log_posterior, real* inputs, int t)
-
virtual void eMUpdate()
-
virtual void decode(List* inputs)
-
virtual void eMForward(List* inputs)
-
virtual void viterbiForward(List* inputs)
-
virtual void frameBackward(real* observations, real* alpha, real* inputs, int t)
-
virtual void viterbiBackward(List* inputs, real* alpha)
Public Fields
-
bool is_free
-
List* params
-
List* der_params
-
int n_params
-
real* beta
Public Methods
-
virtual void init()
-
virtual int numberOfParams()
-
virtual void backward(List* inputs, real* alpha)
-
virtual void allocateMemory()
-
virtual void freeMemory()
-
virtual void loadFILE(FILE* file)
-
virtual void saveFILE(FILE* file)
Inherited from Machine:
Public Fields
-
int n_inputs
-
int n_outputs
-
List* outputs
Public Methods
-
virtual void forward(List* inputs)
-
virtual void reset()
Inherited from Object:
Public Methods
-
void addOption(const char* name, int size, void* ptr, const char* help="", bool is_allowed_after_init=false)
-
void addIOption(const char* name, int* ptr, int init_value, const char* help="", bool is_allowed_after_init=false)
-
void addROption(const char* name, real* ptr, real init_value, const char* help="", bool is_allowed_after_init=false)
-
void addBOption(const char* name, bool* ptr, bool init_value, const char* help="", bool is_allowed_after_init=false)
-
void setOption(const char* name, void* ptr)
-
void setIOption(const char* name, int option)
-
void setROption(const char* name, real option)
-
void setBOption(const char* name, bool option)
-
void load(const char* filename)
-
void 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.
Distribution* distribution
- the output distribution
GradientMachine* machine
- the machine that produces the parameters of distribution
List input_machine
- to interface the input
real* der_params_distribution
- to keep the derivative of the parameters for the machine alpha
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++.