Basi per Statistica Inferenziale in Matlab

Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Basi per Statistica Inferenziale in Matlab
Laboratorio di Programmazione II
Corso di Laurea in Bioinformatica
Dipartimento di Informatica - Università di Verona
Sommario
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Introduzione
Stime puntuali ed intervalli
Introduzione
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Statistica Inferenziale
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Motivazioni
Fare inferenze circa un insieme di elemnti a partire da un
insieme di osservazioni
Es: inferire il risultato di un referendum dagli exit poll
inferenza → asserzioni motivate (risultato referendum)
insieme di elementi → popolazione (tutti i votanti)
insieme di osservazioni → campione (persone intervistate)
Statistica inferenziale ed analisi dei dati
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Analisi dei dati
Dati → campione
Es: tempi di esecuzione di due algoritmi su un certo
numero n di istanze di problema
inferenza → decidere quale dei due algoritmi e' piu' veloce
insieme di elemetni → tutte le possibili istanze
insieme di osservazioni → tempo di esecuzione sulle istanze
n
Statistica inferenziale ed analisi dei dati
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Example (Confronto Algoritmi)
Stima Puntuale ed intervalli di condenza
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Stima Puntuale
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Stimare parametri di distribuzioni parzialmente note
Dato un campione x1 , · · · , xn di valori
Voglio stimare i parametri di una distribuzione che assumo
sia la distribuzione della mia popolazione
Es: assumo la distribuzione Gaussiana con media e
varianza non note
Voglio stimare la media e la varianza della mia distribuzione
Stima Puntuale: terminologia
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
terminologia e concetti base
Data una serie di variabili aleatorie X1 , · · · , Xn con un
modello probabilistico pX (x , θ)
Statistica: T = f (X1 , · · · , Xn )
Stimatore: θ̂ = f (X1 , · · · , Xn )
Stimatore Corretto (o non distorto): ET = θ
Stimatori corretti
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Stimatori corretti per media e varianza
assumo pX (x , θ) = N (µ, σ)
se x1 , · · · , xn sono i campioni (valori numerici)
Allora si puo dimostrare
che
P
x̄ = 1/n =1 P
x e' uno stimatore corretto di µ
s 2 = 1/(n − 1) =1 (x − x̄ )2 e' uno stimatore corretto di
σ2
n
n
n
i
i
n
i
i
n
Stima puntuale in matlab
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Stimare media e varianza in matlab
X = vettore di dati
mean(X) = stimatore della media
var(X) = stimatore corretto della varianza
Campionamento dati
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Campionamento da distibuzioni note
rand(M,1) estrae M campioni dalla distribuzione uniforme
tra (0,1)
normrnd(MU,SIGMA,M,1) estrae M campioni dalla
distribuzione normale con media MU e varianza SIGMA
Esempio stima puntuale
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Example (Stima media e varianza di campioni)
X = vettore di dati
X = normrnd(0,1,N,1)
mean(X) = stimatore della media
var(X) = stimatore corretto della varianza
Visualizzazione dati: plot
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Cenni di graca 2-D
plot(x,y) graco 2D di y rispetto ad x
help plot per vedere tutte le possibili opzioni
Example (graco di una distribuzione normale con media MU e
varianza SIGMA)
Es: x = [-10:0.01:10]
y = normpdf(x,MU,SIGMA)
plot(x,y)
Visualizzazione dati: hist
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Cenni di graca 2-D: istogrammi
hist(x,y) istogramma dei valori in x divisi in y contenitori
help hist per vedere tutte le possibili opzioni
Example (graco di una distribuzione normale con media MU e
varianza SIGMA)
Es: x = [-10:0.01:10]
y = normpdf(x,MU,SIGMA)
plot(x,y)
Intervalli di condenza
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Motivazione
La stima puntuale non ci dice il valore vero del parametro
Vogliamo che la stima ci dia un valore ragionevolmente
vicino a quello vero
Intervallo di condenza: valore percentuale di condenza
che il parametro appartenga all'intervallo stimato
Intervalli di condenza: terminologia
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
terminologia e formule
intervallo di condenza: P θ (T1 < h(θ) < T2 )
T1 = t1 (X1 , · · · , Xn ) T2 = t2 (X1 , · · · , Xn )
h(θ) appartiente a (t1 (x1 , · · · , xn ), t2 (x1 , · · · , xn )) con una
condenza di livello 100α%
condenza non probabilita' perche' valutiamo a valle del
campionamento
Intervallo di condenza per la media
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Popolazione normale con varianza nota
Ipotesi X1 , · · ·, Xn ∼ N (µ, σ) ¯
Obiettivo P µ |Xσ/n√−µ|n < z(1+α)/2 = α
zβ quantile β della normale standard (N (0, 1))
P (X ≤ z β ) = β
Quantili sono deniti da tabelle note
Soluzione µ̂ = X̄n ± z(1+α)/2 √σn
Intervallo di condenza per la media
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Popolazione normale con varianza non nota
Ipotesi X1 , · · · ,Xn ∼ N (µ, σ)
Obiettivo P
µ,σ
|X¯n −µ|
√
Sn2 /n
< t(1+α)/2 (n − 1)
=α
tβ (m) quantile β ad m gradi di liberta' della distribuzione t
di Student
q
2
Soluzione µ̂ = X̄n ± t(1+α)/2 (n − 1) Snn
Stima per grandi campioni
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Popolazione qualsiasi ma tanti campioni
Per grandi campioni (n>=30) possiamo assumere che la
popolazione abbia approssimativamente una distribuzione t
di student
Quindi per n grande (>=30)
q usiamo sempre
2
µ̂ = X̄n ± t(1+α)/2 (n − 1) Snn
Se n e' molto grande (n>=120) allora possiamo assumere
che t(1+α)/2 (n − 1) ' z(1+α)/2
Quindi usiamo µ̂ = X̄n ± z(1+α)/2 √σn
Sommario
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Calcolare intervalli di condenza
Dati i campioni
Calcolare media mean()
Calcolare varianza var()
Calcolare formula opportuna (utilizzando z o t)
Per calcolare z o t caricare il le corrispondente:
tvaluedSample95 oppure zvaluedSample95
Calcolo di t e z
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Come calcolare i quantili
Leggiamo i quantili da le
Per i quantili z vedere il le zvaluesSampled.dat
Per i quantili t vedere il le tvaluesSampled95.dat
Attenzione: il quantile t dipende da n ma non abbiamo
tutti gli n nel le
se n > 120 usare 1.6449 se n1 < n < n2 interpolare tra
t (n1 ) ed t (n2 )
per interpolare utilizzare interp1(...)
Visualizzazione dati: errorbar
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Cenni di graca 2-D
molto simile a plot
errorbar(x,y,u,l) graco 2D di y, y+u ed y-l rispetto ad x,
help errorbar per vedere tutte le possibili opzioni
Esercizi
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Esercizi intervalli di condenza
Implementare zconnt (utilizzare zvaluesSampled.dat)
campionare gaussiana, calcolare media ed intervallo di
condenza (utilizzare zconnt)
gracare media ed intervallo di condenza al variare del
numero di campioni (utilizzare plotConfInt)
Implementare tconnt95 (utilizzare tvaluesSampled95.dat)
campionare gaussiana, calcolare media ed intervallo di
condenza (utilizzare tconnt95)
gracare media ed intervallo di condenza al variare del
numero di campioni (utilizzare tplotConfInt)
Esercizi II
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Esercizi intervalli di condenza
Calcolare media ed intervallo di condenza per dati in
motifSearch.dat (usare tconnt95)
Gracare l'andamento dei due algoritmi utilizzando errorbar