繁体   English   中英

是否可以在hmmlearn中拟合多元GMHMM?

[英]Is it possible to fit a multivariate GMHMM in hmmlearn?

我知道可以将多个序列拟合到hmmlearn中,但是在我看来,这些序列需要从相同的分布中得出。

是否可以用从hmmlearn中的不同分布得出的几个观测序列拟合GMHMM?

我的用例:我想用来自不同股票的K金融时间序列拟合GMHMM,并预测在指定时间产生K股价的市场制度。 因此,矩阵输入的维数为N(日期数)×K(股票数)。 如果hmmlearn无法做到这一点,请告诉我是否可以在python或R中使用另一个包? 感谢您的帮助!

我对您的问题的处理方法是对排放概率使用多元高斯模型。

例如:假设K为2,即位置数为2。

在hmmlearn中,K将以均值矩阵的维数进行编码。

请参见本示例, 从HMM进行采样具有二维输出。 换句话说,X.shape =(N,K),其中N是这种情况下样本500的长度,K是输出的尺寸,即2。

请注意,作者在轴上绘制了每个尺寸,即x轴绘制了第一尺寸X [:, 0],y轴绘制了第二尺寸X [:, 1]。

要训​​练您的模型,请确保X1和X2与示例中的采样X形状相同,并按此处所述形成训练数据集。

总之,通过调整K而不是K = 2来将示例适应您的情况,并将其转换为GMHMM而不是GaussianHMM。

# Another example
model = hmm.GaussianHMM(n_components=5, covariance_type="diag", n_iter=100)

K = 3 # Number of sites
model.n_features = K # initialise that the model has size of observations =  K 

# Create a random training sequence (only 1 sequence) with length = 100.
X1 = np.random.randn(100, K) # 100 observation for K sites
model.fit(X1)

# Sample the fitted model
X, Z = model.sample(200)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM