Research & Evidence

Cerca un metodo

Cerca tra titoli, domande, territori e identificativi MSC.

    ← Tutti i metodi
    SCHEDA METODOMSC-P-040Fondamenti dell’evidenzaDossier scientifico verificato

    Che fare quando si testano decine di varianti o di segmenti alla volta?

    Lanciare 40 test alla soglia del 5 % senza correzione produce quasi certamente false vittorie: l'81 % delle serie ne contiene almeno una. Bonferroni riporta quel rischio al 3,9 % ma ritrova solo un terzo degli effetti veri; Benjamini-Hochberg ne ritrova la metà limitando la proporzione media di false scoperte. Misurato su dati sintetici, con i valori esatti accanto a quelli simulati.

    Redazione scientifica: Marketing Science Center

    Risposta diretta

    Scegliere l'errore da controllare — sbagliarsi almeno una volta, o la proporzione di false vittorie tra le varianti scelte —, correggere una famiglia di test dichiarata prima del lancio, e quantificare gli effetti veri che ogni correzione fa perdere.

    Lanciare 40 test alla soglia del 5 % senza correzione produce quasi certamente false vittorie: l'81 % delle serie ne contiene almeno una. Bonferroni riporta quel rischio al 3,9 % ma ritrova solo un terzo degli effetti veri; Benjamini-Hochberg ne ritrova la metà limitando la proporzione media di false scoperte. Misurato su dati sintetici, con i valori esatti accanto a quelli simulati.

    Storey & Tibshirani, 2003Storey, 2002

    01

    In breve

    Su dati sintetici — costruiti perché si sappia chi ha vinto davvero —, lanciare 40 test alla soglia del 5 % senza correzione produce quasi certamente false vittorie: l'81 % delle serie di 40 test contiene almeno una falsa scoperta, e in media il 18 % delle «vittorie» di una serie è falso. La correzione di Bonferroni riporta al 3,9 % il rischio di sbagliarsi almeno una volta, ma ritrova solo un terzo degli effetti veri. La procedura di Benjamini-Hochberg controlla altro: la proporzione media di false scoperte tra le scoperte. La mantiene al 4,0 % — il valore esatto che la teoria prevede qui, non meno — ritrovando al tempo stesso il 52 % degli effetti veri. La scelta giusta dipende da quanto costa una falsa vittoria rispetto a una vera vittoria mancata.

    02

    La situazione

    Un team e-commerce testa contemporaneamente 40 varianti di pagina prodotto, ciascuna contro la sua versione attuale. Ogni test riceve 8.200 visitatori sulla variante e 8.200 sulla pagina attuale — si chiama «braccio» ciascuno di questi due gruppi. Il tasso di conversione di riferimento è del 5 %. Il team vuole mettere in produzione «tutto ciò che vince». Nei nostri dati, otto varianti migliorano realmente la conversione di un punto (dal 5 % al 6 %); le altre 32 non hanno alcun effetto. Questi dati sono sintetici: è ciò che permette di sapere, test per test, chi ha vinto davvero.

    03

    La domanda scientifica

    Tra 40 ipotesi nulle «la variante non cambia la conversione», quali rifiutare perché gli errori restino sotto controllo? E quale errore controllare: la probabilità di almeno una falsa scoperta (FWER, tasso d'errore per famiglia) o la proporzione attesa di false scoperte tra le scoperte (FDR, tasso di false scoperte)?

    04

    Perché il metodo semplice fallisce

    La soglia del 5 % garantisce che un test senza effetto risulti «significativo» nel 5 % dei casi. Con 32 test senza effetto, si attendono circa 1,6 false vittorie per serie (32 × 0,05), e la probabilità di averne almeno una diventa molto elevata: 80,6 %, ossia 1 − 0,95³². Ogni test preso isolatamente è corretto; è la famiglia di test che deraglia.

    05

    L'intuizione

    • Bonferroni esige da ogni test una soglia 40 volte più severa (5 % / 40). Limita al 5 % la probabilità che almeno un falso allarme compaia nella serie, al prezzo di molti effetti veri mancati. Storey e Tibshirani giudicano questo controllo «eccessivamente conservativo» (nell'originale «much too conservative») nel loro campo, la genomica, dove si testano migliaia di ipotesi e dove si attende che una parte apprezzabile di esse siano effetti veri [C01, C02, C12]. Qui è la nostra simulazione a mostrarlo, non la citazione.
    • Holm applica la stessa idea passo per passo, dalla più piccola alla più grande: la stessa garanzia, qualche effetto vero in più ritrovato.
    • Benjamini-Hochberg accetta qualche falsa scoperta, ma in proporzione limitata. Il FDR è la proporzione attesa di false scoperte tra le ipotesi rifiutate [C06, C07]. È una garanzia meno stringente, ma più potente [C08, C09].

    06

    I dati necessari

    Per ogni test: la numerosità e il numero di conversioni di ciascun braccio, e la regola di decisione fissata prima di guardare i risultati (soglia α, livello q). Nessun dato personale: bastano i totali per test. Il set di dati della pagina contiene 40 righe (test_id, numerosità, conversioni) e, poiché è sintetico, una colonna che indica l'effetto vero.

    07

    Il modello formale

    • m = 40 test, m₀ = 32 ipotesi nulle vere (ignoto in pratica).
    • α: la soglia di significatività scelta in anticipo, cioè il rischio di falso allarme accettato per un test (qui 5 %). q: il livello di FDR scelto in anticipo, ossia la proporzione di false vittorie accettata tra le varianti scelte (anche qui 5 %). k: il rango di un test una volta ordinati i valori p dal più piccolo al più grande.
    • pᵢ: il valore p del test i, cioè la probabilità di osservare uno scarto almeno pari a quello misurato se la variante non cambiasse nulla. Viene da un test z su due tassi di conversione, con una varianza comune ai due bracci, nei due sensi: aumento come calo.
    • V: numero di false scoperte; R: numero totale di scoperte. P(·) si legge «probabilità che», E[·] «valore medio su un gran numero di serie».
    • FWER = P(V ≥ 1). FDR = E[V / max(R, 1)], la proporzione attesa di false scoperte.
    • Bonferroni rifiuta i se pᵢ ≤ α / m.
    • Holm ordina i valori p p₍₁₎ ≤ … ≤ p₍ₘ₎ e rifiuta finché p₍ₖ₎ ≤ α / (m − k + 1).
    • Benjamini-Hochberg cerca il più grande k tale che p₍ₖ₎ ≤ k · q / m e rifiuta i k valori p più piccoli [C10].

    In parole semplici: Bonferroni e Holm ragionano sull'intera serie — la loro soglia è abbastanza severa perché la probabilità di sbagliarsi anche una sola volta sui 40 test resti sotto il 5 %. Benjamini-Hochberg ragiona sul raccolto: la sua soglia si allenta a mano a mano che valori p piccoli si accumulano, perché molti valori p piccoli segnalano effetti veri anziché rumore.

    08

    Il calcolo dichiarato

    1. Dimensione fissata a priori: con 8.200 visitatori per braccio, un test ha l'80 % di probabilità di rilevare un guadagno vero di 1 punto su una base del 5 %, alla soglia del 5 % nei due sensi — è ciò che si chiama potenza. Questa dimensione è fissata prima del lancio, mai dopo.
    2. Generazione delle conversioni visitatore per visitatore con una ricorrenza congruenziale dichiarata (seme 20260916; x ← 1103515245 · x + 12345 mod 2³¹), identica in Python e in R.
    3. Test z a varianza comune per ogni variante, poi le quattro regole: nessuna correzione, Bonferroni, Holm, Benjamini-Hochberg (α = q = 0,05).
    4. Valori esatti calcolati dove il piano lo permette: probabilità di almeno un falso allarme, potenza per test, e FDR di Benjamini-Hochberg sotto indipendenza. Sono stampati dai programmi accanto ai valori simulati.
    5. Simulazione di Monte Carlo: 10.000 serie di 40 test, statistiche estratte direttamente dalla legge normale — le 32 varianti senza effetto centrate su zero, le 8 vere vincenti spostate di 2,81 deviazioni standard, lo spostamento che comporta un guadagno di 1 punto con 8.200 visitatori per braccio — la deviazione standard usata è quella della differenza sotto l'alternativa, non quella, comune, che il test mette al denominatore; lo scarto tra le due resta sotto l'errore di simulazione. La simulazione serve a verificare i valori esatti e a stimare ciò che non si calcola a mano, mai da fonte di verità.

    Attenzione: il set di riferimento è estratto visitatore per visitatore, mentre le 10.000 serie simulate estraggono direttamente le statistiche di test. La simulazione misura dunque il comportamento delle regole di decisione, non la qualità dell'approssimazione normale del test z.

    09

    L'esempio numerico completo

    Dati sintetici, seme 20260916 — non sono risultati di mercato.

    Un test seguito da un capo all'altro. Il test più netto della serie è la variante 5: 385 conversioni su 8.200 visitatori per la pagina attuale (4,70 %), 497 su 8.200 per la variante (6,06 %). Tasso comune ai due bracci: (385 + 497) / 16.400 = 5,38 %. La statistica z vale (0,0606 − 0,0470) diviso per lo scarto quadratico medio di questa differenza, ossia 3,88, che dà un valore p bilaterale di 0,000106 — il più piccolo dei 40. Decisione, regola per regola: senza correzione, 0,000106 ≤ 0,05, scelta; Bonferroni, 0,000106 ≤ 0,05/40 = 0,00125, scelta; Holm, primo rango, stessa soglia, scelta; Benjamini-Hochberg, rango 1, soglia 1 × 0,05/40 = 0,00125, scelta.

    Il test che separa le regole. Il sesto valore p più piccolo vale 0,006. Supera la soglia di Bonferroni (0,00125) ma resta sotto la soglia di Benjamini-Hochberg al suo rango (6 × 0,05/40 = 0,0075): è la scoperta che solo quest'ultima conserva.

    Diagnostica della serie. Otto valori p cadono sotto 0,05, mentre il solo caso ne produrrebbe 1,6: l'accumulo vicino a zero segnala effetti veri, ed è ciò che rende una correzione necessaria anziché facoltativa.

    RegolaScoperteDi cui falseEffetti veri trovati (su 8)
    Nessuna correzione817
    Bonferroni202
    Holm202
    Benjamini-Hochberg615

    Su 10.000 serie simulate, confrontate con i valori esatti quando esistono (errore di simulazione tra parentesi):

    RegolaFDRFWERPotenza
    Nessuna correzione0,184 (0,001)0,804 (0,004) — esatto 0,8060,801 (0,001) — esatto 0,802
    Bonferroni0,012 (0,001)0,036 (0,002) — esatto 0,0390,336 (0,002) — esatto 0,338
    Holm0,013 (0,001)0,039 (0,002)0,343 (0,002)
    Benjamini-Hochberg0,039 (0,001) — esatto 0,0400,186 (0,004)0,519 (0,002)

    Lettura: nel set di riferimento, Benjamini-Hochberg fa una falsa scoperta su sei. Non è un'anomalia: la procedura garantisce una proporzione media, non zero errori a ogni serie. E questa media non è «sotto il 5 %» per comodità: sotto indipendenza vale esattamente m₀ q / m = 32 × 0,05 / 40 = 0,040. Il valore simulato, 0,039, è a un errore di simulazione dal valore esatto: è la simulazione che viene verificata, non la teoria.

    10

    Le ipotesi di validità

    • Test indipendenti: nella nostra simulazione, ogni variante ha il proprio gruppo di controllo. È la condizione sotto cui la fonte stabilisce i suoi risultati di FDR [C11], e sotto cui il valore esatto di 0,040 è garantito. Le vostre varianti condividono lo stesso controllo, o gli stessi visitatori? Se sì, i test sono dipendenti, e le tre regole non sono sullo stesso piano: i limiti di Bonferroni e di Holm restano validi qualunque sia la dipendenza, perché poggiano solo sull'addizione delle probabilità, mentre la garanzia di Benjamini-Hochberg richiede una condizione aggiuntiva sulla struttura di dipendenza.
    • Regola fissata prima di vedere i dati: il livello q e l'elenco dei test sono scritti prima del lancio. L'avete fatto? È una disciplina che ci imponiamo; Storey rileva del resto che questo obbligo è vincolante [C05], cosa che ha motivato i suoi valori q.
    • Famiglia completa: i 40 test sono corretti tutti insieme. Non avete rimosso test a posteriori? Ipotesi non verificabile a posteriori: solo la pre-dichiarazione la garantisce.
    • Ipotesi prudente: la procedura parte dal principio che tutte le varianti potrebbero essere senza effetto, cosa che la rende più severa del necessario [C04]. Avete un'idea, fondata sui vostri test passati, della quota di varianti che funzionano realmente? Se questa quota è elevata, i valori q recuperano potenza. Qui, il FDR esatto (0,040) è la quota di varianti senza effetto (32/40) moltiplicata per q.

    11

    Diagnostica e incertezza

    • Il valore p aggiustato (Bonferroni, Holm) è il valore p corretto per il numero di test: confrontarlo con il 5 % equivale a controllare la probabilità di fare almeno un falso allarme in tutta la famiglia. Il valore q risponde a un'altra domanda: dà la proporzione attesa di false scoperte se si dichiara vincente questo test, insieme a tutti quelli il cui valore p è più piccolo [C03]. Due garanzie diverse, da non leggere nello stesso modo.
    • L'errore di simulazione di Monte Carlo è pubblicato per ogni cifra (la colonna tra parentesi), e i valori esatti sono dati quando esistono.
    • Diagnostica da fare sui propri dati: la distribuzione dei valori p. Un accumulo vicino a 0 segnala effetti veri; una distribuzione piatta, soprattutto rumore. Sul nostro set di riferimento, 8 valori p cadono sotto 0,05 quando 1,6 erano attesi per caso.

    12

    Interpretazione

    In questo scenario preciso — 40 test, 8 vere vincenti, 80 % di potenza per test — le regole si distinguono così. Senza correzione, si ritrova l'80 % delle vere vincenti, ma in media quasi una vittoria annunciata su cinque è falsa. Bonferroni riporta al 3,9 % la probabilità di sbagliarsi almeno una volta nella serie, e ritrova solo un terzo delle vere vincenti. Holm offre esattamente la stessa garanzia ritrovandone qualcuna in più (0,343 contro 0,336): dal momento che si vuole controllare il rischio di sbagliarsi almeno una volta, non c'è alcuna ragione di preferire Bonferroni. Benjamini-Hochberg ritrova la metà delle vere vincenti mantenendo al 4,0 % la proporzione media di false vittorie tra le varianti scelte. Cambiate il numero di test o la quota di vere vincenti, e questi valori cambiano: è il compromesso che si traspone, non le cifre.

    13

    Conclusioni permesse e vietate

    • Permesso: «Con Benjamini-Hochberg a q = 5 %, la proporzione di false vittorie tra le varianti scelte non supera il 5 % in media. Su una serie data, può essere più elevata, o nulla.»
    • Vietato: «Ogni variante scelta è vincente al 95 %.» La garanzia riguarda l'insieme delle scoperte, non ciascuna.
    • Vietato: trasporre queste percentuali a un'altra campagna senza rifare il calcolo; dipendono dal numero di test e dalla quota di vere vincenti.
    • Vietato: presentare le cifre di questa pagina come risultati di mercato. Vengono da dati sintetici.

    14

    Decisione di marketing possibile

    • Se una falsa vittoria costa caro (rifacimento pesante, impegno contrattuale): controllare il rischio di sbagliarsi almeno una volta, con la procedura sequenziale di Holm.
    • Se si esplora e ogni scoperta sarà riconvalidata: controllare la proporzione di false scoperte con Benjamini-Hochberg, poi confermare le varianti scelte con un test di verifica.
    • La procedura ordina i candidati; la decisione di mettere in produzione resta umana e deve tenere conto del costo e dell'effetto stimato, non solo del «significativo».

    15

    Quando usarlo, quando non usarlo

    • Usare: più varianti, segmenti, metriche o paesi testati contemporaneamente e interpretati insieme.
    • Non usare da solo: un test unico pre-dichiarato, che non richiede alcuna correzione; test che si consultano in corso d'opera, prima della data di fine prevista, che richiedono un metodo concepito per le analisi ripetute; metriche secondarie che non servono a decidere.
    • Alternative: i valori q di Storey e Tibshirani, che stimano la quota di varianti senza effetto e guadagnano potenza [C03, C04]; test gerarchici o preselezionati quando la famiglia è strutturata.

    16

    Implementazioni riproducibili

    • Python 3.14.5, sola libreria standard: python msc-p040-reference.py
    • R 4.6.1, sola base: Rscript msc-p040-reference.R
    • I due programmi stampano esattamente le stesse righe. Impronta sha256 dell'output, dopo normalizzazione dei fine riga: f7fbde05e16c665db1da621cb9638d90c970a68897e805ba428117536607a9c5. Seme dichiarato 20260916; ricorrenza congruenziale 1103515245 · x + 12345 mod 2³¹. Nessuna libreria di terze parti: il software non valida il metodo, lo riproduce — e i valori esatti stampati accanto ai valori simulati permettono di verificarlo.

    17

    Deliverable

    Una tabella per test: valore p, valore p aggiustato secondo la regola pre-dichiarata, decisione, e l'elenco delle varianti da confermare con un test di verifica.

    18

    Riferimenti e livello di prova

    Connessioni metodologiche

    Territorio principaleMetodi statistici decisionali: scegliere, quantificare, validareRichiedeCome progettare un A/B test che stimi davvero un effetto?RichiedeDi quante osservazioni ha bisogno un esperimento?LimitaSignificatività o dimensione dell’effetto: quale risultato interpretare?Confronta conQuale test statistico scegliere?Confronta conSi può interrompere un test A/B appena diventa significativo?

    Da leggere dopo

    MSC-H-006Metodi statistici decisionali: scegliere, quantificare, validare→MSC-P-011Come progettare un A/B test che stimi davvero un effetto?→MSC-P-012Di quante osservazioni ha bisogno un esperimento?→MSC-P-004Significatività o dimensione dell’effetto: quale risultato interpretare?→MSC-P-039Quale test statistico scegliere?→