模糊熵(Fuzzy entropy)

基本原理

在样本熵的基础上引入了一种模糊隶属度函数得到了模糊熵。设有长度为 \(N\) 的时间序列 \(X = \left\{ {x\left( 1 \right),x\left( 2 \right), \cdots ,x\left( N \right)} \right\}\) ,模糊熵的计算步骤如下:

  1. 将时间序列 \(X\) 重构相空间,形成向量序列 \(\left\{ {{x_m}\left( 1 \right),{x_m}\left( 2 \right), \cdots ,{x_m}\left( {N - m + 1} \right)} \right\}\) ,嵌入维度也就是向量的维度为 \(m\) ,其中:

\[{x_m}\left( i \right) = \left\{ {x\left( i \right),x\left( {i + 1} \right), \cdots ,x\left( {i + m - 1} \right)} \right\} - x0\left( i \right),1 \le i \le N - m + 1 \tag{1}\]

重要

这里的 \(x0\left( i \right)\) 为基线向量,通过去除基线进行泛化。\(x0\left( i \right)\) 定义为

\[x0\left( i \right) = \frac{1}{m}\sum\limits_{k = 0}^{m - 1} {{x_m}\left( {i + k} \right)} \tag{2}\]
  1. 定义距离 \(d_{ij}^m\) 为向量 \({x_m}\left( i \right)\)\({x_m}\left( j \right)\) 对应元素差值绝对值的最大值,即切比雪夫距离:

\[d_{ij}^m = d\left[ {{x_m}\left( i \right),{x_m}\left( j \right)} \right] = \mathop {\max }\limits_{k = 0, \cdots ,m - 1} \left( {\left| {\left( {x\left( {i + k} \right) - x0\left( i \right)} \right) - \left( {x\left( {j + k} \right) - x0\left( j \right)} \right)} \right|} \right) \tag{3}\]
  1. 给定模糊函数参数 \(n\)\(r\) ,通过模糊函数 \(\mu \left( {d_{ij}^m,n,r} \right)\) 计算 \({x_m}\left( j \right)\)\({x_m}\left( i \right)\) 的相似程度:

\[D_{ij}^m\left( {n,r} \right) = \mu \left( {d_{ij}^m,n,r} \right) \tag{4}\]

重要

模糊函数 \(\mu \left( {d_{ij}^m,n,r} \right)\) 为指数函数,如下:

\[\mu \left( d_{ij}^{m},n,r \right)=\exp \left( {-{{\left( d_{ij}^{m} \right)}^{n}}}/{r}\; \right) \tag{5}\]
  1. 定义函数 \({\phi ^m}\left( {n,r} \right)\) 为:

\[{\phi ^m}\left( {n,r} \right) = \frac{1}{{N - m + 1}}\sum\limits_{i = 1}^{N - m + 1} {\left( {\frac{1}{{N - m}}\sum\limits_{j = 1,j \ne i}^{N - m + 1} {D_{ij}^m} } \right)} \tag{6}\]
  1. 将维数 \(m\) 增加到 \(m + 1\) ,重复以上(步骤1-步骤4),得到 \({\phi ^{m + 1}}\left( {n,r} \right)\)

  2. 模糊熵可以被定义为

\[FuzzyEn\left( {m,n,r} \right) = \mathop {\lim }\limits_{N \to \infty } \left[ {\ln {\phi ^m}\left( {n,r} \right) - \ln {\phi ^{m + 1}}\left( {n,r} \right)} \right] \tag{7}\]

对于有限长度为 \(N\) 的序列,模糊熵可以被定义为

\[FuzzyEn\left( {m,n,r,N} \right) = \ln {\phi ^m}\left( {n,r} \right) - \ln {\phi ^{m + 1}}\left( {n,r} \right) \tag{8}\]

备注

模糊熵是由Chen等人 1,提出的,建议的参数选择为:

  • 嵌入维度 \(m=2\)

  • 容限 \(r\) 一般取 0.1~0.25 倍时间序列的标准差(SD)。

  • 参数 \(n=2\) 。在后续的仿真验证中,我们选择 \(m=2\) , \(n=2\)\(r = 0.15 \times {\rm{SD}}\)

代码实现

这里假设您已经获得本项目的的所有代码,若您此时还未获得有关程序,请移步到 安装说明

模糊熵(Fuzzy entropy)的核心程序为 MultiscaleFuzzyEntropy_pdist_paran

function MFE=MultiscaleFuzzyEntropy_pdist_paran(data,m,n,r,scale)
    MFE=[];
    for j=1:scale
         Xs = Multi(data,j);
         FE=FuzzyEntropy(Xs,m,n,r);
         MFE=[MFE,FE];
     end
 end

重要

各输入参数的信息如下:

  • data:输入的时间序列,为列向量

  • m :嵌入维度

  • r : 容限

  • scale :尺度比

仿真验证

模糊熵的脉冲检测结果

模糊熵的脉冲检测结果

多尺度模糊熵的故障分类可视化结果

多尺度模糊熵的故障分类可视化结果

抗噪性分析

抗噪性分析

计算效率结果

计算效率结果
1
  1. Chen, Z. Wang, H. Xie, and W. Yu, “Characterization of Surface EMG Signal Based on Fuzzy Entropy,” IEEE Trans. Neural Syst. Rehabil. Eng., vol. 15, no. 2, pp. 266–272, Jun. 2007, doi: 10.1109/TNSRE.2007.897025.