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

 
Andrey Dik:

Cioè, è utile fare questo. Quindi invece di 4 spaccate, che ovviamente non sono sufficienti, dovresti fare 40 spaccate. Per 4 core ci vorranno 10 volte di più per calcolare, ma suppongo che il tempo possa essere sacrificato in favore della robustezza.

Non ovviamente.

Per esempio, aspettare 10 ore per i calcoli invece di 1 ora è inaccettabile per il daytrading. Anche se lasciamo il computer durante la notte, otterremo un modello basato su dati inevitabilmente superati.

Quindi è necessario un compromesso ragionevole tra il tempo di calcolo e la qualità della simulazione. E la variante più ottimale è quella di parallelizzare tutto ciò che potrebbe essere calcolato in parallelo, mentre tutto ciò che non potrebbe essere parallelizzato dovrebbe essere calcolato sequenzialmente.

Come ultima risorsa, si può passare a un numero maggiore di core o costruire un cluster di calcolo di diversi personal computer.

E non sto nemmeno parlando del fatto che il codice dell'algoritmo di apprendimento automatico ha spesso alcune possibilità potenziali di ulteriore ottimizzazione.

Inoltre è possibile che una parte del multitasking possa essere trasferita dalla CPU alla GPU.

Cioè, ci sono un sacco di potenziali soluzioni al problema (la lista può continuare all'infinito) e "fare una gobba" nel software non è la migliore di esse e, come dimostra l'esperienza, spesso la più inadeguata.

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
Yury Reshetov:

Non è ovvio.

Per esempio, aspettare 10 ore invece di 1 ora per i calcoli è inaccettabile per il daytrading. Anche se si lascia il computer durante la notte, si otterrà un modello su dati ovviamente non aggiornati.

Quindi è necessario un compromesso ragionevole tra il tempo di calcolo e la qualità della modellazione. E il modo migliore è parallelizzare tutto ciò che può essere calcolato in parallelo, mentre tutto ciò che non può essere calcolato dovrebbe essere calcolato in modo sequenziale.

Come ultima risorsa, è possibile passare a un numero maggiore di core, o costruire un cluster di calcolo di diversi personal computer.

E non sto nemmeno parlando del fatto che il codice dell'algoritmo di apprendimento automatico ha spesso alcune possibilità potenziali di ulteriore ottimizzazione.

È anche possibile che parte del multitasking possa essere spostato dalla CPU alla GPU.

Cioè ci sono un sacco di modi potenziali di risolvere il problema (la lista può continuare) e "fare un orecchio di porco" nel software non è la soluzione migliore e come l'esperienza dimostra è spesso la più inadeguata.

Non sto insistendo sull'opzione "gobba", sto solo chiedendo: più varianti si dividono i dati, migliore sarà la formazione che si può ottenere facendo l'analisi dei risultati. Diciamo che nel 90% dei casi vediamo che il modello produce risultati adeguati sui dati di test e solo nel 10% otteniamo un overtraining, il che significa che il modello vale qualcosa in sé. E se è il contrario, vale la pena di riciclare. E se si dividono i dati in solo 4 diverse varianti, la probabilità di ottenere un modello sovrallenato è estremamente alta.

Di nuovo, non sto toccando gli aspetti "hardware", ma solo specificando quelli "software".

 
Vizard_:
...
Non avendo un vantaggio sul noto..... ma nessuno ci crederà)))

Dare un esempio concreto di noti ... che "hanno vantaggi".

E da voi solo critiche infondate, che finiscono sempre con il fatto che non date un campione, non mostrate il software (tutto rigorosamente riservato, i testimoni vengono rimossi). Ma lei disegna delle cifre irrealistiche che nessuno, tranne lei, può confermare o negare.

Domanda banale per un rompicapo: se, secondo le citazioni lei "ha la possibilità di ricevere" il 92% e kopecks di capacità generalizzante, allora perché è ancora impegnato in una critica vuota di alcuni che non "hanno vantaggi con il noto...", e non è impegnato a comprare: fabbriche, giornali, navi a vapore, isole, yacht, ecc? E quando potrò vedere la tua faccia sulla copertina di Forbes?

 
Alexey Burnakov:


Ci sono regole chiare per trattare le interazioni nei modelli lineari. Sono un po' più complicati del trattamento della combinazione lineare:https://www.r-bloggers.com/interpreting-interaction-coefficient-in-r-part1-lm/

Ma bisogna scavare in un sacco di combinazioni per trovare interazioni significative. Questo sì che è un peccato.

Ho dato un'occhiata, grazie.

La mia perplessità è solo aumentata leggendolo, anche se su una nuova comprensione della parola "interazione".

Il mio sconcerto si basa sul fatto che qualsiasi cifra nella statistica deve avere un qualche tipo di contenuto.

Prendete questa equazione lm

zz ~ rsi*stoch

Individualmente ogni indicatore ha un certo significato, ma qual è il significato del loro prodotto? Qual è il significato di questa "interazione"? O dobbiamo semplicemente ottenere un nuovo predittore di contenuto sconosciuto e vedere come influisce sulla variabile obiettivo?

 
SanSanych Fomenko:

Ho dato un'occhiata, grazie.

La mia perplessità è solo aumentata leggendolo, anche se su una nuova comprensione della parola 'interazione'.

La mia perplessità si basa sul fatto che qualsiasi cifra in statistica deve avere un qualche tipo di contenuto.

Prendete questa equazione lm

