已知二阶马尔可夫信源的转移矩阵:

#| 0.8 0.2 0 0 |
#| 0 0 0.5 0.5 |
#| 0.5 0.5 0 0 |
#| 0 0 0.2 0.8 |
#-1、计算二阶马尔可夫信源的极限概率分布:
#-2、计算该二阶马尔可夫信源信源的熵

#—已知二阶马尔可夫信源的转移矩阵:
#| 0.8 0.2  0   0  |
#|  0   0  0.5 0.5 |
#| 0.5 0.5  0   0  |
#|  0   0  0.2 0.8 |
#-1、计算二阶马尔可夫信源的极限概率分布:
#-2、计算该二阶马尔可夫信源信源的熵.
print("----------计算二阶马尔可夫信源的熵--------------")
import numpy as np
from sympy import *
from fractions import Fraction # 小数变分数库
m=0
def judge(list1):global mresult=0for i in range(2):if 0<= list1[i] <=1:#print("P(a%d)符合概率分布条件"%(i+1))result +=list1[i]else:print("P(a%d)不符合概率分布条件"%(i+1))if result ==1:m=1#print("全部的概率和为1,符合条件。")else :print("请输入符合概率分布的数值!")def entropy(judge,x,y):b=[]b.append(x)b.append(y)   judge(b)if m==1:result=0for i in range(2):result -= b[i]*np.log2(b[i])return float("{0:.4f}".format(result))else: return print("程序结束,请重新输入调用函数!")def markov(entropy): #马尔可夫a=np.array([[0.8,0.2,0,0],[0,0,0.5,0.5],[0.5,0.5,0,0],[0,0,0.2,0.8]])x,y,z,m=symbols("x y z m")eq=[a[0,0]*x+a[2,0]*z-x,a[0,1]*x+a[2,1]*z-y,a[1,2]*y+a[3,2]*m-z,a[3,3]*m+a[1,3]*y-m,x+y+z+m-1  ]result=solve(eq,[x,y,z,m])x=float(result[x])y=float(result.get(y))z=float(result.get(z))m=float(result.get(m))markov_entropy=x*entropy(judge,0.8,0.2)+y*entropy(judge,0.5,0.5)+z*entropy(judge,0.5,0.5)+m*entropy(judge,0.8,0.2)print("二阶马尔可夫信源信源的熵:%.2f  (比特/符号)"%(markov_entropy))print("二阶马尔可夫信源的极限概率分布:Q(E1)=%.4f  Q(E2)=%.4f   Q(E3)=%.4f   Q(E4)=%.4f"%(x,y,z,m))markov(entropy)  

