-
21-09-2019 - |
题
我开始阅读更多关于马尔科夫发电机的今天,我真的很感兴趣的整个过程的建筑物之一。从我的理解是,未来国家是依赖于统计过去的国家的存在。
例如:
好的世界。你好,Dolly.好的世界。
"世界"下的"你好"~66%的时间,来源。
如果这是总是这种情况下,怎么那么您避免将相同的结果每一个时间?所统计的出现也不会改变一个静态的串,使我是正确的假设没有变将每能产生的,除非来源数据修改某种方式?
我怎么可能获得的变化,从一个静态的来源,考虑到统计的价值,但允许一些灵活性吗?使用我的例子上,我怎么能让我的发电机,以按照"你好"与"多莉"的时候"多莉"只下"你好",33%的时间?
我猜我要问的是,我怎么基本概率的我的下一个选择的统计存在的话,按照我的本选择?这样,"多莉"显示,33%的时间,以及"世界"表明了66%的时间-或者我完全失去这里吗?
解决方案
您使用随机数发生器来接你去了哪条路径。你必须保存每一个状态(这实在是之前N项目的历史)和该州的概率。然后你选择一个随机数,并在此基础上决定下一步的状态,你过渡到是什么。
在你的例子你有一个Markov链具有1的N你将具有看起来是这样的链结构:
<start> -> Hello : 1.0
Hello -> World. : 0.66666
Hello -> Dolly. : 0.33333
Dolly. -> Hello : 1.0
World. -> <end> : 0.5
World. -> Hello : 0.5
如果您的当前状态为你好,你的下一个可能的状态是世界。多莉..生成0和1之间的随机数,并选择世界。如果它小于0.666666,否则选择多利。
使用一个N = 2的马尔可夫链,则得到几乎确定性的行为与该输入:
<start> <start> -> <start> Hello : 1.0
<start> Hello -> Hello World. : 1.0
Hello World. -> World. Hello : 0.5
Hello World. -> World. <end> : 0.5
World. Hello -> Hello Dolly. : 1.0
Hello Dolly. -> Dolly. Hello : 1.0
Dolly. Hello -> Hello World. : 1.0
其他提示
两个意见:
1)产生的样品从一个随机的过程中,是否有某些选择是相当(>50%)有可能的,而其他人不这样,只是需要一个加权"掷硬币":产生一个随机的真实数量上均匀地[的0,1),并考虑可能在相同的固定顺序,保持一个总的概率为止。因为只要总值超过你的随机选择的数量,选择这一选择。如果你的选择具有非标准化(不总结1)的概率,首先需要计算的总和的概率s,和划分他们所有的通过,或者选择你的随机数量在[0,s)
2)防止过度拟合当估计模型,从少量样本的培训数据(数相比较的参数),使用的贝先验的模型参数。一个真的很酷的例子,在那里数量的模型参数(历史的大小)不是固定的,任何有限的数量提前看到的 无限嗯.如果你不用贝叶斯的方法,然后你会想要选择的历史长度适当的训练量数据,以及/或者实施一些特别的平滑(例如线性插值之间的一个便-2和以-1模型)。