Diskussion zum Artikel "Neuronale Netze leicht gemacht (Teil 6): Experimentieren mit der Lernrate des neuronalen Netzwerks"

 

Neuer Artikel Neuronale Netze leicht gemacht (Teil 6): Experimentieren mit der Lernrate des neuronalen Netzwerks :

Wir haben zuvor verschiedene Arten von neuronalen Netzen zusammen mit ihren Implementierungen betrachtet. In allen Fällen wurden die neuronalen Netze mit der Gradientenverfahren trainiert, für die wir eine Lernrate wählen müssen. In diesem Artikel möchte ich anhand von Beispielen zeigen, wie wichtig eine richtig gewählte Rate ist und welchen Einfluss sie auf das Training des neuronalen Netzes hat.

Das dritte Experiment ist eine leichte Abweichung vom Hauptthema des Artikels. Die Idee dazu entstand während der ersten beiden Experimente. Also beschloss ich, es mit Ihnen zu teilen. Bei der Beobachtung des Trainings des neuronalen Netzes ist mir aufgefallen, dass die Wahrscheinlichkeit des Ausbleibens eines Fraktals um 60-70 % schwankt und selten unter 50 % fällt. Die Wahrscheinlichkeit des Auftretens eines Fraktals, egal ob Kauf oder Verkauf, liegt bei etwa 20-30%. Das ist ganz natürlich, da es viel weniger Fraktale auf dem Chart gibt als Kerzen innerhalb von Trends. Unser neuronales Netzwerk ist also übertrainiert, und wir erhalten die oben genannten Ergebnisse. Fast 100 % der Fraktale werden übersehen, und nur seltene können erkannt werden.  

Training des EA mit der Lernrate von 0,01

Um dieses Problem zu lösen, habe ich beschlossen, die Ungleichmäßigkeit der Stichprobe ein wenig zu kompensieren: Für das Fehlen eines Fraktals im Referenzwert habe ich beim Training des Netzes 0,5 statt 1 angegeben.

            TempData.Add((double)buy);
            TempData.Add((double)sell);
            TempData.Add((double)((!buy && !sell) ? 0.5 : 0));

Dieser Schritt brachte einen guten Effekt. Der Expert Advisor, der mit einer Lernrate von 0,01 und einer aus früheren Experimenten gewonnenen Gewichtsmatrix läuft, zeigt nach 5 Trainingsepochen eine Fehlerstabilisierung von etwa 0,34. Der Anteil der verfehlten Fraktale sank auf 51 % und der Anteil der Treffer stieg auf 9,88 %. Sie können aus dem Diagramm erkennen, dass der EA Signale in Gruppen generiert und somit einige bestimmte Zonen aufweist. Offensichtlich erfordert die Idee weitere Entwicklung und Tests. Aber die Ergebnisse zeigen, dass dieser Ansatz recht vielversprechend ist. 

Lernen mit 0,5 für kein Fraktal

Autor: Dmitriy Gizlyk