Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 233

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
Ich habe keine guten Ergebnisse erzielt. Sie benötigen (im Gegensatz zu anderen Modellen) Prädiktoren, die hoch korreliert sind.
Ich konnte keine finden, die akzeptable Ergebnisse liefern würde. Ich habe aber schon lange nicht mehr experimentiert. Ich habe nicht viel Zeit. Sie können es versuchen. Das Beispiel hat einen voll funktionsfähigen Code.
Viel Glück!
PS. Wenn Sie es ausprobieren, sollten die Prädiktoren in den Eingabematrizen Zeilen und nicht Spalten sein.
Danke, aber ich bin leider jetzt in einem ganz anderen beschäftigt, in naher Zukunft einfach nicht sitzen kann, stieß ich auf eine funktionierende Methode, aber alles noch roh, Forschung hat gerade erst begonnen, und ich fühle mich es wird für eine lange Zeit ziehen, eine Menge Arbeit ...
Eine weitere Frage: Ist es möglich, Standard-MO-Pakete, Wälder, Netze, Vektoren, Faltungen usw. in der Ausbildung ohne einen Lehrer zu verwenden?
Ich vermute, dass Sie das können, aber ich habe nicht herausgefunden, wie das geht.
Zum Beispiel in forrest
library(randomForest)
label <- factor(iris$Species)
set <- iris[,-ncol(iris)]
model <- randomForest(x = set,data = set , mtry=4, ntree=20)
Ich glaube, ich habe es ohne Lehrer gelernt.
laut google translator ----> unüberwachte Klassifizierung
Call:
randomForest(x = set, ntree = 20, mtry = 4, data = set)
Type of random forest: unsupervised
Number of trees: 20
No. of variables tried at each split: 4
aber wie erkennt man das? ))
Error in predict.randomForest(model, set[1, ]) :
No forest component in the object
Können Sie mir helfen, das herauszufinden?
Danke, aber leider mache ich im Moment etwas ganz anderes, ich werde mich eine Weile nicht hinsetzen können, ich habe eine Arbeitsmethode gefunden, aber sie ist noch roh, die Forschung hat gerade erst begonnen und ich habe das Gefühl, dass es lange dauern wird, es gibt viel zu tun...
Eine weitere Frage: Ist es möglich, Standard-MO-Pakete, Wälder, Netze, Vektoren, Faltungen usw. in der Ausbildung ohne einen Lehrer zu verwenden?
Ich vermute, dass Sie das können, aber ich habe nicht herausgefunden, wie das geht.
Zum Beispiel in forrest
library(randomForest)
label <- factor(iris$Species)
set <- iris[,-ncol(iris)]
model <- randomForest(x = set,data = set , mtry=4, ntree=20)
Ich glaube, ich habe es ohne Lehrer gelernt.
laut google translator ----> unüberwachte Klassifizierung
Call:
randomForest(x = set, ntree = 20, mtry = 4, data = set)
Type of random forest: unsupervised
Number of trees: 20
No. of variables tried at each split: 4
aber wie erkennt man das? ))
Error in predict.randomForest(model, set[1, ]) :
No forest component in the object
Können Sie das irgendwie für mich aufklären?
================================================
Ich empfehle Ihnen dringend, RandomUniformForest zu verwenden. Es gibt dort eine Menge Funktionen, die andere "Gerüste" nicht haben. Speziell zum unüberwachten Lernen :
Unüberwachtes Lernen mit Random Uniform Forests
Beschreibung
Der unüberwachte Modus von Random Uniform Forests ist so konzipiert, dass er in allen Fällen Clustering, Dimensionsreduktion, einfache Visualisierung, tiefe Variablenbedeutung, Beziehungen zwischen Beobachtungen, Variablen und Clustern bietet. Zwei weitere Besonderheiten sind die einfache Bewertung (Clusteranalyse) und das dynamische Clustering, bei dem jede Form des Clustering on-the-fly geändert werden kann. Es wird ein dreistufiges Verfahren verwendet: Unähnlichkeitsmatrix, Multidimensionale Skalierung (MDS) oder Spektralzerlegung und k-means oder hierarchisches Clustering. Für den unbeaufsichtigten Modus muss die Anzahl der Cluster dank der Lückenstatistik nicht bekannt sein, und er übernimmt die wichtigsten algorithmischen Eigenschaften des überwachten Modus, wobei (fast) jede Art von Variablen möglich ist.
Viel Glück!
Ja, die Frage ist allgemein, ob all diese beliebten MOE-Pakete - randomforest, nnet, svm ...... - ohne einen Lehrer unterrichtet werden können. usw.
Forrest, nur mal so als Beispiel...
Eigentlich würde ich gerne ein Faltungsnetzwerk ohne Lehrer trainieren
Ja, die Frage ist allgemein, ob all diese beliebten MOE-Pakete - randomforest, nnet, svm ...... - ohne Lehrer unterrichtet werden können. usw.
Forrest, nur mal so als Beispiel...
Eigentlich ist es das Faltungsnetzwerk, das ich gerne ohne Lehrer unterrichten würde.
Was wollen Sie ihm beibringen?
Was ist die Idee dahinter?
Ich kenne nur diese Modelle, um sie ohne einen Lehrer zu unterrichten: AutoEncoder, RBM, RF verschiedener Sorten, Clustering-Modelle. Aber Faltungsdaten sind unmöglich...
Viel Glück!
Was wollen Sie ihr beibringen?
Worum geht es dabei?
Ich kenne nur diese Modelle für das Lernen ohne Lehrer: AutoEncoder, RBM, RF in verschiedenen Varianten, Clustering-Modelle. Aber die Faltungen sind unmöglich...
Viel Glück!
Nun, da ein Faltungsnetz ähnliche Muster erkennen kann, die sich in ihrer Form noch leicht unterscheiden, unterscheidet es sich von herkömmlichen "linearen" MOs
wie Forrest, allgemeine Netze, usw...
Und ich möchte ohne Lehrer unterrichten, weil es viel besser ist, es zuerst in Cluster aufzuschlüsseln, wie z. B. "natürlich, durch Ähnlichkeit", und es dann mit dem Ziel abzugleichen, als sofort mit dem Ziel zu unterrichten und die Cluster irgendwie zu erstellen/an das Ziel anzupassen
Ich habe über die Cluster-Idee geschrieben, sie funktioniert besser als alle herkömmlichen MOs für mein Ziel, wenn Sie lesen...
Es gibt immer noch ein Problem mit dem Ganzen, und das ist, dass keine Situation auf dem Markt genau gleich ist, es ist Nicht-Stationarität, und hier sehe ich zwei Möglichkeiten, es ist entweder Faltungsnetzwerk oder dtw-Algorithmus oder eine Art von Interpolation oder Extrapolation, ich weiß nicht einmal den genauen Namen.
Die Idee ist, die Cluster anpassungsfähiger an die Nicht-Stationarität zu machen.
Bitte helfen Sie mir zu verstehen...
gibt es einen Code wie diesen:
X <- rep(0,1000)
Y <- rep(999,100)
dat <- sample(c(X, Y))
dat
[1] 0 999 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[28] 0 0 0 999 999 0 0 0 0 0 0 0 0 0 0 999 0 0 0 0 0 0 0 0 0 999 0
[55] 0 0 0 0 999 0 0 0 0 0 999 0 0 0 0 0 999 0 0 0 0 0 0 0 0 0 0
[82] 0 0 0 0 0 0 0 0 999 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[109] 0 0 0 0 0 0 0 0 999 0 0 0 999 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[136] 0 0 0 0 0 0 0 999 0 0 0 0 0 999 0 999 0 0 0 0 0 0 0 0 0 0 0
for(i in 101:length(dat)){
idx <- 1:i
s1 <- dat[idx]
s2 <- which(s1!=0) # s2 - получаем индексы нужного события те когда s1 было не ноль
s3 <- tail(s2,3) # оставляем три поледних индекса
print( dat[s3] )
}
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
[1] 999 999 999
Alles ist in Ordnung, alles funktioniert, aber es gibt ein Problem in der Leitung
Bei jeder Iteration erhöht sich der idx-Vektor, und wenn es sehr viele Daten gibt, wird der Code natürlich extrem langsam, und je weiter er geht...
Ich habe das Problem auf einfache Weise gelöst - bei jeder Iteration werden nur die letzten 100 Werte des Vektors anstelle des gesamten Vektors genommen
idx <- (i-100):i
idx <- (i-100):i # последние 100 значени вместо idx <- 1:i
s1 <- dat[idx]
s2 <- which(s1!=0) # s2 - получаем индексы нужного события те когда s1 было не ноль
s3 <- tail(s2,3) # оставляем три поледних индекса
print( dat[s3] )
}
Aber die Ausgabe dieses Codes sieht schon unschön aus
[1] 0 0 0
[1] 0 0 0
[1] 0 0 0
[1] 0 0 0
[1] 0 0 0
[1] 999 0 0
[1] 0 0 0
[1] 0 0 999
[1] 999 0 0
[1] 0 0 0
[1] 0 0 0
Was zum Teufel ist los? Alles scheint korrekt zu sein, gibt es einen Fehler oder etwas anderes?
mytarmailS:
Was zum Teufel ist hier los? Ist es ein Fehler oder etwas anderes?
Eigentlich heißt es "es gibt einen Fehler, aber kein Beispiel, wie man ihn reproduzieren kann". Sie brauchen eine spezielle Tabelle mit mehr als 100 Spalten, und dann geht irgendetwas schief mit ihr. Und das Beispiel ist ein kleines Stück Tabelle, auf dem man nichts überprüfen kann, und auch durch Text und nicht durch RData-Datei.
Rein zufällig - ich denke, der Fehler liegt in den Indizes. Die Werte in s3 reichen immer von 1 bis 100, unabhängig vom anfänglichen Index i.
Wenn Sie s1 um (i-100)-1 relativ zum Anfang der Tabelle dat verschieben, sollte diese Verschiebung berücksichtigt werden, wenn Sie erneut mit dem neu erhaltenen Index auf dat zugreifen. Die letzte Zeile sollte print(dat[i-101+s3]) lauten. Es könnte 100 statt 101 sein. Oder 102. Irgendwo zwischen diesen Zahlen :)
pantural:
Es heißt "Unterwäsche", und es ist, als würden Sie den Damen und Herren schamlos Ihre Unterwäsche ins Gesicht halten, und das kommt bei Ihren Mitmenschen nicht gut an. Es ist besser, die Unterwäsche zu verstecken. Haben Sie zum Beispiel Nikolay Kositsyn oder Reshetov gesehen, die ihre Unterwäsche zeigen?
========================
Sie mögen es einen "Spoof" nennen, aber in der R-Gemeinschaft ist es üblich, reproduzierbaren Code zu zitieren, wenn man eine Frage stellt. Und das ist richtig. Geschichten ohne Quellenangabe sind leere Worte. Der Zweck dieses Threads ist es, mit Beispielen von MoD zu unterrichten.
Warum melden Sie sich für alle um Sie herum an? Sie brauchen keine Regeln aufzustellen, niemand hat Sie dazu ermächtigt.
Alles klar macht mytarmailS und andere Teilnehmer, die Code-Beispiele geben, dass viele etwas Nützliches für sich lernen können.