Come rilevare un cambiamento significativo nei dati delle serie storiche a causa di un cambiamento di "politica"?


15

Spero che questo sia il posto giusto per pubblicare questo, ho pensato di pubblicarlo su scettici, ma immagino che direbbero che lo studio era statisticamente sbagliato. Sono curioso del rovescio della domanda che è come farlo nel modo giusto.

Sul sito web Quantiified Self , l'autore ha pubblicato i risultati di un esperimento di alcune metriche della produzione misurate su se stesso nel tempo e confrontate prima e dopo aver smesso bruscamente di bere caffè. I risultati sono stati valutati soggettivamente e l'autore ha ritenuto di avere prove che ci fosse un cambiamento nelle serie temporali ed era correlato al cambiamento nella politica (bere caffè)

Ciò che mi ricorda sono i modelli dell'economia. Abbiamo solo un'economia (di cui ci preoccupiamo al momento), quindi gli economisti spesso fanno essenzialmente n = 1 esperimenti. I dati sono quasi sicuramente autocorrelati nel tempo a causa di ciò. Gli economisti in genere stanno osservando, afferma la Fed, mentre avvia una politica e cerca di decidere se le serie temporali sono cambiate, potenzialmente a causa della politica.

Qual è il test appropriato per determinare se le serie temporali sono aumentate o diminuite in base ai dati? Di quanti dati avrei bisogno? Quali strumenti esistono? La mia ricerca su google iniziale suggerisce Markov Switching Time Series Models, ma non le mie capacità di googling non mi stanno aiutando a fare qualsiasi cosa con solo il nome della tecnica.

Risposte:


4

Il documento Box-Tiao citato da Jason era basato su un noto cambiamento di legge. La domanda qui è come rilevare il punto nel tempo. La risposta consiste nell'utilizzare la procedura Tsay per rilevare gli interventi, sia che si tratti di impulsi, spostamenti di livello, impulsi stagionali e / o andamenti dell'ora locale.


1

Guardando alcune vecchie note sulle rotture strutturali, ho queste due citazioni:

Enders, "Applied Econometric Time Series", 2a edizione, cap. 5.

Enders discute di interventi, funzioni di impulso, funzioni di cambiamento graduale, funzioni di trasferimento, ecc. Questo articolo può anche essere utile:

Box, GEP e GC Tiao. 1975. "Analisi di intervento con applicazioni a problemi economici e ambientali". Rivista dell'American Statistical Association 70: 70-79.


1

Non potresti semplicemente usare un modello di punto di cambiamento e quindi provare a identificare il punto di cambiamento usando un algoritmo MCMC come Gibbs Sampling?

Questo dovrebbe essere relativamente semplice da implementare, a condizione che tu abbia alcune distribuzioni precedenti per i tuoi dati o la completa distribuzione condizionale (per Gibbs).

Puoi trovare una rapida panoramica qui


1

Se stavi considerando tutti i punti temporali come punti di cambiamento candidati (ovvero punti di interruzione, anche cambiamenti strutturali), il pacchetto strucchange è un'ottima opzione.

Sembra che nel tuo particolare scenario, vi sia un solo punto temporale candidato. In questo caso, vengono in mente diverse opzioni rapide:

  1. T-test: un test t sulle ore di concentrazione al giorno nei periodi "prima di smettere" vs. "dopo aver smesso". Se ti preoccupi della correlazione quotidiana, potresti rinunciare ad alcune osservazioni in modo da avere intervalli abbastanza lunghi da credere che i giorni non siano più correlati. Con questo approccio, potrai scambiare energia con semplicità.
  2. AR: montare un modello AR con un manichino: "dopo aver smesso". Se il predittore è significativo, allora hai una modifica. Usando un AR, acquisirai la (possibile) dipendenza tra giorni.

: John L'idea è che non conosci il "punto temporale di un candidato" ma vuoi trovarlo analiticamente, forse per centinaia di serie temporali. Il "test oculistico" per determinare questo candidato è spesso carente poiché occorrono impulsi una tantum e occlude la struttura ARIMA sottostante. Metodi di rilevamento degli interventi alla R. Rsay o George Tiao alla ricerca di uno spostamento LEVEL / STEP sconosciuto in realtà costruisce la variabile che descrivi (quella fittizia con zero seguita da 1). Bisogna prestare attenzione a considerare di identificare PRIMA gli Interventi e quindi la componente ARIMA e viceversa.
IrishStat,

@IrishStat: nel blog di riferimento, il punto di cambiamento è noto. Per i casi che non lo sono, è stato fatto riferimento al pacchetto strucchange R.
JohnRos,

: John From documenation struchange "Infine, i punti di interruzione nei modelli di regressione con cambiamenti strutturali possono essere stimati" utilizzando il metodo CHOW con il quale sono intimamente familiare. Testare o trovare punti di interruzione nei coefficienti di regressione richiede una specifica del modello di regressione e se lo sono corretto, questo non ha nulla a che fare con la risposta alla domanda "test per determinare se le serie temporali sono aumentate o diminuite in base ai dati?". Penso che la tua raccomandazione sia insufficiente per rispondere alla domanda del PO. La tua raccomandazione risponde a una domanda credo che sia stato chiesto.
IrishStat,

