Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 3283
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Dies ist der Kern der zeilenweisen Berechnung der Matrix.
PearsonCorrM ist 40-50 mal schneller als Algibovs zeilenweiser Algorithmus, wahrscheinlich wird selbst ein schnelles selbstgemachtes Tool einen solchen Geschwindigkeitsunterschied nicht überwinden.
Ich frage mich, was passiert, wenn eine Matrix berechnet wird und die gleiche Matrix mit dem schnellen Algibov-Algorithmus PearsonCorrM berechnet wird. Wer wäre schneller?
PearsonCorrM ist 40-50 mal schneller als Algibovs zeilenweiser Algorithmus, wahrscheinlich wird auch ein schneller selbst entwickelter Algorithmus einen solchen Geschwindigkeitsunterschied nicht überwinden.
Hier ist der doppelte Rückstand des hausgemachten Algorithmus von PearsonCorrM.
Ich habe die Geschwindigkeit des CatBoost-Trainings in Python und über die Kommandozeile verglichen:
- 20% schneller vom Start bis zum Speichern der Modelle, einschließlich des Lesens der Proben
- 12% schneller der Lernprozess selbst
Getestet mit demselben Modell - das Trainingsergebnis ist identisch.
Natürlich ist die Kommandozeile schneller.
- 20% schneller vom Start bis zum Speichern der Modelle, einschließlich des Lesens von Beispielen
- 12% schneller der Lernprozess selbst
Getestet mit demselben Modell - das Trainingsergebnis ist identisch.
Natürlich ist die Kommandozeile schneller.
Benutzen Sie noch die Kommandozeile, um EXEs auszuführen?
Sie können sie über WinExec ausführen und sogar im Tester optimieren.
Ich habe Catboost nicht ausprobiert, aber ich denke, man kann etwas machen.
Ein weiteres mögliches Problem: Wenn die Modelldatei sehr groß ist, kann das Schreiben sehr lange dauern, d.h. die Datei ist bereits vorhanden, aber noch nicht zu Ende geschrieben. Es kann notwendig sein, die Datei anzuhalten oder zu überprüfen, dass die Datei nicht durch den Schreibvorgang geschlossen wird....Das Schwierigste ist, den Zeitpunkt zu bestimmen, an dem das Training beendet ist. Ich tue das, indem ich das Erscheinen der Modelldatei im Ordner agent_dir+"\model.bin" 1 Mal pro Sekunde überprüfe. Wo Catboost die Modelldatei ablegt, weiß ich nicht, vielleicht muss ich sie woanders suchen.
Verwenden Sie immer noch die Befehlszeile, um EXEs auszuführen?
Sie können sie über WinExec ausführen und sogar im Tester optimieren.
Ich führe bat-Dateien aus - bisher ist das die bequemste Option für die aktuellen Aufgaben.
Bislang gibt es nur eine Aufgabe für den automatischen Start des Trainings nach dem Erhalt einer Probe - die Erkundung. Ich plane, später eine automatische Bat-Datei dafür zu erstellen.
Ich habe Catboost noch nicht ausprobiert, aber ich denke, wir können uns etwas einfallen lassen.
Am schwierigsten ist es, den Zeitpunkt des Trainingsendes zu bestimmen. Ich tue das, indem ich das Erscheinen der Modelldatei im Ordner agent_dir+"\model.bin" 1 Mal pro Sekunde überprüfe. Wo Catboost die Modelldatei ablegt, weiß ich nicht, vielleicht muss ich sie woanders suchen.
Ein weiteres mögliches Problem: Wenn die Modelldatei sehr groß ist, kann das Schreiben sehr lange dauern, d.h. die Datei ist bereits vorhanden, aber noch nicht zu Ende geschrieben. Möglicherweise müssen Sie die Datei anhalten oder prüfen, ob sie nicht durch den Schreibprozess geschlossen wurde....Ihre Lösung ist interessant - ich werde sie mir ansehen und vielleicht zur Anwendung bringen.
Aber ich denke, es gibt eine Möglichkeit, eine Antwort vom ausführbaren Programm zu erhalten - ich wollte diesen Ansatz verwenden.
Option mit Dateien - wenn man einen Bootnik laufen lässt, dann wiederum - man kann einfach eine neue Datei am Ende der Aufgabe erstellen.
Vielleicht ist die relative Erfolgsrate der -1 und 0 Varianten in der Stichprobengröße des Zuges, und sie sollte reduziert werden? Im Allgemeinen scheint es, dass Recall auf dies reagiert.
Sollten Ihrer Meinung nach die Ergebnisse solcher Kombinationen in unserem Fall miteinander vergleichbar sein? Oder sind die Daten unwiederbringlich veraltet?
Ich habe die Zugstichprobe in drei Teile aufgeteilt, drei Sätze für Variante -1 und Variante 0 trainiert und auch nur den ursprünglichen Zug als drei Stichproben trainiert.
Das ist das Ergebnis.
Ich habe diese Generalisierung PR=(Precision-0.5)*Recall
Es scheint, dass das Training auf Kosten des 2. und 3. Teils der Zugstichprobe geht - jetzt habe ich sie kombiniert und das Training durchgeführt - mal sehen, was passiert.
Es sieht jedoch so aus, als wäre dies keine schlechte Methode, um die Zufälligkeit des Trainings abzuschätzen. Idealerweise sollte das Training in jedem Segment relativ erfolgreich sein, da es sonst keine Garantie dafür gibt, dass das Modell morgen einfach nicht mehr funktioniert.
Es sieht so aus, als ginge das Training auf Kosten des 2. und 3. Teils des Musterzuges - ich habe sie jetzt kombiniert und das Training laufen lassen - mal sehen, was passiert.
Es sieht jedoch so aus, als wäre dies keine schlechte Methode, um die Zufälligkeit des Trainings zu beurteilen. Idealerweise sollte das Training in jedem Segment relativ erfolgreich sein, da es sonst keine Garantie dafür gibt, dass das Modell morgen einfach nicht mehr funktioniert.
Und hier sind die Ergebnisse - die letzten beiden Spalten
Die Ergebnisse haben sich in der Tat verbessert. Wir können davon ausgehen, dass das Trainingsergebnis umso besser ist, je größer die Stichprobe ist.
Wir sollten versuchen, mit dem ersten und zweiten Teil der Trainingsstichprobe zu trainieren - und wenn die Ergebnisse nicht viel schlechter sind als mit dem zweiten und dritten Teil, dann kann der Faktor der Probenfrische als weniger bedeutsam angesehen werden als das Volumen.
Ich habe schon oft über die "Vorhersagekraft von Prädiktoren" geschrieben, die als Abstand zwischen zwei Vektoren berechnet wird.
Ich bin auf eine Liste von Tools zur Berechnung des Abstands gestoßen:
Dies ist neben dem Standard, der seine eigene Reihe von Abständen hat
Und hier ist das Ergebnis - die letzten beiden Spalten
Die Ergebnisse haben sich in der Tat verbessert. Wir können davon ausgehen, dass das Trainingsergebnis umso besser ist, je größer die Stichprobe ist.
Man muss versuchen, auf 1 und 2 Teilen der Trainingsstichprobe zu trainieren - und wenn die Ergebnisse nicht viel schlechter sind als auf 2 und 3 Teilen, dann kann der Faktor der Probenfrische als weniger bedeutend angesehen werden als das Volumen.
Ich habe bereits mehrfach über die "Vorhersagekraft von Prädiktoren" geschrieben, die als Abstand zwischen zwei Vektoren berechnet wird.
Ich bin auf eine Liste von Tools zur Berechnung des Abstands gestoßen:
Dies ist neben dem Standard, der seine eigene Reihe von Abständen hat
Können Sie mir ein Beispiel zeigen, wie man es benutzt?