BereitstellungsmodellHallo
für jeden.
In angehängten 2 JMP-Dateien. Der mit dem Namen Training-Validation-Test bezeichnete Test wurde verwendet, um ein RF-Modell mit den folgenden Ergebnissen zu erstellen.
Die Datei enthält eine numerische Antwort und 20 verschiedene Prädiktoren, von denen einer kategorisch ist. Die Prädiktoren sind Sensorwerte.

Wie Sie sehen können, ist die Vorspannung sehr gut, während die Varianz leicht hoch ist (92-69 = 23%).
Dann wurde eine neue Datenbank mit Beispielen verwendet, die das Modell nie gesehen hat, um die Bereitstellung eines Algorithmus für neue Daten zu simulieren.
Mit großer Überraschung war das Ergebnis mit einem R2 zwischen der vorhergesagten und der tatsächlichen Reaktion nahe Null wirklich schlecht. Wir konnten dieses Verhalten nicht verstehen. Der R2 = 68% für Testdaten scheint schließlich nicht wirklich schlecht zu sein. Wir hatten also erwartet, mit Sicherheit ein R2 zu erhalten, das größer als Null ist.
Bitte jede Hilfe / Kommentar ist willkommen.
Felice-Gian
AnalytikBetreff: BereitstellungsmodellNahezu alle X-Variablen (mit Ausnahme von X12, X13 und X19) unterscheiden sich im Durchschnitt zwischen den beiden Sätzen erheblich.Ich würde also vermuten, dass die neuen Daten nicht einfach eine weitere Zufallsstichprobe aus derselben Population sind, sondern aus einer anderen Population stammen.Es ist nicht überraschend, dass Ihr Modell, das ziemlich gut zu den Originaldaten passt, bei neuen Daten so schlecht abschneidet, wenn diese neuen Daten aus einer anderen Population stammen.
Ich nehme an, die Frage ist, warum es aus einer anderen Bevölkerung stammt.Anscheinend haben Sie gedacht, dass die Daten aus derselben Population stammen (oder etwas in der Nähe davon).Aber muss von diesen Variablen zwischen den beiden Mengen so unterschiedlich aussehen, dass eine solche Annahme eindeutig nicht korrekt ist.
Um die Unterschiede zu erkennen, habe ich die beiden Tabellen verkettet und nur Fit Y by X verwendet, wobei Y alle Ihre X-Variablen und X die Quelltabelle sind, die beim Verketten erstellt wurde.
Betreff: BereitstellungsmodellIch stimme zu @dale_lehman sind die neuen Daten anders.
Ich konnte ein ähnliches Modell anpassen und arbeitete auch schlecht an neuen Daten.

Die Scatterplot-Matrix zeigt einige Details, z. B. X5, wobei ein sehr kleiner Bereich der Originaldaten verwendet wird, genau wie bei X11 ...
In beiden Bildern werden die neuen Daten ausgewählt. Vielleicht hilft Ihnen dies, den Grund zu finden, warum es einen Unterschied gibt.

