42 Il rapporto di verosimiglianze
- comprendere il concetto di rapporto di verosimiglianza;
- interpretare l’associato valore-p.
- Leggere il capitolo Estimation (Schervish & DeGroot, 2014).
- Leggere il capitolo Bayes’ rule (Johnson et al., 2022).
Introduzione
Il rapporto di verosimiglianze (o likelihood ratio, LR) è uno strumento per confrontare due modelli statistici alternativi, valutando quale dei due modelli spieghi meglio i dati osservati. La formula del likelihood ratio è:
\[ \lambda = \frac{L(\mu_2 \mid dati)}{L(\mu_1 \mid dati)} , \]
dove:
- \(L(\mu_2 \mid dati)\) è la verosimiglianza del modello alternativo (ad esempio con una media \(\mu_2\)).
- \(L(\mu_1 \mid dati)\) è la verosimiglianza del modello nullo (ad esempio con una media \(\mu_1\)).
Interpretazione:
- Se \(\lambda > 1\), i dati supportano maggiormente il modello alternativo rispetto a quello nullo.
- Se \(\lambda < 1\), i dati supportano maggiormente il modello nullo rispetto all’alternativo.
42.1 Illustrazione
Ecco un’immagine illustrativa del rapporto di verosimiglianza (likelihood ratio) confrontando due modelli gaussiani (ipotesi nulla e ipotesi alternativa).
Questa figura mostra:
- La curva blu rappresenta l’ipotesi nulla (H0), secondo cui il fenomeno studiato non ha un effetto (ad esempio, la media è \(\mu = 100\)).
- La curva arancione rappresenta invece l’ipotesi alternativa (Ha), cioè quella che ipotizza che ci sia un effetto (ad esempio, una media più alta: \(\mu = 110\)).
- La linea tratteggiata indica il valore osservato (MLE), cioè il valore effettivamente rilevato nei dati.
Il rapporto di verosimiglianza è dato dal rapporto tra la densità della curva alternativa (\(H_a\)) e quella della curva nulla (\(H_0\)) in corrispondenza del valore osservato (MLE). In questo esempio, tale rapporto è 1.6, indicando che i dati osservati sono circa 1.6 volte più probabili secondo l’ipotesi alternativa rispetto a quella nulla.

