马尔可夫 java_马尔可夫过程(以马尔科夫链Markov为例)

article/2025/8/22 1:43:39

马尔可夫过程(以马尔科夫链Markov为例)

马尔可夫过程

马尔可夫过程的大概意思就是未来只与现在有关,与过去无关。

简单理解就是渣男只在乎下一刻会不会爱你只取决于这一时刻对你的新鲜感,而与你之前对这段感情的付出毫无关系。

设有一个随机过程X(t),如果对于下一个任意的时间序列

equation?tex=t_%7B1%7D%3Ct_%7B2%7D%3C%E2%80%A6%E2%80%A6%3Ct_%7Bn%7D ,在给定随机变量

equation?tex=X%EF%BC%88t_%7B1%7D%EF%BC%89%3Dx_%7B1%7D%EF%BC%8CX%EF%BC%88t_%7B2%7D%EF%BC%89%3Dx_%7B2%7D%EF%BC%8C%E2%80%A6%E2%80%A6%EF%BC%8CX%EF%BC%88t_%7Bn-1%7D%EF%BC%89%3Dx_%7Bn-1%7D 的条件下,

equation?tex=X%EF%BC%88t_%7Bn%7D%EF%BC%89%3Dx_%7Bn%7D+ 的分布可表示为

equation?tex=F_%7Bt_%7Bn%7D%2Ct_%7B1%7D%2Ct_%7B2%7D%E2%80%A6%E2%80%A6t_%7Bn-1%7D%7D%EF%BC%88x_%7Bn%7D%7Cx_%7B1%7D%2Cx_%7B2%7D%E2%80%A6%E2%80%A6x_%7Bn-1%7D%EF%BC%89%3DF_%7Bt_%7Bn%7Dt_%7Bn-1%7D%7D%EF%BC%88x_%7Bn%7D%7Cx_%7Bn-1%7D%EF%BC%89 则称X(t)为马尔可夫过程或者简称马氏过程。

这种“下一时刻的状态至于当前状态有关,与上一时刻状态无关”的性质,称为无后效性或者马尔可夫性。而具有这种性质的过程就称为马尔可夫过程。

在马尔可夫过程中有两个比较重要的概念:转移分布函数、转移概率

马氏过程

equation?tex=X_%7Bt%7D ,称条件概率

equation?tex=F_%7Bs%2Ct%7D%3DP%5Cleft%5C%7B+X_%7Bt%7D%5Cleq+y%7CX_%7Bs%7D%3Dx+%5Cright%5C%7D 为过程的转移分布函数。

其条件概率

equation?tex=f_%7Bt_%7Bn%7D%7Ct_%7Bn-1%7D%7D%28x_%7Bn%7D%7Cx_%7Bn-1%7D%29 为转移概率密度,

equation?tex=P%28X_%7Bt_%7Bn%7D%7D%3Dx_%7Bn%7D%7CX_%7Bt_%7Bn-1%7D%7D%3Dx_%7Bn-1%7D%29 为转移概率。

马尔科夫链

马尔科夫链(Markov)是最简单的马氏过程,即时间和状态过程的取值参数都是离散的马氏过程。时间和状态的取值都是离散值。

假定在每一个时刻

equation?tex=t_%7Bn%7D (n=1,2,…),

equation?tex=X_%7Bn%7D%3DX%28t_%7Bn%7D%29 所有可能的状态的集合S是可数的,即可表示为S={0,1,2,…}。对应于时间序列t1,t2 ,…, tn,… ,马氏链的状态序列为i1,i2,…, in,… 。

对于马尔科夫链,若转移概率

equation?tex=P%28X_%7Bt_%7Bn%7D%7D%3Dx_%7Bn%7D%7CX_%7Bt_%7Bn-1%7D%7D%3Dx_%7Bn-1%7D%29与n无关(即与哪一次转移无关,仅与转移前后的状态有关),则该马氏链为齐次马氏链;否则称为非齐次马氏链。接下来我们仅讨论齐次马氏链。

