Hướng dẫn wavelet entropy python - trăn entropy wavelet
Permalink Show
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ụngMộ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
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
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); ent1 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); ent1 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); ent1 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); ent1. 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ớ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?
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 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ì? Cú phápSự mô tả
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 waveletShannon 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 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. 0Gó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. 1Có được entropy renyi theo quy mô. 2 3Tsallis entropy Tạo một chuỗi Delta Kronecker. 4Có được entropy Shannon được chia tỷ lệ của tín hiệu. Chỉ định biến đổi Wavelet cấp 3. 5Có đượ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. 6 7 8Đối số đầu vàosụp đổ tất cả Thu được entropy waveletInput data real-valued vector | real-valued matrix | cell arrayShannon Entropy
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); ent0 returns the normalized Shannon wavelet entropy. ent = wentropy(x,Level=1); ent1 computes the wavelet coefficients using the default options of ent = wentropy(x,Level=1); ent2. Renyi Entropy ent = wentropy(x,Level=1); ent3 | ent = wentropy(x,Level=1); ent4 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 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))3Có được entropy renyi theo quy mô. Tsallis entropyExponent ent2 = wentropy(x,Level=1,Scaled=false); ent2/log(length(x))9 (default) | real scalarTạo một chuỗi Delta Kronecker.
Đối số đầu vào 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.
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. ent = wentropy(x,Level=1); ent1 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); ent3 | ent = wentropy(x,Level=1); ent4 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);5Có được các ước tính entropy Renyi cho biến đổi yếu tố Q có thể điều chỉnh.
Tạo một chuỗi Delta Kronecker.
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 integerMức phân tách sóng con nếu đầu vào 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); ent1 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.
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); ent3 | ent = wentropy(x,Level=1); ent4 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 scalarWavelet đượ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 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: 12 | 13import 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 16Phươ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à 15 hoặc 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 21 - Tỷ lệ sóng con entropyimport 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 25Lcavelet entropy logic, được chỉ định là số hoặc logic 23 ( 22) hoặc 25 ( 24). Nếu được chỉ định là 22, hàm ent = wentropy(x,Level=1); ent1 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.
Cài đặt ________ 121 = Sai không mở rộng quy mô entropy wavelet. Kiểu dữ liệu: 40import 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 scalarNgưỡ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 41 bằng 0. A dương 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); ent3 | ent = wentropy(x,Level=1); ent4 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 đượ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 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 | vectorKiểu dữ liệu: 12 | 13
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); ent3 | ent = wentropy(x,Level=1); ent4 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 | matrixWavelet đượ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 11.
14 - Phương pháp chuẩn hóa ____115 (mặc định) | 16Kiểu dữ liệu: ent = wentropy(x,Level=1); ent3 | ent = wentropy(x,Level=1); ent4 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 đượ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 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: 12 | 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.
Hàm ent = wentropy(x,Level=1); ent1 hỗ trợ ba biện pháp entropy.
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. https://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. https://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). https://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); ent1 Cú pháp đầu vào đã thay đổient = wentropy(x,Level=1); ent1 input syntax has changedCú pháp được sử dụng trong phiên bản cũ của ent = wentropy(x,Level=1); ent1 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); ent1 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); ent1. 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.
|