42.1.1 Interpretazione
- Se il LR è alto (ad esempio, maggiore di 3 o 5), ciò indica un forte supporto ai dati in favore del modello alternativo rispetto al modello nullo.
- Un LR vicino a 1 indica che non c’è una chiara evidenza in favore di uno dei due modelli.
Questa metodologia permette un confronto diretto e semplice fra diverse ipotesi sulla base dei dati raccolti, facilitando l’interpretazione statistica in contesti di ricerca psicologica.
42.2 Rapporti di Verosimiglianza Aggiustati e Criterio di Akaike (AIC)
Spesso il rapporto di verosimiglianza “grezzo” (\(\lambda\)) deve essere aggiustato per tenere conto della differenza nel numero di parametri tra i modelli confrontati. Infatti, quando confrontiamo due modelli, quello con più parametri tende quasi sempre a descrivere meglio i dati osservati, ma ciò può essere dovuto semplicemente alla sua maggiore complessità. Questo fenomeno è noto come sovradattamento (overfitting).
Per correggere questa tendenza, si usa un rapporto di verosimiglianza aggiustato (Adjusted Likelihood Ratio, indicato con \(\lambda_{\text{adj}}\). Questo tipo di aggiustamento penalizza i modelli più complessi, rendendo il confronto tra modelli più equo e affidabile.
42.2.1 Relazione con il Criterio di Akaike (AIC)
Una modalità comune per effettuare questa correzione è tramite il Criterio di Akaike (AIC). L’AIC è definito come:
\[ \text{AIC} = 2k - 2\log(\lambda), \tag{42.1}\]
in cui:
- \(k\) è il numero dei parametri del modello.
- \(\lambda\) è il rapporto di verosimiglianza grezzo.
Da questa equazione possiamo ricavare una formula per calcolare il rapporto di verosimiglianza aggiustato utilizzando l’AIC:
\[ \lambda_{\text{adj}} = \lambda \times e^{(k_1 - k_2)}, \]
dove:
- \(k_1\) è il numero di parametri del modello più semplice,
- \(k_2\) è il numero di parametri del modello più complesso,
- \(e^{(k_1 - k_2)}\) è il fattore correttivo che penalizza il modello più complesso.
In breve, più parametri ha un modello, maggiore sarà la penalizzazione applicata.
42.2.2 Rapporto tra Likelihood Ratio e AIC
Il rapporto di verosimiglianza aggiustato tramite l’AIC consente di confrontare in modo equo modelli con un numero differente di parametri. Senza questa correzione, rischieremmo di scegliere sempre modelli più complessi, indipendentemente dalla loro reale capacità esplicativa, con il rischio di sovrastimare la qualità della loro spiegazione.
Utilizzare il rapporto di verosimiglianza aggiustato, quindi, permette di scegliere il modello migliore considerando sia la capacità di adattarsi ai dati, sia la semplicità del modello stesso.
42.3 Illustrazione
Immaginiamo un esperimento psicologico sulla memoria visiva: vogliamo capire se mostrare delle immagini che suscitano forti emozioni facilita la memorizzazione rispetto a immagini neutre. Abbiamo due gruppi:
- Gruppo neutro: vede immagini neutre e ricorda correttamente 14 immagini su 30.
- Gruppo emozionale: vede immagini emotivamente intense e ricorda correttamente 22 immagini su 30.
Vogliamo confrontare due modelli:
- Modello nullo (Ho): la probabilità di ricordare è uguale nei due gruppi.
- Modello alternativo (Ha): i due gruppi hanno probabilità di ricordare diverse.
Dati osservati:
successi_neutro <- 14
successi_emozione <- 22
prove <- 30
Probabilità comune sotto l’ipotesi nulla (uguale nei due gruppi):
p_null <- (successi_neutro + successi_emozione) / (30 + 30)
Log-verosimiglianza sotto H0:
Log-verosimiglianza sotto H1 (due probabilità diverse):
Rapporto di verosimiglianza grezzo:
lr <- exp(ll_alt - ll_null)
Numero di parametri dei due modelli:
k_null <- 1 # unica probabilità
k_alt <- 2 # probabilità distinte
Calcolo dell’AIC per penalizzare il modello più complesso:
AIC_null <- 2 * k_null - 2 * ll_null
AIC_alt <- 2 * k_alt - 2 * ll_alt
Rapporto di verosimiglianza aggiustato (penalizzazione tramite AIC):
lr_adj <- exp((AIC_null - AIC_alt) / 2)
Interpretazione:
- un rapporto aggiustato (λ_adj) maggiore di 1 indica che i dati supportano maggiormente il modello alternativo (due probabilità diverse) rispetto al modello nullo (probabilità uguali):
- un valore di λ_adj prossimo a 1 indica invece che i dati non permettono di preferire chiaramente un modello rispetto all’altro.
42.3.1 Significato del valore-p
È possibile testare formalmente se la differenza tra i due modelli è sostanziale o può essere spiegata dal caso. Il test statistico utilizzato è il test del rapporto di verosimiglianza, che segue una distribuzione chi-quadrato con gradi di libertà pari alla differenza del numero di parametri tra i modelli confrontati:
# Test del rapporto di verosimiglianza
LR_test <- -2 * (ll_null - ll_alt)
df <- k_alt - k_null
p_value <- 1 - pchisq(LR_test, df)
cat("Statistiche test (-2 log LR):", round(LR_test, 2), "\n")
#> Statistiche test (-2 log LR): 4.51
cat("Gradi di libertà:", df, "\n")
#> Gradi di libertà: 1
cat("Valore p del test:", round(p_value, 4), "\n")
#> Valore p del test: 0.0337
- Un valore-p piccolo (p < .05) indica che è improbabile che la differenza osservata sia dovuta solo al caso: possiamo preferire il modello alternativo.
- Un valore-p alto (vicino a 1) indica invece che non abbiamo abbastanza evidenza per preferire il modello alternativo rispetto al modello nullo.
42.4 Riflessioni Conclusive
In conclusione, usando il rapporto di verosimiglianza aggiustato e l’AIC possiamo confrontare modelli statistici in maniera equilibrata, tenendo conto sia dell’adattamento ai dati che della semplicità del modello.
Informazioni sull’Ambiente di Sviluppo
sessionInfo()
#> R version 4.4.2 (2024-10-31)
#> Platform: aarch64-apple-darwin20
#> Running under: macOS Sequoia 15.3.1
#>
#> Matrix products: default
#> BLAS: /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/lib/libRblas.0.dylib
#> LAPACK: /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.0
#>
#> locale:
#> [1] C/UTF-8/C/C/C/C
#>
#> time zone: Europe/Rome
#> tzcode source: internal
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] thematic_0.1.6 MetBrewer_0.2.0 ggokabeito_0.1.0 see_0.10.0
#> [5] gridExtra_2.3 patchwork_1.3.0 bayesplot_1.11.1 psych_2.4.12
#> [9] scales_1.3.0 markdown_1.13 knitr_1.49 lubridate_1.9.4
#> [13] forcats_1.0.0 stringr_1.5.1 dplyr_1.1.4 purrr_1.0.4
#> [17] readr_2.1.5 tidyr_1.3.1 tibble_3.2.1 ggplot2_3.5.1
#> [21] tidyverse_2.0.0 rio_1.2.3 here_1.0.1
#>
#> loaded via a namespace (and not attached):
#> [1] generics_0.1.3 stringi_1.8.4 lattice_0.22-6 hms_1.1.3
#> [5] digest_0.6.37 magrittr_2.0.3 evaluate_1.0.3 grid_4.4.2
#> [9] timechange_0.3.0 fastmap_1.2.0 rprojroot_2.0.4 jsonlite_1.9.1
#> [13] mnormt_2.1.1 cli_3.6.4 rlang_1.1.5 munsell_0.5.1
#> [17] withr_3.0.2 tools_4.4.2 parallel_4.4.2 tzdb_0.4.0
#> [21] colorspace_2.1-1 pacman_0.5.1 vctrs_0.6.5 R6_2.6.1
#> [25] lifecycle_1.0.4 htmlwidgets_1.6.4 pkgconfig_2.0.3 pillar_1.10.1
#> [29] gtable_0.3.6 glue_1.8.0 xfun_0.51 tidyselect_1.2.1
#> [33] rstudioapi_0.17.1 farver_2.1.2 htmltools_0.5.8.1 nlme_3.1-167
#> [37] rmarkdown_2.29 compiler_4.4.2