- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
假设您想要预测下一次船只访问的概率。您开始在船周期的任意位置进行观察。当您进行观察时,您只能记录船是否可见(假设它是循环中的正确点,船始终可见)。在这个世界上,船的周期长度也是未知的,但是周期性的,船的访问持续时间是未知的,但总是小于周期长度。还假设周期是一种固定的自然现象,可能不会改变。
案例 1. 第一个小时的观察你没有看到一艘船。因此,预测下一个小时内有船的概率将是任意的。在我们观察到一艘船的第二个小时,我们预测第 3 小时的概率很高。在第 4 小时我们没有观察到船,我们现在可以确定通常可以观察到这艘船 2 小时(第 2 小时和第 3 小时)。我们继续观察,在第 7 个小时,船再次可见。只有在这一点上,我们才能知道周期长度(5 小时)和船只可观察到的持续时间(2 小时)。
案例 2. 观察的第一个小时,您看到了一艘船。下一个小时的预测概率很高。在第 4 小时,您没有看到任何船只。此时船能见度至少为 3 小时。我们在第 5、6、7、8 小时再次观察船只,在第 9 小时没有船只。只有在第 9 小时之后,我们才能安全地说周期为 5 小时,能见度为 4 小时。
案例 3. 第一个小时你看到了一艘船。你睡了 3 个小时。在第 5 个小时,您看不到一艘船。你睡了 3 个小时。在第 9 个小时,您会看到一艘船。在 10、11、12 小时看到一艘船的概率是多少?
我可以使用什么算法来解决这个问题?我认为隐马尔可夫模型可能会起作用,因为存在潜在现象,但无法直接观察到。但在这种情况下,这种现象并不完全为人所知。在我的特定情况下,我可以用平均周期长度初始化算法。创建此算法的真正动机是观察之间的距离很远而且很少。该程序在训练阶段最有值(value),因为如果知道循环长度和我们在循环中的位置,事情就会变得微不足道。
以下是给定 0、1、2 和 3 个连续 观测值(X 表示看到船的观测值,O 表示没有看到船的观测值)的粗略输出,使用的平均历史周期长度为8 小时,乘船时间为 2 小时。仔细查看图表,您会注意到在船可能返回的位置附近存在增加的概率分布。
最佳答案
我不是这种建模方面的专家,但我建议您保持竞争理论。
案例一:
第一小时:没有船。所以“关闭”阶段的长度至少是一,并且关闭阶段的长度可以是任何东西。我们可以把它写成 [1+, 0+]。循环的长度为(1+) + (0+) = 1+。
第二小时:船。模型现在是 [1+, 1+],它不会预测第 3 小时,但我们经常看到船,所以我们计算出 1/2 的概率。循环长度为2+。
第 3 小时:没有观察。理论 split 。如果没有船,我们会有 [1+, 1](并预测 1/3);如果有一艘船,我们就会有 [1+, 2+](并预测 2/3)。所以我们的模型是 {[1+,1],[1+,2+],我们预测 1/2。
第四小时:没有船。我们修改理论:{[2+,1], [1+,2]} 并预测 3/8。
第 5 小时:无观察。模型再次 fork :
[2+,1] -> [3+,1], [2,1]
[1+,2] -> [2+,2], [1,2]
请注意,其中两个理论声称是完整的(但对第 6 小时做出了相反的预测)。预测是 2/5 或 40%。
第 6 小时:无观察。不完整的理论 fork :
[3+,1] -> [4+,1], [3,1]
[2,1]
[2+,2] -> [3+,2], [2,2]
[1,2]
预测是1/4。
第七小时:船。此破三说,正一说,完一说,分一说:
[4+,1] -> [4,1]
<罢工>[3,1]
[2,1]
[3+,2] -> [3,2]
[2,2]
<罢工>[1,2]
周期为 5,能见度为 1 或 2 小时。第 8 小时的预测为 1/3。
案例 2:
第一小时:船。 [0+,1+]
第 2 小时:无观察。 [1+,1+], [0+,2+]。预测 3/4。
第 3 小时:无观察。 [2+,1+]、[1,1+]、[1+,2+]、[0+,3+]。概率 2/3。
第四小时:没有船。 [3+,1+]、[1,1]、[2+,2+]、[1+,3+]。概率 5/8。
第 5 小时:船。 [3,1+]、[1,1]、[2,2+]、[1,3+]。概率 3/5。
第六小时:船。 [3,2+]、[2,2+]、[1,3+]。概率 2/3。
第七小时:船。 [3,3+]、[2,3+]、[1,3+]。概率 5/7。
第八小时:船。 [3,4+]、[2,4+]、[1,4+]。概率 3/4。
第九小时:没有船。 [3,4]、[2,4]、[1,4]。概率 1/3。能见度为 4 小时,但周期未知。
我不会完成案例 3,但你明白了。
关于在未知周期(时间序列)中检测位置的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11468969/
我需要将文本放在 中在一个 Div 中,在另一个 Div 中,在另一个 Div 中。所以这是它的样子: #document Change PIN
奇怪的事情发生了。 我有一个基本的 html 代码。 html,头部, body 。(因为我收到了一些反对票,这里是完整的代码) 这是我的CSS: html { backgroun
我正在尝试将 Assets 中的一组图像加载到 UICollectionview 中存在的 ImageView 中,但每当我运行应用程序时它都会显示错误。而且也没有显示图像。 我在ViewDidLoa
我需要根据带参数的 perl 脚本的输出更改一些环境变量。在 tcsh 中,我可以使用别名命令来评估 perl 脚本的输出。 tcsh: alias setsdk 'eval `/localhome/
我使用 Windows 身份验证创建了一个新的 Blazor(服务器端)应用程序,并使用 IIS Express 运行它。它将显示一条消息“Hello Domain\User!”来自右上方的以下 Ra
这是我的方法 void login(Event event);我想知道 Kotlin 中应该如何 最佳答案 在 Kotlin 中通配符运算符是 * 。它指示编译器它是未知的,但一旦知道,就不会有其他类
看下面的代码 for story in book if story.title.length < 140 - var story
我正在尝试用 C 语言学习字符串处理。我写了一个程序,它存储了一些音乐轨道,并帮助用户检查他/她想到的歌曲是否存在于存储的轨道中。这是通过要求用户输入一串字符来完成的。然后程序使用 strstr()
我正在学习 sscanf 并遇到如下格式字符串: sscanf("%[^:]:%[^*=]%*[*=]%n",a,b,&c); 我理解 %[^:] 部分意味着扫描直到遇到 ':' 并将其分配给 a。:
def char_check(x,y): if (str(x) in y or x.find(y) > -1) or (str(y) in x or y.find(x) > -1):
我有一种情况,我想将文本文件中的现有行包含到一个新 block 中。 line 1 line 2 line in block line 3 line 4 应该变成 line 1 line 2 line
我有一个新项目,我正在尝试设置 Django 调试工具栏。首先,我尝试了快速设置,它只涉及将 'debug_toolbar' 添加到我的已安装应用程序列表中。有了这个,当我转到我的根 URL 时,调试
在 Matlab 中,如果我有一个函数 f,例如签名是 f(a,b,c),我可以创建一个只有一个变量 b 的函数,它将使用固定的 a=a1 和 c=c1 调用 f: g = @(b) f(a1, b,
我不明白为什么 ForEach 中的元素之间有多余的垂直间距在 VStack 里面在 ScrollView 里面使用 GeometryReader 时渲染自定义水平分隔线。 Scrol
我想知道,是否有关于何时使用 session 和 cookie 的指南或最佳实践? 什么应该和什么不应该存储在其中?谢谢! 最佳答案 这些文档很好地了解了 session cookie 的安全问题以及
我在 scipy/numpy 中有一个 Nx3 矩阵,我想用它制作一个 3 维条形图,其中 X 轴和 Y 轴由矩阵的第一列和第二列的值、高度确定每个条形的 是矩阵中的第三列,条形的数量由 N 确定。
假设我用两种不同的方式初始化信号量 sem_init(&randomsem,0,1) sem_init(&randomsem,0,0) 现在, sem_wait(&randomsem) 在这两种情况下
我怀疑该值如何存储在“WORD”中,因为 PStr 包含实际输出。? 既然Pstr中存储的是小写到大写的字母,那么在printf中如何将其给出为“WORD”。有人可以吗?解释一下? #include
我有一个 3x3 数组: var my_array = [[0,1,2], [3,4,5], [6,7,8]]; 并想获得它的第一个 2
我意识到您可以使用如下方式轻松检查焦点: var hasFocus = true; $(window).blur(function(){ hasFocus = false; }); $(win
我是一名优秀的程序员,十分优秀!