隐马尔可夫模型预测下一个观察结果

2023-12-24

我对一只鸟的运动进行了 500 次观察。我想预测鸟的第 501 次动作是什么。我在网上搜索了一下,我想这可以通过使用 HMM 来完成,但是我在这方面没有任何经验。谁能解释一下用于解决这个问题的算法的步骤?


x1-x2-x3-x4-x5......x500-x501
|  |  |  |  |       |
y1 y2 y3 y4 y5      y500

x - actual state
y - observations

P(y_i|x_i) - how you think the observation depends on the actual state
P(x_i|x_(i-1)) - how you think the actual state evolves

for i = 1,2,3...,501:
    write down best-guess of x_i based on y_i* and x_(i-1)**
you have your solution, since you only care about the last state

* missing in step 1
** missing in step 501

以上称为前向-后向算法(http://en.wikipedia.org/wiki/Forward-backward_algorithm http://en.wikipedia.org/wiki/Forward-backward_algorithm)并且是这种特定类型的树(节点悬挂的简单链)上的和积算法(在贝叶斯网络树和马尔可夫网络树上)的特例。您可以忽略“向后”步骤,因为您不需要它,因为您只关心最后一个状态。

如果 HMM 中的转移概率未知,您必须:

  • 执行学习算法,例如 EM(在 HMM 上执行时称为 Baum-Welch)
  • 根据领域知识进行天真的猜测(例如,如果您的隐藏状态是 DNA,您可以通过手动标记 DNA 数据上的转换并计算频率来计算给定先前状态的转换事件的频率)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

隐马尔可夫模型预测下一个观察结果 的相关文章

  • Tensorflow Slim 恢复模型并预测

    我目前正在尝试学习如何使用 TF Slim 并且正在遵循本教程 https github com mnuke tf slim mnist 假设我已经在检查点中保存了经过训练的模型 那么我现在如何使用该模型并应用它 例如 在教程中 如何使用经
  • 使浮动子项在溢出之外可见:隐藏父项

    在 CSS 中overflow hidden设置在父容器上 以便使其能够随着浮动子容器的高度而扩展 但与它结合使用时 它还有另一个有趣的功能margin auto 如果 PREVIOUS 同级元素是浮动元素 它实际上会与其并列显示 也就是说
  • Libsvm 中的决策值

    我是 SVM 新手 我使用 Libsvm for Matlab 在预测阶段之后我得到了一个决策值数组 根据 SVM 理论 每个测试记录 z 被指定为正 如果 f z 1 其中 f z 定义为 f z 符号 w z b 那么如何将实例 z 的
  • 如何在其他地方绘制不可见的 JFrame?

    我想将 JFrame 的内容绘制到另一个框架上 目前 我只有在 JFrame 可见时才能使其工作 有没有办法绘制隐藏的 JFrame 附加信息 在我的项目中 我需要能够旋转和缩放窗口 我不想编写自己的 window api 所以我想我也许能
  • Matlab 中的隐马尔可夫模型对序列进行分类

    我对机器学习非常陌生 我读过 Matlab 的隐马尔可夫模型统计工具箱 我想使用它对给定的信号序列进行分类 Iv 矩阵中的 3D 坐标P即 501x3 我想基于它来训练模型 Evert 完整轨迹结束于一组特定的点 即到达目标的 0 0 0
  • Python中使用factorize()后如何获取原始值?

    我是一个初学者 尝试使用 Python 中的随机森林 训练和测试数据集创建预测模型 train ALLOW BLOCK 可以取 4 个期望值 所有字符串 中的 1 个 test ALLOW BLOCK 是需要预测的 y pd factori
  • 稳态概率(马尔可夫链)Python 实现

    您好 我正在尝试生成转移概率矩阵的稳态概率 这是我正在使用的代码 import numpy as np one step transition np array 0 125 0 42857143 0 75 0 75 0 14285714 0
  • 片段 onHiddenChanged 未调用

    我最近将 Fragments 添加到我的应用程序中 对于新的应用程序 我需要获得 显示我的片段后立即通知 所以我可以尽快做一些计算 片段再次显示 我的 Fragment 与 TabIndicator 一起使用 并且仅使用一个 Fragmen
  • sklearn Logistic 回归 ValueError: X 每个样本有 42 个特征;期待 1423

    我被困在试图解决一个问题 这就是我想做的 我想使用逻辑回归预测缺失值 Nan 分类值 这是我的代码 df 1 我的数据集仅在 Metier 功能中缺少值 我试图预测的缺少值 X train pd get dummies df 1 df 1
  • 隐藏用户输入

    我正在尝试获取一个既可以在本机 Windows shell 中也可以在 cygwin shell 通过 ssh 中运行的脚本 该脚本会提示并读取用户输入的密码 到目前为止 我已经尝试过以下方法 using Term ReadKey and
  • 溢出:隐藏不适用于正方向的平移

    我最近遇到了一件奇怪的事情overflow hidden 我将它设置为一个元素 然后我想将其中的元素转换为translate 当它向负方向平移时 它将被隐藏 但如果我向正方向平移 它就不会被隐藏 在桌面浏览器中 它并没有真正显示出来 但您可
  • 有没有办法使用 PHP 在 Windows 文件上切换“隐藏”或“只读”开关?

    UPDATED 正如标题所说 有没有办法使用 PHP 在 Windows 上切换 隐藏 或 只读 开关 我想在不打开外壳的情况下执行此操作exec 如果可能的话 一个文件不能是hidden 它总是在文件系统中 NIX 约定文件以 a 开头
  • 使用 jquery 将 html 表格转为 excel

    我有这个有效的 jquery 函数 但我需要添加一些东西 我在桌子上设置了一个过滤器来隐藏列 当我隐藏列并单击导出时 它无论如何都会使用所有字段 如何只导出未隐藏的表列 var write to excel function var uri
  • WEKA 生成的模型似乎无法预测给定属性索引的类别和分布

    Overview 我正在使用 WEKA API 3 7 10 开发者版本 来使用我预制的 model files 我制作了 25 个模型 五种算法的五个结果变量 J48决策树 http weka sourceforge net doc de
  • R 中使用插入符号进行分类的预测(模型)和预测(模型$ FinalModel)之间的区别

    有什么区别 predict rf newdata testSet and predict rf finalModel newdata testSet 我训练模型preProcess c center scale tc lt trainCon
  • 张量流将预测作为 b64 输出顶部结果

    我有一个 Keras 模型 我将其转换为张量流服务模型 我可以成功地将预训练的 keras 模型转换为采用 b64 输入 预处理该输入并将其提供给我的模型 我的问题是我不知道如何获取我得到的预测数据 这是巨大的 并且只导出最高结果 我正在进
  • 使用 jQuery 检查 div 是否隐藏

    这是我的div div style display none div 然后我有一个显示按钮 当您单击时将显示 div show click function car2 show 所以现在我想检查 div 是否 car2在表单提交之前仍然隐藏
  • 在 UITableViewCell 中进入编辑模式时隐藏 UITableViewCells(类似于联系人应用程序)

    有谁知道如何在进入编辑模式时隐藏分组 UITableView 中的多个单元格 我希望当退出编辑模式时 行能够以动画效果隐藏 如联系人应用程序中所示 如您所知 在联系人编辑模式下 行数比切换回正常模式时要多 我想知道如何顺利 切换 请注意 我
  • Overflow:hidden 隐藏边框但不隐藏溢出的元素

    我正在研究带有过渡的标题 但有些东西不起作用 我将 ul 设为 120px li 设为 60px 我给 li hover 一个translateY 60px 这样当您将鼠标悬停在 li 上时它就会弹出 我想隐藏溢出的内容 直到您将鼠标悬停在
  • Tensorflow 中多维时间序列预测中的向量表示

    我有一个大型数据集 约 3000 万个数据点 具有 5 个特征 我已使用 K 均值将其减少到 200 000 个集群 数据是大约 150 000 个时间步长的时间序列 我想要训练模型的数据是每个时间步上特定簇的存在 预测模型的目的是生成一个

随机推荐