对于齐次马氏链,转移概率为

equation?tex=P_%7Bij%7D%3DP%5Cleft%5C%7B+X_%7Bn%7D%3Dj%7C+X_%7Bn-1%7D%3Di%5Cright%5C%7D ,称为马氏链的一步转移概率,并且其满足条件:

equation?tex=P_%7Bij%7D%5Cgeq0%EF%BC%8C%5Csum_%7Bj%3D0%7D%5E%7B%5Cinfty%7D%7BP_%7Bij%7D%3D1%7D ,j=0,1,……

5db3d446b31e5322e5dfd92c386ef583.png一步转移概率矩阵

例题:设有三个黑球和三个白球,把这六个球任意分给甲乙两人,并把甲拥有的白球数定义为该过程的状态,则有四种状态0,1,2,3。现每次从甲乙双方各取一球,然后相互交换。经过n次交换后过程的状态记为Xn,试问该过程是否是马氏链?如是,试计算其一步转移概率矩阵。

解:由题意知,甲拥有白球的状态为离散值,且当前状态仅与上一时刻状态有关。所以这个过程是马氏链。

由于六个球任意分给甲、乙两人,所以根据甲拥有球的数量不同而状态不同。

情况一:甲有1个球,则甲的状态有2种:0和1。

①甲当前状态为0,则说明甲有1个黑球,乙有2个黑球和3个白球,交换一次后

甲状态为0的概率:2/5

甲状态为1的概率:3/5

②甲当前状态为1,则说明甲有1个白球,乙有3个黑球和2个白球,则交换一次后

甲状态为0的概率:3/5

甲状态为1的概率:2/5

5ec606f32a5c374fc0c323a84bd19d70.png

甲有2,3,4,5个球的情况依次类推即可,此处不再过多阐述。

除了一部转移以外,马尔科夫链还有n步转移,即通过n次达到目标状态

78417340bd4b9837db660f39d82e6ecb.png

如上图,马尔科夫链的n步转移可以先经过m1步由状态i转移到状态k,然后再经过m2步由状态k转移到状态j。

equation?tex=P_%7Bij%7D%5E%7Bm1%2Bm2%7D%3D%5Csum_%7Bk%3D0%7D%5E%7B%5Cinfty%7D%7BP_%7Bik%7D%5E%7Bm1%7DP_%7Bkj%7D%5E%7Bm2%7D%7D

这个公式称为Chapman-Kolmogorov(查普曼-科尔莫戈洛夫)等式。

马尔可夫链状态转移特性

如果马氏链的两个状态i和j有下列特性:即存在整数n和n'有

equation?tex=P_%7Bij%7D%5E%7Bn%7D%3E0%EF%BC%8CP_%7Bji%7D%5E%7Bn%E2%80%99%7D%3E0

即从状态i(j)经过n(n’)步转移到状态j(i)的概率大于0,则称i和j是互通的。

如果马氏链的所有状态都是互通的,则该马氏链是不可约的。

如果马氏链的状态i有下列特性:即存在某个整数m≥1,使

equation?tex=P_%7Bii%7D%5E%7Bm%7D%3E0

且存在某个整数d > 1并仅当m为d的整倍时有

equation?tex=P_%7Bii%7D%5E%7Bm%7D%3E0

则状态i是有周期性的。

如果马氏链中没有一个状态是有周期性的,则称该马氏链为非周期的。

马尔科夫链的稳态分布

若下式成立

equation?tex=p_%7Bj%7D%3D%5Csum_%7Bj%3D0%7D%5E%7B%5Cinfty%7D%7Bp_%7Bi%7D%7DP_%7Bij%7D%EF%BC%8Cj%3D0%EF%BC%8C1%E2%80%A6%E2%80%A6

则称概率分布

equation?tex=%5Cleft%5C%7B+p_%7Bj%7D%7Cj%5Cgeq0+%5Cright%5C%7D 是马氏链的稳态分布。对于稳态概率分布,存在

