Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 394
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
Wenn Sie etwas für einen Monat zu starten - verwenden Sie eine unterbrechungsfreie Stromversorgung für Ihren Computer, hatte ich einmal 2 Wochen von Berechnungen, das Licht war aus))
Und GPU-Version erwarten nicht viel, um Code neu zu schreiben scheint mir länger und wenn der Autor hat es nicht getan, ist es unwahrscheinlich, dass jemand anderes diese Aufgabe zu Ende zu beenden.
Nun, der Autor hat alles parallelisiert, jetzt muss ich es nur noch ausführen. Wie auch immer, ich habe den Durchlauf für 3 Tage maximiert und ein Modell mit 9 Eingaben erhalten, was für mich jetzt ein Rekord ist, um ehrlich zu sein. Ich möchte es eigentlich nicht so lange optimieren. Aber wie man so schön sagt. Der Markt verlangt es. Daher, auf der Suche nach Kapazitäten, wenn jemand die Möglichkeit hat, Datensatz auf dem Optimierer zu optimieren, und sogar auf 20-30 Kernen, würde ich sehr dankbar sein.
Mihail Marchukajtes:
Lerntage, Wochen.
Offensichtlich ist Ihr Algorithmus nicht optimal. Bei so kleinen Datensätzen können Sie Brute-Forcing-Algorithmen wie Knn verwenden, die quasi-optimal sind; wenn der Algorithmus langsamer als Knn ist, handelt es sich wahrscheinlich um einen schlechten ML-Algorithmus oder eine schlechte Konfiguration. Bei einem solchen Datensatz sollte der gesamte Trainingszyklus und der Durchlauf des gesamten Datensatzes nicht länger als eine Sekunde dauern.
Das habe ich oben erklärt. 100 Splits, jeder Split wird 1000 Epochen lang trainiert usw. Das Wesen des Optimierers besteht darin, den Datensatz so zu berechnen, dass keine Zweifel an seiner Eignung bestehen. D.h. er spinnt diese Datei im übertragenen Sinne auf und ab, und Sie vergleichen sie immer wieder mit einem einzelnen Training eines Neurons. IMHO. Es handelt sich im Wesentlichen um ein KI-System, bei dem alle möglichen Optimierungen und Vorverarbeitungen zusammen mit dem Training der Neuronen erfolgen und das Training selbst Hunderte von Malen durchgeführt wird. Wenn etwas....
Das habe ich oben erklärt. 100 Splits, jeder Split wird für 1000 Epochen trainiert, usw. Sie sind nur auf ein einziges Training eines Neurons fixiert, während das Wesen des Optimierers darin besteht, den Datensatz so zu berechnen, dass es keine Fragen über seine Eignung gibt. D.h. er spinnt diese Datei im übertragenen Sinne auf und ab, und Sie vergleichen sie immer wieder mit einem einzelnen Training eines Neurons. IMHO. Es handelt sich im Wesentlichen um ein KI-System, bei dem alle Arten von Optimierungen und Vorverarbeitungen zusammen mit dem Training der Neuronen erfolgen und das Training selbst Hunderte von Malen durchgeführt wird. Wenn etwas....
MLP rät 95% der Zeit... Ich glaube nicht, dass du das richtige Fahrrad fährst) Nichts für ungut.
Sie haben einen Fehler.
Die allererste Spalte in der Tabelle ist die Zeilennummer, und diese Spalte kann nicht in der Vorhersage verwendet werden, aber sie ist aus irgendeinem Grund nur für jPrediction erforderlich.
Die Zielscheibe ist so verteilt, dass die erste Hälfte der Zeilen der Klasse 0 und die zweite Hälfte der Zeilen der Klasse 1 entspricht. Das Neuron merkt sich also einfach, dass es sich um Klasse 0 handelt, wenn die Zeilennummer kleiner als 228 ist, andernfalls ist es Klasse 1.
Sie haben einen Fehler.
Die allererste Spalte in der Tabelle ist eine Zeilennummer, und Sie können diese Spalte nicht in der Vorhersage verwenden, aber sie ist aus irgendeinem Grund nur für jPrediction obligatorisch.
Die Zielscheibe ist so verteilt, dass die erste Hälfte der Zeilen der Klasse 0 und die zweite Hälfte der Zeilen der Klasse 1 entspricht. Das Neuron merkt sich also einfach, dass es sich um Klasse 0 handelt, wenn die Zeilennummer kleiner als 228 ist, andernfalls ist es Klasse 1.
Ach, übrigens, ja. Ich habe nicht bemerkt, dass es nur eine Zahl ist.
Ohne sie Zu behaltende Eingaben: 4,50,53,59,61,64,92,98,101,104,
Durchschnittlicher Fehler beim Training (60,0%) =0,269 (26,9%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Mittlerer Fehler bei der Validierung (20,0%) plot =0,864 (86,4%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Durchschnittlicher Fehler im Test (20,0%) plot =0,885 (88,5%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Eindeutig Übertraining. Ich muss also die Eingaben auf eine andere Art und Weise sichten.
Vielleicht nach dem Gewicht der Eingänge sortieren? So wie Sie es für das Problem im ersten Beitrag des Threads getan haben...
Ich versuche, Ihr angehängtes R-Skript so umzuschreiben, dass es Namen und Anzahl der Spalten bestimmen kann... aber ich weiß nicht genug über R.
Ich versuche, das R-Skript, das Sie angehängt haben, so umzuschreiben, dass es die Namen und die Anzahl der Spalten bestimmt... aber ich weiß nicht genug über R.
Damals fing ich noch an, R zu lernen. Das Skript wurde fast vollständig in Rattle (einer visuellen Umgebung für die Datenanalyse in R) erstellt, deshalb ist es so komplex und für alle Fälle angepasst.
Das...
sollte geändert werden in...
Und das sollte in Ordnung sein.
Im Allgemeinen ist das ein schlechter Ansatz, man sollte die Bedeutung von Eingaben nicht auf diese Weise definieren. Aus irgendeinem Grund hat es damals funktioniert, aber es hat mir nie wieder geholfen.
Es ist besser, die Bedeutung der Prädiktoren wie folgt zu definieren
Die Ergebnisse der Wichtigkeitsbewertung lauten wie folgt. Je höher der Prädiktor in der Tabelle, desto besser. NurVVolum6, VDel1, VVolum9 und VQST10 bestanden den Test.
In Rattle können wir 6 Modelle auf einmal auf diesen 4 Prädiktoren aufbauen und SVM zeigt eine Genauigkeit von etwa 55% auf Validierungs- und Testdaten. Nicht schlecht.
MLP macht es in 95% der Fälle richtig... Ich glaube nicht, dass Sie das richtige Fahrrad bauen.
Ich baue mein Fahrrad auch selbst, aber auf der Grundlage von jahrzehntelang bewährtem MLP (das angeblich veraltet ist und etwas Kühleres zum Arbeiten braucht).
Versuchen Sie auch alglib Entscheidungsbäume, sie zählen schneller und haben eine bessere Leistung als mlp. Diplerning ist auch schneller, aber nicht in alglib.
Die Hauptsache ist das Verhältnis von Geschwindigkeit und Qualität. Was nützt es, eine Woche oder sogar einen Tag oder eine Stunde zu warten, wenn man nie die optimale Kombination findet?) Das Modell braucht ein paar Sekunden, um zu lernen, dann kann man Genetik für die Autosimulation von Parametern oder Prädiktoren verwenden, dann ist es reine KI, sonst ist es Müll)