近似熵和样本熵都是对非稳定时间序列的复杂型的度量,其思想都是检测时间序列中的新的子序列产生概率。

近似熵和样本熵计算方法:

  1. 近似熵的计算方法

原料:具有N个均匀数据点的时间序列;需要进行切割的子片段序列中的数据点数m;子片段之间相似性的容忍度r;

算法步骤:

1.1将N个数据点的时间序列依照数据点的排序将其以m个数据点为一个子片段进行划分,总共可以得到(N-m+1)个子序列片段,将子序列片段使用X(i)进行标记;

1.2计算和当前第i个子片段序列相似的其他序列所占的比例:

1.2.1计算当前第i个子序列片段X(i)和其他(N-m)个子序列段之间的距离d[X(i),X(j)]

d[X(i),X(j)]使用的算法是计算两个子序列片段对应数据点之间的最大距离:

上述距离需要总共计算N-m次;

1.2.2将这N-m个距离分别和给定的阈值r进行比较,当计算得到的距离小于阈值r时,认为当前距离对应的两个子序列之间是相似的,对和当前序列相似的序列进行计数,得到number of X(j) such that d[X(i),X(j)]<=r,并且除以子片段序列总数N-m+1计算相似序列的比例

1.2.3上述是对一个子序列片段X(i)的相似性片段比例进行统计得到,对整个时间序列对应的所有子片段做分析得到该m数据点规模下的子片段序列的平均相似率:

平均相似率计算有取log值

1.2.4同理取子序列片段的长度为m+1,重复上述操作得到:

Φm+1(r)

1.2.5对两个子序列片段的平均相似性做差得到原始信号序列的近似熵:

  1. 样本熵的就算方法

原料:具有N个均匀数据点的时间序列;需要进行切割的子片段序列中的数据点数m;子片段之间相似性的容忍度r;

算法步骤:

2.1将N个数据点的时间序列依照数据点的排序将其以m个数据点为一个子片段进行划分,总共可以得到N-m+1个子序列片段,将子序列片段使用X(i)进行标记;

2.2计算和当前第i个子片段序列相似的其他序列所占的比例:

2.2.1计算当前第i个子序列片段和其他(N-m)个子序列片段之间的距离d[X(i),X(j)]

d[X(i),X(j)]使用的算法是计算两个子序列片段对应数据点之间的最大距离:

上述距离需要总共计算N-m次;

2.2.2将这N-m个距离分别和给定的阈值r进行比较,当计算所得的距离小于阈值r时,被认定为当前距离对应的两个子序列之间是相似的,对相似性序列个数进行计数,得到number of X(j) such that d[X(i),X(j)]<=r,并且除以子片段序列总数N-m计算和当前序列相抵的子序列的比例

2.2.3上述是对一个子片段序列X(i)的相似性比例进行度量得到,对整个时间序列对应的所有子片段作分析得到该m数据点规模下的子片段序列的平均相似率:

平均相似率计算没有取log值

2.2.4同理取子序列片段的长度为m+1,重复上述操作得到:

Bm+1(r)

2.2.5取两个平均值的对数做差得到原始序列信号的样本熵:

SampEn = lnBm(r)-lnBm+1(r)

总结:通过上述对近似熵和样本熵的计算步骤的对比发现可得两者之间具有如下几点区别

  1. 在进行比例计算是使用的是几个子序列个数,是N-m个还是N-m+1个;
  2. 在对给定规模长度子序列的平均相似度的计算的时候是否进行了对数操作;
  3. 对最后熵的计算时有没有进行对数操作;

通常嵌入维数m的选取是1或者是2;

相似度阈值r的选取是原始序列标准差的0.2倍左右

样本熵只是对近似熵计算中的一些步骤进行了小小的变换,它和近似熵一样是一种用于度量时间序列复杂性的方法,在评估生理时间序列复杂性和诊断病例状态方面都有应用;

近似熵作为一种时间序列的统计量会导致不一样的结果。

样本熵相对近似熵来说具有相对一致性。

