Come si valuta praticamente il contributo di un input "specifico" al NS? - pagina 2

 
nikelodeon:

Qual è la sorpresa?


Beh, prima di tutto, ho scoperto subito un errore persistente).

In secondo luogo, ho pensato che rimuovendo gli input, avrei abbassato l'informatività degli input in modo che l'efficacia del NS nel suo complesso sarebbe stata ridotta. Alcuni input si deteriorano molto, altri poco. E forse troverò tali input, che non influiscono affatto, e li rimuoverò per semplificare la rete. Certo, ho trovato degli ingressi "vuoti", ho trovato degli ingressi senza i quali il NS è incompetente, ma ho anche trovato degli ingressi, togliendo i quali aumento il risultato del NS nel suo insieme. Questo è una sorpresa per me, o la formazione è cattiva, o gli input sono troppo contraddittori e semplicemente dannosi.

Tutto sommato, cibo per la mente per qualche giorno.

 
Figar0:


Beh, prima di tutto ho scoperto immediatamente un errore di vecchia data)

In secondo luogo, ho pensato che rimuovendo gli input, avrei abbassato l'informatività degli input in modo che l'efficacia del NS nel suo complesso sarebbe stata ridotta. Alcuni input si deteriorano molto, altri poco. E forse troverò tali input, che non influiscono affatto, e li rimuoverò per semplificare la rete. Certo, ho trovato degli ingressi "vuoti", ho trovato degli ingressi senza i quali il NS è incompetente, ma ho anche trovato degli ingressi, togliendo i quali aumento il risultato del NS nel suo insieme. Questo è una sorpresa per me, o la formazione è cattiva, o gli input sono troppo contraddittori e semplicemente dannosi.

Così ho avuto cibo per pensare per diversi giorni.


potrebbe risultare che nel prossimo allenamento (su un campione diverso) saranno necessari...
 
Figar0:

Non proprio venerdì, ma ...

C'è un NS, qualsiasi NS, c'è un input A={A1, A2, .... A20}. Allenare il NS e ottenere un risultato soddisfacente. Come valutare praticamente il contributo di ogni elemento dell'input A1, A2, ... A20 a questo risultato?

Le opzioni che mi vengono in mente sono:

1) Somma e calcola in qualche modo tutti i pesi con cui l'elemento passa attraverso la rete. Non mi è molto chiaro come farlo, dovrei immergermi nel funzionamento della rete e calcolare in qualche modo alcuni coefficienti, ecc.

2) Provate ad "azzerare" in qualche modo, o per esempio ad invertire un elemento del vettore di input e vedere come influisce sul risultato finale. Per il momento mi sono deciso a farlo.

Ma prima di realizzare questa seconda variante ho deciso di chiedere un consiglio. Chi può aver pensato a questo argomento più a lungo di me? Forse qualcuno può consigliare un libro-articolo?

Un metodo comune ed efficace è quello di analizzare i pesi NS dopo l'allenamento. I pesi sono inizializzati in modo che i loro valori non siano significativamente diversi da zero, per esempio, media 0, deviazione standard 0,1. Dopo l'addestramento, i pesi relativi agli ingressi insignificanti saranno modulo vicino a zero, mentre i pesi relativi agli ingressi significativi saranno molto diversi da zero. Testato - funziona su dati sintetici.
 
LeoV:

Il grado di influenza di ogni input è praticamente impossibile da valutare . Ci sono tutti i tipi di formule matematiche, e un software specializzato può calcolare automaticamente il grado di influenza. Ma tutti questi calcoli sono solo un valore approssimativo, che non dice molto, perché può avere un grande margine di errore.


Sì, sono generalmente consapevole di questo, sarebbe più logico analizzare gli ingressi nella stessa statistica, ma è associato a grandi costi di lavoro di trasferire lì in principio un sistema di lavoro. Capisco anche tutta l'ambiguità dell'interpretazione di questi esperimenti. Ma c'è un beneficio e questo è sicuro.

 
Vizard:

Potrebbe risultare che nel prossimo allenamento (su un campione diverso) saranno necessari...
Questo è probabilmente il caso, ma c'è un NS, è addestrato, funziona, quindi può fare a meno degli input scartati e ha senso scartarli per semplificare la rete, migliorare la sua capacità di generalizzare e migliorare la qualità dell'apprendimento con meno sforzo.
 
Figar0:
Suppongo di sì, ma c'è un NS, è addestrato, funziona, quindi può fare a meno degli input scartati e ha senso scartarli per semplificare la rete, migliorare la sua generalizzabilità e migliorare la qualità dell'apprendimento a un costo inferiore.
+100500. Sono d'accordo. Che senso hanno gli ingressi ridondanti se le prestazioni della rete non degradano senza di essi? Dobbiamo sbarazzarci di loro, di sicuro.
 
alexeymosc:
Un metodo comune ed efficace è quello di analizzare i pesi NS dopo l'allenamento. I pesi sono inizializzati in modo che i loro valori non siano significativamente diversi da zero, per esempio, media 0, deviazione standard 0,1. Dopo l'addestramento, i pesi relativi agli input insignificanti saranno modulo vicino a zero, mentre i pesi relativi agli input significativi saranno molto diversi da zero. Testato - funziona su dati sintetici.


