L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 126

 
Andrey Dik:
Sembra che lei mi abbia frainteso. Non dico alla rete dove entrare, né con una zz, né con nessun altro indicatore. Una rete addestrata sceglie da sola dove entrare.

Oh, cavolo... Non capisco allora...

 
mytarmailS:

Cosa dovrebbe essere correlato a cosa, come si fa? Non lo capisco nemmeno io.

Penso che nessuno l'abbia fatto qui tranne te )

Lasciatemi spiegare ancora una volta e vi incoraggio a leggere la convalida incrociata annidata.

Questo è un esempio del mio lavoro. Stavo costruendo un modello di regressione per fare una previsione di qualche parametro ingegneristico in un sistema molto complesso.

Passo attraverso i parametri di addestramento del modello, seleziono il modello migliore sulle pieghe di test di crossvalidazione, e poi lo convalido. Ho selezionato un totale di 100 modelli nel test (punti sul grafico). Questi sono i migliori modelli del campione di prova. Ciò che li rende diversi è che usano diversi predittori.

Puoi vedere che il modello sotto-addestrato nel test risulta essere sotto-addestrato anche nella validazione. Il modello completamente addestrato sul test e sulla convalida è addestrato. Lo stato sovrallenato, quando è alto nel test e basso nella validazione non esiste affatto.

Abbiamo una correlazione tra le prestazioni dei modelli selezionati sul test e le prestazioni sulla convalida.

Variando il numero di predittori, il modello cresce da underfit a fully fit. E questa crescita è comune sia ai dati in cui viene selezionato il modello migliore sia ai dati in cui viene convalidato il modello migliore selezionato. C'è coerenza!

Cioè, non ho scelto solo un modello che era il migliore sulla convalida (fuori dal campione), ma ho fatto più allenamenti di modelli, selezionandoli per test, e confrontando le metriche di qualità sulla convalida. Questa è una convalida incrociata annidata. Questo modello non viene riqualificato. Posso prendere il miglior modello su crossvalidation e ottenere una delle migliori metriche out-of-sample.

E se ho la variazione delle prestazioni del modello sul forex non spiega la variazione delle prestazioni del modello sulla convalida, allora avendo i campioni su cui selezioniamo il modello migliore (in questo caso, la qualità media sui falli del test di crossvalidazione), non possiamo prevedere le prestazioni di qualità fuori dal campione.

Quindi, facendo la selezione del modello ma non testando la procedura di selezione fuori dal campione stesso, stiamo adattando un modello.

Un'immagine come la mia viene fuori su dati stazionari e coerenti - contengono dipendenze stabili. Per esempio, il surriscaldamento del sensore degrada il valore modellato in tutti i casi e questo è spiegato fisicamente.

Nel modellare serie temporali finanziarie, ho già dimostrato, con 2.000 modelli selezionati, che le loro metriche di qualità su campioni di prova non sono correlate con i campioni di validazione.

La convalida incrociata annidata comporta l'addestramento multiplo di diversi modelli - o modelli con diversi input o parametri - su campioni di addestramento unici seguiti da test. Per ogni campione unico, viene selezionato il modello migliore. Viene poi testato di nuovo su un campione unico di convalida. Questo processo viene ripetuto molte volte. Un livello esterno di test è necessario per dimostrare che il modello stesso e la sua procedura di selezione danno coerenza ai risultati in-sample e out-of-sample.

Ho fatto notare questo a SanSanych, al Dr. e ad altri. Il Dr. mi ha capito. SanSanSanych non l'ha capito.

Quindi, se otteniamo questo quadro per il forex o qualsiasi altro mercato finanziario, possiamo eseguire il miglior modello in termini di test cutoff in produzione.

 
Alexey Burnakov:

Lasciatemi spiegare di nuovo e vi incoraggio a leggere la convalida incrociata annidata.

Questo è un esempio del mio lavoro. Stavo costruendo un modello di regressione, facendo una previsione di qualche parametro ingegneristico in un sistema molto complesso.

Passo attraverso i parametri di allenamento del modello, seleziono il modello migliore sulle pieghe di test della crossvalidazione e poi lo convalido. Ho selezionato un totale di 100 modelli nel test (punti sul grafico). Questi sono i migliori modelli del campione di prova. Ciò che li rende diversi è che usano diversi predittori.

