You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R中基于专家标注数据训练连续观测HMM以预测隐藏状态

嘿,你说的需求完全可以实现!其实depmixS4包就支持用标注的隐藏状态数据来训练HMM——只是需要调整一下参数设置,之前可能没注意到这一点。下面是详细的步骤和代码示例,刚好匹配你的需求:

用depmixS4实现带标注数据的HMM训练与预测

第一步:准备包和数据

首先安装并加载depmixS4,同时处理你的示例数据(把隐藏状态转换为因子类型,方便模型识别):

# 安装并加载depmixS4包
install.packages("depmixS4")
library(depmixS4)

# 专家标注的数据集
data.tagged.by.expert = data.frame(
 hidden.state = c("Wake", "REM", "REM", "NonREM1", "NonREM2", "REM", "REM", "Wake"),
 sensor1 = c(1,1.2,1.2,1.3,4,2,1.78,0.65),
 sensor2 = c(7.2,5.3,5.1,1.2,2.3,7.5,7.8,2.1),
 sensor3 = c(0.01,0.02,0.08,0.8,0.03,0.01,0.15,0.45)
)

# 新观测数据集
data.newly.measured = data.frame(
 sensor1 = c(2,3,4,5,2,1,2,4,5,8,4,6,1,2,5,3,2,1,4),
 sensor2 = c(2.1,2.3,2.2,4.2,4.2,2.2,2.2,5.3,2.4,1.0,2.5,2.4,1.2,8.4,5.2,5.5,5.2,4.3,7.8),
 sensor3 = c(0.23,0.25,0.23,0.54,0.36,0.85,0.01,0.52,0.09,0.12,0.85,0.45,0.26,0.08,0.01,0.55,0.67,0.82,0.35)
)

# 将隐藏状态转换为因子类型,让模型识别不同状态类别
data.tagged.by.expert$hidden.state <- factor(data.tagged.by.expert$hidden.state)

第二步:训练带标注的HMM

核心是利用fit()函数的start参数,把专家标注的状态序列作为模型的初始状态路径,让EM算法基于已知状态学习观测分布和转移矩阵:

# 构建HMM模型:指定3个连续观测变量,每个都用高斯分布适配连续数据
model <- depmix(list(sensor1 ~ 1, sensor2 ~ 1, sensor3 ~ 1),
                data = data.tagged.by.expert,
                family = list(gaussian(), gaussian(), gaussian()),
                states = nlevels(data.tagged.by.expert$hidden.state))  # 状态数等于标注的状态种类数

# 用标注的状态序列初始化并拟合模型
fit_model <- fit(model, method = "em", start = list(state = as.integer(data.tagged.by.expert$hidden.state)))

# 可选:查看训练好的模型参数(比如每个状态的观测分布、转移矩阵)
summary(fit_model)

这里的start = list(state = ...)是关键——它告诉模型直接从专家标注的状态序列开始迭代,这样模型会精准学习每个状态下传感器数据的分布规律,以及状态之间的转移概率。

第三步:预测新数据的隐藏状态

用训练好的模型对新观测数据进行预测,最后把整数形式的状态转换回原始名称:

# 预测新观测数据的隐藏状态
prediction <- predict(fit_model, newdata = data.newly.measured)

# 将预测的整数状态转换回原始状态名称
predicted_hidden_states <- levels(data.tagged.by.expert$hidden.state)[prediction$state]

# 查看最终预测结果
predicted_hidden_states

这样就完成了你想要的流程:用标注数据训练模型,再用模型还原新观测对应的隐藏状态。

内容的提问来源于stack exchange,提问作者Vaclav Kratochvíl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:51:45