Beh, questa è fondamentalmente la prima cosa che mi è venuta in mente, ma non riuscivo a pensare a come implementare tale analisi nel mio sistema in modo più semplice. Ecco perché ho seguito il metodo inverso.

 
Notate cosa ha scritto Leonid, e ha dannatamente ragione. Trovare l'influenza degli input sull'output della rete è un compito impossibile. Sì, è possibile vagliare quelli inutili, sono d'accordo, ma è praticamente impossibile determinare l'influenza di questo o quell'input sull'output.

Ora immaginate la situazione. Avete trovato 2 ingressi che non lasciano scaricare l'uscita netta. Si aggiunge un terzo ingresso che migliora notevolmente il funzionamento della rete. Che cosa conclude? Che questo input ha un forte impatto sull'output netto. Infatti, la terza entrata produrrà qualche perturbazione a breve termine solo una o due volte durante l'intero periodo di trading. Ma è questa perturbazione che sarà decisiva. Anche se il fatto stesso del disturbo sarà insignificante. Così come la rimozione di una delle prime due voci non vi darà un risultato soddisfacente. L'altro è dirigere il lavoro nella seguente direzione.

Quando si addestra una rete, si cercano i minimi locali della funzione. Per essere più precisi, cerchiamo il minimo globale di un errore ma ci spostiamo dal minimo locale a quello globale.

Incontro spesso una situazione in cui un minimo locale di una funzione mostra risultati ideali nel futuro.

Il compito è semplice: selezionare tali ingressi alla rete (non dovremo cambiarli in seguito) che permetterebbero alla rete di avere minimi locali durante l'addestramento, che li guadagneranno in futuro.

Diciamo che durante l'allenamento si hanno in media circa 10-20 minimi locali, e almeno uno di essi è corretto. Ma è meglio scegliere il maggior numero possibile di minimi locali redditizi......

Come ti piace questo problema????? Questo è più simile alla realtà....
 
nikelodeon:
Notate cosa ha scritto Leonid, e ha dannatamente ragione. Trovare l'influenza degli input sull'output della rete è un compito impossibile. Sì, è possibile vagliare quelli inutili, sono d'accordo, ma è praticamente impossibile determinare l'influenza di questo o quell'input sull'output.

Ora immaginate la situazione. Avete trovato 2 ingressi che non lasciano scaricare l'uscita netta. Si aggiunge un terzo ingresso che migliora notevolmente il funzionamento della rete. Che cosa conclude? Che questo input ha un forte impatto sull'output netto. Infatti, la terza entrata produrrà qualche perturbazione a breve termine solo una o due volte durante l'intero periodo di trading. Ma è questa perturbazione che sarà decisiva. Anche se il fatto stesso del disturbo sarà insignificante. Così come la rimozione di una delle prime due voci non vi darà un risultato soddisfacente. L'altra cosa è dirigere il lavoro in questa direzione.

Anche questo è vero. C'è anche la situazione inversa: teoricamente, è possibile che ci siano due input con alta informatività e uno con bassa informatività. Logicamente, vorresti rimuovere il terzo, ma se lo fai, una complessa quadro-interrelazione (tre ingressi - uscita) sarà distrutta, e i due ingressi rimanenti non saranno più così informativi. E per rivelare queste complesse interrelazioni è necessario applicare tale apparato matematico spaziale, e tecnicamente viene rilasciato, che wow-oho (beh, almeno per me). Tutto è complicato, non pensate che sia facile. NS è all'80% di ricerca empirica.
 
nikelodeon:

Ora immaginate la situazione. Avete trovato 2 ingressi che non permettono alla rete di andare avanti. Aggiungete un terzo input che vi aiuta molto. Che conclusione ne trae? Che questo input ha un forte impatto sull'output netto. Infatti, la terza entrata produrrà qualche perturbazione a breve termine solo una o due volte durante l'intero periodo di trading. Ma è questa perturbazione che sarà decisiva. Anche se il fatto stesso del disturbo sarà insignificante. Come se si rimuovesse una delle prime due voci, non si otterrebbe un risultato soddisfacente. L'altra cosa è dirigere il lavoro in questa direzione.

È chiaro che gli input sono interconnessi e l'interpretazione dei risultati di tali esperimenti è l'aspetto più importante. Escludo le voci non solo una per una, ma anche le loro diverse combinazioni da 1 a 5 (penso che estenderò questa gamma alla metà di tutte le voci), analogamente alla tua aggiunta di una voce in più e guardare i cambiamenti nella risposta di NS, sia in fase di formazione che in avanti.

nikelodeon:

Quando si addestra una rete, si cercano i minimi locali della funzione. Per essere più precisi, cerchiamo il minimo globale di un errore ma ci spostiamo dal minimo locale a quello globale.

Non di rado o addirittura spesso incontro questi casi in cui un minimo locale di una funzione mostra risultati ideali nel futuro.

Il compito è semplice: trovare tali input alla rete (non dovremo cambiarli in seguito) che permetterebbero alla rete durante l'addestramento di avere minimi locali che guadagnano risultati in futuro.

Diciamo che durante l'allenamento si hanno in media circa 10-20 minimi locali, e almeno uno di essi è corretto. Ma è meglio scegliere il maggior numero possibile di minimi locali redditizi......

Come ti piace questo problema????? Questo è più simile alla realtà....

Le realtà sono diverse per tutti) In particolare non sto cercando il minimo errore, sto cercando il massimo profitto, il minimo drawdown, un PF soddisfacente, ecc. In altre parole ho dei massimi locali, ma non cambia la loro essenza. Il mio problema è risolto poco o male, ma per molto tempo...