实验二 计算二阶马尔可夫信源的熵相关推荐

  1. 求解平稳分布matlab,计算二阶马尔可夫信源的熵

    实验三.计算二阶马尔可夫信源的熵 ⒈实验目的和要求 1)掌握MATLAB的矩阵运算功能和图表功能. 2)掌握二阶马尔可夫信源熵的求解方法. ⒉实验主要内容 80.200 0. 0 0.500.5已知信 ...

  2. 中文分词与马尔科夫模型之二:隐马尔科夫模型与维特比

    转载自:http://blog.sina.com.cn/s/blog_68ffc7a40100uebv.html 前面一篇博客讲到了中文分词的机械分词算法,这种算法实现相对比较简单,但是分词效果还是有 ...

  3. 概率图模型笔记(二) 隐马尔科夫模型(Hidden Markov Model)

    写在前面 隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用.最近入坑NLP,看到好多算法都涉 ...

  4. [work] 一阶 二阶马尔可夫

    对于时间序列,如果本状态的概论只取决于上一个状态,那就叫一阶markov过程 举个例子,爷爷生爸爸,爸爸生儿子,儿子的问题只跟爸爸有关,跟爷爷无关,这就叫一阶markov 二阶markov可以以此类推 ...

  5. python做马尔科夫模型预测法_Python实现HMM(隐马尔可夫模型)

    1. 前言 隐马尔科夫HMM模型是一类重要的机器学习方法,其主要用于序列数据的分析,广泛应用于语音识别.文本翻译.序列预测.中文分词等多个领域.虽然近年来,由于RNN等深度学习方法的发展,HMM模型逐 ...

  6. 基于张量的多元多阶马尔科夫多模态预测方法

      本博客整理自研读的论文,文末会附上出处. 基于张量的多元多阶马尔科夫多模态预测方法 一.问题背景 二.多元多阶马尔科夫模型 1.张量连接和张量统一乘 2.多元多阶马尔科夫转移模型 3.多元多阶马尔 ...

  7. python地图匹配_基于隐马尔科夫模型(HMM)的地图匹配(Map-Matching)算法

    1. 摘要 本篇博客简单介绍下用隐马尔科夫模型(Hidden Markov Model, HMM)来解决地图匹配(Map-Matching)问题.转载请注明网址. 2. Map-Matching(MM ...

  8. 从随机过程的熵率和马尔科夫稳态过程引出的一些思考 - 人生逃不过一场马尔科夫稳态...

    1. 引言 0x1:人生就是一个马尔科夫稳态 每一秒我们都在做各种各样的选择,要吃青菜还是红烧肉.看电影还是看书.跑步还是睡觉,咋一看起来,每一个选择都是随机的,而人生又是由无数个这样的随机选择组成的 ...

  9. 《Data Algorithm》读书笔记十一— 使用马尔科夫模型的智能邮件营销

    <Data Algorithm>读书笔记十一 - 使用马尔科夫模型的智能邮件营销 1. 智能邮件营销 是什么? 根据顾客的交易历史观测(其实就是推测) "下一个智能邮件营销日期& ...

最新文章

  1. linux mud 游戏,快刀幻想mud文字传奇-快刀幻想mud神器兑换码-快刀幻想mud下载v1.80-Linux公社...
  2. Redis安装与源码调试
  3. java 继承 意义_Java中继承,类的高级概念的知识点
  4. macOS安装 cocoapods1.9.1失败Failed to build gem native extension
  5. 什么是错误的幻数错误?
  6. 【数据展示】matplotlib设置画面大小
  7. 面试官:注解@Component,@Service是如何被解析的?
  8. ThinkPhp5使用bootstrap样式分页
  9. Flex读取XML配置文件
  10. 一个成绩表 该关系模式的外键_MySQL表之间的关系
  11. 有几百万的房子,也吃不起西贝,感觉像在交税…….
  12. 007API网关服务Zuul
  13. shell每日一句(3)
  14. HTML设置地址栏收藏夹图标
  15. 当不知轴承型号时如何寻找轴承故障频率_电机轴承的故障诊断与失效分析
  16. Android-TextView添加字体库
  17. 射影几何----蝴蝶定理的证明
  18. FYI | NIH Virtual Meeting
  19. iOS开发 - 给Label加下划线、中划线
  20. ad10捕捉pad中点_【中考专题】中点模型(通关篇)—三种方法,助你通关!

热门文章

  1. 必须掌握的Cookie知识点都在这里
  2. 如何分析个股基本面_如何分析个股基本面?个股基本面分析方法
  3. 【计算机网络】服务访问点是什么意思?
  4. 网页动态蜘蛛网线条特效
  5. 用matplotlib.pyplot绘制甜甜圈图
  6. 360搜索和百度搜索的简单对比
  7. Python-OpenCV自适应阈值图像处理使用adaptiveThreshold函数获取图像轮廓
  8. 【BZOJ4424】Cf19E Fairy DFS树
  9. 支付宝技术专家李战斌:安防视频行为分析系统的技术演进及应用场景 | 2018FMI人工智能与大数据高峰论坛(深圳站)
  10. GNU Radio入门之旅