Hướng dẫn wavelet entropy python - trăn entropy wavelet

Permalink

bậc thầy

Chuyển nhánh/thẻ

Không thể tải các nhánh

Không có gì để hiển thị

{{refname}}

Tên đã được sử dụng

Một thẻ đã tồn tại với tên chi nhánh được cung cấp. Nhiều lệnh GIT chấp nhận cả tên thẻ và tên chi nhánh, vì vậy việc tạo nhánh này có thể gây ra hành vi bất ngờ. Bạn có chắc là bạn muốn tạo chi nhánh này?

Đi nộp

  • Đi nộp
  • Sao chép đường dẫn
  • Sao chép permalink

Không thể lấy lại những người đóng góp tại thời điểm này

600 dòng [600 SLOC] 101 KB 101 KB

Đổ lỗi

Mở trong máy tính để bàn GitHub

  • Mở với máy tính để bàn
  • Xem thô
  • Xem đổ lỗi

Xin lỗi, có lỗi xảy ra. Tải lại?

Xin lỗi, chúng tôi không thể hiển thị tệp này.

Xin lỗi, tệp này không hợp lệ nên nó không thể được hiển thị.

R2022B:

ent = wentropy[x,Level=1];
ent
1 Cú pháp đầu vào đã thay đổi

Cú pháp được sử dụng trong phiên bản cũ của

ent = wentropy[x,Level=1];
ent
1 tiếp tục hoạt động, nhưng không còn được khuyến nghị nữa. Phiên bản cũ cung cấp cho bạn quyền kiểm soát tối thiểu về cách ước tính entropy. Hàm
ent = wentropy[x,Level=1];
ent
1 tự động xác định từ cú pháp đầu vào mà phiên bản cần sử dụng.Aug 6, 2019 at 19:01

3

Bạn có thể chỉ định Entropy Shannon trong cả hai phiên bản của

ent = wentropy[x,Level=1];
ent
1. Tuy nhiên, vì phiên bản cũ không đưa ra giả định nào về dữ liệu đầu vào, nên sao chép các kết quả tương tự như phiên bản mới có thể yêu cầu nỗ lực rộng rãi.

import pywt
import numpy as np

#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    P=E/np.sum[E]
    S+=-np.sum[P*np.log[P]]
    Etot+=np.sum[E]
ratio=Etot/S

Phiên bản cũ

Phiên bản mớiAug 6, 2019 at 19:26

4

Tôi đang thực hiện phân tích wavelet cho dữ liệu cảm biến, tuy nhiên, tôi nhận ra rằng có rất nhiều gia đình wavelet để lựa chọn. Tôi đã đọc một bài viết nói rằng: "Phương pháp trước tiên sử dụng tiêu chí về tỷ lệ entropy năng lượng-shannon tối đa để chọn cơ sở sóng con thích hợp để phân tích tín hiệu.". Vì vậy, tôi muốn biết làm thế nào để tính toán tỷ lệ entropy năng lượng-shannon của tín hiệu cảm biến trong Python?

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S

Hỏi ngày 6 tháng 8 năm 2019 lúc 19:01

Đoán tốt nhất giả sử văn bản có nghĩa là: np.max [tổng năng lượng/tổng ​​entropy] | Wavelet21 hours ago

