模糊散布熵Fuzzy dispersion entropy(Python版)

熵或复杂性度量区分时间序列类别和理解潜在动态的能力是众所周知的。模糊散布熵(Fuzzy dispersion entropy,python代码:🍞正在为您运送作品详情)是采用一种新颖编码方法来保持子序列的符号表示。该算法非常简单,易于实现,作为特征提取方法可以与机器学习、深度学习结合,解决复杂的分类或预测问题,可用于生物医学、神经科学、电气、交通、气象、能源动力、水利、海洋科学、经济、土木、计算机科学、机械、工业工程等领域时间序列分析和特征提取。

1.给定时间序列:

 

2.使用 正态累积分布函数NCDF进行归一化:

 

3.将时间序列y映射到序列zc

 

4.利用模糊隶属度函数映射

\begin{aligned} & \mu_{M_1}(\alpha)= \begin{cases}0 & \alpha>2 \\ 2-\alpha & 1 \leq \alpha \leq 2 \\ 1 & \alpha<1\end{cases} \\ & \mu_{M_k}(\alpha)=\left\{\begin{array}{ll} 0 & \alpha>k+1 \\ k+1-\alpha & k \leq \alpha \leq k+1 \\ \alpha-k+1 & k-1 \leq \alpha \leq k \\ 0 & \alpha<k-1 \end{array} \quad k=2, \ldots, c-1\right. \\ & \mu_{M_c}(\alpha)= \begin{cases}1 & \alpha>c \\ \alpha-c+1 & c-1 \leq \alpha \leq c \\ 0 & \alpha<c-1\end{cases} \\ & \end{aligned} 

6.计算模式隶属度

\mu_{\pi_{v_0 v_1 \ldots v_{m-1}}}\left(\mathbf{z}_j^{m, c}\right)=\prod_{i-0}^{m-1} \mu_{M_{v_i}}\left(z_{j+(i) d}^c\right)

7.计算概率

p\left(\pi_{v_0, v_1, \ldots, v_{m-1}}\right)=\frac{\sum_{j=1}^{N-(m-1) d} \mu_{\pi_{v_0 v_1 \ldots v_{m-1}}}\left(\mathbf{z}_j^{m, c}\right)}{N-(m-1) d}

8.计算熵值

\operatorname{FuzDisEn}(\mathbf{x}, m, c, d)=-\sum_{\pi=1}^{c^m} P\left(\pi_{v_0 v_1 \ldots v_{m-1}}\right) \cdot \ln P\left(\pi_{v_0 v_1 \ldots v_{m-1}}\right)

复现结果

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值