1. 程式人生 > >樣本熵理論相關知識與程式碼實現

樣本熵理論相關知識與程式碼實現

關於本部落格的說明: 本次部落格主要分享樣本熵(Sample Entropy, SampEn, SE)的理論相關知識及其程式碼實現.
之前分享過一篇有關近似熵的部落格“近似熵理論相關知識與程式碼實現”,有興趣的博友歡迎前往觀看,不足之處還請不吝賜教!https://blog.csdn.net/cratial/article/details/79707169

一、理論基礎

樣本熵(SampEn)是基於近似熵(ApEn)的一種用於度量時間序列複雜性的改進方法,在評估生理時間序列的複雜性和診斷病理狀態等方面均有應用[1].
由於樣本熵是近似熵的一種改進方法,因此可以將其與近似熵聯絡起來理解.

演算法表述如下:

  1. 設存在一個以等時間間隔取樣獲得的N維的時間序列u(1),u(2),...,u(N).

  2. 定義演算法相關引數m,r,其中,m為整數,表示比較向量的長度,r為實數,表示“相似度”的度量值.

  3. 重構m維向量X(1),X(2),...,X(Nm+1),其中X(i)=[u(i),u(i+1),...,u(i+m1)].

  4. 對於1iNm+1,統計滿足以下條件的向量個數

    Bim(r)=(numberofX(j)suchthatd[X(i),X(j)]r)/(Nm),ij
    其中,d[X,X]定義為d[X,X]=maxa|u(a)u(a)|,XX
    u(a)為向量X的元素,d表示向量X(i)X(j)的距離,由對應元素的最大差值決定,j的取值範圍為[1,Nm+1],但是ji.
  5. Bim(r)對所有i值的平均值,記為Bm(r),即

    Bm(r)=(Nm+1)1i=1Nm+1Bim(r).
  6. k=m+1,重複步驟3-4,得