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

#| 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. 在UE4 Editor中改变一个变量时同时更新相关联的其它变量
  2. EM算法和GMM(上)
  3. 工业解密:百度地图背后的路线时长预估模型!
  4. vfp控制excel使用sort_使用Python根据索引合并Excel表
  5. 太赞了!刷题PDF终于在GitHub上开源了!覆盖字节、蚂蚁、腾讯等多家大厂真题...
  6. Soap、Http、TCP/IP 三个基本的通讯协议有什么区别?
  7. Lync Server新特性
  8. springboot系列十二 Spring-Data-ElasticSearch Jpa、QueryBuilder、MatchQuery、位置搜索、GeoPoint...
  9. MAC IDEA 常用快捷键
  10. IT:银行类金融科技岗笔试习题集合—四个模块包括【综合知识+EPI+英语+个性测评】持续更新,建议收藏
  11. 利用pytesseract进行图片文字识别
  12. 使用动态时间规整来同步时间序列数据
  13. 最多能匹配出多长的相同连续子序列_论文导读 | GPU加速子图同构算法
  14. 你知道Linux和Windows通用的复制和粘贴快捷键是什么嘛?
  15. SCI、EI、IEEE、检索网站的区别
  16. 使用Python-OpenCV实时测量物体的尺寸大小(仅供参考)
  17. 初学音视频(一)-RGB和YUV格式分析
  18. saas平台 saas服务 什么是saas
  19. ❤️UI自动化轻松解决微信手工群发消息的烦恼❤️
  20. 一起学Python吧~re正则+MySQL

热门文章

  1. 数量金融学(5):CPPI策略
  2. 空号筛选接口的原理和优势
  3. PYTHON设置默认清华源
  4. linux more 乱码,Linux 中vim/more/cat/tail/head 命令查看文件显示乱码
  5. Python编程工具Pycharm安装与配置
  6. el-input和el-tree,el-popover结合的树形结构选择框
  7. 网易云音乐推荐算法分析
  8. android 图片保存电脑上,怎样简单快速的将手机里的照片和视频,批量保存到电脑?...
  9. 北京大学2018计算机学科夏令营上机考试
  10. c++程序设计笔记(4)