机器学习算法 - 马尔可夫链

这篇具有很好参考价值的文章主要介绍了机器学习算法 - 马尔可夫链。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

马尔可夫链(Markov Chain)可以说是机器学习和人工智能的基石,在强化学习、自然语言处理、金融领域、天气预测、语音识别方面都有着极其广泛的应用

> The future is independent of the past given the present   未来独立于过去,只基于当下。


这句人生哲理的话也代表了马尔科夫链的思想:过去所有的信息都已经被保存到了现在的状态,基于现在就可以预测未来。

虽然这么说可能有些极端,但是却可以大大简化模型的复杂度,因此马尔可夫链在很多时间序列模型中得到广泛的应用,比如循环神经网络 RNN,隐式马尔可夫模型 HMM 等,当然 MCMC 也需要它。

随机过程

马尔可夫链是随机过程 这门课程中的一部分,先来简单了解一下。

简单来说,随机过程就是使用统计模型一些事物的过程进行预测和处理 ,比如股价预测通过今天股票的涨跌,却预测明天后天股票的涨跌;天气预报通过今天是否下雨,预测明天后天是否下雨。这些过程都是可以通过数学公式进行量化计算的。通过下雨、股票涨跌的概率,用公式就可以推导出来 N 天后的状况。

机器学习算法 - 马尔可夫链,人工智能,人工智能

简介

俄国数学家 Andrey Andreyevich Markov 研究并提出一个用数学方法就能解释自然变化的一般规律模型,被命名为马尔科夫链(Markov Chain)。马尔科夫链为状态空间中经过从一个状态到另一个状态的转换的随机过程,该过程要求具备“无记忆性 ”,即下一状态的概率分布只能由当前状态决定,在时间序列中它前面的事件均与之无关。这种特定类型的“无记忆性 ”称作马尔可夫性质。
机器学习算法 - 马尔可夫链,人工智能,人工智能

马尔科夫链认为过去所有的信息都被保存在了现在的状态下了 。比如这样一串数列 1 - 2 - 3 - 4 - 5 - 6,在马尔科夫链看来,6 的状态只与 5 有关,与前面的其它过程无关。

数学定义

假设我们的序列状态是机器学习算法 - 马尔可夫链,人工智能,人工智能,那么在机器学习算法 - 马尔可夫链,人工智能,人工智能时刻的状态的条件概率仅依赖于前一刻的状态即:

机器学习算法 - 马尔可夫链,人工智能,人工智能

既然某一时刻状态转移的概率只依赖于它的前一个状态 ,那么我们只要能求出系统中任意两个状态之间的转换概率,这个马尔科夫链的模型就定了。

转移概率矩阵

通过马尔科夫链的模型转换,我们可以将事件的状态转换成概率矩阵 (又称状态分布矩阵 ),如下例:

机器学习算法 - 马尔可夫链,人工智能,人工智能

上图中有 A 和 B 两个状态,A 到 A 的概率是 0.3,A 到 B 的概率是 0.7;B 到 B 的概率是 0.1,B 到 A 的概率是 0.9。

初始状态在 A,如果我们求 2 次运动后状态还在 A 的概率是多少?非常简单:  P=A→A→A+A→B→A=0.3∗0.3+0.7∗0.9=0.72

如果求 2 次运动后的状态概率分别是多少?初始状态和终止状态未知时怎么办呢?这是就要引入转移概率矩阵 ,可以非常直观的描述所有的概率。机器学习算法 - 马尔可夫链,人工智能,人工智能

有了状态矩阵,我们可以轻松得出以下结论:

  • 初始状态 A,2 次运动后状态为 A 的概率是 0.72;
  • 初始状态 A,2 次运动后状态为 B 的概率是 0.28;
  • 初始状态 B,2 次运动后状态为 A 的概率是 0.36;
  • 初始状态 B,2 次运动后状态为 B 的概率是 0.64;

来看一个多个状态更复杂的情况:

机器学习算法 - 马尔可夫链,人工智能,人工智能

状态转移矩阵的稳定性

状态转移矩阵有一个非常重要的特性,经过一定有限次数序列的转换,最终一定可以得到一个稳定的概率分布 ,且与初始状态概率分布无关。例如

