算法原理(2):样本熵(SampEn): k: ]% @1 X; m/ d- f
本文主要介绍样本熵的物理意义、算法以及Matlab里代码实现。
2 ]! F5 r* M0 ~; M+ g; L: ^
4 u6 K6 i) M4 _% U% F5 b1.物理意义
0 W" u" T5 I/ t" C 样本熵(Sample Entropy,SampEn)与近似熵的物理意义相似(近似熵参见博客【近似熵理论相关知识与代码实现】),都是通过度量信号中产生新模式的概率大小来衡量时间序列复杂性,新模式产生的概率越大,序列的复杂性就越大。 ]2 J ?- U u3 [6 m$ x2 j$ O
与近似熵相比,样本熵具有两个优势:样本熵的计算不依赖数据长度;样本熵具有更好的一致性,即参数m和r的变化对样本熵的影响程度是相同的。 * V3 H/ d% I3 k& F3 z4 a
样本熵的值越低,序列自我相似性就越高;样本熵的值越大,样本序列就越复杂。目前样本熵在评估生理时间序列(EEG,sEMG等)的复杂性和诊断病理状态等方面均有应用。
- c1 s' j4 T' J; D
1 C& _8 K- a' X+ n ~# O2.计算方法
, v- o9 P9 a" i t+ [" [ 样本熵的计算方法如下:
8 f3 B n d/ ]/ X: t- d, a![]()
2 w4 v" m% r7 y; N
+ [( F6 H! O! q" Z- f8 W3.代码实现 在Matlab里实现样本熵函数,计算一段时间序列的样本熵值,代码如下:
0 r/ }+ \- z& S" c, Z$ j* q
$ y* P" {% |6 G0 Y
2 M9 U. N& G h. z$ b4 k* b' { |