Algorithmus zum Kombinieren von Bereichen eines Segments - Hilfe zum Erstellen - Seite 7

 
Aleksey Nikolayev:

Die Frage ist themenfremd und eher philosophisch. Ist man sich darüber im Klaren, dass der Ansatz der Klassifizierung durch Unterteilung der Attribute in Segmente eine diskontinuierliche Abhängigkeit der Outputs von den Inputs impliziert? Das heißt, es kann eine Situation eintreten, in der ein Handel bei einem Satz von Attributen eröffnet wird und nicht bei einem anderen, der sehr, sehr nahe an dem ersten liegt (sie liegen nahe an der Grenze, aber auf gegenüberliegenden Seiten davon). Ich sage nicht, dass dies der falsche Ansatz ist. Ich möchte nur fragen: Steckt dahinter eine Art Händlerintuition oder ist es eine willkürliche Entscheidung?

Ja, theoretisch ist das möglich. Die Binning-Methode setzt jedoch voraus, dass eine Reihe von aufeinanderfolgenden Bäumen auf verschiedenen Prädiktoren aufgebaut wird, was bedeutet, dass die richtige Grenze für ein anderes Merkmal ausgewählt werden kann (sofern dies statistisch gerechtfertigt ist), wodurch der "Fehler" eingeebnet wird.

Aleksey Nikolayev:

Als mögliche Alternative kann eine Klassifizierung mittels logistischer Regression oder der Methode der nächsten Nachbarn vorgeschlagen werden. Dort kann die Ausgabe eine Schätzung der Wahrscheinlichkeit der Zugehörigkeit zu einer Klasse sein, die z. B. zur Bestimmung des Transaktionsvolumens verwendet werden kann. Ich bestehe nicht auf einem bestimmten Algorithmus, sondern interessiere mich nur für den Aspekt des Händlers bei der Auswahl eines bestimmten MO-Algorithmus.

CatBoost liefert auch eine Schätzung der Wahrscheinlichkeit der Klassenzugehörigkeit, aber nach meiner Beobachtung ist es genau das Gegenteil - größeres Vertrauen in seltene Beobachtungen, die nicht oft genug vorkommen, und dies führt zu ihrer Überschätzung, und bei einer unabhängigen Stichprobe wird dies entweder zu einer Fehlklassifizierung oder zu einem noch selteneren Auftreten eines hohen Index führen.

Warum ich CatBoost für den Handel verwende:

1. schneller Algorithmus.

2. Ein moderner und sich weiterentwickelnder Algorithmus mit vielen Fortschritten in MO out of the box.

3. eine eigenständige Möglichkeit, das Modell in MT5 ohne Python und R anzuwenden.

 
Aleksey Vyazmikin:

Die Frage ist hier, wie man "viele wertvolle Abschnitte und giftige Abschnitte" identifiziert - d. h. man muss ihre Austauschbarkeit feststellen oder dies in zwei Durchgängen tun, wie ich bereits vorgeschlagen habe. Oder haben Sie eine andere Möglichkeit?

Ich kenne eine Möglichkeit, dies in nur zwei Durchgängen zu tun. Zuerst erstellen wir eine Karte, dann wählen wir einen Weg. Gerade ohne Karte kann man auch gehen, aber es ist viel größeres Risiko, vor allem wenn Schluchten und Sümpfe auf dem Weg sind, und ein Kompass, Sterne und Sonne fehlen).

Es geht um die Kosten der Maßnahmen und die Verfügbarkeit von Ausgangsdaten. Offensichtlich muss man sich von hier aus das Ziel setzen. Die Bedingungen können unterschiedlich sein. Wir kennen die Anzahl der Punkte und Segmente. Wir kennen die Anzahl der Segmente nicht, aber wir kennen die Anzahl der Punkte, wir kennen die Anzahl der Punkte und Segmente nicht, wir wissen nur, dass es ziemlich viele sind. Wir wissen, dass die Anzahl der Segmente von einem Punkt aus höchstens N beträgt.