Tôi đang cố gắng tính toán entropy Shannon của

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
3. Tôi không chắc chắn nếu tôi đang làm đúng. Giả sử rằng $ w [a_i, t], i = 1; 2; ...; m $ là một tập hợp các hệ số sóng con. Entropy wavelet shannon được tính bằng: $ e =-\ sum_ {i = 1}^{m} d_i log [d_i] $ adrow $ trong đó $ d_i = \ frac {| w [a_i, t] | \ sum_ {j = 1}^{m} w [a_j, t]} $ Tôi bối rối cách tính toán $ e $. Ví dụ, tôi có ma trận hệ số với kích thước $ m \ lần n $, $ m $ là số tỷ lệ và $ n $ là phân đoạn thời gian. Đầu tiên tôi phải calulation $ d_i $, đây là vấn đề chính của tôi. Đây là ma trận hệ số wavelet: $ w_ {m \ lần n} = \ start 1} & w_ {a_2,2} & \ cdots & w_ {a_2, n} \\ \ vdots & \ vdots & \ ddots & \ vdots & w_ {a_m, n} \ end {pmatrix} $
$E=-\sum_{i=1}^{M}d_i log[d_i]$ $\rightarrow$ where $d_i=\frac{|W[a_i,t]|}{\sum_{j=1}^{M}W[a_j,t]}$
I am confused how to calculate $E$. for example I have a coefficient matrix with size of $M\times N$, $M$ is scales number and $N$ is time segments. first I have to calulate $d_i$, this is my main problem. this is the wavelet coefficient matrix :
$W_{M\times N} = \begin{pmatrix} w_{a_1,1} & w_{a_1,2} & \cdots & w_{a_1,N} \\ w_{a_2,1} & w_{a_2,2} & \cdots & w_{a_2,N} \\ \vdots & \vdots & \ddots & \vdots \\ w_{a_M,1} & w_{a_M,2} & \cdots & w_{a_M,N} \end{pmatrix}$

Hmm tôi khá chắc chắn rằng tôi sai, có ai giúp được không? Ví dụ: cho tôi biết làm thế nào tôi có thể tính toán $ d_4 $? Ở đây tôi có một kịch bản matlab nhỏ để tính toán entropy shannon của cwt. Nó đúng hay sai? Và tôi nên làm gì?
Here I have right a little Matlab script to calculate shannon entropy of CWT.
Is it right or wrong? and what should I do?

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];

Cú pháp

Sự mô tả

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
4 = Wentropy [________ 25] trả về entropy Wavelet Wavelet được chuẩn hóa của
 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
5. returns the normalized Shannon wavelet entropy of
 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
5.

________ 27, ________ 28] = Wentropy [___] cũng trả về năng lượng tương đối sóng con.___] also returns the wavelet relative energies.

Ví dụ

sụp đổ tất cả

Thu được entropy wavelet

Shannon Entropy

Tạo một tín hiệu có các mẫu là các giá trị xen kẽ là 0 và 2.

n = 0:499;
x = 1+[-1].^n;
stem[x]
axis tight
title["Signal"]
xlim[[0 50]]

Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi wavelet một cấp, sử dụng biến đổi wavelet và wavelet mặc định.

ent = wentropy[x,Level=1];
ent

Có được Entropy Shannon không được đánh dấu. Chia entropy cho

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
9, trong đó
n = 0:499;
x = 1+[-1].^n;
stem[x]
axis tight
title["Signal"]
xlim[[0 50]]
0 là chiều dài của tín hiệu. Xác nhận kết quả bằng với entropy tỷ lệ.

ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]

Tạo tín hiệu trung bình bằng tín hiệu đầu tiên. Có được entropy Shannon được chia tỷ lệ của tín hiệu mới bằng cách sử dụng biến đổi wavelet một cấp.

x = x-1;
ent = wentropy[x,Level=1];
ent

Renyi Entropy

Tải dữ liệu động đất Kobe. Có được biến đổi Wavelet Q-Factor có thể điều chỉnh cấp 4 của dữ liệu với hệ số chất lượng bằng 2.

load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];

Có được các ước tính entropy Renyi cho biến đổi yếu tố Q có thể điều chỉnh.

ent = wentropy[wt,Entropy="Renyi"];
ent

ent = 5×1

    0.8288
    0.8506
    0.8582
    0.8536
    0.7300

Tải dữ liệu ECG. Có được biến đổi sóng con rời rạc cấp 5 của tín hiệu bằng cách sử dụng sóng con

n = 0:499;
x = 1+[-1].^n;
stem[x]
axis tight
title["Signal"]
xlim[[0 50]]
1.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
0