equation?tex=%5Csum_%7Bj%3D0%7D%5E%7B%5Cinfty%7D%7Bp_%7Bj%7D%7D%3D1

稳态概率反映了系统达到稳态后,系统处于某一状态的可能性(概率)。

稳态分布可以表示为

ffb39816d578eec26c4e6f02f903f9e7.png

即过程从初始状态X0= i 出发,最终转移到状态Xn= j的概率,并且与初始状态X0= i无关。

稳态分布也可以表示为

110c69fe41b48b9ade6c95cc0ca6ebd3.png

其中,pj表示该过程中访问状态j的时间比例或频率,且与初始状态无关。

马尔科夫链的全局平衡方程

在马尔可夫链在稳态情况下从一个状态出发总会转移到一个状态,所以

faaafc26a22917ca0f426ca7897684b9.png

称为全局平衡方程。它表示在稳态情况下,从一个状态j转移出去的频率等于转移进入状态j的频率。

全局平衡方程是一种典型的求解概率分布的方法。


http://chatgpt.dhexx.cn/article/sOs2rkxv.shtml

相关文章

马尔可夫决策过程

马尔可夫决策过程 一、马尔科夫决策过程:**马尔科夫决策过程****最优决策**值迭代策略迭代MDP中的参数估计 二、代码实战:A、马尔可夫决策过程值迭代B、马尔可夫决策过程策略迭代C、马尔可夫决策过程动态规划版 参考文章 本文介绍了马尔可夫决策过程&…

随机过程第2讲——马尔可夫过程的应用

温习:随机过程第1讲——泊松过程的模拟与检验:https://blog.csdn.net/ChenQihome9/article/details/82871332 去得也突然——不知在什么时候,雨,悄悄地停了。风也屏住了呼吸,山中一下变得非常幽静。远处,一…

强化学习(2): 马尔可夫过程

前言 本文重点介绍MDP,因为MDP是目前最适合表征强化学习问题的模型。 一个具体的赌徒例子,来说明强化学习的算法如何与MDP构建联系,并且求解出最优策略。链接如下:link 一、马尔可夫性 其假设未来的状态仅取决与当前的状态。过…

贝叶斯网络、马尔可夫模型、马尔可夫过程、马尔可夫链、马尔可夫网络基本概念

知识储备与简要概括 可数集【Countable set】: 是指每个元素都能与自然数集N的每个元素之间能建立一一对应的集合。如果将可数集的每个元素标上与它对应的那个自然数记号,那么可数集的元素就可以按自然数的顺序排成一个无穷序列a1,a2&#…

强化学习笔记:马尔可夫过程 马尔可夫奖励过程

1 马尔可夫性质 (Markov Property) 我们设状态的历史为(包含了之前的所有状态) 如果一个状态转移是符合马尔可夫性质的,也就是满足如下条件: 也就是说,从当前状态转移到状态的概率,就…

马尔可夫性质、马尔可夫链和马尔可夫过程

关注:灰质,有趣有料的AI技术分享 前言 研究决策问题就一定听说过马尔可夫过程(Markov Process),这是一类非常重要的方法。现在非常热门的强化学习都是基于马尔可夫过程方法建立的。马尔可夫决策过程是研究随机序贯决策…

1.3 马尔可夫过程