假设我们当前股市的概率分布为: [ 0.3 , 0.4 , 0.3 ] [0.3, 0.4, 0.3][0.3,0.4,0.3] ,即 30% 概率的牛市,40% 概率的熊盘与 30% 的横盘。然后这个状态作为序列概率分布的初始状态,将其代入这个状态转移矩阵计算的状态。代码如下:

matrix = np.matrix([[0.9, 0.075, 0.025],
                    [0.15, 0.8, 0.05],
                    [0.25, 0.25, 0.5]], dtype=float)
vector1 = np.matrix([[0.3, 0.4, 0.3]], dtype=float)

for i in range(100):
    vector1 = vector1 * matrix
    print('Courrent round: {}'.format(i+1))
    print(vector1)

输出结果:

Current round: 1
[[ 0.405   0.4175  0.1775]]
Current round: 2
[[ 0.4715   0.40875  0.11975]]
Current round: 3
[[ 0.5156  0.3923  0.0921]]
Current round: 4
[[ 0.54591   0.375535  0.078555]]
。。。。。。
Current round: 58
[[ 0.62499999  0.31250001  0.0625    ]]
Current round: 59
[[ 0.62499999  0.3125      0.0625    ]]
Current round: 60
[[ 0.625   0.3125  0.0625]]
。。。。。。
Current round: 99
[[ 0.625   0.3125  0.0625]]
Current round: 100
[[ 0.625   0.3125  0.0625]]

可以发现,从第 60 轮开始,我们的状态概率分布就不变了,一直保持[ 0.625 , 0.3125 , 0.0625 ],即 62.5% 的牛市,31.25% 的熊市与 6.25% 的横盘。

这个性质不仅对状态转移矩阵有效,对于绝大多数的其他的马尔可夫链模型的状态转移矩阵也有效。同时不光是离散状态,连续状态时也成立。
 

马尔科夫链的应用

语言模型

自然语言处理、语音处理中经常用到语言模型, 是建立在词表上的 n nn 阶马尔可夫链。比如, 在英语语音识别中,语音模型产生出两个候选: “How to recognize speech” 与 "How to wreck a nice beach”,语言模型要判断哪个可能性更大
 

将一个语句看作是一个单词的序列  ,目标是计算其概率。同一个语句很少在语料中重复多次出现,所以直接从语料中估计每个语句的概率是困难的。语言模型用局部的单词序列的概率,组合计算出全局的单词序列的概率,可以很好地解决这个问题。假设每个单词只依赖于其前面出现的单词,也就是说单词序列具有马尔可夫性,那么可以定义一阶马尔可夫链 (可以轻易扩展到 n 阶马尔可夫链),即语言模型,如下计算语句的概率:

机器学习算法 - 马尔可夫链,人工智能,人工智能

如果有充分的语料,转移概率可以直接从语料中估计。直观上, “wreck a nice” 出现之后,下面出现 “beach” 的概率极低,所以第二个语句的概率应该更小,从语言模型的角度看第一个语句的可能性更大

信号传输

考虑通过电话线或无线电波传输信号的问题。每条数据都必须经过一个多阶段的过程才能传输,并且在每个阶段都存在传输错误导致数据损坏的概率。

假设传输中发生错误的概率不受过去传输错误的影响,不依赖于时间,并且可能的数据条数是有限的。然后可以通过马尔可夫链建模传输过程,状态为0和1以及转移矩阵

机器学习算法 - 马尔可夫链,人工智能,人工智能文章来源地址https://www.toymoban.com/news/detail-798353.html