Gói các hệ số sóng con và các hệ số xấp xỉ vào một mảng ô phù hợp để tính toán entropy sóng con.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
1

Có được entropy renyi theo quy mô.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
2

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
3

Tsallis entropy

Tạo một chuỗi Delta Kronecker.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
4

Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi Wavelet cấp 3.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
5

Có được entropy tsallis được chia tỷ lệ của tín hiệu cho các giá trị khác nhau của số mũ. Xác nhận rằng khi số mũ đi đến 1, Tsallis Entropy tiếp cận The Shannon Entropy.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
6

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
7

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
8

Đối số đầu vào

sụp đổ tất cả

Thu được entropy waveletInput data
real-valued vector | real-valued matrix | cell array

Shannon Entropy

  • Tạo một tín hiệu có các mẫu là các giá trị xen kẽ là 0 và 2.

  • Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi wavelet một cấp, sử dụng biến đổi wavelet và wavelet mặc định.

  • Có được Entropy Shannon không được đánh dấu. Chia entropy cho

     [M,N]=size[coeffs];
    for js=1:M     
    Ej[js]=sum[abs[coeffs[js,:]]];
    end;
    Etot=sum[Ej];
    Pj=Ej./Etot;
    %shannon entropy
    shan_entr=-sum[Pj.*log[Pj]];
    
    9, trong đó
    n = 0:499;
    x = 1+[-1].^n;
    stem[x]
    axis tight
    title["Signal"]
    xlim[[0 50]]
    0 là chiều dài của tín hiệu. Xác nhận kết quả bằng với entropy tỷ lệ.

Tạo tín hiệu trung bình bằng tín hiệu đầu tiên. Có được entropy Shannon được chia tỷ lệ của tín hiệu mới bằng cách sử dụng biến đổi wavelet một cấp.

ent = wentropy[x,Level=1];
ent
0 returns the normalized Shannon wavelet entropy.
ent = wentropy[x,Level=1];
ent
1 computes the wavelet coefficients using the default options of
ent = wentropy[x,Level=1];
ent
2.

Renyi Entropy

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

Tải dữ liệu động đất Kobe. Có được biến đổi Wavelet Q-Factor có thể điều chỉnh cấp 4 của dữ liệu với hệ số chất lượng bằng 2.

Có được các ước tính entropy Renyi cho biến đổi yếu tố Q có thể điều chỉnh.

Tải dữ liệu ECG. Có được biến đổi sóng con rời rạc cấp 5 của tín hiệu bằng cách sử dụng sóng con

n = 0:499;
x = 1+[-1].^n;
stem[x]
axis tight
title["Signal"]
xlim[[0 50]]
1.
ent = wentropy[x,Level=1];
ent
8 uses the
ent = wentropy[x,Level=1];
ent
9 wavelet to obtain the wavelet transform.

Gói các hệ số sóng con và các hệ số xấp xỉ vào một mảng ô phù hợp để tính toán entropy sóng con.Entropy
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
1
[default] |
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
2
|
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
3

Có được entropy renyi theo quy mô.

Tsallis entropyExponent
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
9
[default] | real scalar

Tạo một chuỗi Delta Kronecker.

  • Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi Wavelet cấp 3.

  • Có được entropy tsallis được chia tỷ lệ của tín hiệu cho các giá trị khác nhau của số mũ. Xác nhận rằng khi số mũ đi đến 1, Tsallis Entropy tiếp cận The Shannon Entropy.

Đối số đầu vào

ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
8=1 is a limiting case and produces the Shannon entropy. Specifying
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
8 is valid only when
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
0 is
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
2 or
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
3.

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
5-vectơ có giá trị dữ liệu đầu vào | Ma trận có giá trị thực | Mảng ô

