Questo è un problema divertente Questa è una serie storica e da questa serie storica si desidera identificare il trigger di un determinato evento. Quindi è un problema di classificazione binaria. Sulla base delle informazioni dalla finestra specificata si verificherà un picco? Si o no.
Il primo passo è configurare il tuo database. Quello che avrai è una serie di istanze (che possono avere alcune sovrapposizioni ma per evitare distorsioni è meglio che siano disegnate in modo indipendente) e quindi per ogni istanza un essere umano deve etichettare se c'era un picco o se non c'era un Spike.
Quindi è necessario identificare la finestra temporale che si desidera utilizzare per l'analisi delle serie temporali. Hai fatto questo e deciso che 30 minuti sono un buon inizio.
Ora, hai 6 forme d'onda in una finestra di 30 minuti da cui puoi estrarre i dati per ottenere informazioni sulla tua classificazione. È possibile utilizzare gli esempi di dati non elaborati come funzionalità, ma questo è TROPPO molte funzionalità e porterà a scarsi risultati. Pertanto sono necessarie alcune funzioni di estrazione , riduzione della dimensionalità , tecniche.
Esistono milioni di modi in cui è possibile estrarre dati da queste forme d'onda. Innanzitutto, chiediti, come essere umano, quali sono i segni rivelatori che dovrebbero avere queste altre forme d'onda, il che significherebbe che sorgerebbe un picco. Ad esempio, nei dati sismici, se vedi l'agitazione in una forma d'onda di una città vicina, dovresti aspettarti di vedere presto l'agitazione nella tua città.
In generale, mi piace estrarre tutte le statistiche di base dalle mie forme d'onda. Ottieni la media, la deviazione standard, l'indice di fluttuazione, ecc. Ottieni qualsiasi cosa pensi possa aiutare. Controlla come queste statistiche sono correlate alle tue etichette. Maggiore è la correlazione, meglio potrebbero essere. Quindi ci sono alcune ottime tecniche per estrarre informazioni su tempo e frequenza dalle tue serie storiche. Guarda in decomposizione in modalità inviluppo e decomposizione in modalità empirica . Ho usato con successo la decomposizione in modalità empirica su alcuni dati di serie temporali e ho ottenuto risultati molto migliori di quanto mi aspettassi.
Ora, anche se hai lo spazio ridotto delle funzionalità, puoi fare di meglio! È possibile applicare alcune tecniche di riduzione della dimensionalità come PCA o LDA per ottenere uno spazio dimensionale inferiore che potrebbe rappresentare meglio i propri dati. Questo potrebbe aiutare, nessuna garanzia.
Ora hai un piccolo set di dati con istanze che sono un intruglio di Frankenstein che rappresenta le tue 6 forme d'onda attraverso la finestra di 30 minuti. Ora sei pronto per selezionare il tuo classificatore. Avrai bisogno di un algoritmo di classificazione binaria, per fortuna è il più comune. Ce ne sono molti tra cui scegliere. Come scegliere?
Quanti casi hai?
#instances>100∗#features?
Allora sei pronto a utilizzare una tecnica di apprendimento profondo, come le reti neurali , 1D reti neurali convoluzionali , autoencodders impilati , ecc ...
Meno di quello !!!!
Dovresti seguire metodi poco profondi. Dai un'occhiata alle macchine vettoriali di supporto del kernel , foreste casuali , k-vicini più vicini ecc.
Malinteso comune: un metodo superficiale PUO ' e SARANNO performanti meglio di una tecnica di apprendimento profondo se hai selezionato correttamente le tue caratteristiche. l'estrazione delle caratteristiche è l'aspetto più importante di un'architettura di apprendimento automatico.
Voglio usare il rilevamento delle anomalie!
Funzionerebbe anche questo e ci sono alcune buone tecniche per farlo. Tuttavia, la natura del rilevamento delle anomalie è di apprendere la distribuzione del caso nominale. Quindi alimenteresti il tuo algoritmo con tutte le istanze nel tuo set di dati che non hanno provocato un picco. Quindi da questo il tuo algoritmo sarebbe in grado di identificare quando una nuova istanza è significativamente diversa da questa distribuzione nominale e la segnalerà come un'anomalia. Ciò significherebbe che si verificherà un picco nel tuo contesto.
Check-out:
Set di volumi minimi di apprendimento
http://www.stat.rice.edu/~cscott/pubs/minvol06jmlr.pdf
Rilevamento di anomalie con funzioni di punteggio basate sui grafici dei vicini più vicini
https://arxiv.org/abs/0910.5461
Nuova statistica nella stima del valore P per il rilevamento di anomalie
http://ieeexplore.ieee.org/document/6319713/
Puoi anche utilizzare tecniche di rilevamento delle anomalie più rudimentali come un test del rapporto di verosimiglianza generalizzato. Ma questa è una specie di vecchia scuola.