之前介绍的奖励、智能体、动作、观察和环境可以看成RL的一级概念。以此为基础,我们将探索RL的二级概念,包括状态(state)、事件(episode)、历史(history)、价值(value&…

一文看懂马尔科夫过程

1.马尔科夫决策过程(MDPs)简介 马尔科夫决策过程是对强化学习(RL)问题的数学描述。几乎所有的RL问题都能通过MDPs来描述: 最优控制问题可以用MDPs来描述;部分观测环境可以转化成POMDPs;赌博机问题是只有一个状态的MDPs;注:虽然大部分DL问题都能转化为MDPs,但是以下所描述…

马尔可夫Markov决策过程 MDP、马尔可夫奖励过程MRP

引言 在概率论及统计学中,马尔可夫过程(英语:Markov process)是一个具备了马尔可夫性质的随机过程,因为俄国数学家安德雷马尔可夫得名。马尔可夫过程是不具备记忆特质的(memorylessness)。换言…

零基础学习python数据分析,需要掌握哪些技能?

对于刚刚入行的小白同学来说,在学习python的过程中,一定会遇到一些疑问。比如说: 学习Python需要多久? 学习Python需要达到什么样的程度? 学Python的书籍有哪些? 为了处理数据集,我需要精通…

Python数据分析期末复习归纳

python数据分析期末复习归纳(更新中) 文章目录 python数据分析期末复习归纳(更新中)前言一、python语言基础二、内建数据结构、函数、文件(重点)元组列表内建序列函数字典函数 三、Numpy基础(重…

Python数据分析师特训营84节

刚看完了小破站的一个数据分析的课程: “2020年Python数据分析师特训营全套84节视频完结版(就业向/零基础友好)” 趁着热乎劲儿,想记录一下课程讲到的关于python的基础知识,还有numpy、pandas、matplotlib(数据分析三大利器)工具…

Python数据分析:混淆矩阵

【小白从小学Python、C、Java】 【Python全国计算机等级考试】 【Python数据分析考试必会题】 ● 标题与摘要 Python数据分析 混淆矩阵 ● 选择题 以下关于混淆矩阵说法错误的是: A TP是被正确分类的正例个数 B FN是被错误分类的正例个数 C 主对角元素是不同类别样例…

Python数据分析和处理

数据的维度 从一个数据到一组数据:一个数据表达一个含义,一组数据表达一个或多个含义 维度:一组数据的组织形式 一维数据:由对等关系的有序或无序数据构成。采用线性方式组织 二维数据:由多个一维数据组成,是一维数…

Python数据分析之理论知识

文章目录 Python数据分析概述一、数据分析的概念1.广义数据分析2.数据挖掘 二、数据分析流程1. 需求分析:2. 数据获取3.数据预处理4.分析与建模5.模型评价与优化6. 分类模型评价指标7.回归模型8.部署 三、数据分析应用场景四、总思维导图 Python数据分析概述 一、数…

如何用Python进行数据分析,详细流程讲解!

1:为什么选择Python进行数据分析? Python是一门动态的、面向对象的脚本语言,同时也是一门简约,通俗易懂的编程语言。Python入门简单,代码可读性强,一段好的Python代码,阅读起来像是在读一篇外语文章。Pyt…

如何用Python进行数据分析?

本文为CDA数据分析研究院原创作品,转载需授权 1.为什么选择Python进行数据分析? Python是一门动态的、面向对象的脚本语言,同时也是一门简约,通俗易懂的编程语言。Python入门简单,代码可读性强,一段好的Python代码,阅读起来像是在读一篇外语文章。Python这种特性称为“伪…

Python做数据分析需要学什么?

下面分别从这四个方面来带大家学习数据分析: 第一,做数据分析要精通Python吗?第二,数据分析流程是什么?学什么?第三,如何培养数据分析思维?第四,数据分析书籍推荐 一、…

Python大作业——爬虫+可视化+数据分析+数据库(数据分析篇)

个人博客 Python大作业——爬虫可视化数据分析数据库(简介篇) Python大作业——爬虫可视化数据分析数据库(爬虫篇) Python大作业——爬虫可视化数据分析数据库(可视化篇) Python大作业——爬虫可视化数…

用python进行数据分析(入门学习)

做笔记啦!!!这几天突击了一下使用python进行数据分析,觉得还是梳理一遍比较好,不然学得快忘得也快[捂脸] 所以,今天这篇文章就主要介绍一下用python进行数据分析中常用到的三个库:numpy、pandas…