Ausgabe: TotalBase.dat (binäre Trajektoriendaten).
Ausgabe: TotalBase.dat (binäre Trajektoriendaten).
Wie können wir also Schritt 1 ausführen, weil wir keinen zuvor trainierten Encoder (Enc.nnw) und Actor (Act.nnw) haben und daher Research.mq5 nicht ausführen können, und wir haben keine Signals\Signal1. csv-Datei, so dass wir auch ResearchRealORL.mq5 nicht ausführen können ?
Sehen Sie sich den neuen Artikel an: Neuronale Netzwerke im Handel: Zustandsraum-Modelle.
Autor: Dmitriy Gizlyk
Wie ich verstanden habe, müssen wir in Ihrer Pipeline in Schritt 1 Research.mq5 oder ResearchRealORL.mq5 mit den folgenden Details ausführen:
Ausgabe: TotalBase.dat (binäre Trajektoriendaten).
Ausgabe: TotalBase.dat (binäre Trajektoriendaten).
Wie können wir also Schritt 1 ausführen, weil wir keinen zuvor trainierten Encoder (Enc.nnw) und Actor (Act.nnw) haben , so dass wir Research.mq5 nicht ausführen können, und wir haben keine Signals\Signal1. csv-Datei, so dass wir ResearchRealORL.mq5 auch nicht ausführen können ?
Hallo,
In Research.mq5 finden Sie
//--- Modelle laden float temp; //--- if(!Encoder.Load(FileName + "Enc.nnw", temp, temp, temp, dtStudied, true)) { CArrayObj *encoder = new CArrayObj(); if(!CreateEncoderDescriptions(encoder)) { delete encoder; return INIT_FAILED; } if(!Encoder.Create(encoder)) { delete encoder; return INIT_FAILED; } delete encoder; } if(!Actor.Load(FileName + "Act.nnw", temp, temp, temp, dtStudied, true)) { CArrayObj *actor = new CArrayObj(); CArrayObj *critic = new CArrayObj(); if(!CreateDescriptions(actor, critic)) { delete actor; delete critic; return INIT_FAILED; } if(!Actor.Create(actor)) { delete actor; delete critic; return INIT_FAILED; } delete actor; delete critic; } //---
Wenn Sie also kein vortrainiertes Modell haben, generiert EA Modelle mit zufälligen Parametern. Und Sie können Daten von zufälligen Trajektorien sammeln.
Über ResearchRealORL.mq5 können Sie mehr im Artikel lesen.
- www.mql5.com
Ein Moderator hat die Formatierung dieses Mal korrigiert. Bitte formatieren Sie den Code in Zukunft richtig; Beiträge mit unsachgemäß formatiertem Code können entfernt werden.
in trajectory.mqh, layer 2-4 (um Zeile 604) im Mamba-Ordner
gibt es ein Problem:
hat new CLayerDescription() in die Mamba-Schleife verschoben, so dass jede der 3 Schichten ihre eigene Zuweisung erhält
so würde ich es schreiben.
for(int i = 2; i <= 4; i++) { if(!(descr = new CLayerDescription())) return false; descr.type = defNeuronMambaOCL; descr.window = BarDescr; //window descr.window_out = 4 * BarDescr; //Innere Dimension prev_count = (int)(descr.count = HistoryBars); //Einheiten descr.batch = 1 e4; descr.activation = None; descr.optimization = ADAM; if(!encoder.Add(descr)) { delete descr; return false; } }
Kann mir jemand sagen, ob ich richtig oder falsch liege?
in trajectory.mqh, Ebene 2-4 (um Zeile 604) im Mamba-Ordner
Ich glaube, es gibt ein Problem:
hat new CLayerDescription() in die Mamba-Schleife verschoben, so dass jede der 3 Ebenen ihre eigene Zuweisung erhält
So würde ich es schreiben.
Kann mir jemand sagen, ob ich richtig oder falsch liege?
Guten Tag, Seyedsoroush Abtahiforooshani.
In diesem Fall bilden wir keine Schicht, sondern machen nur eine Beschreibung ihrer Architektur. Und das Programm generiert Neuronenschichten auf der Grundlage dieser Beschreibung. In der ersten Variante, wenn descr = new CLayerDescription() außerhalb des Arrays gebildet wird, bilden wir ein descr-Objekt für einzelne Schichten und übergeben seinen Zeiger die erforderliche Anzahl von Malen. Das descr-Objekt ändert sich bei der Bildung der Modellschichten nicht. Deshalb werden die Neuronenschichten in der Architektur identisch gebildet, aber jede von ihnen erhält ihre eigenen Parameter.
Wenn Sie die Objektbildung in eine Schleife verlagert haben, ändert sich für das zu erstellende Modell nichts. Es werden lediglich zusätzliche Duplikate erstellt , die sofort nach der Bildung des Modells gelöscht werden. Dies führt zu zusätzlichen Operationen und Speicherverbrauch bei der Bildung des Modells. Es hat keine Auswirkungen auf den Modellbetrieb.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Neuronale Netze im Handel: Zustandsraummodelle :
Ein Großteil der bisher untersuchten Modelle basiert auf der Transformer-Architektur. Bei langen Sequenzen können sie jedoch ineffizient sein. In diesem Artikel werden wir uns mit einer alternativen Richtung der Zeitreihenprognose auf der Grundlage von Zustandsraummodellen vertraut machen.
In jüngster Zeit hat sich das Paradigma der Anpassung großer Modelle an neue Aufgaben immer mehr durchgesetzt. Diese Modelle werden mit umfangreichen Datensätzen trainiert, die beliebige Rohdaten aus einem breiten Spektrum von Bereichen enthalten, darunter Text, Bilder, Audio, Zeitreihen und vieles mehr.
Obwohl dieses Konzept nicht an eine bestimmte Architektur gebunden ist, basieren die meisten Modelle auf einer einzigen Architektur – dem Transformer und seiner Kernschicht, der Selbstaufmerksamkeit (Self-Attention). Die Effizienz der Selbstaufmerksamkeit wird auf die Fähigkeit zurückgeführt, Informationen innerhalb eines kontextuellen Fensters zu verdichten, was die Modellierung komplexer Daten ermöglicht. Diese Eigenschaft hat jedoch grundlegende Einschränkungen: die Unfähigkeit, etwas zu modellieren, was über das endliche Fenster hinausgeht, und die quadratische Skalierung in Bezug auf die Fensterlänge.
Eine alternative Lösung für Sequenzmodellierungsaufgaben besteht in der Verwendung strukturierter Sequenzmodelle im Zustandsraum (Space Sequence Models, SSM). Diese Modelle können als eine Kombination aus rekurrenten neuronalen Netzen (RNNs) und faltigen neuronalen Netzen (CNNs) interpretiert werden. Diese Klasse von Modellen kann sehr effizient mit linearer oder nahezu linearer Skalierung der Sequenzlänge berechnet werden. Außerdem verfügt es über inhärente Mechanismen zur Modellierung weitreichender Abhängigkeiten in bestimmten Datenmodalitäten.
Ein Algorithmus, der die Verwendung von Zustandsraummodellen für die Zeitreihenprognose ermöglicht, wurde in dem Beitrag „Mamba: Linear-Time Sequence Modeling with Selective State Spaces“. In diesem Beitrag wird eine neue Klasse von selektiven Zustandsraummodellen vorgestellt.
Autor: Dmitriy Gizlyk