Articolo: Previsione dei prezzi con reti neurali - pagina 13

 
Ulterior:

Dobrovo vam vremia sutok i izvinite za translit.

NO PER FAVORE!

 
Neutron:

Ok, ma vorrei una teoria.

Ecco il ragionamento ad alta voce. Per un singolo strato NS con numero di ingressi N, abbiamo N sinapsi i cui pesi determinano univocamente il sistema N nel caso generale di equazioni non lineari. È chiaro che per risolvere un tale sistema abbiamo bisogno di un campione di allenamento di N vettori, ciascuno composto da N elementi. In questo caso non funziona in nessun altro modo. Con due strati NS il numero di ingressi deve essere inferiore al numero totale di vettori di addestramento N per n, dove n è il numero di sinapsi nel secondo strato, quindi la lunghezza dei vettori di addestramento ha lunghezza N-n.

Per un NS a 3 strati, l'ordine di ragionamento è lo stesso.

Così:

1. Procediamo dalla profondità di immersione di cui abbiamo bisogno e determiniamo la dimensionalità dell'input NS.

2. Poi considerando l'architettura (numero di strati) di NS contiamo il numero di sinapsi, e otteniamo la dimensione ottimale del campione di allenamento.


Il ragionamento è buono, ma è empirico... cioè è difficile costruire un algoritmo che dipenda solo dal tipo e dalla rappresentazione dei dati di input su di essi.

 
Sergey_Murzinov:

Una delle cose più importanti (secondo me) è la preparazione dei dati, per fare questo

1. Cercate di ridurre la correlazione degli input. In altre parole, gli input dovrebbero essere il più possibile indipendenti dal punto di vista statistico.

2. alla normalizzazione dei vettori di input, è necessario ottenere un aumento dell'entropia - aumentando così la quantità delle informazioni sottoposte a NS alla conservazione dello stesso volume dei dati di input.

Un controllo della qualità dei dati è obbligatorio, per esempio, usando il metodo Kolmogorov-Smirnov o/e con l'esponente di Hurst.


Selezionando l'architettura di rete possiamo ridurre l'errore.

Non sono d'accordo, qualsiasi trasformazione di dati è un cambiamento nell'informatività del campione iniziale. Dov'è il criterio per valutare il criterio del cambiamento dei dati? Penso che tutti coloro che si occupano di NS conoscano la vecchia barzelletta che è successa durante il prossimo boom di NS. Quando l'esercito americano ha cercato di usare NS per sistemi di tiro terra-terra. Uno dei componenti era una rete di riconoscimento dei modelli, che ha avuto molto successo nell'apprendimento ecc., ma per qualche motivo ha riconosciuto i serbatoi nel tempo piovoso, e quando gli sono stati presentati i dati di una struttura di paesaggio diversa, ha fatto un brutto errore. La ragione era che la rete aveva imparato a riconoscere bene un paesaggio, ma non un carro armato.


Se cambiamo i dati, il problema può essere lo stesso - la rete selezionerà solo le sequenze (modalità) che appartengono alla serie normalizzante, perché in linea di principio possiamo considerare il processo di normalizzazione stesso come una componente delle fluttuazioni della serie temporale.

 
Ora ho creato un NS non lineare a due strati e vedo che la sua capacità predittiva è leggermente superiore rispetto a quella non lineare a uno strato. Ma la dispersione delle previsioni è notevolmente inferiore, il che è bello. Si può anche notare che l'NS mostra notevoli proprietà di lisciatura quando il numero di ingressi è aumentato. Nel mio caso, però, il numero di vettori di allenamento aumenta proporzionalmente, forse la ragione porta ad un aumento del campione di allenamento. È necessario separare questi effetti in qualche modo...
 

Questo mostra i risultati del test della capacità predittiva dei due NS.


La figura mostra in rosso la serie temporale originale (RT), in blu la previsione a 1 bar in avanti della rete lineare a un solo strato, e in verde la rete non lineare a due strati. La profondità di immersione è la stessa in entrambi i casi. Si può vedere che per questo caso artificiale c'è un marcato residuo dei dati predetti sul grafico della tendenza BP. Mi chiedo se i miei colleghi esperti osservano questo effetto e, in caso affermativo, a cosa potrebbe essere collegato?

 

