HMM 前向算法中的下溢

2023-11-24

我正在实现 HMM 的前向算法来计算给定 HMM 发出给定观察序列的概率。我希望我的算法对于下溢具有鲁棒性。我无法在对数空间中工作,因为前向算法需要概率的乘法和加法。避免下溢的最佳方法是什么?

我已经阅读了一些关于此的资料,但我得到的最好的建议是缩放每个时间步的概率第 6 节在这里。在算法结束时,您将不会得到您想要的(观察序列的)确切概率。另外,除非我弄错了,如果按照上述参考文献中的建议在每个时间步缩放概率,则无法对来自两个不同 HMM 的给定观察序列的概率进行有意义的比较(以找出哪个)更有可能输出序列)。有什么建议么?


在参考文献末尾的方程 32 中,将每个概率值 alpha_t(i) 乘以 C_t。所以最后你将最终概率乘以所有 C_t 的乘积。您可以通过跟踪 log(C_t) 的总和来跟踪所有这些。然后最后你可以算出 log(alpha_t(i)) - SUM_(j

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HMM 前向算法中的下溢 的相关文章

  • 图像算法上的物体计数

    我又接到学校任务了 这次 我的老师给我的任务是创建算法来计算图片上有多少只鸭子 该图与此类似 我想我应该使用模式识别来搜索上面有多少只鸭子 但我不知道每只鸭子适合哪种图案 我认为你可以通过分割鸭嘴并计算鸭嘴的数量来解决这个问题连接的组件 h
  • 使用 Numba 加速矢量距离计算

    以下是我为 3 D 环形几何中的距离 平方 计算编写的一些函数 用于该 3 D 空间中的粒子集合 import itertools import time import numpy as np import scipy import num
  • 查找文本中所有关键字的有效算法

    我有很多字符串 其中包含许多不同拼写的文本 我通过搜索关键字来标记这些字符串 如果找到关键字 我将使用该关键字的关联文本 假设搜索字符串可以包含文本 schw schwa 和 施瓦茨 我有三个关键字 全部解析为文本 schwarz 现在我正
  • 序列和与 GCD

    大约一个月前 我在编程挑战中遇到了这个问题 但社论尚未发布 所以我在这里问 有一个大小为 N 的数组 A 求 A 的 K 个长度子序列的总和 GCD Example 如果 A 1 2 3 且 K 2 1 2 3 总和 1 GCD 3 1 3
  • 从原点开始在离散 2D 网格上迭代向外螺旋的算法

    例如 这是预期螺旋的形状 以及迭代的每个步骤 y 16 15 14 13 12 17 4 3 2 11 18 5 0 1 10 x 19 6 7 8 9 20 21 22 23 24 其中线条是 x 轴和 y 轴 以下是算法每次迭代 返回
  • 用给定均值截断正态分布

    python 是否可以生成具有给定期望值的截断正态分布 我知道 scipy stats truncnorm 可以给出截断的正态分布 该分布取平均值original正态分布作为参数 但我想创建一个截断正态分布 使得截断分布的期望值是一个特定值
  • 如何在 C# 中以编程方式创建柔和的颜色?

    根据所需的颜色数量均匀分布地生成它们 如果指定的计数为 8 则看起来像这样 List
  • 从 xgb.train() 获取概率

    我是 Python 和机器学习的新手 我在网上搜索了我的问题 并尝试了人们建议的解决方案 但仍然没有得到它 如果有人能帮助我 我将非常感激 我正在开发我的第一个 XGboost 模型 我已经使用 xgb XGBClassifier 调整了参
  • 坐标算法 - 绕中心旋转

    通过查看这张图片 我想您会很好地理解我的问题 图片已删除 网址不再有效 现在返回广告 所以基本上我想要一个函数 它接受一个对象作为参数 并根据我之前添加的对象数量为该对象提供正确的坐标 假设我将所有这些对象添加到一个数组中 objectAr
  • Java 2d 游戏中的路径查找?

    本质上它是我正在开发的一款吃豆人克隆游戏 我有一个 Enemy 类 并创建了该类的 4 个实例 它们都代表游戏的 4 个幽灵 所有幽灵都会在屏幕的随机区域启动 然后它们必须朝着吃豆人角色前进 当玩家控制吃豆人并移动它时 他们应该跟随它并尽可
  • 重写修改后的 goto 语义的算法

    我有一大堆使用旧的自行设计的脚本语言编写的遗留代码 我们将它们编译 翻译成 javascript 该语言有条件跳转 跳转到标签 与普通 goto 语句的区别在于 不可能向后跳转 该语言中没有嵌套的 if 语句或循环 由于 javascrip
  • 这个函数(for循环)空间复杂度是O(1)还是O(n)?

    public void check 10 for string i list Integer a hashtable get i if a gt 10 hashtable remove i 这是 O 1 还是 O n 我猜测 O n 但不是
  • 如何光栅化旋转矩形(通过 setpixel 在 2d 中)

    我有四个 2d 顶点 A B C D 的旋转矩形 我需要在像素缓冲区中 有效地 光栅化 绘制它 使用 setpixel x y 颜色 怎么做 我正在尝试使用一些代码 例如 convertilg a b c d do up down left
  • 求先递增后递减列表的最大值和最小值

    我尝试用谷歌搜索这个问题 但没有取得太大成功 我确信这个问题或类似问题有一个技术名称 但我似乎找不到答案 给定一个列表L整数 即严格递增 然后严格递减 找到该列表的最大值和最小值 例如 L可能 1 2 3 4 5 4 3 2 or 2 4
  • 优化计算中使用的 # 个线程的算法

    我正在执行一个操作 我们将其称为CalculateSomeData CalculateSomeData 在连续的 代 中运行 编号为 1 x 整个运行中的代数由CalculateSomeData 的输入参数固定 并且是先验已知的 完成一次生
  • 面试题:三个数组,O(N*N)

    假设我们有three长度数组N其中包含任意数量的类型long 然后我们得到一个数字M 相同类型 我们的任务是选择三个数字A B and C每个数组中的一个 换句话说A should从第一个数组中选取 B从第二个开始和C从第三个 所以总和A
  • 用于查找最近邻居的空间划分算法如何工作?

    为了找到最近的邻居 空间分区 http en wikipedia org wiki Nearest neighbor search Space partitioning是算法之一 它是如何工作的 假设我有一组 2D 点 x 和 y 坐标 并
  • 查找字符串中最常见的子字符串的算法

    是否有任何算法可用于查找字符串中最常见的短语 或子字符串 例如 以下字符串将 hello world 作为其最常见的两个单词短语 hello world this is hello world hello world repeats thr
  • 你能用 C# 编写一个同样优雅的排列函数吗?

    我非常喜欢这个 6 行解决方案 并尝试在 C 中复制它 基本上 它会排列数组的元素 def permute xs pre if len xs 0 yield pre for i x in enumerate xs for y in perm
  • 对 Java 中 *any* 类的所有实例进行全排序

    我不确定以下代码是否能确保 Comparator 的 Javadoc 中给出的所有条件 class TotalOrder

随机推荐

  • 我需要导入什么才能访问我的模型?

    我想运行一个脚本来填充我的数据库 我想通过 Django 数据库 API 访问它 唯一的问题是我不知道需要导入什么才能访问它 如何才能实现这一目标 也导入您的设置模块 import os os environ DJANGO SETTINGS
  • jQuery 模式对话框和 jqGrid

    如何将 Jquery 模态确认与 jqGrid 一起使用 假设当我提交条目时 它将弹出一个模式对话框并显示名称以及发送到服务器的消息 我的方法 dialog confirm dialog autoOpen false resizable f
  • 是否有一个类似 PropertyPlaceholderConfigurer 的类可以与 Spring 一起使用并接受 XML?

    Spring 有一个非常方便的类 称为属性占位符配置器 它采用标准 properties 文件并将其中的值注入到您的 bean xml 配置中 有谁知道有一个类可以做完全相同的事情 并以相同的方式与 Spring 集成 但接受配置的 XML
  • 加速 Python 中的 MSD 计算

    这是向社区发出的呼吁 看看是否有人有提高 MSD 计算实现速度的想法 它主要基于这篇博客文章的实现 http damcb com mean square disp html 目前 对于 5000 个点的 2D 轨迹 当前的实现大约需要 9
  • Flutter:StatelessWidget.build 被多次调用[重复]

    这个问题在这里已经有答案了 我总是将代码放在我的问题中 但这一次这是不可能的 因为错误可能出现在一千行代码中的任何地方 然而 我注意到我的主屏幕的构建方法 StatelessWidget 它是 a 的后代MaterialApp home 属
  • JavaScript 按 id 合并对象[重复]

    这个问题在这里已经有答案了 在 Javascript 中合并两个数组的正确方法是什么 我有两个数组 例如 var a1 id 1 name test id 2 name test2 var a2 id 1 count 1 id 2 coun
  • RequestFactory 理论:为什么 Locator<>.find() 被如此频繁地调用?

    我是 RequestFactory 的新手 但得到了慷慨的帮助托马斯 布罗耶在查看了下面的文档之后 情况变得好多了 RequestFactory 入门 请求工厂移动部件 GWT 2 4 中的 RequestFactory 更改 但你能解释一
  • 如何在 Python 中重置 TCP 套接字?

    我有一个用 Python 编写的套接字代理 当它从一对通信对等点接收到 RST 时 它将通过让套接字被垃圾收集来关闭与两个对等点的连接 这会导致其他对等方看到 FIN 而不是 RST 这意味着代理有效地将 RST 转换为 FIN 我认为这并
  • Anaconda“无法创建进程”

    我是 Python 新手 我刚刚安装了 Python anaconda python 2 7 在启动 Anaconda 时提示发生了 无法创建进程 的情况 那么这里有人可以帮我吗 我感谢每一个帮助 我遇到了完全相同的错误 因为我的用户名包含
  • SVN:将存储库主干移动到另一个分支(带有历史记录)

    我正在使用带有大量存储库的 SVN 设置 我试图通过将一个的主干移动到另一个的分支来合并一些 旧的是新的主题版本 减去我稍后将应用的一些代码修复 所以这对我来说很有意义 简短版本 我想从 RepositoryA trunk 转到 Repos
  • VB“Financial.Pmt”在 C# 中等效吗?

    Microsoft VisualBasic 程序集中有一个内置函数 我可以在 VB 中这样使用它 Financial Pmt dAPR 100 12 iNumberOfPayments dLoanAmount 1 我当前的项目是用C 编写的
  • 如何使用 jQuery 计算 ASP.NET 中 gridview 的行数

    有谁知道如何使用 jQuery 计算 asp GridView 中的行数 如果没有找到行那么我想做一些事情 A GridView只是呈现为标准 HTML 表格 因此只需计算trGridView 下的元素 var totalRows tr l
  • 在 ListBoxFor 中选择值的挑战

    最近在开发我的第一个 ASP Net MVC2 Web 应用程序时 当我需要在列表框中选择多个值时 我遇到了一些问题 我用一些 jQuery 解决了这个问题 但继续编写了一些非常简单的代码来演示 我使用 EF 作为模型 有两个实体 Cust
  • 如何从我的 Android 应用程序中删除 QUERY_ALL_PACKAGES 权限?

    由于 Google 的反馈 我的 Google Play 更新版本已被拒绝 3 次 应使用不太广泛的应用程序可见性方法 我们无法批准您的应用使用 QUERY ALL PACKAGES 权限 因为声明的任务可以使用不太广泛的应用可见性方法来完
  • stl容器是否使用隐式共享?

    众所周知 Qt 小部件使用隐式共享 所以我对 stl 容器感兴趣std vector std string也使用隐式共享 如果没有 为什么 因为它非常有用 如果答案是肯定的 我们如何确定呢 我需要简单的 C stl 程序 该程序显示 stl
  • 将 html 结果保存到 txt 或 html 文件

    我有一个带有 html 代码的变量 以下是 R 控制台中代码变量的输出 h1 My First Heading h1 p My first paragraph p 我尝试将内容保存到txt文件中 write table code file
  • 什么是卷积神经网络中的“线性投影”[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正在阅读剩余学习 我有一个问题 3 2中提到的 线性投影 是什么 一旦得到这个看起来很简单 但无法理解 有人可以提供简单的例子吗 首先 重要的是要了解什么x y and F以及为什
  • Google BigQuery 的 JDBC 驱动程序?

    有谁知道 Google BigQuery 的 JDBC 接口或驱动程序吗 请只使用 Java 我已经不再使用 Python 库了 有一个第 3 方 JDBC 驱动程序 可以从以下位置获取 http code google com p sta
  • 不完整类型的 new 在包含在模板中时编译

    考虑这段代码 有一个明显的编译错误 1 struct A struct B B new A error allocation of incomplete type A Using a unique ptr也无济于事 2 struct A s
  • HMM 前向算法中的下溢

    我正在实现 HMM 的前向算法来计算给定 HMM 发出给定观察序列的概率 我希望我的算法对于下溢具有鲁棒性 我无法在对数空间中工作 因为前向算法需要概率的乘法和加法 避免下溢的最佳方法是什么 我已经阅读了一些关于此的资料 但我得到的最好的建