L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 395
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Stavo ancora iniziando a imparare R allora, lo script è quasi interamente generato in rattle (ambiente visivo per il datamining in R), ecco perché è così complesso e personalizzato per tutte le occasioni.
Questo
dovrebbe essere cambiato in...
Dovrebbe andare bene.
In generale è un cattivo approccio, non si dovrebbe definire l'importanza degli input in questo modo. Per qualche motivo ha funzionato quella volta, ma non mi ha mai più aiutato.
Sperimentato ancora un po'...
Se si impostano 1 - 2 neuroni in uno strato nascosto, gli ingressi importanti sono più volte diversi:
152.33, 7.82, 132.57, 12.19, 132.86, 10.54, 135.56, 19.16, 137.32, 14.84, 127.36, 7.43, 11.35, 6.66, 13.6, 10.18, 10.74, 10.66, 11.18, 8.95 (1 neurone)
Se imposti 10 (come nel tuo secondo esperimento), allora i pesi sono spalmati sui neuroni e non puoi distinguere quelli importanti da quelli di rumore:
113963.27, 91026.57, 100833.22, 134980.44, 154190.05, 146455.03, 198703.01, 135775.2, 184353.78, 160766.79, 152433.73, 105753.11, 151673.83, 135421.64, 165343.94, 70277.93, 175038.87, 150342.56, 59153.02, 121012.76 (10 neuroni)
A quanto pare, per questo problema logico, 1 neurone è ottimale.
E provate gli alberi decisionali di alglib, contano più velocemente e hanno un valore migliore di mlp. Anche Diplerning è più veloce, ma non in alglib.
La cosa principale è il rapporto velocità/qualità, che senso ha aspettare una settimana o anche un giorno o anche un'ora per ottenere la giusta combinazione, non la otterrete mai). Se il modello impiega pochi secondi per imparare, allora si può usare la genetica per l'autosimulazione di parametri o predittori, allora è pura IA, altrimenti è spazzatura)
Con la prima colonna rimossa non è il 5%, ma molto peggio...
Forest dà circa lo stesso errore di MLP (ma conta più velocemente)
Errore medio nella trama di allenamento (60,0%) =0,264 (26,4%) nTrees=100 codResp=1
Errore medio sulla convalida (20,0%) trama =0,828 (82,8%) nTrees=100 codResp=1
Errore medio sul test (20,0%) trama =0,818 (81,8%) nTrees=100 codResp=1
Con la prima colonna rimossa, non è più il 5%, ma molto peggio...
Forest dà circa lo stesso errore di MLP (ma conta più velocemente)
Errore medio nella trama di allenamento (60,0%) =0,264 (26,4%) nTrees=100 codResp=1
Errore medio sulla convalida (20,0%) trama =0,828 (82,8%) nTrees=100 codResp=1
Errore medio sul test (20,0%) trama =0,818 (81,8%) nTrees=100 codResp=1
sì, mlp classico non ha alcun vantaggio sulla foresta, almeno per me la foresta vince sempre in termini di velocità e qualità
a proposito, diplerning potrebbe non essere nemmeno un vantaggio... poiché in studio la rete neurale è simile a diplerning - non ci sono nemmeno strati, ma ci sono diverse reti convoluzionali... come gli autoencoder, che si inizializzano a vicenda in serie (almeno questo è quello che dice), ma i risultati sono ancora peggiori della foresta
Non so cosa dire. Se non per fare un esempio dal rapporto. I risultati dell'ottimizzazione hanno questo aspetto e potete interpretarli come volete, ma quando l'ottimizzazione finisce, il risultato appare come segue.
* Sensibilità della capacità di generalizzazione: 55.12820512820513%
* Specificità della capacità di generalizzazione: 55,5045871559633%
* Capacità di generalizzazione: 55.309734513274336%
* TruePositives: 129
* Falsi positivi: 105
* TrueNegatives: 121
* Falsi negativi: 97
* Modelli totali su campioni con statistiche: 452
In rosso, ho evidenziato il risultato complessivo della capacità di generalizzazione. La prima è la percentuale di indovinare gli uni, la seconda è la percentuale di indovinare gli zeri, e la terza è il totale.
Il classificatore di Reshetov dà risultati migliori di mlp almeno, e non si riaddestra, questo è il suo vantaggio ... ma ci vuole molto tempo per contare con il tuo set, ieri ho avuto 2 ore per contare e oggi ho continuato di nuovo dopo l'ibernazione ... sto aspettando quando completa il conteggio così posso confrontare gli errori :)
Tuttavia, voglio riscriverlo in mql5 e convertirlo in OpenCL qui per un uso più efficiente. Poi affittare un google cloud e calcolare una rete neurale in minuti (secondi?) su Tesla, o comprare la Tesla per 500 000 :) Per 3000 core cuda
Il classificatore di Reshetov dà risultati migliori di mlp almeno, e non si riaddestra, questo è il suo vantaggio... ma ci vuole così tanto tempo per contare con il tuo set, ieri ho contato 2 ore e oggi di nuovo continuato dopo l'ibernazione... aspettando che finisca di contare così posso confrontare gli errori :)
Tuttavia, voglio riscriverlo in mql5 e convertirlo in OpenCL qui per un uso più efficiente. Poi affittare un google cloud e calcolare un neuronet in minuti (secondi?) su tesla, o comprare la Tesla per 500 000 :) Per 3000 core cuda
Bene, questo è il suo grande vantaggio: non viene riqualificato, anche se il modello diventa ogni volta più complicato. Quindi, otteniamo il modello più complesso (grande) che non viene riqualificato. Così il modello risulta più intelligente, qualcosa come tapka. Stavo già pensando al coprocessore matematico Intel Xeon, ma costa 200 k. Ha 60 core e 120 core logici. Pensaci, come puoi costruire un modello in 5 secondi, elaborando anche questo come dici tu non è un grande insieme e ottenere un modello adeguato al processo non stazionario più complesso come kotir currency???? Per ottenere un modello adeguato, è necessario dedicare abbastanza tempo alla macchina. Allora il modello sarà adeguato e durerà più a lungo.
Vorrei comunque farlo girare su una GPU. Almeno 10 volte le prestazioni e sarebbe buono.... Forse funzionerà dopo tutto?
I risultati della valutazione dell'importanza sono i seguenti. Più alto è il predittore nella tabella, meglio è. SoloVVolum6, VDel1, VVolum9, VQST10 hanno superato il test.
In rattle possiamo costruire 6 modelli contemporaneamente su questi 4 predittori, e SVM mostra un'accuratezza di circa il 55% sui dati di validazione e di test. Non male.
Bene, ora l'ottimizzatore sta contando, non so nemmeno quando finirà, ma sicuramente gli lancerò questi input e vedrò cosa mi darà, come sarà questo modello..... Grazie!
Ma ci vuole un sacco di tempo per contare con il tuo seth, ieri ci ho messo 2 ore e oggi ha continuato di nuovo dopo l'ibernazione... Sto aspettando che finisca di contare per poter confrontare gli errori :)
Tuttavia, voglio riscriverlo su mql5 e convertirlo in OpenCL qui per un uso più efficiente. Poi affittare un google cloud e calcolare una rete neurale in minuti (secondi?) su Tesla, o comprare la Tesla per 500 000 :) Per 3000 core cuda
Di nuovo, quanti core vengono utilizzati nei calcoli? Ho 4 core caricati al 100% e non ho osato eseguire un set completo di 452 linee, perché sento che è una settimana, non meno.....
Di nuovo, quanti core vengono utilizzati nei calcoli? Ho 4 core caricati al 100% e non ho osato eseguire il set completo di 452 linee perché sento che è una settimana, non meno.....
Comunque, ho scavato l'ultima versione del programma, dove c'è il parallelismo, ma l'ultima versione funziona diversamente dalla prima, ci sono 2 reti neurali nel comitato, mlp e autore, e poi interagiscono quando si ottengono risultati, un sacco di codice, rispetto all'autore :) C'è da qualche parte una descrizione dell'ultima versione, la teoria?
C'è qualcosa di molto duro nell'uso di questo in particolare. Bisognerà dedicare molto tempo allo studio del codice.
Prova a contattare l'autore stesso e chiamalo, forse lo parallelizzerà lui stesso... come c'è un gesto
Beh, questo è il suo grande vantaggio: non si riaddestra e il modello diventa ogni volta più complicato. Così otteniamo il modello più complesso (grande), che non viene riqualificato. Così il modello risulta più intelligente, qualcosa come tapka. Stavo già pensando al coprocessore matematico Intel Xeon, ma costa 200 k. Ci sono 60 core e 120 core logici. Pensaci, come puoi costruire un modello in 5 secondi, elaborando anche questo come dici tu non è un grande insieme e ottenere un modello adeguato al processo non stazionario più complesso come kotir currency???? Per ottenere un modello adeguato, è necessario dedicare abbastanza tempo alla macchina. Allora il modello sarà adeguato e funzionerà più a lungo.
Vorrei comunque farlo girare su una GPU. Almeno 10 volte le prestazioni e sarebbe buono.... Può funzionare?
Comunque, ho scavato l'ultima versione del programma, dove c'è il parallelismo, ma l'ultima versione funziona diversamente dalla prima, ci sono 2 reti neurali nel comitato, mlp e dell'autore, e poi interagiscono quando si ottengono risultati, un sacco di codice, rispetto all'autore :) C'è da qualche parte una descrizione dell'ultima versione, la teoria?
C'è qualcosa di molto duro nell'uso di questo in particolare. Si dovrà passare molto tempo a studiare il codice.
Prova a contattare l'autore stesso e chiamalo, forse lo parallelizzerà lui stesso... visto che c'è un gesto
Penso che non riuscirò a contattare l'autore, gli ho scritto in entrambi i modi. Non dice nulla. Ma, per quanto ne so, ha scritto che ha messo in parallelo tutto quello che c'è dentro. Sì, infatti, si stanno formando due griglie che lavorano nel comitato. L'ho scritto nel mio articolo. Se entrambi mostrano sì, allora sì, se no, allora no, se sono entrambi misti, allora "non so". Non conosco l'ultima versione, ma la descrizione è basata su google, il link che mi hai dato. Una volta ho eseguito la versione 3 sul server WWW e con mia delusione l'ottimizzatore carica solo un core, ma le versioni recenti caricano tutti i core in modo uniforme, quindi penso che la disparallelizzazione ci sia ancora. Rimaneva solo una piccola cosa da fare. Per aumentare il numero di core :-)