Betreff: BereitstellungsmodellHallo Dale und Georg
Danke für deine Antwort.
Wirklich scheinen die Unterschiede zwischen den beiden Verteilungen für jeden Prädiktor für mich nicht so unterschiedlich zu sein (siehe Histogramme im beigefügten Bild. Mit bls geben wir das Training-Val-Test-Set an und exp das Set, das das Modell nie gesehen hat. Vielleicht zeigt der X20 einen neuen Peak in den nie gesehenen Daten, die vorher fehlten. Die verbleibenden Distributionen sind jedoch nur weniger bevölkert als die vorherigen.
Wenn die Prädiktorverteilung des Trainingssatzes breiter als die des Testsatzes ist, sollte das Modell den Phasenraum "besucht" haben, den der Prädiktor des Testsatzes einnimmt. Richtig? Warum sollte es also eine schlechte Vorhersage machen?
Wie auch immer, ich habe bestätigt (obwohl dies für uns seltsam ist), was Sie sagen, indem ich zufällig 2000 Instanzen genommen habe (anstelle der letzten 2000 Instanzen, die das zufällige Waldmodell je gesehen und einmal trainiert hat, konnte es die Antwort korrekt vorhersagen. Wenn also ein kleiner Unterschied in Bezug auf Durchschnitt / Standard einen großen Unterschied in Bezug auf die Vorhersageleistung macht, wie können wir diese Modelle in der Produktion verwenden, in der sich die Signale kontinuierlich ändern?
Rgds.Felice / Gian
Betreff: BereitstellungsmodellWenn ich jetzt genauer hinschaue, sehe ich, dass dies Zeitreihendaten sind.Aus meinen ersten Ansichten scheint sich der Prozess nicht wesentlich geändert zu haben.Ich denke jedoch, dass das Problem darin besteht, dass das Zugvalidierungs-Test-Paradigma für Zeitreihendaten nicht wirklich geeignet ist.Ich würde vorschlagen, einen bestimmten Zeitraum (z. B. den letzten Monat des ersten Datensatzes) als Validierungssatz zu erstellen und das Modell neu zu schätzen.Ich gehe davon aus, dass die Modellleistung bei der Validierung und die noch nie zuvor gesehenen Daten ähnlicher sein sollten, wenn Sie das Modell auf diese Weise schätzen.Ich bin immer noch ein wenig besorgt über die spürbaren Unterschiede zwischen den X-Variablen in den beiden Datensätzen - möglicherweise ist eine komplexere Zeitreihenmodellierung erforderlich (z. B. Modellierung der potenziellen Saisonalität).
Betreff: BereitstellungsmodellIn der Zwischenzeit glaube ich, dass ich kein gültiges / vernünftiges Modell für die Daten anpassen kann.
Mein erster Ansatz bestand darin, eine durch Xs angegebene Validierungsspalte zu generieren.
Die Timeseries deuten darauf hin @dale_lehman war nützlich, also habe ich mir die Daten auch zeitweise angesehen,
mit der Zeit zu erkennen, dass sich die Kombination der Xes ändert. Und hier sieht es für mich wieder so aus, als ob "Neu" anders ist. Ja, die Xes decken den gleichen Bereich ab, aber das reicht nicht aus. Ich denke, die Kombination ist in "Neu" anders, das heißt, es ist eine Art Extrapolation. Dies wäre kein Problem für die Regression, aber für Methoden wie RF zählt dies (das Modell ist mehrdimensional und hochgradig nichtlinear, daher ist es schwierig, nach innen zu schauen).
Andererseits konnte ich mit keiner anderen Methode (neuronaler, Boosted Tree) ein vernünftiges Modell anpassen. Es scheint mir, dass wir nicht die richtigen Informationen in den X-Spalten haben, um ein solides Modell zu erstellen.
Also würde ich in die Physik des Prozesses schauen oder was auch immer es ist,
- wie die Xes das Y ändern können / können,
- was das Geräusch sein kann
- und was bewirkt, dass sich die Dinge im Laufe der Zeit ändern und in den Datensatz aufnehmen.
- und ich bin auch neugierig auf die Datenstruktur, es gibt Gruppen von Zeilen mit demselben Datum und denselben Werten für einige Parameter
Was mich überrascht hat, ist, dass ich bei der Erstellung einer nach Zeit geschichteten Validierungsspalte das gleiche Ergebnis erzielt habe (faires Modell für den ersten Teil, kein Modell mit den neuen Daten).
Viel Glück,
Betreff: BereitstellungsmodellIch habe ein paar Vorschläge.Zuerst würde ich versuchen, zuerst Ihre Antwortvariable zu differenzieren und dann erneut zufällige Gesamtstrukturen zu versuchen.Für mich ist dies der einfachste Ansatz für Zeitreihendaten - und es ist möglich, dass sich die Daten bei dieser Betrachtung besser verhalten.Ich würde den Validierungssatz immer noch manuell als letzten Zeitraum erstellen und nicht als zufällige Auswahl von Zeilen.Die zweite Idee ist Ihnen aufgefallen - es gibt Zeitgruppierungen, z. B. mehrere Beobachtungen, die zeitlich eng miteinander verbunden sind.Sie können die Zeitreihenfolge vereinheitlichen, indem Sie zeitlich eng miteinander verbundene Beobachtungen zusammenfassen.Zeitreihen verhalten sich besser, wenn die Zeitvariable einheitlich gemessen wird. Dies bedeutet, dass Ihre Daten in Zeitintervallen mit gleichem Abstand zusammengefasst werden müssen.Wie Sie vorschlagen, ist es Zeit, sich erneut Gedanken darüber zu machen, was genau gemessen wird und wie es gemessen wird.
Betreff: BereitstellungsmodellHallo George und Dale
Vielen Dank für Ihre Antworten. Ich schaue mir das Verzögerungsdiagramm aller Prädiktoren und Reaktionen an und entdeckte mit meiner großen Überraschung eine sehr lange Autokorrelation (siehe beigefügte Bilder).
Da die Daten von einer Halbleiterfabrik stammen, hängt der im ACF sichtbare Wert 25 mit der Anzahl der Wafer in einer Charge zusammen.
Die Punkte-Linie in den Lag-Plots sind nur die ersten Wafer eines anderen Loses, das in die Macgine geladen wurde. Ich denke, dass die Autokorrelation auf interne Rückmeldungen in unserer Maschine zurückzuführen ist, um den Arbeitspunkt beizubehalten. Natürlich sind diese Anpassungen in der Kammer verborgen und nicht unter unserer Kontrolle und unserem Verständnis. Die Antwort zeigt auch eine deutliche Verzögerung, die ich nicht erklären kann. Aber ist da.
Ich habe versucht, die Funktionen für Verzögerung, gleitenden Durchschnitt, Glättung und andere Prädiktoren zu verwenden, aber die Ergebnisse sind weiterhin sehr schlecht.
Im nächsten Schritt möchte ich die von Dale vorgeschlagene Differenzierung ausprobieren. Glauben Sie, dass der einfache Unterschied X (t) -X (t-1) ausreichen kann?
Ciao Felice
Betreff: BereitstellungsmodellDas PACF-Diagramm legt nahe, dass die ersten beiden Verzögerungen die relevanten sind - bei weitem ist die erste Verzögerung die wichtigste.Daher denke ich, dass eine einfache Differenzierung erster Ordnung eine gute Sache wäre, um es zu versuchen.Es ist möglich, dass eines der Modelle für maschinelles Lernen (z. B. HF, verstärkte Bäume, neuronale Netze) eine gute Leistung erbringt, daher würde ich sie ausprobieren.Sie sollten jedoch auch einige Standard-Zeitreihenmodelle ausprobieren (bei denen Sie die Differenzierung nicht verwenden würden, da die Zeitreihenmodelle so aufgebaut sind, dass die Autokorrelation auf verschiedene Weise berücksichtigt wird).Wenn Sie die Differenzierung erster Ordnung verwenden (und dadurch die Zeitstruktur weitgehend eliminiert), können Sie theoretisch wahrscheinlich einen zufälligen Zugvalidierungs-Testsatz für Ihre Modellierung verwenden.Zumindest denke ich das - andere wissen es vielleicht besser.