Dữ liệu đầu vào, được chỉ định là một vectơ hàng hoặc cột có giá trị thực, một mảng ô của các vectơ hàng hoặc cột có giá trị thực hoặc ma trận có giá trị thực với ít nhất hai hàng.

ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
8=1 as a limiting case. However, for reasons of numerical stability,
ent = wentropy[x,Level=1];
ent
1 supports only exponents greater than or equal to -1/2 when
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
0 is
ent2 = wentropy[x,Level=1,Scaled=false];
ent2/log[length[x]]
3.

Renyi Entropy

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

Tải dữ liệu động đất Kobe. Có được biến đổi Wavelet Q-Factor có thể điều chỉnh cấp 4 của dữ liệu với hệ số chất lượng bằng 2.Transform
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
2
[default] |
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
3
|
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
4
|
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
5

Có được các ước tính entropy Renyi cho biến đổi yếu tố Q có thể điều chỉnh.

  • Tải dữ liệu ECG. Có được biến đổi sóng con rời rạc cấp 5 của tín hiệu bằng cách sử dụng sóng con

    n = 0:499;
    x = 1+[-1].^n;
    stem[x]
    axis tight
    title["Signal"]
    xlim[[0 50]]
    1.

  • Gói các hệ số sóng con và các hệ số xấp xỉ vào một mảng ô phù hợp để tính toán entropy sóng con.

  • Có được entropy renyi theo quy mô.

  • Tsallis entropy

Tạo một chuỗi Delta Kronecker.

  • Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi Wavelet cấp 3.

  • Nếu

    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    1 là
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    4 hoặc
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    5,
    ent = wentropy[x,Level=1];
    ent
    1 sử dụng wavelet
    ent = 5×1
    
        0.8288
        0.8506
        0.8582
        0.8536
        0.7300
    
    
    1.

Mở rộng định kỳ được sử dụng cho tất cả các biến đổi.

ent = 5×1

    0.8288
    0.8506
    0.8582
    0.8536
    0.7300

2 - Số nguyên phân tách waveletWavelet decomposition level
positive integer

Mức phân tách sóng con nếu đầu vào

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
5 là dữ liệu thời gian, được chỉ định là một số nguyên dương. Hàm
ent = wentropy[x,Level=1];
ent
1 có được wavelet chuyển đổi xuống mức được chỉ định. Nếu không xác định, mức mặc định phụ thuộc vào loại biến đổi và độ dài tín hiệu N.

  • Nếu

    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    1 là
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    3 hoặc
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    2,
    ent = 5×1
    
        0.8288
        0.8506
        0.8582
        0.8536
        0.7300
    
    
    2 mặc định là
    ent = 5×1
    
        0.8288
        0.8506
        0.8582
        0.8536
        0.7300
    
    
    9.

  • Nếu

    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    1 là
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    4 hoặc
    load kobe
    wt = tqwt[kobe,Level=4,QualityFactor=2];
    5,
    ent = 5×1
    
        0.8288
        0.8506
        0.8582
        0.8536
        0.7300
    
    
    2 mặc định là
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    04.

Chỉ định một mức không hợp lệ nếu dữ liệu đầu vào là các hệ số gói sóng con hoặc sóng con.

Kiểu dữ liệu:

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4
ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
07 - Vector Waveletcharacter | Chuỗi vô hướngWavelet
character vector | string scalar

Wavelet được sử dụng để có được biến đổi gói sóng con hoặc wavelet của một vectơ hàng hoặc cột có giá trị thực, được chỉ định là vectơ ký tự hoặc vô hướng chuỗi. Nếu

load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
1 là
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
2 hoặc
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
5, sóng con phải trực giao. Để biết danh sách các bước sóng trực giao hoặc biorthogonal được hỗ trợ, xem
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
11.

Chỉ định tên wavelet không hợp lệ nếu dữ liệu đầu vào là các hệ số gói sóng con hoặc sóng con.

Kiểu dữ liệu:

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
12 |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
13
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
12 |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
13

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
14 - Phương pháp chuẩn hóa ____115 [mặc định] |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
16Normalization method
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
15
[default] |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
16

