马尔科夫链

网友投稿 829 2022-10-02

马尔科夫链

马尔科夫链

为了预测天气,假设观察多次后,得到天气变化的概率存在如下转换:

第一天

第二天

概率

晴天

晴天

0.2

晴天

阴天

0.3

晴天

雨天

0.5

阴天

晴天

0.1

阴天

阴天

0.6

阴天

雨天

0.3

雨天

晴天

0.4

雨天

阴天

0.5

雨天

雨天

0.1

那么转移概率矩阵为:

\[\begin{matrix} & sunny & cloudy & raining \\ sunny & 0.2 & 0.3 & 0.5 \\ cloudy & 0.1 & 0.6 & 0.3 \\ raining & 0.4 & 0.5 & 0.1 \\ \end{matrix} \]

列代表的是第一天的状态行代表的是第二天的状态

例如最右边一列代表:

第一天是晴天,第二天是雨天的概率为0.5第一天是阴天,第二天是雨天的概率为0.3第一天是雨天,第二天是雨天的概率为0.2

那么问题来了,假设今天预测的天气如下,那么明天的天气是怎样子的:

\[\begin{matrix} & sunny & cloudy & raining \\ today & 0.6 & 0.2 & 0.2 \\ tomorrow & ? & ? & ? \\ \end{matrix} \]

计算如下矩阵相乘即可({1,3}x{3,3}={1,3}):

$ \begin{bmatrix} 0.6 & 0.2 & 0.2 \end{bmatrix} $ X $ \begin{bmatrix} 0.2 & 0.3 & 0.5\ 0.1 & 0.6 & 0.3\ 0.4 & 0.5 & 0.1 \end{bmatrix} $

= $ \begin{bmatrix}0.6\times0.2+0.2\times0.1+0.2\times0.4 & 0.6\times0.3+0.2\times0.6+0.2\times0.5 & 0.6\times0.5+0.2\times0.3+0.2\times0.1 \end{bmatrix} $

= $ \begin{bmatrix} 0.22 & 0.4 & 0.38 \end{bmatrix} $

得到结果为:

\[\begin{matrix} & sunny & cloudy & raining \\ today & 0.6 & 0.2 & 0.2 \\ tomorrow & 0.22 & 0.4 & 0.38 \\ \end{matrix} \]

也可以用如下计算:

\[\begin{matrix} & sunny & cloudy & raining \\ sunny & 0.2 & 0.3 & 0.5 \\ cloudy & 0.1 & 0.6 & 0.3 \\ raining & 0.4 & 0.5 & 0.1 \\ \end{matrix} \]

列代表的是第一天的状态行代表的是第二天的状态那么第三天的状态呢?

$ \begin{bmatrix} 0.2 & 0.3 & 0.5\ 0.1 & 0.6 & 0.3\ 0.4 & 0.5 & 0.1 \end{bmatrix} $ X $ \begin{bmatrix} 0.2 & 0.3 & 0.5\ 0.1 & 0.6 & 0.3\ 0.4 & 0.5 & 0.1 \end{bmatrix} $

= $ \begin{bmatrix} 0.2\times0.2+0.3\times0.1+0.5\times0.4 & 0.2\times0.3+0.3\times0.6+0.5\times0.5 & 0.2\times0.5+0.3\times0.3+0.5\times0.1\ 0.1\times0.2+0.6\times0.1+0.3\times0.4 & 0.1\times0.3+0.6\times0.6+0.3\times0.5 & 0.1\times0.5+0.6\times0.3+0.3\times0.1\ 0.4\times0.2+0.5\times0.1+0.1\times0.4 & 0.4\times0.3+0.5\times0.6+0.1\times0.5 & 0.4\times0.5+0.5\times0.3+0.1\times0.1 \end{bmatrix} $

= $ \begin{bmatrix} 0.27 & 0.49 & 0.24\ 0.2 & 0.54 & 0.26\ 0.17 & 0.47 & 0.36 \end{bmatrix} $

\[\begin{matrix} & sunny & cloudy & raining & sunny & cloudy & raining\\ sunny & 0.2 & 0.3 & 0.5 & 0.27 & 0.49 & 0.24\\ cloudy & 0.1 & 0.6 & 0.3 & 0.2 & 0.54 & 0.26\\ raining & 0.4 & 0.5 & 0.1 & 0.17 & 0.47 & 0.36\\ \end{matrix} \]

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何开发一个音乐播放器小程序?(如何开发一个音乐播放器小程序呢)
下一篇:dataframe行变换为列
相关文章

 发表评论

暂时没有评论,来抢沙发吧~