贝叶斯隐马尔可夫模型是一种用于分割连续多变量数据的概率模型。该模型将数据解释为一系列隐藏状态生成。每个状态都是重尾分布的有限混合,具有特定于状态的混合比例和共享的位置/分散参数。
马尔可夫链原理可视化解释与R语言区制转换Markov regime switching实例
,时长07:25
马尔可夫链蒙特卡罗方法MCMC原理与R语言实现
,时长08:47
该模型中的所有参数都配备有共轭先验分布,并通过变化的贝叶斯(vB)推理算法学习,其本质上与期望最大化相似。该算法对异常值具有鲁棒性,并且可以接受缺失值。
去年,我们为一家公司进行了短暂的咨询工作,该公司正在构建一个主要基于贝叶斯隐马尔可夫hmm的分析应用程序。本文从未知的BRHMM生成一组数据序列 参数,并仅从这些数据中估算出 生成它们的模型。 结果绘制为 时间序列
NumState=2;NumSym=3;NumFeat=5;
NumSeq=2;NumPoint=100;NumMiss=20;
EmissParam=1/5;LocParam=2;DispParam=5;
NumDeg=5;NumObs=1000;
fprintf('\n')fprintf('Sampling data ... ')
[Trans,Emiss,Loc,Disp]=GenParam(NumState,NumSym,NumFeat,...TransParam,EmissParam,LocParam,DispParam);

Obj= bhnn(NumState,NumSym,NumFeat);
Obj.TransWeight=Trans;Obj.TransStren(:)=NumObs;Obj.EmissWeight=Emiss;Obj.EmissStren(:)=NumObs;Obj.CompLoc=Loc;Obj.CompScale(:)=NumObs;Obj.CompDisp=Disp;Obj.CompPrec(:)=max(NumObs,NumFeat);
fprintf('Done\n')fprintf('Estimating model ... ')
Obj=BHMM(NumState,NumSym,NumFeat);
Obj.TransWeight=Trans;Obj.TransStren(:)=NumObs;


% 更新状态
fprintf('Done\n')fprintf('\n')end


