算法原理(2):样本熵(SampEn)
- F$ P; p+ K. y. R- s1 R) k+ |7 V本文主要介绍样本熵的物理意义、算法以及Matlab里代码实现。( u( R6 z2 I' g/ V, [
) w' O& i" s( S: F
1.物理意义6 p# j( |" U: Q" n+ T- V) Z
样本熵(Sample Entropy,SampEn)与近似熵的物理意义相似(近似熵参见博客【近似熵理论相关知识与代码实现】),都是通过度量信号中产生新模式的概率大小来衡量时间序列复杂性,新模式产生的概率越大,序列的复杂性就越大。
i/ H T# w3 D# \ 与近似熵相比,样本熵具有两个优势:样本熵的计算不依赖数据长度;样本熵具有更好的一致性,即参数m和r的变化对样本熵的影响程度是相同的。
* j% P1 l/ s5 r, k; J 样本熵的值越低,序列自我相似性就越高;样本熵的值越大,样本序列就越复杂。目前样本熵在评估生理时间序列(EEG,sEMG等)的复杂性和诊断病理状态等方面均有应用。) y' G+ \ n( e) C
& y% g$ x8 p; U$ [/ X+ U2.计算方法, O4 O2 |* A' J/ }- ~( B5 k
样本熵的计算方法如下:
8 E5 D# |% C" `![]()
' w6 S+ C& \8 D. u ~9 P
\5 s" D7 z& q" ^5 G3 ~# n3.代码实现 在Matlab里实现样本熵函数,计算一段时间序列的样本熵值,代码如下:
9 m% X7 i m" P6 T* q
( c c% X+ `" L( N
" p& W: F! O+ o' p$ M& E+ | |