2013-02-16 17 views
8

Sei un aereo che rileva una nave nemica che viaggia attraverso l'oceano, quindi hai raccolto una serie di coordinate (x, y, tempo) della nave. Sai che un sottomarino nascosto viaggia con la nave per proteggerlo, ma mentre c'è una correlazione tra le loro posizioni, il sottomarino spesso si allontana dalla nave, quindi mentre è spesso vicino, può anche essere dall'altra parte del mondo ogni tanto. Tu vuoi predire il percorso del sottomarino, ma sfortunatamente è nascosto da te.Quale algoritmo di machine learning è appropriato per prevedere una serie temporale da un'altra?

Ma un mese di aprile si nota che il sottomarino si dimentica di nascondersi, quindi si dispone di una serie di coordinate sia per il sottomarino che per la nave per 1.000 viaggi. Usando questi dati, ti piacerebbe costruire un modello per predire il percorso del sottomarino nascosto dato solo i movimenti della nave. La linea di base ingenua sarebbe "posizione sottomarina guess =" posizione corrente della nave "ma dai dati di aprile in cui il sottomarino era visibile, si nota che c'è una tendenza per il sottomarino ad essere avanti rispetto alla nave un po ', quindi" posizione sottomarina " guess = la posizione della nave in 1 minuto "è una stima ancora migliore.Inoltre, i dati di aprile mostrano che quando la nave fa una pausa in acqua per un periodo prolungato, il sottomarino è probabile che sia lontano a pattugliare le acque costiere. naturalmente

Come si costruisce questo modello, dati i dati di aprile come dati di allenamento, per prevedere il percorso del sottomarino? La mia soluzione attuale è una regressione lineare ad-hoc in cui i fattori sono "tempo di viaggio", "nave da carico" x coordinata "," era la nave da carico inutilizzata per 1 giorno ", ecc. e poi avendo R estratto i pesi e facendo una convalida incrociata, ma mi piacerebbe davvero un modo per generare automaticamente questi fattori dai dati di aprile. Inoltre, un modello che utilizza la sequenza o il tempo sarebbe bello, dal momento che la regressione lineare non lo fa e penso che sia rilevante.

Modifica: ho riformulato il problema con una storia inventata quindi è meno confusa. Il problema originale che ho postato è:

Ho dati di eye-tracking su due soggetti: un insegnante e uno studente. È nella forma (x, y, tempo), quindi c'è una serie di questi per ogni soggetto. Ciò che l'insegnante guarda influenza ciò che lo studente guarda. Quale metodo utilizzerei per prevedere ciò che lo studente sta guardando, utilizzando solo i dati dell'insegnante? Diciamo che posso addestrare un algoritmo di apprendimento usando un set standard di dati per studenti e insegnanti.

Stavo pensando che il modello di markov nascosto sarebbe appropriato, data la definizione in Wikipedia, ma non sono sicuro di come metterlo in pratica sul mio set di dati.

Ulteriori dettagli: Ho dati su come un insegnante e uno studente guardano una mappa e alcune letture. Ho 40 di questi set di dati, che assomigliano a [(366,234,0), (386,234,5), ...] il che significa che l'insegnante ha esaminato il punto (366,234) al tempo 0 e poi 5 secondi dopo si è spostato per guardare coordinata (386, 234). Posso imparare un modello per capire la relazione tra il modo in cui un insegnante guarda il contenuto, per prevedere come uno studente guarderà lo stesso contenuto. Quindi forse lo studente guarda il contenuto nello stesso ordine dell'insegnante, ma più lento. O forse lo studente non si guarda intorno ma l'insegnante scansiona più del contenuto. Ho entrambe le serie di dati e voglio vedere quanto accurato possa essere un modello - sarei in grado di prevedere il comportamento del comportamento dello studente entro 50px dal comportamento del docente?

+0

Sembra che ogni sessione di "mappa-guardare" può essere pensato come un grafo orientato G (V, E), dove ogni v di vertici è (x, y) coordinate dove lo sguardo era diretto per più di una certa quantità di tempo (punti di interesse nella mappa). I bordi E rappresentano il movimento degli occhi e l'ordine temporale nella loro direzionalità. Quindi, dato il grafico di un insegnante, devi trovare il grafico di uno studente. È corretto? In tal caso, è possibile semplificare i dati di addestramento in tali grafici e apprendere i loro parametri. Oppure: dato un punto (x, y) che l'insegnante sta guardando, è necessario indovinare (x, y) dove lo studente sta guardando? –

+0

Alptigin, sì è esattamente quello che sto cercando di fare. Sebbene ci sia anche una dimensione temporale del grafico, credo. Conosci qualche modo per addestrare qualcosa per generare un grafico studente da un grafico insegnante? – user2077851

+0

Bene, direi innanzitutto semplificare il set di dati in questi grafici, visualizzarli. Non posso dire a priori quale metodo specifico avrà successo. –

risposta

3

Suggerirei di guardare a Kalman Filters, o, più in generale, modelli di spazio degli stati (SSM), che sono definiti dal libro consigliato di seguito come "proprio come un HMM, ad eccezione degli stati nascosti sono continui".

Posso consigliare un capitolo del libro sull'argomento - capitolo 18 in "Machine Learning: a Probabilistic Approach" di Kevin P. Murphy; ci sono anche risorse online (cercate i filtri di Kalman), ma non posso raccomandarne uno specifico.

MODIFICA: è possibile trovare i riferimenti here per l'utilizzo dei filtri Kalman con R per prevedere le serie temporali.

speranza che questo aiuti,

+0

Grazie mille, ho pensato prima ai filtri di Kalman ma sembra che sia usato per predire i prossimi passi di una serie, piuttosto che per predire un'intera seconda serie. Potresti indicarmi come lo userei per la previsione su una seconda serie temporale? – user2077851

+0

Inoltre, farebbero l'ipotesi markov, che solo lo stato più recente influenza gli stati futuri? – user2077851

+0

L'intuizione è che puoi considerare la posizione della nave come una misurazione rumorosa della posizione del sottomarino. il rumore non è necessariamente bianco - può avere vari effetti, basati su eventi passati. Quindi, in pratica, la previsione della posizione del sottomarino è analoga alla stima dei parametri del modello nascosto. Non sono sicuro che sia generale come tutti i casi a cui ti riferisci, ma penso che possa coprire almeno alcuni di essi. – etov