Main Content

Stima della densità utilizzando le wavelet

Questa sezione illustra le feature della stima della densità wavelet monodimensionale utilizzando uno degli strumenti specializzati della Wavelet Toolbox™.

La toolbox fornisce l'app Wavelet Analyzer per stimare la densità di un campione e integra strumenti ben noti come l’istogramma (disponibile nel core MATLAB®) o stime basate per kernel.

Per gli esempi in questa sezione, commutare la modalità di estensione al riempimento simmetrico, utilizzando il comando

dwtmode('sym')

Stima monodimensionale utilizzando l’app Wavelet Analyzer

  1. Avviare lo strumento di stima di densità monodimensionale.

    Dal prompt MATLAB, digitare waveletAnalyzer.

    Viene visualizzato il Wavelet Analyzer.

    Fare clic sulla voce di menu Density Estimation 1-D. Viene visualizzato lo strumento di analisi wavelet discreta per la stima di densità monodimensionale.

  2. Caricare i dati.

    Dal prompt della riga di comando MATLAB, digitare

    load ex1cusp1
    Nello strumento Density Estimation 1-D (Stima di densità monodimensionale), scegliere File > Import from Workspace.

    Quando viene visualizzata la finestra di dialogo Import from Workspace (Importa dall’area di lavoro), selezionare ex1cusp1. Fare clic su OK per importare i dati della cuspide rumorosa.

    Vengono visualizzati il campione, un istogramma a 64 bin e i dati elaborati ottenuti dopo un binning. In questo esempio, viene accettato il valore predefinito per il numero di bin (250). I dati binnati, opportunamente normalizzati, verranno elaborati mediante scomposizione wavelet.

  3. Eseguire una scomposizione wavelet dei dati binnati.

    Selezionare la wavelet sym6 dal menu Wavelet e selezionare 4 dal menu Level (Livello), quindi fare clic sul pulsante Decompose (Scomponi). Dopo una pausa per il calcolo, lo strumento visualizza i coefficienti di dettaglio della scomposizione dei dati binnati.

  4. Eseguire una stima di densità.

    Accettare le impostazioni predefinite di soglia morbida globale. I cursori situati sulla destra della finestra controllano le soglie dipendenti dal livello, indicate dalle linee blu tratteggiate che attraversano orizzontalmente i grafici sulla sinistra della finestra.

    Continuare facendo clic sul pulsante Estimate (Stima).

    Come si può notare, il processo di stima produce una densità molto irregolare. La stima della densità (in viola) è la somma normalizzata dei segnali situati sotto di essa: l’approssimazione a4 e i dettagli ricostruiti dopo la sogliatura dei coefficienti.

  5. Eseguire la sogliatura.

    È possibile sperimentare le varie strategie di soglia predefinite selezionando le opzioni appropriate dal menu situato sulla destra della finestra, oppure trascinando direttamente le linee blu tratteggiate con il tasto sinistro del mouse. Si provi a eseguire un altro metodo di stima.

    Dal menu Select thresholding method (Seleziona il metodo di sogliatura), selezionare la voce By level threshold 2 (Per soglia di livello 2). Successivamente, fare clic sul pulsante Estimate (Stima).

    La densità stimata è più soddisfacente. Identifica correttamente la uniforme della densità e la cuspide a 0,7.

Importazione e esportazione di informazioni dall’app Wavelet Analyzer

Lo strumento consente di salvare la densità stimata su disco. La toolbox crea un MAT-file nella cartella corrente con un nome scelto dall'utente.

Per salvare la densità stimata, utilizzare l’opzione di menu File > Save Density (File > Salva densità). Viene visualizzata una finestra di dialogo che consente di specificare una cartella e un nome file, per memorizzare la densità. Digitare il nome dex1cusp. Dopo aver salvato i dati di densità sul file dex1cusp.mat, caricare le variabili nell’area di lavoro:

load dex1cusp 
whos
NomeDimensioneByteClasse
ex1cusp11x10008000double array
thrParams1x4544cell array
wname1x48char array
xdata1x2502000double array
ydata1x2502000double array

Il dato rumoroso originale ex1cusp1 ha 1000 campioni. Le variabili thrParams, wname, xdata e ydata sono memorizzate in dex1cusp.mat. La densità stimata è data da xdata e ydata. La lunghezza di questi vettori è pari al numero di bin scelti nel passaggio 4. Inoltre, i parametri del processo di stima sono dati dal nome della wavelet in wname.

wname

wname = 
    sym6

e le soglie dipendenti dal livello contenute in thrParams, che è un array di celle di lunghezza 4 (il livello della scomposizione). Per i da 1 a 4, thrParams{i} contiene i limiti inferiore e superiore dell'intervallo di sogliatura e il valore della soglia (poiché sono ammesse soglie dipendenti dall'intervallo). Ad esempio, per il livello 1,

thrParams{1}
ans = 
    0.0560    0.9870    2.1179

Nota

Quando si caricano i dati da un file utilizzando l'opzione di menu File > Load Data for Density Estimate (File > Carica i dati per la stima di densità), la prima variabile monodimensionale incontrata nel file è considerata il segnale. Le variabili vengono verificate in ordine alfabetico.

Al termine di questa sezione, riportare la modalità di estensione al riempimento a zero utilizzando

dwtmode('zpd')