Phương pháp chuẩn hóa để sử dụng để thu được phân phối xác suất thực nghiệm cho các hệ số biến đổi sóng con, được chỉ định là

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
15 hoặc
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
16.

  • import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    16 - Hàm bình thường hóa cường độ bình phương của các hệ số bằng tổng số tổng của cường độ bình phương của tất cả các hệ số. Mỗi tỷ lệ trong biến đổi wavelet mang lại một vô hướng và vectơ của các giá trị này tạo thành một vectơ xác suất. Hàm thực hiện các tính toán entropy trên vectơ này và tổng thể entropy là một vô hướng.

  • import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    15-Hàm bình thường hóa các hệ số sóng con ở mỗi tỷ lệ riêng biệt và tính toán entropy bằng tỷ lệ mang lại đầu ra vectơ có kích thước [NS+1] -BY-1, trong đó NS là số lượng thang đo nếu đầu vào là dữ liệu chuỗi thời gian. Nếu đầu vào là một mảng ô hoặc ma trận, đầu ra là M-by-1, trong đó m là chiều dài của mảng ô hoặc số lượng hàng trong ma trận.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
21 - Tỷ lệ sóng con entropy
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
22 hoặc
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
23 [mặc định] |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
24 hoặc
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
25Scale wavelet entropy
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
22 or
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
23
[default] |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
24 or
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
25

Lcavelet entropy logic, được chỉ định là số hoặc logic

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
23 [
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
22] hoặc
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
25 [
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
24]. Nếu được chỉ định là
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
22, hàm
ent = wentropy[x,Level=1];
ent
1 có quy mô entropy sóng con theo hệ số tương ứng với phân phối đồng đều cho entropy được chỉ định.

  • Đối với các entropies Shannon và Renyi, yếu tố là

    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    32, trong đó NJ là độ dài của dữ liệu trong các mẫu theo tỷ lệ nếu
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    14 là
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    15 hoặc số lượng thang đo nếu
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    14 là
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    16.

  • Đối với entropy tsallis, yếu tố này là [____ 58-1]/[1-nj^[1 -____ 58]].[

    ent2 = wentropy[x,Level=1,Scaled=false];
    ent2/log[length[x]]
    8-1]/[1-Nj^[1-
    ent2 = wentropy[x,Level=1,Scaled=false];
    ent2/log[length[x]]
    8]]
    .

Cài đặt ________ 121 = Sai không mở rộng quy mô entropy wavelet.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
21=false does not scale the wavelet entropy.

Kiểu dữ liệu:

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
40
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
40

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
41 - Ngưỡng năng lượng ____142 [mặc định] | vô hướng không âmEnergy threshold
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
42
[default] | nonnegative scalar

Ngưỡng năng lượng, được chỉ định là vô hướng không âm. Hàm thay thế tất cả các hệ số với năng lượng theo tỷ lệ dưới

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
41 bằng 0. A dương
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
41 ngăn chặn chức năng xử lý các hệ số gói sóng con hoặc sóng con với năng lượng không đáng kể như một chuỗi với entropy cao.

Kiểu dữ liệu:

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4
ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
07 - Vector Waveletcharacter | Chuỗi vô hướng

Wavelet được sử dụng để có được biến đổi gói sóng con hoặc wavelet của một vectơ hàng hoặc cột có giá trị thực, được chỉ định là vectơ ký tự hoặc vô hướng chuỗi. Nếu

load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
1 là
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
2 hoặc
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
5, sóng con phải trực giao. Để biết danh sách các bước sóng trực giao hoặc biorthogonal được hỗ trợ, xem
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
11.

Chỉ định tên wavelet không hợp lệ nếu dữ liệu đầu vào là các hệ số gói sóng con hoặc sóng con.
scalar | vector

