1 /************************************************************** 2 *** RHmm package 3 *** 4 *** File: cBaumWelch.h 5 *** 6 *** Author: Ollivier TARAMASCO <Ollivier.Taramasco@imag.fr> 7 *** Author: Sebastian BAUER <sebastian.bauer@charite.de> 8 *** 9 **************************************************************/ 10 11 #ifndef _CBAUMWELCH_H_ 12 #define _CBAUMWELCH_H_ 13 #pragma once 14 15 #include "cInParam.h" 16 #include "cHmm.h" 17 18 class cBaumWelch 19 { protected : 20 uint mtNSample ; 21 uint* mtT ; 22 public : 23 cDMatrix* mAlpha ; 24 cDMatrix* mBeta ; 25 cDVector* mRho ; 26 cDMatrix* mGamma ; 27 cDMatrix** mXsi ; 28 cDMatrix* mSumXsi ; 29 cDMatrix* mDelta ; 30 cDVector mLogVrais ; 31 public : 32 cBaumWelch(uint theNSample, uint* theT, uint theNClass) ; 33 cBaumWelch(const cInParam &theInParam) ; 34 void ForwardBackward(cDMatrix* theCondProba, cHmm& theHMM) ; 35 void OutForwardBackward(cDMatrix* theCondProba, cHmm& theHMM, bool theLogData=true) ; GetSampleSize(uint theN)36 uint GetSampleSize(uint theN){ return mtT[theN] ;} 37 virtual ~cBaumWelch() ; 38 } ; 39 40 41 #endif //_CBAUMWELCH_H_ 42