markov
Class BaumWelsh

java.lang.Object
  extended by markov.Viterbi
      extended by markov.BaumWelsh
All Implemented Interfaces:
IFiabilite, IReconnaissance

public class BaumWelsh
extends Viterbi

Uses the Forward-Backward procedure to compute states probability for each timestep and allows for learning the model.

Version:
4.50, 08/05/2003
Author:
Laurent JEANPIERRE

Constructor Summary
BaumWelsh(IFournisseurObservations fournisseur, IFournisseur modele)
          Construit le modèle.
 
Method Summary
 void apprentissage()
          Calcule un nouveau modèle par apprentissage sur les données.
 double[][] getAllDistributions()
          Recupère les distributions de probabilités de chaque donnée.
 int[] getChemin()
          Calcule le chemin optimal.
 
Methods inherited from class markov.Viterbi
getFiabilite, getNbDonneesReconnues, getReussite, setModele, setReussite
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaumWelsh

public BaumWelsh(IFournisseurObservations fournisseur,
                 IFournisseur modele)
Construit le modèle.

Parameters:
fournisseur - un IFournisseurObservations devant fournir les probabilités d'observations au syst`me.
modele - un IFournisseur qui fournira les caractèristiques du modèle.
Method Detail

apprentissage

public void apprentissage()
                   throws MarkovException
Calcule un nouveau modèle par apprentissage sur les données.

Throws:
MarkovException - si le modèle ne peut être appris.

getChemin

public int[] getChemin()
                throws MarkovException
Calcule le chemin optimal.

Specified by:
getChemin in interface IReconnaissance
Overrides:
getChemin in class Viterbi
Returns:
un tableau contenant la succession des numéros des états les plus probables.
Throws:
MarkovException - si le modèle ne peut être reconnu

getAllDistributions

public double[][] getAllDistributions()
                               throws MarkovException
Recupère les distributions de probabilités de chaque donnée.

Overrides:
getAllDistributions in class Viterbi
Returns:
un tableau bidimentionnel contenant la probabilité de chaque état pour chaque instant de la suite de données
Throws:
MarcovException - si le modèle ne peut être reconnu
MarkovException