: john Questo è vero ma banale poiché i modelli con una sola intercettazione si trovano solo nei libri di testo o nei sogni.
IrishStat,

@IrishStat: è vero che la struttura del cambiamento strutturale è più generale. Tuttavia, è possibile rilevare un aumento o una diminuzione dei "dati" adattando un modello di sola intercettazione.
JohnRos,

1

Qualche anno fa ho ascoltato un discorso di uno studente laureato, Stacey Hancock , durante una riunione locale del capitolo ASA ed era sulla "stima delle rotture strutturali" delle serie storiche. Il discorso è stato davvero interessante e in seguito ho parlato con lei e ha lavorato con Richard Davis (di Brockwell-Davis ), poi alla Colorado State University, ora alla Columbia. Il discorso è stato un'estensione di Davis et al. lavorare in un documento JASA del 2006 chiamato Strutural Break Stimation for Nonstationary Time Series Models , che è disponibile gratuitamente qui .

Davis ha un'implementazione software del metodo che chiama Auto-PARM, che ha trasformato in un eseguibile di Windows. Se lo contatti potresti essere in grado di ottenere una copia. Ne ho una copia, ed ecco un esempio di output su una serie temporale di 1.200 osservazioni:

    ============== RESULTS ===============
  ISLAND           1
    SC=   1910.58314770669
    Breaking point/AR order
           1              1
         351              1
         612              3
    ======================================
 Total time:   5.812500

Quindi la serie è AR (1) all'inizio, all'osservazione 351 il processo AR (1) cambia in un altro processo AR (1) (è possibile ottenere i parametri), quindi all'osservazione 612 il processo cambia in AR (3) .

Un'impostazione interessante su cui ho provato Auto-PARM è stata quella di esaminare i dati di prelievo ATM settimanali che facevano parte della competizione NN5 . Ricordo l'algoritmo che trova interruzioni strutturali alla fine di novembre di un determinato anno, ad esempio l'inizio della stagione dello shopping natalizio negli Stati Uniti.

Quindi, come utilizzare questo algoritmo tramite implementazioni esistenti? Bene, ancora una volta, potresti raggiungere Davis e vedere se riesci a ottenere l'eseguibile di Windows. Quando ero in Rogue Wave Software ho lavorato con Davis per ottenere Auto-PARM nelle librerie numeriche IMSL. Il primo linguaggio con cui è stato portato è stato Fortran , dove si chiama Auto_PARM, e sospetto che Rogue Wave rilascerà presto una porta C, a cui seguiranno le porte Python, C # e Java.


: Josh he OP non secondo me si riferiva al test di ipotesi sulla costanza dei parametri del modello, nel tuo caso in cui un AR (3) ha o meno parametri costanti nel tempo. Crede che sia interessante nel rilevare uno spostamento finora sconosciuto nella media dei residui.
IrishStat,

mods: L'OP, a mio avviso, non si riferiva alla verifica dell'ipotesi della costanza dei parametri del modello, nel tuo caso se AR (3) abbia o meno parametri costanti nel tempo. Credo che sia interessato a rilevare un cambiamento finora sconosciuto nel mezzo del residui.Questo è un problema abbastanza diverso da quello a cui hai fatto riferimento. Ora concordo pienamente che in assenza di Rilevazione di intervento nella media dei residui. Si potrebbe trovare un punto nel tempo in cui i parametri di un modello e / o la variazione di i pericoli potrebbero essere cambiati in modo significativo, MA non è questo che l'OP vuole scoprire.
IrishStat,

@IrishStat: hai familiarità con Auto-PARM? L'algoritmo utilizza i residui nella stima delle interruzioni (sia rispetto al numero di interruzioni che all'ordine AR (p) dei segmenti). L'OP non sembra avere un metodo specifico di cui si sta chiedendo. Piuttosto, sembra chiedersi molto in generale "Se sto misurando un processo in tempo e cambio qualcosa sul processo, c'è un modo per rilevare questo punto di cambiamento dai soli dati?". Non sta chiedendo informazioni sul cambiamento di livello rispetto all'innovazione e al rilevamento di valori anomali aggiuntivi. Speriamo che il PO possa
chiarirci

josh: Dal PO "Qual è il test appropriato per determinare se le serie storiche sono aumentate o diminuite in base ai dati?". Credo che ciò richieda una determinazione se la media dei residui non ha spostato i parametri di alcuni modelli ARIMA. A mio avviso, stai raccomandando una procedura software / soluzione sbagliata, ma questa è solo la mia opinione.
IrishStat,

1

Josh disse:

josh: dall'OP "Qual è il test appropriato per determinare se le serie temporali sono aumentate o diminuite in base ai dati?". Credo che ciò richieda una determinazione se la media dei residui non ha spostato i parametri di alcuni modelli ARIMA. A mio avviso, stai raccomandando una procedura software / soluzione sbagliata, ma questa è solo la mia opinione. - IrishStat, 28 ottobre 11 alle 19:08

Supponiamo che uno inizi con un modello AR (1):

Yt=γ+φ*Yt-1+Et

Etσ2

γ1-phio

γφ

Se si ipotizzano modelli strutturali, Auto-PARM è la procedura da utilizzare.


1
Sembra che tu stia effettivamente citando IrishStat ... potresti collegare la fonte originale del preventivo per favore?
Nick Stauner,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.