时间序列复杂性的度量—近似熵和样本熵相关推荐

  1. 【Python】近似熵,样本熵,模糊熵计算高效版

    文章目录 前言 整体思路 1 近似熵(Approximate Entropy, ApEn) 1.1 理论基础 1.2 python第三方库实现 1.3 基于多线程numpy矩阵运算实现 2 样本熵 ( ...

  2. 近似熵、样本熵、模糊熵、排列熵摘抄总结

    本文总结摘抄于多个网上链接,用于学习和整理用途 1.模糊熵.样本熵.近似熵都是什么?反映了什么? 2.近似熵理论相关知识与代码实现 3.样本熵理论相关知识与代码实现 4.模糊熵理论相关知识与代码实现 ...

  3. 排列熵、模糊熵、近似熵、样本熵的原理及MATLAB实现之近似熵

    说明:"本博文为排列熵.模糊熵.近似熵.样本熵的原理及MATLAB实现"系列博文的最后一篇,关于排列熵.模糊熵.样本熵的内容请阅读博客: 排列熵 模糊熵 样本熵 近似熵 四.近似熵 ...

  4. 排列熵、模糊熵、近似熵、样本熵的原理及MATLAB实现之模糊熵

    目录 二.模糊熵 1.概念 2.基本原理 3.MATLAB代码 4.参考文献 说明:关于排列熵的内容请阅读博客:排列熵.模糊熵.近似熵.样本熵的原理及MATLAB实现 二.模糊熵 1.概念 在样本熵的 ...

  5. MATLAB实现各种熵:香农熵、条件熵、模糊熵、样本熵等

    MATLAB实现各种熵:香农熵.条件熵.模糊熵.样本熵等 0 引言 1 香农熵Shannon Entropy 1.1 基本原理 1.2 信息熵的3个性质 1.3 MATLAB代码实现 2 两随机变量系 ...

  6. 排列熵、模糊熵、近似熵、样本熵的原理及MATLAB实现

    目录 一.排列熵 1.概念 2.基本原理 补充说明 3.MATLAB代码 参考文献 一.排列熵 1.概念 一种检测动力学突变和时间序列随机性的方法,能够定量评估信号序列中含有的随机噪声. 2.基本原理 ...

  7. 【熵与特征提取】从近似熵,到样本熵,到模糊熵,再到排列熵,究竟实现了什么?(第一篇)——近似熵及其MATLAB实现

    在特征提取领域,近似熵.样本熵.排列熵和模糊熵是比较经常出现的概念. 首先一句话总结一下:这几个熵值都是用来表征信号序列复杂程度的无量纲指标,熵值越大代表信号复杂度越大.信号复杂程度的表征在机械设备状 ...

  8. 近似熵 样本熵 模糊熵

    特征提取field 表征信号序列复杂程度的无量纲指标,熵值越大代表信号复杂度越大. 应用:机械设备状态监测.故障诊断以及心率.血压信号检测 优点:抵抗环境干扰 1. 近似熵 Def: 近似熵(Appr ...

  9. 模糊熵 matlab,近似熵/模糊熵/样本熵MATLAB代码

    [实例简介]近似熵.模糊熵和样本熵的MATLAB代码,可用于信号特征提取,比如轴承振动信号特征处理,脑电波信号等时间序列信号 [实例截图] [核心代码] function [apen] = appro ...

  10. 【熵与特征提取】从近似熵,到样本熵,到模糊熵,再到排列熵,究竟实现了什么?(第四篇)——“排列熵”及其MATLAB实现

    今天讲排列熵,之前用了三篇文章分别讲述了近似熵.样本熵和模糊熵: Mr.看海:[熵与特征提取]从近似熵,到样本熵,到模糊熵,再到排列熵,究竟实现了什么?(第一篇)--"近似熵"及其 ...

最新文章

  1. tRNAscan-SE 预测tRNA基因
  2. [彻底理解]JDK1.8 函数式接口 Consumer Supplier 以及 JAVA新纪元 λ表达式的到来
  3. 面状县级行政区划转地级行政区划,并关联属性字段
  4. Django框架----Object Relational Mapping(ORM)
  5. C++突破private的方案
  6. 音视频技术开发周刊 | 143
  7. 编译hotspot_从Hotspot JIT编译器打印生成的汇编代码
  8. 发现一个厉害的关于html ui的网站 http://amazeui.org以后可能会用机会用!
  9. python绘图总结2
  10. 基于51单片机的循迹小车
  11. VGG16网络,VGG19
  12. 【HTML】一个index.html文件,完成三码合一,完成万能打赏码
  13. 第四章 原子结构和波粒二象性
  14. WIndows编译MAME0.184
  15. [Android]高通平台BootLoader启动流程
  16. 米的换算单位和公式_小学数学单位换算公式(附练习题)
  17. Android实现用户圆形头像+背景模糊
  18. centos 下 yum安装python3
  19. 应届生求职经历-一路坎坷
  20. 微信公众平台注册十大常见问题(公众号篇)

热门文章

  1. Power Switching ----- Controlling power for power shutoff
  2. 怎么读取cf卡id_CF卡传输程序的步骤解析
  3. 高维球体的体积是多少
  4. 特征筛选【IV和WOE】
  5. metro,subway,tube这三个单词如何区分?
  6. 服务器换完主板后无盘进不了系统,NF主板集成网卡无盘无法启动的解决方案
  7. 语音处理:音频信号采样点白化方法初探
  8. 第七周 项目2 - 建立链队算法库
  9. MATLAB绘图中特殊符号的插入方法
  10. BUUCTF[SCTF2019]Who is he题解