rip писал (а):


Non sono d'accordo, qualsiasi conversione di dati è un cambiamento nell'informatività del campione originale. Dov'è il criterio per valutare il criterio del cambiamento dei dati? Penso che tutti coloro che si occupano di NS conoscano la vecchia barzelletta che è successa durante il prossimo boom di NS. Quando l'esercito americano ha cercato di usare NS per sistemi di tiro terra-terra. Uno dei componenti era una rete di riconoscimento dei modelli, che ha avuto molto successo nell'apprendimento ecc., ma per qualche motivo ha riconosciuto i serbatoi nel tempo piovoso, e quando gli sono stati presentati i dati di una struttura di paesaggio diversa, ha fatto un brutto errore. La ragione era che la rete aveva imparato a riconoscere bene un paesaggio, ma non un carro armato.


Se cambiamo i dati, il problema può essere lo stesso - la rete sceglierà solo le sequenze (modalità) che appartengono alla serie normalizzante, perché in linea di principio possiamo considerare il processo di normalizzazione stesso come una componente delle fluttuazioni della serie temporale.

Non sono detto contento. Questo è il punto di vista della maggioranza. Sono contento.

 
Sergey_Murzinov:

rip ha scritto (a):


Non sono d'accordo, qualsiasi trasformazione dei dati è un cambiamento nell'informatività del campione originale. Dov'è il criterio per valutare il criterio del cambiamento dei dati? Credo che tutti coloro che si occupano di NS sappiano di una vecchia barzelletta che è successa durante il prossimo boom di NS. Quando l'esercito americano ha cercato di usare NS per sistemi di tiro terra-terra. Uno dei componenti era una rete di riconoscimento dei modelli, che ha avuto molto successo nell'apprendimento ecc., ma per qualche motivo ha riconosciuto i serbatoi nel tempo piovoso, e quando gli sono stati presentati i dati di una struttura di paesaggio diversa, ha fatto un brutto errore. La ragione era che la rete aveva imparato a riconoscere bene un paesaggio, ma non un carro armato.


Se cambiamo i dati, il problema può essere lo stesso - la rete sceglierà solo le sequenze (modalità) che appartengono alla serie normalizzante, perché in linea di principio possiamo considerare il processo di normalizzazione stesso come una componente delle fluttuazioni della serie temporale.

Non sono detto contento. Questo è il punto di vista della maggioranza. Sono contento.

L'opinione è l'opinione, ma nella pratica è diverso. Ho provato a usare l'algoritmo genetico per ottimizzare l'architettura della rete, e il risultato è interessante - ma ci vuole molto tempo per calcolarlo.

 

Ecco un altro confronto del potere predittivo della rete.


Si tratta di un lavoro di previsione di un NS non lineare a singolo strato (linea blu) e di un NS non lineare a due strati. Qui il singolo strato sembra preferibile.

È interessante confrontare questi risultati di test con quelli di altre architetture NS. Qualcuno può postare i suoi risultati per un confronto?

 

rip писал (а):


L'opinione è l'opinione, ma nella pratica è diverso. Ho provato a usare l'algoritmo genetico per ottimizzare l'architettura della rete, il risultato è interessante - ma ci vuole molto tempo per calcolare.

Se circa 24 ore sono tante, allora sì. Si noti solo che quando si ha a che fare con le reti (operare) lo si fa una volta sola.

 

al neutrone

Nessun risultato fino ad ora, lentamente ci sto prendendo la mano.

Per quanto riguarda il primo post (con la prima foto) cercando di capire cosa intendi. Personalmente non ho notato un ritardo notevole. Al contrario, nelle aree in cui c'è un qualche tipo di schema, esso (la rete) è abbastanza bravo a identificarlo, e l'errore è solo nelle interruzioni delle tendenze (e qui sono casuali, o la dimensione del campione non è sufficiente a stabilire un qualche tipo di schema nella loro comparsa).