Confrontando i risultati dell'addestramento della tabella di moltiplicazione, la vostra rete perde notevolmente. Su ALGLIB la rete 2,5,1 per 100 epoche di addestramento(https://www.mql5.com/ru/forum/8265/page2) dà risposte migliori della vostra con 1000000 epoche. Anche la velocità di calcolo di 10000000000 epoche non è piacevole.
A quanto pare il metodo di apprendimento non è molto efficiente. Ma comunque - grazie per il vostro lavoro, è più facile da capire in un piccolo codice che in ALGLIB. Ma dobbiamo ancora fare un passo avanti.
Un confronto sbagliato, tutti i 100 esempi sono mostrati nella variante alglib per l'apprendimento, ecco perché le risposte sono più corrette. Penso che se si riducono gli esempi con le risposte in alglib, i risultati non saranno migliori.
Ciao, ho apprezzato molto il fatto che tu abbia dedicato del tempo a creare questa libreria nativa!
Ho provato a fare una codifica a caldo e ho aggiunto relu al livello nascosto e una funzione Softmax alla chiamata del livello di uscita. Funziona e produce un risultato totale del 100%.
Ma l'addestramento si è incasinato, anche quando si è passati di nuovo a Sigmoud, iRprop non è adatto alla classificazione? Fornisce praticamente lo stesso risultato indipendentemente dall'input. A volte cambia, ma non molto.
Seconda domanda: ho visto che Tanh e Sigmod sono trattati in modo diverso nel metodo Lern, non ho ancora capito questa parte del codice, ma quale dei due è appropriato per Relu?
northedan: Grazie per questo fantastico contributo... Potresti spiegarmi come posso determinare l'errore permissivo?
//+------------------------------------------------------------------+//| Imparare|//+------------------------------------------------------------------+void CNetMLP::Learn(int c_npat, // numero di schemi didatticidouble &c_inp[], // dati di ingressodouble &c_res[], // dati in uscitaint c_nep, // numero di epoche di apprendimentodouble c_err) // errore ammissibile
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Confrontando i risultati dell'addestramento della tabella di moltiplicazione, la vostra rete perde notevolmente. Su ALGLIB la rete 2,5,1 per 100 epoche di addestramento(https://www.mql5.com/ru/forum/8265/page2) dà risposte migliori della vostra con 1000000 epoche. Anche la velocità di calcolo di 10000000000 epoche non è piacevole.
A quanto pare il metodo di apprendimento non è molto efficiente. Ma comunque - grazie per il vostro lavoro, è più facile da capire in un piccolo codice che in ALGLIB. Ma dobbiamo ancora fare un passo avanti.
Un confronto sbagliato, tutti i 100 esempi sono mostrati nella variante alglib per l'apprendimento, ecco perché le risposte sono più corrette. Penso che se si riducono gli esempi con le risposte in alglib, i risultati non saranno migliori.
Ciao, ho apprezzato molto il fatto che tu abbia dedicato del tempo a creare questa libreria nativa!
Ho provato a fare una codifica a caldo e ho aggiunto relu al livello nascosto e una funzione Softmax alla chiamata del livello di uscita. Funziona e produce un risultato totale del 100%.
Ma l'addestramento si è incasinato, anche quando si è passati di nuovo a Sigmoud, iRprop non è adatto alla classificazione? Fornisce praticamente lo stesso risultato indipendentemente dall'input. A volte cambia, ma non molto.
Seconda domanda: ho visto che Tanh e Sigmod sono trattati in modo diverso nel metodo Lern, non ho ancora capito questa parte del codice, ma quale dei due è appropriato per Relu?
Grazie per questo fantastico contributo... Potresti spiegarmi come posso determinare l'errore permissivo?