算法原理(2):样本熵(SampEn)- W% h' c( ~5 B6 Z+ f% V
本文主要介绍样本熵的物理意义、算法以及Matlab里代码实现。
7 ~- |1 M# n9 O4 U3 b: s3 p7 J
' g! Q; X# ]( `1.物理意义
- U2 n- d, j6 z 样本熵(Sample Entropy,SampEn)与近似熵的物理意义相似(近似熵参见博客【近似熵理论相关知识与代码实现】),都是通过度量信号中产生新模式的概率大小来衡量时间序列复杂性,新模式产生的概率越大,序列的复杂性就越大。
! u5 ^* Q. ]& |5 v" k- J/ L/ d 与近似熵相比,样本熵具有两个优势:样本熵的计算不依赖数据长度;样本熵具有更好的一致性,即参数m和r的变化对样本熵的影响程度是相同的。
- W( V9 Q' p2 _% b- A 样本熵的值越低,序列自我相似性就越高;样本熵的值越大,样本序列就越复杂。目前样本熵在评估生理时间序列(EEG,sEMG等)的复杂性和诊断病理状态等方面均有应用。
& p1 K$ P0 U# ]. E" b1 t# n: j& [/ q9 Q4 }
2.计算方法
k a$ I+ \( l* g' U8 F 样本熵的计算方法如下: F9 G) o3 A$ Z) `
![]()
4 v. s: _1 G& B9 o
% @6 f5 F; f( A) y& H7 {0 M3.代码实现 在Matlab里实现样本熵函数,计算一段时间序列的样本熵值,代码如下:
' g! ~9 f( [+ Q0 M
n! M! ^' J! \; ^0 {% }2 j" U) B- L* r; M$ e& O! [
|