gpt4 book ai didi

r - R depmixs4 中的 HMM 文本识别

转载 作者:行者123 更新时间:2023-11-30 09:37:51 32 4
gpt4 key购买 nike

我想知道如何利用 R 的 depmixs4 包在数据集上运行 HMM。我将使用哪些函数来获得测试数据集的分类?我有一个训练数据文件、一个标签数据文件和一个测试数据文件。训练数据由 4620 行组成。每行有 1079 个值。这些值是 83 个窗口,每个窗口有 13 个值,因此换句话说,1079 是由 83 个状态组成的数据,每个类别有 13 个观测值。这些包含 1079 个值的行中的每一行都是一个口语单词,因此它有 4620 个话语。但数据总共只有 7 个不同的单词。每个不同的单词都有 660 种不同的表达,因此有 4620 行单词。所以我们有单词 (0-6)标签文件是一个列表,其中每一行都标记为 0-6,对应于它们是什么单词。例如,第 300 行标记为 2,第 450 行标记为 6,第 520 行标记为 0。
测试文件包含大约 5000 行,其结构与训练数据完全相同,只是没有与之关联的标签。我想使用 HMM 来使用训练数据对测试数据进行分类。如何使用 depmixs4 输出测试数据的分类?我正在看:

  depmix(response, data=NULL, nstates, transition=~1, family=gaussian(), 
prior=~1, initdata=NULL, respstart=NULL, trstart=NULL, instart=NULL,
ntimes=NULL,...)

但我不知道响应指的是什么或任何其他参数。

最佳答案

这里有一个快速但不完整的测试来帮助您入门,只是为了让您熟悉基本大纲。请注意,这是一个玩具示例,它仅涉及 HMM 设计/分析的表面。例如,depmixs4 包的小插图提供了大量上下文和示例。同时,这里有一个简短的介绍。

假设您想要调查工业生产是否提供有关经济衰退的线索。首先,我们加载相关包,然后从圣路易斯联储下载数据:

library(quantmod)
library(depmixS4)
library(TTR)

fred.tickers <-c("INDPRO")
getSymbols(fred.tickers,src="FRED")

接下来,将数据转换为滚动 1 年百分比变化,以最大限度地减少数据中的噪声,并将数据转换为 data.frame 格式,以便在 depmixs4 中进行分析:

indpro.1yr <-na.omit(ROC(INDPRO,12))
indpro.1yr.df <-data.frame(indpro.1yr)

现在,让我们运行一个简单的 HMM 模型并仅选择 2 个状态——增长和收缩。请注意,我们仅使用工业生产来搜索信号:

model <- depmix(response=INDPRO ~ 1, 
family = gaussian(),
nstates = 2,
data = indpro.1yr.df ,
transition=~1)

现在让我们拟合结果模型,生成后验状态进行分析并估计衰退的可能性。此外,我们会将数据与 xts 格式的日期绑定(bind)在一起,以便于查看/分析。 (请注意 set.seed(1) 的使用,它用于创建可复制的起始值来启动建模。)

set.seed(1)
model.fit <- fit(model, verbose = FALSE)
model.prob <- posterior(model.fit)
prob.rec <-model.prob[,2]
prob.rec.dates <-xts(prob.rec,as.Date(index(indpro.1yr)),
order.by=as.Date(index(indpro.1yr)))

最后,让我们回顾一下并理想地绘制数据:

head(prob.rec.dates)
[,1]
1920-01-01 1.0000000
1920-02-01 1.0000000
1920-03-01 1.0000000
1920-04-01 0.9991880
1920-05-01 0.9999549
1920-06-01 0.9739622

高值(>0.80 ??)表明/暗示经济处于衰退/收缩中。

再次,这是一个非常非常基本的介绍,也许太基本了。希望对您有所帮助。

关于r - R depmixs4 中的 HMM 文本识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30146288/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com