Im Allgemeinen muss dieser Teil zuerst formalisiert werden.

 
Aleksey Vyazmikin:

Ja, das ist theoretisch möglich. Die Boosting-Methode setzt jedoch voraus, dass eine Reihe von aufeinanderfolgenden Bäumen auf verschiedenen Prädiktoren aufgebaut wird, was bedeutet, dass die richtige Grenze für ein anderes Merkmal gewählt werden kann (wenn es eine statistische Rechtfertigung gibt), so dass der "Fehler" gemildert wird.

Manchmal hat man das Gefühl, dass es sich gar nicht um einen Fehler handelt, und die Abhängigkeit der Antwort von den Attributen (bei unseren Problemen) kann durchausmanchmal sprunghaft sein.

Aleksey Vyazmikin:

CatBoost liefert auch Schätzungen der Wahrscheinlichkeit der Klassenzugehörigkeit, aber nach meinen Beobachtungen bewirkt es genau das Gegenteil - höheres Vertrauen in seltene Beobachtungen, die nicht oft genug vorkommen, und es führt zu ihrer Überschätzung, und bei einer unabhängigen Stichprobe führt es entweder zu einer falschen Klassifizierung oder zu einem noch selteneren Auftreten eines hohen Index.

Damit meine ich, dass ein trainiertes Modell für jeden bestimmten Satz von Merkmalen die Antwort nicht mit "entweder 0 oder 1" beantwortet, sondern als Zahl auf einer Skala von 0 bis 1. Auf diese Weise funktioniert beispielsweise die logistische Regression. In Zufallswäldern scheint es auch so zu funktionieren, aber ich weiß nicht, ob Sie das meinen oder ob Sie Metriken meinen.

 
Dmitry Fedoseev:

Dimitri, bitte helfen Sie, ich brauche, um die cut[] Array in den Algorithmus von int zu float ändern, aber der Compiler wirft Fehler.

 
Valeriy Yastremskiy:

Ich kenne nur eine Methode mit zwei Durchgängen. Zuerst erstellt man eine Karte, dann wählt man einen Weg. Gerade, ohne Karte kann man auch gehen, aber es ist viel riskanter, vor allem, wenn Schluchten und Sümpfe auf dem Weg, und kein Kompass, Sterne und Sonne).

Völlige Dunkelheit erwartet die unerschrockenen Wanderer :)

Valeriy Yastremskiy:

Es geht um die Kosten der Maßnahmen und die Verfügbarkeit von Ausgangsdaten. Offensichtlich müssen wir das Ziel von hier aus festlegen. Die Bedingungen können unterschiedlich sein. Wir kennen die Anzahl der Punkte und Segmente. Wir kennen die Anzahl der Segmente nicht, aber wir kennen die Anzahl der Punkte, wir kennen die Anzahl der Punkte und Segmente nicht, wir wissen nur, dass es ziemlich viele sind. Wir wissen, dass die Anzahl der Segmente von einem Punkt aus höchstens N beträgt.

Dieser Teil muss also zunächst formalisiert werden.

Wir kennen die Anzahl der Punkte und Liniensegmente zu Beginn unserer Suche, wir kennen sogar die wahrscheinliche maximale Anzahl von Liniensegmenten, die wir in ein bis 40 passen können (wenn das Segment mindestens 5% der Punkte desselben Ziels bei zwei Optionen enthält).

Die tatsächliche Anzahl der Segmente kann für die Suche unterschiedlich sein - jetzt habe ich das von 1 bis 263, aber es kann Duplikate geben.

 
Aleksey Nikolayev:

Manchmal hat man das Gefühl, dass es sich dabei gar nicht um einen Fehler handelt, und die Abhängigkeit der Antwort von den Merkmalen (in unseren Problemen) kann durchausmanchmal sprunghaft sein.

