# PUNTO 5 ------------------------------------------------
HW 03 - Distribuzione campionaria, verosimiglianza e stima MLE
Data di consegna: lunedì 04 maggio 2026
Introduzione
In questo compito utilizzerai le regole e i comandi utili per:
- descrivere la distribuzione campionaria di una statistica e le sue proprietà
- costruire la funzione di probabilità congiunta del campione casuale in ottica probabilistica e in ottica inferenziale
- scrivere la funzione di verosimiglianza per due modelli discreti (Bernoulli e Poisson) e massimizzarla numericamente con R
- visualizzare gli effetti della numerosità campionaria sulla forma della funzione di verosimiglianza
- usare la funzione
mapdel pacchettopurrrper iterare operazioni su sequenze di valori o campioni
Obiettivi di apprendimento
Lo svolgimento di questo compito ti permetterà di:
- calcolare la distribuzione campionaria esatta e asintotica (De Moivre–Laplace) della somma e della proporzione campionaria bernoulliana
- scrivere la funzione di probabilità congiunta di un campione casuale per un DGP bernoulliano e per un DGP poissoniano
- passare dall’ottica probabilistica all’ottica inferenziale ribaltando il ruolo dei dati e del parametro
- implementare in R la funzione di verosimiglianza di un modello discreto, individuarne il massimo numericamente e visualizzarne il profilo al variare della numerosità campionaria
Istruzioni per l’uso
Esercizi carta e penna
Rispondi ai vari punti su un foglio in cui scrivi chiaramente cognome, nome e matricola e numero del compito: ad esempio nel mio caso sarebbe Vistocco Domenico, matricola 123456, soluzione compito
#03Per rispondere ad ogni punto scrivi chiaramente il punto cui stai rispondendo. Ad esempio, per rispondere al punto 1 del compito, scrivi
RISPOSTA PUNTO 1
Esercizi in R
Rispondi ai vari punti salvando le risposte in un file R con il nome “hw03_cognome_nome.R”: ad esempio nel mio caso il nome del file sarebbe “hw03_vistocco_domenico.R”.
Per rispondere ad ogni punto inserisci un’etichetta di sezione (che puoi inserire nello script usando la combinazione di tasti CTRL/CMD + SHIFT + R) utilizzando il punto cui stai rispondendo. Ad esempio, per rispondere al punto 5 del compito, usa un’etichetta di sezione:
Utilizza i commenti per rispondere alle domande in cui viene chiesta un’interpretazione da parte tua: lo script deve cioè essere funzionante quando si eseguono tutti i comandi con il pulsante Source.
Lo script viene valutato sia in base alla correttezza del codice che in base alla qualità (stile utilizzato per rendere lo script leggibile ed ordinato).
Esercizi
Parte 1: esercizi carta e penna
In una grande città, il 40% dei pendolari utilizza i mezzi pubblici come principale mezzo di trasporto. Si estrae un campione casuale di \(n = 80\) pendolari.
Descrivi il DGP: qual è la distribuzione di ciascuna osservazione campionaria \(X_i\)? Indica parametro, valore atteso e varianza.
Sia \(S = \sum_{i=1}^{n} X_i\) la somma campionaria. Ricava la distribuzione esatta di \(S\), il suo valore atteso e la sua varianza, sfruttando le proprietà delle combinazioni lineari di variabili casuali indipendenti.
Sia \(\hat{\pi} = S/n\) la proporzione campionaria. Ricava \(E(\hat{\pi})\) e \(\text{Var}(\hat{\pi})\) e interpreta i risultati.
Applicando il teorema di De Moivre–Laplace, individua la distribuzione approssimata di \(S\) e di \(\hat{\pi}\) per \(n = 80\), verificando che le condizioni di applicabilità siano soddisfatte.
Usando l’approssimazione normale, calcola:
- \(P(S \geq 38)\)
- \(P(28 \leq S \leq 40)\)
- \(P(\hat{\pi} \leq 0{,}35)\)
Si osserva un campione casuale \(\mathbf{x} = (x_1, x_2, \ldots, x_n)\) estratto da una popolazione in cui ogni unità può essere classificata come “successo” (\(x_i = 1\)) o “insuccesso” (\(x_i = 0\)), con probabilità di successo \(\pi \in (0, 1)\).
Scrivi la funzione di probabilità di una singola osservazione \(X_i \sim \text{Bernoulli}(\pi)\) e la funzione di probabilità congiunta del campione casuale \((X_1, \ldots, X_n)\), sfruttando l’ipotesi di indipendenza. Semplifica l’espressione ottenuta.
Spiega con parole tue la differenza tra l’utilizzo della funzione di probabilità congiunta in ottica probabilistica e in ottica inferenziale. Come cambia il ruolo di \(\mathbf{x}\) e di \(\pi\) nei due casi?
Scrivi la funzione di verosimiglianza \(L(\pi \mid \mathbf{x})\) e la funzione di log-verosimiglianza \(\ell(\pi \mid \mathbf{x})\) per il modello di Bernoulli.
La funzione di log-verosimiglianza si ottiene semplicemente applicando il logaritmo naturale alla funzione di verosimiglianza: \(\ell(\pi \mid \mathbf{x}) = \log L(\pi \mid \mathbf{x})\). Poiché il logaritmo è una funzione strettamente crescente, il valore di \(\pi\) che massimizza \(L\) è lo stesso che massimizza \(\ell\). Lavorare con \(\ell\) è spesso più comodo perché trasforma i prodotti in somme.
- Considera ora il modello di Poisson: ogni osservazione ha funzione di massa di probabilità \(P(X = x) = \frac{e^{-\lambda}\lambda^x}{x!}\), per \(x = 0, 1, 2, \ldots\) e \(\lambda > 0\). Ripeti i passi (a), (b) e (c) per questo modello: scrivi la funzione di probabilità congiunta del campione e la funzione di log-verosimiglianza \(\ell(\lambda \mid \mathbf{x})\).
Parte 2: esercizi in R
Considera un DGP bernoulliano con \(\pi = 0{,}40\) e studia empiricamente la distribuzione campionaria della proporzione campionaria \(\hat{\pi} = S/n\) usando la simulazione e la funzione map di purrr.
Fissa \(n = 80\) e genera \(B = 10\,000\) campioni di dimensione \(n\) da una \(\text{Bernoulli}(0{,}40)\). Usa
map_dblper ottenere il vettore delle \(B\) proporzioni campionarie \(\hat{\pi}^{(1)}, \ldots, \hat{\pi}^{(B)}\).Rappresenta la distribuzione delle \(B\) proporzioni campionarie con un istogramma. Sovrapponi la curva della distribuzione normale approssimata ricavata nell’Esercizio 1, punto (d), usando una linea di colore rosso.
Usa ancora
map_dblper ripetere l’operazione per i seguenti valori di \(n\): \(n \in \{10, 30, 80, 300\}\), generando per ciascun valore \(B = 10\,000\) proporzioni campionarie. Rappresenta i quattro istogrammi in un grafico diviso in quattro pannelli e commenta come cambia la forma della distribuzione campionaria al crescere di \(n\).
Un possibile schema per il punto (a):
library(purrr)
B <- 10000
n <- 80
pi_vero <- 0.40
prop_camp <- map_dbl(1:B, \(i) mean(rbinom(n, size = 1, prob = pi_vero)))Per il punto (c) puoi usare map su un vettore di valori di \(n\).
Implementa in R la funzione di verosimiglianza per il modello di Bernoulli e analizza l’effetto della numerosità campionaria sul profilo della log-verosimiglianza, individuando lo stimatore MLE numericamente.
Scrivi una funzione R chiamata
loglik_bernoulliche, dati un vettore di osservazionixe un valore del parametropi, calcoli la log-verosimiglianza del modello di Bernoulli. La funzione deve restituire un singolo valore numerico.Considera quattro campioni osservati di dimensione crescente, tutti con la stessa proporzione di successi \(\hat{\pi} = 0{,}40\):
- \(n = 10\): 4 successi e 6 insuccessi
- \(n = 30\): 12 successi e 18 insuccessi
- \(n = 80\): 32 successi e 48 insuccessi
- \(n = 200\): 80 successi e 120 insuccessi
Per ciascuno dei quattro campioni, usa
map_dblper calcolare la log-verosimiglianza su una griglia fitta di valori \(\pi \in (0, 1)\) e rappresenta i quattro profili in un grafico diviso in quattro pannelli. In ogni pannello individua numericamente il valore di \(\pi\) che massimizza la log-verosimiglianza e aggiungilo come linea verticale tratteggiata.Commenta: come cambia la forma del profilo di log-verosimiglianza al crescere di \(n\)? Cosa implica questo per la precisione della stima?
Puoi costruire la griglia con pi_grid <- seq(0.01, 0.99, length.out = 500) e applicare la funzione con:
lv <- map_dbl(pi_grid, \(p) loglik_bernoulli(x, p))Per trovare il massimo numericamente usa pi_grid[which.max(lv)].
Ripeti l’analisi dell’Esercizio 4 per il modello di Poisson, scrivendo la funzione di verosimiglianza che hai ricavato a mano nell’Esercizio 2, punto (d).
Scrivi una funzione R chiamata
loglik_poissonche, dati un vettore di osservazionixe un valore del parametrolambda, calcoli la log-verosimiglianza del modello di Poisson.Considera i seguenti quattro campioni, generati da una \(\text{Poisson}(3)\):
set.seed(1); x10 <- rpois(10, lambda = 3) set.seed(1); x30 <- rpois(30, lambda = 3) set.seed(1); x80 <- rpois(80, lambda = 3) set.seed(1); x200 <- rpois(200, lambda = 3)Per ciascun campione, rappresenta il profilo di log-verosimiglianza su una griglia \(\lambda \in (0{,}5,\; 8)\) e individua numericamente il massimo. Disponi i quattro grafici in un pannello \(2 \times 2\), aggiungendo in ciascuno una linea verticale tratteggiata in corrispondenza dello stimatore MLE \(\hat{\lambda}\) e del vero valore \(\lambda = 3\) (usa due colori o tipi di linea diversi).
Costruisci infine un quinto grafico che sovrapponga i quattro profili di log-verosimiglianza normalizzati (traslati in modo che il massimo di ciascuno sia pari a 0) usando quattro colori diversi. Aggiungi una legenda e commenta cosa osservi al crescere di \(n\).
- Nella log-verosimiglianza del modello di Poisson usa
lfactorial(x)per calcolare \(\log(x_i!)\) in modo numericamente stabile. - Per normalizzare un vettore
lvin modo che il massimo sia 0, usalv - max(lv).
Consegna
Puoi inviare la tua soluzione scannerizzando i fogli relativi agli esercizi carta e penna, comprimendo il file ottenuto insieme al file
.Rin un file.zipe caricando il file in risposta al compito assegnato su Teams.Puoi consegnare al docente il compito svolto in aula durante la lezione del martedì, stampando il file
.Re consegnandolo insieme alle soluzioni agli esercizi numerici. In questo caso, in risposta al compito assegnato su Teams carica un file di testo o MS-Word scrivendo semplicementeconsegnato in aula.
Valutazione
Totale punti disponibili: 110 punti
| Componente | Punti |
|---|---|
| Es 1 - 5 | 100 |
| Workflow & formattazione | 101 |
Footnotes
La valutazione al “Workflow & formattazione” tiene conto:
- per gli esercizicarta e penna, dell’ordine con cui svolgi gli esercizi e delle argomentazioni date alle risposte aperte
- per gli esercizi suR, del principio di riproducibilità del codice: lo script caricato deve funzionare senza errori su qualunque PC dando gli stessi risultati↩︎