Gli ultimi anni hanno portato sostanziali progressi nei metodi analitici per la modellizzazione predittiva, anche in mezzo agli impatti mondiali dei vaccini Covid-19.Gli alberi con gradiente potenziato e le reti neurali profonde sono emersi come metodi all'avanguardia per la previsione delle serie temporali. Puoi rivedere il recente numero speciale del Giornale internazionale di previsione , compreso a carta da me e David Lander sulla nostra soluzione vincente per il concorso M5 Uncertainty, in cui utilizziamo esclusivamente alberi con gradiente potenziato. Questa nota illustra un modo semplice per utilizzare il file Componente aggiuntivo XGBoost in JMP Pro per le previsioni di serie temporali di base su un set di dati attuale del Centro statunitense per il controllo delle malattie (CDC) al centro di una controversia sulla sicurezza del vaccino Covid-19.
In una serie di tre lunghi post sul blog, Lo scettico etico (TES) lancia campanelli d’allarme riguardo all’aumento sostanziale dell’eccesso di cancro e di altri decessi dopo il lancio dei vaccini Covid-19 all’inizio del 2021. Utilizza i dati disponibili al pubblico del CDC e uno dei suoi grafici principali è il seguente:

In confutazione, Jeffrey Morris (JM) rianalizza i dati e conclude che il segnale non sembra convincente fino al 12 marzo 2022. Seguono due dei suoi grafici:

JM scrive:
La chiave per valutare le sue affermazioni è ovviamente vedere i dati del 2022 man mano che diventeranno più maturi e disponiamo di dati più completi durante l’estate. Se l’aumento delle morti per cancro dal nadir nella primavera del 2021 continuasse per tutto il 2022, ciò fornirebbe maggiore supporto alla sua ipotesi, ma se la diminuzione che sembra essere iniziata all’inizio del 2022 continua, ciò indebolirebbe l’affermazione di un eccesso intrinsecamente più elevato. decessi per cancro provocati da qualche fattore introdotto all’inizio del 2021.
Ora disponiamo dei dati dell’estate 2022 da analizzare in JMP Pro per vedere a che punto siamo. I dati sono disponibili in due file .csv che coprono 2014-2019 E 2020-2022 . Questi ultimi sono considerati “provvisori” poiché nuovi dati vengono continuamente aggiunti e le ultime settimane tendono ad avere numeri anormalmente bassi poiché non sono stati ancora completamente tabulati. Le analisi successive si basano sui dati scaricati il 22 novembre 2022.
Per indagare sulle questioni legate all’eccesso di mortalità, abbiamo bisogno di una stima decente della mortalità di base nel tempo che possa essere sottratta dai dati attuali per stimare le discrepanze. TES descrive a flusso di lavoro abbastanza complesso per raggiungere questo obiettivo, inclusa una funzione di livellamento di 6 settimane e un “effetto pull forward” per accogliere individui la cui morte è stata attribuita in precedenza al Covid-19 anziché al cancro. Sfortunatamente, TES non sembra offrire alcun codice per riprodurre esattamente i suoi risultati, sebbene i passaggi del suo approccio appaiano sensati. JM stima la linea di base come tendenza lineare di base più medie stagionali settimanali (rispettivamente le linee gialle e blu nel grafico sopra a sinistra). Fornisce egregiamente Codice R , che sono riuscito a eseguire e riprodurre con successo i suoi risultati. Le linee di base sia di TES che di JM sono effettivamente previsioni per il 2020-2022 basate sui dati 2014-2019, una frazione di tempo ragionevole dato che la pandemia è iniziata intorno a gennaio 2020.
Considerati i forti recenti successi degli alberi con gradient boosting per la previsione delle serie temporali, un approccio interessante per la rianalisi consiste nell’utilizzare XGBoost per prevedere la mortalità 2020-2022 con i dati 2014-2019 e utilizzarli come base per valutare le morti in eccesso durante il 2020-2022. La chiave per fare previsioni con XGBoost è progettare funzionalità appropriate basate sul tempo che consentano la generalizzabilità nel futuro. A seconda della struttura dei dati e del problema, sono possibili molte funzionalità; vedi il nostro Documento dell'IJF per alcuni dettagli al riguardo. Per facilitare i confronti con TES e JM, utilizzo un approccio semplice con solo due caratteristiche numeriche: settimana dell'anno e valori di ritardo di 156 settimane. Sono certamente possibili funzionalità più sofisticate, anche se queste due sembrano fare un lavoro ragionevolmente buono e forniscono una bella illustrazione iniziale della potenza di XGBoost per problemi come questo. I risultati sono mostrati di seguito nel Costruttore di grafici:

Il pannello superiore mostra i dati grezzi in blu e le previsioni XGBoost in rosso. Le semplici previsioni XGBoost superano il test “eyeball”, anche se molto probabilmente potrebbero essere migliorate con una modellazione più attenta. Il pannello centrale presenta i residui dell’adattamento e i risultati dal 2020 in poi possono essere considerati stime delle morti per cancro in eccesso per ogni settimana. Vediamo che i dati osservati superano le previsioni per la maggior parte delle settimane successive alla metà del 2021. Il pannello inferiore presenta le somme cumulative dei residui e il numero finale di 15.000 è la stima approssimativa del totale delle morti in eccesso per il 1° ottobre 2022. Una conclusione iniziale di questa analisi fornisce supporto all’affermazione del TES di un eccessivo eccesso di morti per cancro dalla metà del 2021 in poi, suggerendo che i vaccini potrebbero svolgere un ruolo causale.
La stima delle morti in eccesso è un argomento complesso e l’analisi precedente è progettata per essere un punto di partenza semplice, più illustrativo che definitivo. IL Centro per la prevenzione e il controllo delle malattie E OHID del Regno Unito hanno pagine molto più approfondite e ci sono numerose analisi e controversie online. Ad esempio, vedi i disaccordi tra JM E Matteo Crawford su alcuni dati assicurativi sorprendenti che mostrano un paradosso di Simpson regionale, a carta ritirata di Kostoff et al., e articoli provocatori di Norman Fenton e colleghi E Steve Kirsch sui dati provenienti dal Regno Unito. Sarà interessante vedere quali dati e dibattiti porteranno con sé i mesi invernali e, per fortuna, disponiamo di uno strumento affidabile come JMP Pro per analizzare noi stessi i dati in modo efficiente e diretto.
Di seguito sono riportati i passaggi per riprodurre l'analisi di previsione XGBoost in JMP Pro, che è possibile utilizzare per eseguire ulteriori esplorazioni ora o in un secondo momento quando saranno disponibili più dati:
- Scarica, apri e concatena le due tabelle CDC ( 2014-2019 E 2020-2022 ). Sottoimpostare i dati in Giurisdizione di occorrenza == “Stati Uniti”.Seleziona le ultime cinque righe, quindi fai clic su Righe > Nascondi ed escludi. Ho escluso le ultime cinque righe e ho scelto il 1° ottobre 2022 come data limite in base alla visualizzazione iniziale dei dati grezzi nel Costruttore di grafici. Traccia sempre i tuoi dati!
- Seleziona le righe per gli anni 2020-2022 e quindi Righe > Selezione riga > Selezione nome nella colonna per creare una nuova variabile denominata Val20 che ha valore 0 per gli anni 2014-2019 (non selezionato) e 1 per gli anni 2020-2022 (selezionato). Cambia il Tipo di analisi di questa variabile in Continuo facendo clic con il pulsante destro del mouse sull'istogramma rosso accanto ad essa nel pannello all'estrema sinistra di Colonne. Val20 viene utilizzata come colonna di convalida in XGBoost per resistere al periodo 2020-2022 durante l'adattamento del modello.
- La variabile numerica MMWR Week è già presente nella tabella ed è la nostra prima caratteristica. Per progettare la seconda caratteristica, selezionare la colonna Tumori maligni (C00-C97), che rappresenta la risposta primaria del cancro.Nella tabella, fai clic con il pulsante destro del mouse su questa variabile > Nuova colonna formula > Riga > Multiplo ritardo. Selezionare 156 sia come valore iniziale che finale, quindi fare clic su OK. Ciò crea una nuova colonna che è una variabile di ritardo di 3 anni. Utilizziamo un intervallo di 3 anni per coprire completamente l’orizzonte previsionale 2020-2022 con valori osservati dal 2014-2019 senza alcuna perdita.
- Installa il Componente aggiuntivo XGBoost .Fare clic su Componenti aggiuntivi > XGBoost > XGBoost. Specificare Tumori maligni (C00-C97) come Risposta Y, Settimana MMWR e la nuova funzione di ritardo di 3 anni come X e Val20 come Convalida. Fare clic su OK, selezionare Sintonizzazione automatica, quindi Vai. I risultati dovrebbero essere simili ai seguenti.

- Nella finestra di output di XGBoost, fai clic sul triangolo rosso accanto al Modello 1 e fai clic su Salva previsioni. Ciò salva le previsioni per tutte le righe nella tabella JMP. Quelle per gli anni 2020-2022 sono previsioni poiché abbiamo fornito tali dati durante la formazione. Si noti che il grafico in alto a destra mostra anche che i valori osservati superano le previsioni per il 2020-2022, come evidenziato dalla maggior parte dei punti che si trovano al di sopra della linea di riferimento di 45 gradi.
- Nella tabella, selezionare sia Tumori maligni (C00-C97) che la nuova colonna di previsione. Fare clic con il pulsante destro del mouse > Nuova colonna formula > Combina > Differenza. Questo crea una nuova colonna di residui. Seleziona e fai clic con il pulsante destro del mouse su questa nuova colonna > Nuova colonna formula > Riga > Somma cumulativa.
- Nel Costruttore di grafici, trascina la data di fine settimana su X e le variabili create in precedenza su Y per creare la visualizzazione mostrata in precedenza.
È allegata una tabella JMP contenente tutti i dati (passaggi 1-3) e gli script XGBoost e Graph Builder incorporati (passi 4-7). Non esitate a contattarmi per quanto riguarda gli argomenti qui.