马尔科夫决策过程及表格型方法

简介: 马尔科夫决策过程及表格型方法

一、马尔科夫属性

马尔可夫属性(Markov property)是概率论中的一个概念。意思是当在一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态;其实也就是一句话,这个事件的状态的下一秒变化是由这个状态决定,和以前没关系。

二、马尔科夫链

马尔可夫链是一组具有马尔可夫性质的离散随机变量的集合

他是一组概率转换的一组集合。其具有马尔科夫性质、存在离散指数集和状态空间的随机过程。如下面:

其马尔科夫链就是从这个图有四个状态,s1,s2,s3,s4这个相互转移。可以从任意状态开始,比如s1

  • s1有0.1概率继续s1,有0.7概率变成s4, 0.2概率变成s2
    其他依次类似
    因此在数学中我们可以构建状态转移矩阵。

    有状态转移矩阵去描述到其他节点概率

三、马尔科夫奖励过程

这个过程就是在原来马尔科夫链上加上一个奖励矩阵。也就是在上述所说的,我们四个过程,如果说我们这个过程到达s4节点就比较好我们就奖励他10个值。到达s1就奖励5即:[5,0,0,10]

我们在加上奖励之后,这个马尔科夫链就将会趋向于s1和s4了

四、马尔可夫决策过程(MDP)

在前面三种定义介绍之后,我们知道强化学习这是一个行为学习,所以我们要应该根据信息去做一些事情。因此我们就该加上一个行为,

在MDP中,我们为系统增加一个行为(action)变量 A t AtAt 与一个“奖励”(reward)变量 R ( t ) R(t)R(t) 。其中 A ( t ) A(t)A(t)代表了我们“主观能动性”的部分,相当于系统的“输入”;而 R ( t ) R(t)R(t) 代表着在 A ( t ) A(t)A(t)时刻我们采取的行动带来的回报,相当于系统的“输出”。

五、MDP

当我们定义了状态、动作、奖励等要素,并确定它们之间的转移关系具有马尔可夫性质时,就可以定义一个MDP。MDP由四元组而后面根据学习目标,我们可能会加上一个衰减因子的(在后文中介绍)< S , A , P , R > <S,A,P,R><S,A,P,R>即:

s:status(状态)

A:action(动作)

R:reward(奖励)

P:probability(状态转移)

根据图中人物小人,再根据每一刻状态时候,人物小人就会做出一定的决策,而每一刻,熊还是人他们都有不同行为概率的。我们就可把它变成树结构:

根据图片中结果,我们可以定义一个价值函数V去表示好与坏。

再知道他这个是好还是坏的时候,我们就可以记录下来之后,知道什么样的状态做什么样的事情了。我们把它用Q函数去表示。即:状态–动作值

1)Q-table

我们知道这个训练好的表格之后,这个表格就像小人的生活准则一样,遇到什么样的情况,记录之后查询,做出选择。他指导我们每一个行为动作。

2)折扣因子

在我们有的时候训练目标不同情况下,比如下棋过程, 训练迭代过程特别大,目标有点远,这样下去可能无数迭代,所以我们就加入一个折扣因子,能够加快我们步骤。

而在简单走简单迷宫时:迷宫比较小,我们就不需要加入,目标很近没必要加入了。

而我们的折扣因子一般在0----1之间的。因为我们要活在当下啊。赖以当情况学习。

3)时序差分(Temporal Difference):

一种Q函数(Q值)的更新方式,也就是可以拿下一步的 Q 值 ,公式是:

4)SARSA算法:

一种更新前一时刻状态的单步更新的强化学习算法,也是一种on-policy策略。该算法由于每次更新值函数需要知道前一步的状态(state),前一步的动作(action)、奖励(reward)、当前状态(state)、将要执行的动作(action),即 这几个值,所以被称为SARSA算法。agent每进行一次循环,都会用

( S ( t ) , A ( t ) , R ( t + 1 ) , A ( t + 1 ) ) ( S(t), A(t), R(t+1), A(t+1) )(S(t),A(t),R(t+1),A(t+1)) 来对于Q值更新

本文后面还不完整,还需继续更新,感谢理解

最后。 文章中如有不足之处,请务必指出,一定迅速改正。谢谢

相关文章
|
13天前
|
机器学习/深度学习 运维 监控
基于特征子空间的高维异常检测:一种高效且可解释的方法
本文探讨了一种替代传统单一检测器的方法,通过构建多个专注于特征子集(子空间)的检测器系统,来提高异常检测的准确性和效率。文章详细介绍了子空间方法在处理高维数据时的优势,包括缓解维度灾难、提高异常检测的可解释性和计算效率。同时,文中还讨论了子空间的选择策略,如基于领域知识、相关性、随机选择等,并介绍了PyOD工具包中实现子空间异常检测的具体方法。通过这些技术,异常检测系统能够更有效地识别数据中的异常记录,尤其是在特征数量众多的情况下。
39 9
基于特征子空间的高维异常检测:一种高效且可解释的方法
|
6月前
|
机器学习/深度学习 算法 数据可视化
【从零开始学习深度学习】46. 目标检测中锚框的概念、计算方法、样本锚框标注方式及如何选取预测边界框
【从零开始学习深度学习】46. 目标检测中锚框的概念、计算方法、样本锚框标注方式及如何选取预测边界框
|
7月前
|
机器学习/深度学习 SQL 算法
如何在因果推断中更好地利用数据?
本报告从两个方面来介绍我们如何利用更多的数据来做好因果推断,一个是利用历史对照数据来显式缓解混淆偏差,另一个是多源数据融合下的因果推断。
|
7月前
|
机器学习/深度学习 数据可视化 算法
R语言贝叶斯广义线性混合(多层次/水平/嵌套)模型GLMM、逻辑回归分析教育留级影响因素数据
R语言贝叶斯广义线性混合(多层次/水平/嵌套)模型GLMM、逻辑回归分析教育留级影响因素数据
|
7月前
|
机器学习/深度学习 人工智能 分布式计算
【机器学习】协方差和相关性有什么区别?
【5月更文挑战第17天】【机器学习】协方差和相关性有什么区别?
|
7月前
|
数据可视化
R语言泊松回归对保险定价建模中的应用:风险敞口作为可能的解释变量
R语言泊松回归对保险定价建模中的应用:风险敞口作为可能的解释变量
|
7月前
|
机器学习/深度学习 算法
R语言隐马尔可夫模型HMM识别不断变化的股票市场条件
R语言隐马尔可夫模型HMM识别不断变化的股票市场条件
|
7月前
|
机器学习/深度学习 存储 编解码
【数据挖掘】网格聚类STING、概念聚类COBWEB和模糊聚类的讲解(图文解释)
【数据挖掘】网格聚类STING、概念聚类COBWEB和模糊聚类的讲解(图文解释)
374 0
|
机器学习/深度学习 算法
在对数据进行预处理时,怎样处理类别型特征?
在对数据进行预处理时,怎样处理类别型特征?
|
数据挖掘 索引 Python
Python实现固定效应回归模型实现因果关系推断(二)
Python实现固定效应回归模型实现因果关系推断(二)
946 1
Python实现固定效应回归模型实现因果关系推断(二)