算法原理(2):样本熵(SampEn)9 b4 |2 [5 Z# ?$ ]! o' R1 Y
本文主要介绍样本熵的物理意义、算法以及Matlab里代码实现。/ F7 k% x q3 ]0 W/ {! }' Y: C( X
5 r$ k8 O" v" G z! s1.物理意义
6 @: A( D1 P2 h# i" W 样本熵(Sample Entropy,SampEn)与近似熵的物理意义相似(近似熵参见博客【近似熵理论相关知识与代码实现】),都是通过度量信号中产生新模式的概率大小来衡量时间序列复杂性,新模式产生的概率越大,序列的复杂性就越大。
6 X/ P, r1 t. q x. O. }7 V5 Z3 ^# o 与近似熵相比,样本熵具有两个优势:样本熵的计算不依赖数据长度;样本熵具有更好的一致性,即参数m和r的变化对样本熵的影响程度是相同的。 # Q0 ]* N: U( W
样本熵的值越低,序列自我相似性就越高;样本熵的值越大,样本序列就越复杂。目前样本熵在评估生理时间序列(EEG,sEMG等)的复杂性和诊断病理状态等方面均有应用。
; V c3 m7 T. b6 m& _. T" k- W) x5 x+ J# e( ?: F1 p
2.计算方法
- k4 O6 r7 b: ~1 m% h( z- k 样本熵的计算方法如下: \, L! g4 W! `# G; [
![]()
! F7 `& u' U* s6 S- C$ m/ ?' c1 D9 U; m
3.代码实现 在Matlab里实现样本熵函数,计算一段时间序列的样本熵值,代码如下:
* F* j _3 m) I5 s! a) _
) k5 v5 T" J4 T+ I" K
3 Z `! T8 H. E1 |$ M
|