Puoi vedere che il modello sotto-addestrato nel test risulta essere sotto-addestrato anche nella validazione. Il modello completamente addestrato sul test e sulla convalida è addestrato. Lo stato sovrallenato, quando è alto nel test e basso nella validazione non esiste affatto.

Abbiamo una correlazione tra le prestazioni dei modelli selezionati sul test e le prestazioni sulla convalida.

Variando il numero di predittori, il modello cresce da underfit a fully fit. E questa crescita è comune sia ai dati in cui viene selezionato il modello migliore sia ai dati in cui viene convalidato il modello migliore selezionato. C'è coerenza!

Cioè, non ho scelto solo un modello che era il migliore sulla convalida (fuori dal campione), ma ho fatto più allenamenti di modelli, selezionandoli per test, e confrontando le metriche di qualità sulla convalida. Questa è una convalida incrociata annidata. Questo modello non viene riqualificato. Posso prendere il miglior modello su crossvalidation e ottenere una delle migliori metriche out-of-sample.

E se ho la variazione delle prestazioni del modello sul forex non spiega la variazione delle prestazioni del modello sulla convalida, allora avendo i campioni su cui selezioniamo il modello migliore (in questo caso, la qualità media sui falli del test di crossvalidazione), non possiamo prevedere le prestazioni della qualità fuori dal campione.

Quindi, facendo la selezione del modello ma non testando la procedura di selezione fuori dal campione stesso, stiamo adattando un modello.

Un quadro come il mio viene fuori su dati stazionari e coerenti - contengono dipendenze stabili. Per esempio, il surriscaldamento del sensore degrada il valore modellato in tutti i casi e questo è spiegato fisicamente.

Nel modellare serie temporali finanziarie, ho già dimostrato, con 2.000 modelli selezionati, che le loro metriche di qualità su campioni di prova non sono correlate con i campioni di validazione.

La validazione incrociata annidata coinvolge ripetutamente l'addestramento di diversi modelli - o modelli con diversi input o parametri - su campioni di addestramento unici seguiti da test. Per ogni campione unico, viene selezionato il modello migliore. Viene poi testato di nuovo su un campione unico di convalida. Questo processo viene ripetuto molte volte. Un livello esterno di test è necessario per dimostrare che il modello stesso e la sua procedura di selezione danno coerenza ai risultati in-sample e out-of-sample.

Ho fatto notare questo a SanSanych, al Dr. e ad altri. Il Dr. mi ha capito. SanSanSanych non ha capito.

Quindi, se otteniamo questo quadro per il forex o qualsiasi altro mercato finanziario, possiamo eseguire il miglior modello in termini di segmento di prova in produzione.

Ancora non capisco, mi dispiace.

I falli di convalida: sono nello stesso file dei falli di prova o la convalida è su un nuovo file?

PS.

Per convalida incrociata intendo il seguente algoritmo: il file è diviso, per esempio, in 10 falli. Insegna sui primi 9, e convalida sul 10. Poi insegnano su 2-10 e convalidano su 1 piega. E così spostano il fallo di convalida. Giusto?

 
SanSanych Fomenko:

Ancora non capisco, mi dispiace.

I falli di convalida: sono nello stesso file dei falli di prova o la convalida è su un nuovo file?

PS.

Per convalida incrociata intendo il seguente algoritmo: il file è diviso, per esempio, in 10 falli. Insegna sui primi 9, e convalida sul 10. Poi insegnano su 2-10 e convalidano su 1 piega. E così spostano il fallo di convalida. Giusto?

Sì.

Un ciclo di apprendimento con validazione incrociata M1 su 10 falli, avete capito bene. Per ogni combinazione di parametri di apprendimento: su 9 falli imparare, su un controllo ritardato. Quindi 10 volte. Otteniamo il valore medio della metrica di qualità su 10 pieghe. Chiamiamolo m1.