zz ~ rsi*stoch

Individualmente ogni indicatore ha un certo significato, ma qual è il significato del loro prodotto? Qual è il significato di questa "interazione"? O dobbiamo semplicemente ottenere un nuovo predittore di contenuto sconosciuto e vedere come influisce sulla variabile obiettivo?

È divertente ascoltarti a volte)

Nessuna nuova entità si ottiene fisicamente dalla moltiplicazione, anche se l'interazione conta esattamente come una moltiplicazione nella regressione classica.

L'angolo di pendenza del primo predittore dipenderà dal livello del secondo predittore. Questa è l'essenza dell'interazione. Questa è una semplificazione. Ci sono delle sfumature. Ma conoscendo tutti i coefficienti di un tale livello possiamo dire che, per esempio, l'aumento del livello x1 di 1 aumenterà il livello target di 0,1 quando il livello x2 = 3. Quindi va così.

 
Andrey Dik:

Non insisto sulla "variante gobba", sto solo chiedendo: più varianti si dividono i dati, più è possibile ottenere un migliore allenamento e analizzare i risultati.

...

Di nuovo, non sto toccando gli aspetti "hardware", ma solo specificando quelli "software".

Diciamo che qualsiasi pazzo potrebbe inserire un ciclo di 10 iterazioni e aumentare il tempo di calcolo di un ordine di grandezza per il bene di una riduzione insignificante della probabilità di irregolarità delle distribuzioni di pattern in parti di un campione. Il codice sorgente di jPrediction è di dominio pubblico ed è disponibile per la modifica a chiunque ne abbia voglia.

Sono molto più interessato a spendere il mio tempo e i miei sforzi per raggiungere gli obiettivi in un modo più promettente: creare un algoritmo che sia meno esigente sulle risorse computazionali e di tempo del computer per addestrare modelli con maggiore generalizzabilità.

 
Yury Reshetov:

Diciamo che qualsiasi idiota può prendere un ciclo di 10 iterazioni e aumentare il tempo di calcolo di un ordine di grandezza per il bene di una riduzione insignificante della probabilità di irregolarità delle distribuzioni di pattern in parti di un campione. Il codice sorgente di jPrediction è pubblicamente disponibile e accessibile per la modifica a chiunque ne abbia voglia.

Sono molto più interessato a spendere il mio tempo e i miei sforzi per raggiungere un obiettivo simile in un modo più promettente: creare un algoritmo che sia meno esigente sulle risorse computazionali e di tempo di un computer.

Yuri, non ti sto chiedendo di cambiare o modificare qualcosa nel tuo software, e non so nemmeno una cosa di Java, quindi, anche se volevo guardare il tuo codice, non ci capisco niente.

Sto solo chiedendo, domanda teorica, cosa ne pensate, sarà utile se c'è la possibilità di rompere i dati in più varianti possibili? Sì o no.

 
Andrey Dik:

...

Sto solo chiedendo, una domanda teorica, pensi che sarebbe utile poter scomporre i dati in più opzioni possibili? Sì o no.

Non ha senso discutere di compiti che sono banalizzati dal "numero, non dall'abilità". Per esempio, se uno scavatore può scavare una trincea ad una distanza di n metri in un giorno, allora m scavatori possono scavare la stessa trincea ad una distanza di m*n metri per lo stesso tempo. Cosa c'è da discutere? Se la criticità del tempo di scavo di una trincea, bisogna dividere il tempo rimanente prima della scadenza in giorni per la distanza che uno scavatore può scavare al giorno e prevedere qualche scavatore in più per gli imprevisti. La soluzione è banale e non c'è niente da discutere.

È possibile discutere i compiti la cui soluzione non è così banale, per esempio, come aumentare la produttività dello scavo della stessa trincea con meno scavatori per lo stesso tempo? Ci sono già opzioni emergenti, per esempio: sostituire gli scavatori con un escavatore o migliorare le loro pale, ecc.

 
Yury Reshetov:

Non ha senso discutere di problemi banalmente risolti da "numeri, non abilità". Per esempio, se uno scavatore può scavare una trincea di n metri in un giorno, allora m scavatori possono scavare la stessa trincea di m*n metri nello stesso tempo. Cosa c'è da discutere? Se il tempo critico per scavare una trincea, è necessario dividere il tempo rimanente alla scadenza per il numero di scavatori e prevedere diversi scavatori aggiuntivi per circostanze impreviste. La soluzione è banale e non c'è niente da discutere.

È possibile discutere di compiti la cui soluzione non è così banale, per esempio, come aumentare la produttività dello scavo della stessa trincea con meno scavatori per lo stesso tempo? Ci sono già opzioni emergenti, per esempio: sostituire gli scavatori con gli escavatori o migliorare le pale, ecc.

La risposta è florida, la prendo come un sì.

Supponiamo che io abbia un rack di 64 cluster a casa, ognuno con 4 CPU a 8 core, perché non dovrei usarlo per questo scopo? Soprattutto se mi farà bene.

 

Ci siamo agitati per niente qui per 191 pagine. È ora che tutti tornino a casa a mani vuote.

Vedere https://www.mql5.com/ru/forum/3457/page3396#comment_2939962

Cito:

Vladimir Karputov:

Questo è tutto. L'apprendimento automatico non è più necessario. Tutti sono battuti da una normale suite per ufficio

Интересное и Юмор
Интересное и Юмор
  • www.mql5.com
Форум трейдеров MQL5.community