Kiểu dữ liệu:

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
12 |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
13

  • import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    14 - Phương pháp chuẩn hóa ____115 [mặc định] |
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    16

  • Phương pháp chuẩn hóa để sử dụng để thu được phân phối xác suất thực nghiệm cho các hệ số biến đổi sóng con, được chỉ định là

    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    15 hoặc
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    16.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
16 - Hàm bình thường hóa cường độ bình phương của các hệ số bằng tổng số tổng của cường độ bình phương của tất cả các hệ số. Mỗi tỷ lệ trong biến đổi wavelet mang lại một vô hướng và vectơ của các giá trị này tạo thành một vectơ xác suất. Hàm thực hiện các tính toán entropy trên vectơ này và tổng thể entropy là một vô hướng.

Kiểu dữ liệu:

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4
ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
07 - Vector Waveletcharacter | Chuỗi vô hướng
vector | matrix

Wavelet được sử dụng để có được biến đổi gói sóng con hoặc wavelet của một vectơ hàng hoặc cột có giá trị thực, được chỉ định là vectơ ký tự hoặc vô hướng chuỗi. Nếu

load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
1 là
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
2 hoặc
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
5, sóng con phải trực giao. Để biết danh sách các bước sóng trực giao hoặc biorthogonal được hỗ trợ, xem
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
11.

  • Chỉ định tên wavelet không hợp lệ nếu dữ liệu đầu vào là các hệ số gói sóng con hoặc sóng con.

    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    14="scale", the function returns the relative wavelet energies by coefficient and scale.

  • Kiểu dữ liệu:

    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    12 |
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    13
    import pywt
    import numpy as np
    #series - input data
    #wave   - current wavelet
    data=pywt.wavedec[series,wave]
    S=0
    Etot=0
    for d in data:
        E=d**2
        Etot+=np.sum[E]
        P=E/Etot
        S+=-np.sum[P*np.log[P]]
    ratio=Etot/S
    
    14="global"
    , the function returns the relative wavelet energies by scale.

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
14 - Phương pháp chuẩn hóa ____115 [mặc định] |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
16

Kiểu dữ liệu:

ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4
ent = wentropy[x,Level=1];
ent
3 |
ent = wentropy[x,Level=1];
ent
4

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
07 - Vector Waveletcharacter | Chuỗi vô hướng

Wavelet được sử dụng để có được biến đổi gói sóng con hoặc wavelet của một vectơ hàng hoặc cột có giá trị thực, được chỉ định là vectơ ký tự hoặc vô hướng chuỗi. Nếu

load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
1 là
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
2 hoặc
load kobe
wt = tqwt[kobe,Level=4,QualityFactor=2];
5, sóng con phải trực giao. Để biết danh sách các bước sóng trực giao hoặc biorthogonal được hỗ trợ, xem
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
11.

Chỉ định tên wavelet không hợp lệ nếu dữ liệu đầu vào là các hệ số gói sóng con hoặc sóng con.

Kiểu dữ liệu:

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
12 |
import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
13entropy measures. WE treats the normalized wavelet coefficients as an empirical probability distribution and calculates its entropy.

Bạn có thể bình thường hóa các hệ số wavelet wt theo một trong hai cách.wt in one of two ways.

  • Chức năng bình thường hóa tất cả các hệ số bằng tổng số độ lớn bình phương của chúng: e = ∑i∑j | wtij | 2, trong đó j tương ứng với thời gian và tôi tương ứng với tỷ lệ. Hàm khối lượng xác suất là: ℙ [wtij] = | wtij | 2/e.E=∑i∑j|wtij|2,where j corresponds to time, and i corresponds to scale. The probability mass function is: ℙ[wtij]=|wtij|2/E.

  • Hàm bình thường hóa các hệ số ở mỗi thang đo riêng biệt bởi tổng cường độ bình phương của chúng: ei = ∑j | wtij | 2. Hàm khối xác suất là: ℙ [wtij] = | wtij | 2/ei.Ei=∑j|wtij|2. The probability mass function is: ℙ [wtij]=|wtij|2/Ei.

Hàm

