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 elementi 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 elementi → 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 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 deviazione standard
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
std(X) = stimatore corretto della deviazione standard
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
Valutare intervalli di condenza per la media
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Valutare intervalli di condenza per la media
Vogliamo valutare l'intervallo di condenza relativo alla
media dei nostri dati
Possiamo calcolare intervallo di condenza assumendo di
conoscere la distribuzione da cui i dati sono campionati
Per grandi campioni (n>=30) possiamo assumere che la
popolazione abbia approssimativamente una particolare
distribuzione detta distribuzione t di student
Quindi nella pratica, per n grande (>=30) assumiamo che
i campioni provengono da tale distribuzione e calcoliamo
l'intervallo di condenza in base a questo
Intervalli di condenza in matlab utilizzando ttest
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Come calcolare un intervallo di condenza in matlab
Esistono primitive apposite per calcolare intervalli di
condenza
ztest(...) e ttest(...) eseguono dei test di ipotesi sulla
media di un vettore di dati e calcolano anche l'intervallo di
condenza
ci concentriamo sul ttest(...)
input:
vettore di campioni necessario
valore ipotetico della media (µ0 ) (0 se non specicato)
livello di signicativita' ( 5% se non specicato)
ipotesi del test (µ == µ0 se non specicata)
ttest e test di ipotesi
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
test di ipotesi
Ipotesi: asserzioni circa i parametri da stimare della
distribuzione, (noi considereremo solo asserzioni circa la
media)
La media di una serie di campioni e'
uguale/minore/maggiore ad un certo valore
Formuliamo una ipotesi (e.g., µ < k ) che consideriamo
vera no a prova cointraria detta ipotesi nulla
Il test verica se le prove (e.g., caratteristiche dei campioni
osservati) sono tali da rigettare l'ipotesi dato un livello di
signicativita'
α Livello di signicativita': piu' piccolo e' tale livello piu'
dicile sara' rigettare l'ipotesi nulla, e saremo quindi piu'
certi di non sbagliare quando la rigettiamo.
Intervalli di condenza in matlab: ttest
Basi per
Statistica
Inferenziale
in Matlab
Introduzione
Stima
Puntuale ed
intervalli di
condenza
Intervalli di
condenza
Output per ttest in matlab
ttest(...)
output:
0 se l'ipotesi non viene rigettata 1 altrimenti (restituito di
default)
p-value
Intevallo di condenza calcolato sulla media reale:
[x̄n − r ,x̄n + r ] ed r e' l'intervallo di condenza al livello di
condenza 1 − α
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: 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 su intervalli di condenza
Realizzare uno script per gracare i tempi di esecuzione degli algoritmi bruteForce e branch and bound per il motif search incudendo
gli intervalli di condenza al 95%
completare la funzione processData.m, calcolando
l'intervallo di condenza con ttest()
fare un graco con errorbar utilizzando i dati in
motifSearch.dat (load motifSearch.dat)
(hint) per fare il graco utilizzare makeFigure.m