8.(Python数模)(预测模型一)马尔科夫链预测

这篇具有很好参考价值的文章主要介绍了8.(Python数模)(预测模型一)马尔科夫链预测。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python实现马尔科夫链预测

马尔科夫链原理

马尔科夫链是一种进行预测的方法,常用于系统未来时刻情况只和现在有关,而与过去无关
用下面这个例子来讲述马尔科夫链。
8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python
如何预测下一时刻计算机发生故障的概率?
当前状态只存在0(故障状态)和1(正常状态)两种,每种状态下各存在两个未来状态(00,01,11,10),那么统计出这整个序列中00,01,11,10出现的次数。即求得转移矩阵
8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python
进而求得转移概率矩阵
8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python
如果当前是0,那么下一个是0的概率为30.77%,下一步为1的概率为69.23%。
对当前数据,最后一个为1,那么预测下一步,有74.3%的概率不发生故障。

上面的方法不仅限于两个类别0和1,多类别也是可以预测的
比如
8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python
str = “4321431123212344331113321222442323112431”
用同样的方法计算转移概率矩阵
8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python

问题描述

8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python

源代码

计算转移矩阵部分

def str_count(str, sub):
    count = 0
    for i in range(0, len(str) - 1):
        if str[i:i+2] == sub:
            count = count + 1
    return count

def data_to_matrix():
    str = "1110010011111110011110111111001111111110001101101111011011010111101110111101111110011011111100111"
    count00 = str_count(str, "00")
    count01 = str_count(str, "01")
    count10 = str_count(str, "10")
    count11 = str_count(str, "11")
    print("count00:", count00)
    print("count01:", count01)
    print("count10:", count10)
    print("count11:", count11)
if __name__ == '__main__':
    data_to_matrix()

问题解决部分

import numpy as np
p1 = np.array([0.2, 0.4, 0.4])
p = np.array([
    [0.8, 0.1, 0.1],
    [0.5, 0.1, 0.4],
    [0.5, 0.3,0.2]
])
p3 = np.linalg.matrix_power(p, 3)
p4 = np.dot(p1, p3)
print(p4)

1、np.linalg.matrix_power(p, 3) 是一个用来计算矩阵 p 的 3 次幂的函数。它使用 NumPy 库中的 linalg 子模块来执行矩阵乘法运算。这个函数的返回值是将矩阵 p 自乘 3 次后得到的新矩阵。

2、dot指的是两个向量之间的点积运算

结果

8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python8.(Python数模)(预测模型一)马尔科夫链预测,python,数学建模,python

参考博文

数学建模入门-python实现简单的马尔可夫链
马尔科夫链预测,Python实现文章来源地址https://www.toymoban.com/news/detail-701283.html

到了这里,关于8.(Python数模)(预测模型一)马尔科夫链预测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 初识马尔科夫模型(Markov Model)

    马尔科夫模型(Markov Model)是一种概率模型,用于描述随机系统中随时间变化的概率分布。马尔科夫模型基于马尔科夫假设,即当前状态只与其前一个状态相关,与其他状态无关。 马尔科夫模型具有如下几个性质: ① 马尔科夫性 :即马尔科夫模型的下一个状态只与当前状态

    2024年02月04日
    浏览(21)
  • 机器学习基础 HMM模型(隐马尔科夫)

    推荐参考:https://juejin.cn/post/6844903891834781703 在机器学习算法中,马尔可夫链(Markov chain)是个很重要的概念。马尔可夫链(Markov chain),又称离散时间马尔可夫链(discrete-time Markov chain),因俄国数学家安德烈·马尔可夫(俄语:Андрей Андреевич Марков)得名。 马尔科

    2024年02月02日
    浏览(52)
  • 语音识别的进展:从隐马尔科夫模型到Transformers

    语音识别,也称为语音转文本,是一种将人类语音信号转换为文本的技术。它在人工智能领域具有重要的应用价值,例如语音助手、语音密码等。语音识别技术的发展历程可以分为以下几个阶段: 早期语音识别技术(1950年代至1970年代):这一阶段的语音识别技术主要基于隐

    2024年02月03日
    浏览(41)
  • 马尔科夫状态转移矩阵

    一、马尔科夫状态转移矩阵性质 1. 每个时间点处在某一个状态,时间是离散的。 2. 每次到下一个时间点时按照图进行随机状态转移。 3. 假如某时的状态是个统计分布(看做向量),那么用状态转移矩阵(权值)乘这个向量就得下一时刻的状态。马尔可夫链的状态数可以是有

    2024年02月13日
    浏览(34)
  • 马尔科夫链(Markov Chain)

    马尔可夫性(Markov Property)是指系统的下一个状态 仅与当前状态有关,而与以前的状态无关 (即无记忆性(memorylessness),系统不记得当前状态以前的状态,仅仅基于当前状态来决定下一个时刻转移到什么状态) 如果指标集(index set)是连续的,则称为连续时间马尔可夫链(Continuou

    2024年02月05日
    浏览(22)
  • 15、条件概率、全概率公式、贝叶斯公式、马尔科夫链

    定义:设A、B是两个事件,且,P(A) 0 则称 为事件A发生的条件下事件B的条件概率 对这个式子进行变形,即可得到概率的乘法公式: P(A) 0 时,则 P(B) 0 时,则 乍一看,这个式子不就是把除法形式写成了乘法形式嘛,不然不然,这个区别是本质的,分母不为0很关键,而且看法也

    2024年02月13日
    浏览(32)
  • 【RL】(task1)马尔科夫过程、动态规划、DQN

    递归结构形式的贝尔曼方程计算给定状态下的预期回报,这样的方式使得用逐步迭代的方法就能逼近真实的状态/行动值。 有了Bellman equation就可以计算价值函数了 马尔科夫过程描述了一个具有无记忆性质的随机过程,未来状态只依赖于当前状态,与过去状态无关,类似于一个

    2024年01月21日
    浏览(24)
  • 【线性代数07】马尔科夫矩阵和傅里叶矩阵

      本篇可以看作对行列式和特征值应用的举例。但我会谈些我感兴趣的部分,即离散信源信道模型和循环矩阵的对角化。 这个矩阵从概率论中概率的定义生发,因此 各元素实际上就是非负的概率值 。马尔科夫矩阵(Markov matrix)又称概率矩阵(probability matrix)、转移概率矩

    2024年02月04日
    浏览(30)
  • 马尔科夫决策过程-策略迭代与值迭代(基于动态规划)

    强化学习入门笔记,基于easy RL RL基础 强化学习(reinforcement learning,RL):智能体可以在与复杂且不确定的环境进行交互时,尝试使所获得的奖励最大化的算法。 动作(action): 环境接收到的智能体基于当前状态的输出。 状态(state):智能体从环境中获取的状态。 奖

    2024年02月04日
    浏览(34)
  • 马尔科夫不等式和坎泰利不等式的证明

    马尔科夫不等式(Markov’s inequality) 对于随机变量 X X X ,有 P ( ∣ X ∣ ⩾ ε ) ⩽ E ∣ X ∣ k ε k , ε 0 , k ∞ Pleft( left| X right|geqslant varepsilon right) leqslant frac{Eleft| X right|^k}{varepsilon ^k},varepsilon 0,kinfty P ( ∣ X ∣ ⩾ ε ) ⩽ ε k E ∣ X ∣ k ​ , ε 0 , k ∞ 证明: P ( ∣ X ∣ ⩾ ε

    2024年02月08日
    浏览(29)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包