ent = wentropy[x,Level=1];
ent
1 hỗ trợ ba biện pháp entropy.

  • Shannon Entropy

    Đối với một biến ngẫu nhiên riêng biệt

     [M,N]=size[coeffs];
    for js=1:M     
    Ej[js]=sum[abs[coeffs[js,:]]];
    end;
    Etot=sum[Ej];
    Pj=Ej./Etot;
    %shannon entropy
    shan_entr=-sum[Pj.*log[Pj]];
    
    5, entropy Shannon được định nghĩa là:

    trong đó tổng được lấy trên tất cả các giá trị mà biến ngẫu nhiên có thể lấy. Theo quy ước, 0 ln [0] = 0.0 ln[0] = 0.

  • Renyi Entropy

    Entropy Renyi được định nghĩa là:

    Trong giới hạn, entropy renyi trở thành entropy shannon: limα → 1hr [x] = h [x].limα →1Hr[X]=H[X].

  • Tsallis entropy

    Entropy Tsallis được định nghĩa là:

    Tương tự như entropy renyi, trong giới hạn, entropy tsallis trở thành entropy shannon: limq → 1ht [x] = h [x].limq→1Ht[X]=H[X].

Người giới thiệu

[1] Zunino, L., D.G. Pérez, M. Garavaglia và O.A. Rosso. Các wavelet entropy của các quá trình ngẫu nhiên. Physica A: Cơ học thống kê và các ứng dụng của nó 379, không. 2 [tháng 6 năm 2007]: 503 Từ12. //doi.org/10.1016/j.physa.2006.12.057.

. Entropy của wavelet wavelet: một công cụ mới để phân tích tín hiệu điện não thời gian ngắn. Tạp chí Phương pháp khoa học thần kinh 105, không. 1 [tháng 1 năm 2001]: 65 bóng75. //doi.org/10.1016/s0165-0270[00]00356-3.

[3] Alcaraz, Raúl, ed. "Wavelet Entropy: Tính toán và ứng dụng." Vấn đề đặc biệt, Entropy 17 [2015]. //www.mdpi.com/journal/entropy/special_issues/wavelet-entropy.

Lịch sử phiên bản

Được giới thiệu trước R2006A

mở rộng tất cả

R2022B:
ent = wentropy[x,Level=1];
ent
1 Cú pháp đầu vào đã thay đổi
ent = wentropy[x,Level=1];
ent
1 input syntax has changed

Cú pháp được sử dụng trong phiên bản cũ của

ent = wentropy[x,Level=1];
ent
1 tiếp tục hoạt động, nhưng không còn được khuyến nghị nữa. Phiên bản cũ cung cấp cho bạn quyền kiểm soát tối thiểu về cách ước tính entropy. Hàm
ent = wentropy[x,Level=1];
ent
1 tự động xác định từ cú pháp đầu vào mà phiên bản cần sử dụng.

Bạn có thể chỉ định Entropy Shannon trong cả hai phiên bản của

ent = wentropy[x,Level=1];
ent
1. Tuy nhiên, vì phiên bản cũ không đưa ra giả định nào về dữ liệu đầu vào, nên sao chép các kết quả tương tự như phiên bản mới có thể yêu cầu nỗ lực rộng rãi.

Phiên bản cũPhiên bản mới

import pywt
import numpy as np
#series - input data
#wave   - current wavelet
data=pywt.wavedec[series,wave]
S=0
Etot=0
for d in data:
    E=d**2
    Etot+=np.sum[E]
    P=E/Etot
    S+=-np.sum[P*np.log[P]]
ratio=Etot/S
9

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
0

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
1

 [M,N]=size[coeffs];
for js=1:M     
Ej[js]=sum[abs[coeffs[js,:]]];
end;
Etot=sum[Ej];
Pj=Ej./Etot;
%shannon entropy
shan_entr=-sum[Pj.*log[Pj]];
0

Bài Viết Liên Quan

Chủ Đề