到了这里,关于机器学习算法 - 马尔可夫链的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人工智能-10种机器学习常见算法

    机器学习是目前行业的一个创新且重要的领域。今天,给大家介绍机器学习中的10种常见的算法,希望可以帮助大家适应机器学习的世界。 线性回归(Linear Regression)是目前机器学习算法中最流行的一种,线性回归算法就是要找一条直线,并且让这条直线尽可能地拟合散点图中的

    2023年04月08日
    浏览(33)
  • 人工智能-机器学习-深度学习-分类与算法梳理

    目前人工智能的概念层出不穷,容易搞混,理清脉络,有益新知识入脑。 为便于梳理,本文只有提纲,且笔者准备仓促,敬请勘误,不甚感激。 符号主义(Symbolists) 基于逻辑推理的智能模拟方法。最喜欢的算法是:规则和决策树。符号主义的代表性成果有启发式程序、专家系

    2024年02月03日
    浏览(72)
  • 机器学习:马尔可夫模型

    后续遇到合适的案例会再补充   马尔可夫模型(Markov Model, MM)是一种统计模型,广泛应用在自然语言处理等领域中。 1.1 数学定义   考虑一组随机变量序列 X = { X 0 , X 1 , … , X t , …   } X={X_{0},X_{1},dots,X_{t},dots} X = { X 0 ​ , X 1 ​ , … , X t ​ , … } ,其中 X t X_{t} X t ​ 表

    2024年02月13日
    浏览(31)
  • 人工智能|机器学习——DBSCAN聚类算法(密度聚类)

    DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集程度决定。聚集程度不足以构成簇落的那些样本视为噪声点,因此DBSCAN聚类的方式也可以用于异常点的检测。 算法的关键在于样本的‘聚集程度’,这个程度的刻画

    2024年04月10日
    浏览(68)
  • 《人工智能-机器学习》数据预处理和机器学习算法(以企鹅penguins数据集为例)

    本项目使用到的数据集链接: https://tianchi-media.oss-cn-beijing.aliyuncs.com/DSW/6tree/penguins_raw.csv 加载给定或者自行选定的数据集,对数据进行查看和理解,例如样本数量,各特征数据类型、分布、特征和标签所表达的含义等,然后对其进行数据预处理工作,包括但不限于对敏感数据

    2024年02月10日
    浏览(43)
  • 从人工智能到机器学习到深度学习、强化学习,以及相关的算法原理、应用场景等方面对人工智能技术的研究进行全面的综述

    作者:禅与计算机程序设计艺术 2021年是一个重要的历史节点,数字化时代正在席卷全球各个角落。大数据、云计算、区块链等新兴技术带动着各行各业的变化与革命,机器学习(ML)、深度学习(DL)、强化学习(RL)等AI技术也越发成熟。随之而来的,伴随着人工智能应用的

    2024年02月07日
    浏览(60)
  • 探索人工智能 | 模型训练 使用算法和数据对机器学习模型进行参数调整和优化

    模型训练是指 使用算法和数据对机器学习模型进行参数调整和优化 的过程。模型训练一般包含以下步骤:数据收集、数据预处理、模型选择、模型训练、模型评估、超参数调优、模型部署、持续优化。 数据收集是指为机器学习或数据分析任务收集和获取用于训练或分析的数

    2024年02月12日
    浏览(45)
  • 【Python】人工智能-机器学习——不调库手撕演化算法解决函数最小值问题

    现在有一个函数 3 − s i n 2 ( j x 1 ) − s i n 2 ( j x 2 ) 3-sin^2(jx_1)-sin^2(jx_2) 3 − s i n 2 ( j x 1 ​ ) − s i n 2 ( j x 2 ​ ) ,有两个变量 x 1 x_1 x 1 ​ 和 x 2 x_2 x 2 ​ ,它们的定义域为 x 1 , x 2 ∈ [ 0 , 6 ] x_1,x_2in[0,6] x 1 ​ , x 2 ​ ∈ [ 0 , 6 ] ,并且 j = 2 j=2 j = 2 ,对于此例,所致对于 j =

    2024年01月20日
    浏览(46)
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)

    概率图模型是一种用图形表示概率分布和条件依赖关系的数学模型。概率图模型可以分为两大类:有向图模型和无向图模型。有向图模型也叫贝叶斯网络,它用有向无环图表示变量之间的因果关系。无向图模型也叫马尔可夫网络,它用无向图表示变量之间的相关关系。概率图

    2024年01月22日
    浏览(29)
  • 毕业设计选题-基于深度学习的车道线检测算法识别系统 人工智能 机器学习 卷积神经网络

    目录 前言 课题背景和意义 实现技术思路 一、车道线检测方法 1.1 卷积神经网络 1.2 注意力机制 二、 数据集 三、实验及结果分析 3.1 实验环境搭建 3.2 模型训练 实现效果图样例 最后     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学

    2024年02月22日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包