Ripetiamo questa procedura N volte (aggiungendo sempre nuovi dati all'allenamento e al test).

Convalida incrociata annidata:

Ripetiamo M - N volte. Ogni ciclo M è un campione di allenamento unico. Otteniamo m1, m2, . mn metriche di qualità ottenute durante l'addestramento e la selezione dei migliori modelli, tutti su dati diversi.

Strato esterno. Ogni modello selezionato M viene testato sul campione di validazione unico. Otteniamo k1, k2, ... kn test al di fuori del campione.

Disegniamo un grafico a punti M vs. K. Otteniamo una stima di come un cambiamento nella qualità del modello sulla validazione incrociata predetermina la qualità fuori dal campione.

Sulla selezione dei predittori. Se non avete la possibilità di ottenere una tale quantità di dati, date semplicemente ad ogni ciclo N del modello un unico insieme di predittori. Verificherete se c'è coerenza nelle prestazioni del modello a seconda dei predittori selezionati nel test e nella validazione. In parole povere, un modello poco addestrato sul test dovrebbe dare risultati peggiori anche sulla validazione. Un modello sovrallenato sul test darà risultati molto peggiori sulla convalida.

 
Alexey Burnakov:


Ho ucciso metà dell'anno 15 su questa illusione. La convalida del modello dovrebbe essere fatta solo su dati che non hanno nulla a che fare con la procedura di addestramento, test e convalida. Sono troppo pigro per cercare i risultati dei calcoli pertinenti. Ma a causa del sonaglio, che fa come lei scrive, ho sprecato mezzo anno.

 
SanSanych Fomenko:

La validazione del modello dovrebbe essere fatta solo su dati che non hanno nulla a che fare con la procedura di addestramento, test e validazione.

Brrrrr.

È quello che dovrebbe fare! La convalida si fa su campioni differiti (o meglio campioni, se stiamo parlando dell'approccio nidificato).

Quale illusione? L'approccio è in ogni caso più oggettivo di un adattamento del modello a un campione.

 
Alexey Burnakov:

Brrrrr.

È così che deve essere! La convalida viene fatta su un campione ritardato (o meglio su dei campioni, se parliamo dell'approccio nidificato).

Quale illusione? Questo approccio è in ogni caso più obiettivo di un adattamento del modello a un campione.

Lo sai meglio tu.

Per me funziona. Se rimuovo i predittori di rumore, un modello allenato sui dati di giugno funzionerà sui dati di luglio, e quando alleno un modello sui dati di luglio, l'errore di quell'allenamento sui dati di luglio sarà lo stesso della predizione che ho usato a luglio, sul modello allenato a giugno. Questa è quella che io chiamo la mancanza di riqualificazione.

 
SanSanych Fomenko:

Lo sai meglio tu.

Per me funziona tutto. Se rimuovo i predittori di rumore, il modello allenato sui dati di giugno funzionerà sui dati di luglio, e quando alleno il modello sui dati di luglio, l'errore di quell'allenamento sui dati di luglio sarà lo stesso della predizione che ho usato a luglio sul modello allenato a giugno. Questa è quella che io chiamo la mancanza di riqualificazione.

Supponiamo che questo funzioni sempre e non solo su un esempio di 2 mesi, che può essere un caso.

Insegna cosa, l'appartenenza al ginocchio a zig zag? Non escludo che questo particolare obiettivo impari costantemente bene, ma l'appartenenza a un ginocchio non dà input precisi. Questo è il problema. Posso prevedere la volatilità abbastanza accuratamente un giorno prima, ma non mi darà nulla nel trading.

 
Alexey Burnakov:

Supponiamo che questo funzioni sempre e non solo per un esempio di 2 mesi, che potrebbe essere un caso.

Insegna cosa, l'appartenenza al ginocchio a zig zag? Non escludo che questo particolare obiettivo impari costantemente bene, ma l'appartenenza a un ginocchio non dà input precisi. Questo è il problema. Posso prevedere accuratamente la volatilità un giorno prima, ma non mi darà nulla nel trading.

Le carenze dell'obiettivo non hanno nulla a che fare con la metodologia di determinazione dell'overtraining dei modelli. Ho eseguito diversi ordini con obiettivi e predittori sconosciuti. Il risultato è lo stesso ovunque se si rimuovono i predittori di rumore.
 
SanSanych Fomenko:
L'obiettivo difettoso non ha nulla a che fare con la metodologia per determinare l'overfitting del modello.

Penso che vi sbagliate. Le etichette rumorose (zelevka) danno una dissonanza tra ciò che si vede sul test e ciò che si vedrà in futuro. È per questi casi che vengono introdotti tutti i tipi di espedienti come la validazione annidata. Ci sono anche approcci che dimostrano che, tra diversi modelli alternativi al test, si dovrebbe scegliere quello peggiore.

Il risultato è lo stesso ovunque se si rimuovono i predittori di rumore.

Come l'avete determinato? Avete monitorato le prestazioni dei vostri predittori sul futuro allora sconosciuto?