Wenn es darum geht, dass statistisch gesehen ein höherer Prozentsatz einer der Klassen getroffen wird, dann kann es sein, dass die nebeneinander liegenden Abschnitte eine andere Prädisposition für das Ziel haben. Ich möchte sogar eine Umwandlung versuchen, um das Lernen zu erleichtern. Das Wesen der Umwandlung wäre, die Segmente nach der Art der Zugehörigkeit zum Ziel und dem Grad der Wahrscheinlichkeit zu ordnen, so dass die linke Seite Segmente für Nullen und die rechte Seite für Einheiten - in der Mitte schwach ausgedrückt - sein würden.

Aleksey Nikolayev:

Ich meine damit, dass das trainierte Modell für jeden bestimmten Satz von Merkmalen die Antwort nicht mit "entweder 0 oder 1" beantwortet, sondern als Zahl auf einem Segment von 0 bis 1. So funktioniert zum Beispiel die logistische Regression. In Zufallswäldern scheint es auch so zu funktionieren, aber ich weiß nicht, ob Sie das meinen oder ob Sie von Metriken sprechen.

Dies ist das CatBoost-Modell nach dem Training auf der x-Achse der Wahrscheinlichkeitsskala - die blaue Kurve ist die Anzahl der Beispiele, Sie können sehen, dass ihre Anzahl abnimmt.

Aqua ist Klasse 0 und magnetta ist Klasse 1. Die rote Kurve ist der Verlust, die hellblaue der Gewinn.

und dies ist das gleiche Modell für eine unabhängige Stichprobe.

Glauben Sie, dass die logistische Regression eine andere Verteilung haben wird?

Der logistische Regressionsalgorithmus selbst unterliegt CatBoost ohne Parameterabstimmung.

 
Aleksey Vyazmikin:

Glauben Sie, dass die logistische Regression eine andere Verteilung haben wird?

Der logistische Regressionsalgorithmus selbst, ohne Parametereinstellung, verliert gegen CatBoost.

Nein, ich spreche nicht davon, Algorithmen in der Praxis zu vergleichen. Ich interessiere mich für die philosophische Frage, wie man einen Algorithmus auswählt und ihn korrekt trainiert, wobei zu berücksichtigen ist, dass Klassen a) klar voneinander getrennt sein können, b) gemischt sein können, c) eine Mischung aus den Punkten a) und b) sein können. Für (a) braucht man eine klare Klassifizierung, für (b) eine unscharfe, und für (c) muss man sie irgendwie vermischen, aber nicht durcheinanderbringen.

Vielleicht sollte ich meine Frage in den MoD-Thread verschieben.

 
Aleksey Nikolayev:

Nein, ich spreche nicht davon, Algorithmen in der Praxis zu vergleichen. Ich interessiere mich für die philosophische Frage, wie man einen Algorithmus auswählt und ihn richtig trainiert, wenn man davon ausgeht, dass Klassen a) klar voneinander getrennt sein können, b) gemischt sein können, c) eine Mischung aus (a) und (b) sind. Für (a) braucht man eine klare Klassifizierung, für (b) eine unscharfe, und für (c) muss man sie irgendwie vermischen, aber nicht durcheinanderbringen.

Vielleicht sollte ich meine Frage in den MoD-Thread verschieben.

Jeder Algorithmus kann wahrscheinlich mit einer klaren Trennung umgehen. Die Frage ist, welcher Algorithmus einen Unterraum besser zuweisen kann, um Bereiche mit unzusammenhängenden Klassen hervorzuheben.

Das Problem bei der Partitionierung im Handel ist die fragwürdige Gültigkeit der Partitionierung - daher die zusätzlichen Schwierigkeiten beim Training.

Ich habe noch nicht mit vielen der derzeit verfügbaren MO-Methoden gearbeitet und kann daher ihre Stärken und Schwächen nicht angemessen beurteilen.

 
Kann den Raum in die Zukunft in Form von fraktalen Clustern extrapolieren.
 
Veniamin Skrepkov:
Kann den Raum in die Zukunft in Form von fraktalen Clustern extrapolieren.

Können Sie mir zeigen, wie man das macht?

Grund der Beschwerde: