BereitstellungsmodellHallo
für jeden.
In den beigefügten 2 JMP-Dateien. Der sogenannte Training-Validation-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 der Bias sehr gut, während die Varianz leicht hoch ist (92-69=23 %).
Anschließend wurde eine neue Datenbank mit Beispielen verwendet, die das Modell noch nie gesehen hatte, um den Einsatz des Algorithmus auf neuen Daten zu simulieren.
Überraschenderweise war das Ergebnis wirklich schlecht, mit einem R2 zwischen der vorhergesagten und der tatsächlichen Reaktion nahe Null. Dieses Verhalten konnten wir nicht nachvollziehen. Der R2=68 % für Testdaten scheint schließlich nicht wirklich schlecht zu sein. Wir haben also mit Sicherheit einen R2 größer als Null erwartet.
Bitte jede Hilfe/Kommentar ist willkommen.
Felice-Gian
Prädiktive Modellierung und maschinelles LernenErgebnisse teilen und kommunizierenBetreff: BereitstellungsmodellVielleicht kann das bei der Diskussion hilfreich sein. Ich habe die hervorragende Modell-Screening-Option in jmp pro verwendet, indem ich die verschachtelte Option zum Optimieren von Hyperparametern in Kombination mit der k-fachen Kreuzvalidierung verwendet habe. Hier die Ergebnisse, die nach einigen Stunden JMP-Arbeit erzielt wurden

Was mich überrascht hat, ist der große Leistungsunterschied zwischen den Modellen. Die Baummodelle und KNN zeigten einen R2 über 50 %, während alle Anpassungsmodelle Werte deutlich unter 50 % (nahe Null) zeigten, obwohl Lasso und Ridge-Regularisierung verwendet wurden. Erklärt dieser Unterschied vielleicht die schlechte Leistung von RF/Boosted-Modellen, sobald sie in der Produktion eingesetzt werden?
Was denken Sie? Irgendwelche Kommentare/Vorschläge/Hilfe?
Felice.
Betreff: BereitstellungsmodellIch vermute stark, dass Sie mehr Zeit für die Vorbereitung der Daten aufwenden müssen.Um zu Zeitreihenmodellen zu passen, müssen die Beobachtungen gleichmäßig verteilt sein und dürfen keine doppelten Zeitwerte aufweisen.Sie haben 4 Sensoren (?) mit ungleichmäßig verteilten Reaktionen.Wenn Sie diese Daten sinnvoll nutzen möchten, müssen Sie meines Erachtens die Werte aggregieren, sodass es in jedem Zeitraum eine einzige Beobachtung gibt, und Sie möchten möglicherweise eine Variable für die Zeitspanne zwischen zeitlich festgelegten Beobachtungen erstellen.Ich würde außerdem vorschlagen, für jeden Sensortyp eine separate Analyse durchzuführen, anstatt den Sensor als eine Ihrer Funktionen zu verwenden, da das Verhalten jedes Sensortyps unterschiedlich zu sein scheint.
Ich würde nicht zu dem Schluss kommen, dass Ihre Funktionen nicht prädiktiv sind – ich denke, dass durch die Vermischung der Sensortypen und durch nicht standardmäßige Zeitintervalle zu viel Rauschen entsteht.Wenn Sie sich mit diesen Problemen befassen, gibt es möglicherweise bereits ein gutes Vorhersagemodell.Nicht der Modellierungsteil ist das Problem, sondern die Datenaufbereitung (wie so oft).Zumindest denke ich das.
Betreff: BereitstellungsmodellHallo Dale
Leider konnte auch bei Verwendung der Antwortvariablendifferenz keines der Regressionsmodelle ein gutes Ergebnis liefern.
An dieser Stelle muss ich vielleicht davon ausgehen, dass unsere X-Variablen keine guten Prädiktoren für die Reaktion sind.
Es bleibt jedoch immer noch die Frage, ob wir für Daten wie unsere (Sensordaten) das Training/den Test unter Berücksichtigung der Zeitachse aufteilen müssen oder ob wir stattdessen die Technik der zufälligen Aufteilung verwenden können. In der Literatur habe ich mehrere Artikel gefunden, in denen für Sensordaten das Random-Split-Training/Test verwendet wird. Wenn wir auf die gleiche Weise vorgehen, scheinen die Ergebnisse wirklich gut zu sein, bis wir das Modell in der Produktion einsetzen und verstehen, dass das Modell völlig falsch ist. Wo ist also die Wahrheit?
Im Anhang finden Sie einen Artikel, der die Techniken des maschinellen Lernens auf ein Halbleiterwerkzeug (Ätzer) anwendet. Sie versuchen, eine vorausschauende Wartung durchzuführen, indem sie sich die Sensordaten ansehen. Die Daten sollten also denen wirklich ähnlich sein. Wenn Sie sich den Teil des grün hervorgehobenen Papiers ansehen, sieht es so aus, als ob die Daten unter Berücksichtigung der Zeitachse aufgeteilt und dann als Zeitreihen betrachtet werden.
Ich hoffe, dass neben Dale noch mehr Menschen zu Wort kommen und uns helfen können, dieses Dilemma zu lösen.
Sind die Daten wie unsere Mehrzeitreihen oder nicht?
Zwar hängen die Prädiktoren X und die Antwort Y von der Zeit ab. Aber wenn wir das Y anhand der X-Werte vorhersagen wollen, warum sollte die Zeitvariable so wichtig sein? Meiner Meinung nach sollte das Y von den X-Variablen abhängen, die von der Maschine während der Prozessphase automatisch festgelegt werden. Dies geschieht natürlich zeitlich chronologisch, der X-Wert hängt jedoch vom Rezept und dem Maschinenzustand ab. Daher fällt es mir schwer, die Abhängigkeit von der Zeit zu akzeptieren.
Frohe Ostern an die ganze Gemeinde.
Felice
Betreff: BereitstellungsmodellZeitreihenmodelle sind nicht meine Stärke, daher wird Ihnen hoffentlich jemand eine genauere Antwort geben.Ich würde die Merkmale zunächst nicht unterscheiden – ich würde die Modelle erstellen und mir die Residuen ansehen, um zu sehen, ob sie die gleiche Autokorrelation aufweisen.Wenn ja, dann würde ich vielleicht versuchen, einige der Funktionen zu unterscheiden.
Betreff: BereitstellungsmodellHallo Dale
Glauben Sie, dass es sinnvoll sein könnte, neben der Antwort auch die Prädiktoren zu unterscheiden, da auch die Prädiktoren denselben PACF aufweisen?
Danke Felice
Betreff: BereitstellungsmodellDas PACF-Diagramm legt nahe, dass die ersten beiden Verzögerungen relevant sind – die erste Verzögerung ist bei weitem die wichtigste.Daher denke ich, dass eine einfache Differenzierung erster Ordnung ein guter Versuch wäre.Es ist möglich, dass eines der maschinellen Lernmodelle (z. B. RF, Boosted Trees, neuronale Netze) eine gute Leistung erbringt, daher würde ich sie ausprobieren.Sie sollten aber auch einige weitere Standard-Zeitreihenmodelle ausprobieren (bei denen Sie die Differenzierung nicht verwenden würden, da die Zeitreihenmodelle so aufgebaut sind, dass sie die Autokorrelation auf unterschiedliche Weise berücksichtigen).Theoretisch können Sie, wenn Sie Differenzierung erster Ordnung verwenden (und dadurch die Zeitstruktur weitgehend eliminiert), wahrscheinlich einen zufälligen Zug-Validierungs-Testsatz für Ihre Modellierung verwenden.Zumindest denke ich das – andere wissen es vielleicht besser.
Betreff: BereitstellungsmodellHallo George und Dale
Vielen Dank für Ihre Antworten. Ich schaue mir das Verzögerungsdiagramm aller Prädiktoren und der Reaktion an und entdeckte zu meiner großen Überraschung eine sehr lange Autokorrelation (siehe beigefügte Bilder).
Da die Daten aus einer Halbleiterfabrik stammen, hängt der im ACF sichtbare Wert 25 mit der Anzahl der Wafer in einer Charge zusammen.
Die Punkte-Out-Linie in den Verzögerungsdiagrammen hingegen zeigt nur die ersten Wafer einer anderen Charge, die in die Maschine geladen wurden. Ich denke, dass die Autokorrelation auf die interne Rückkopplung unserer Maschine zurückzuführen ist, um den Arbeitspunkt aufrechtzuerhalten. Natürlich sind diese Anpassungen in der Kammer verborgen und unterliegen nicht 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 Verzögerung, den gleitenden Durchschnitt, die Glättung und andere Vorhersagefunktionen zu nutzen, aber die Ergebnisse sind weiterhin sehr schlecht.
Im nächsten Schritt möchte ich die von Dale vorgeschlagene Differenzierung ausprobieren. Glauben Sie, dass die einfache Differenz X(t)-X(t-1) ausreichen kann?
Ciao Felice
Betreff: BereitstellungsmodellIch habe ein paar Vorschläge.Zuerst würde ich versuchen, Ihre Antwortvariable zu differenzieren und dann erneut zufällige Gesamtstrukturen auszuprobieren.Für mich ist das 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 zeitliche Gruppierungen, beispielsweise mehrere Beobachtungen, die zeitlich eng miteinander verbunden sind.Sie könnten erwägen, die zeitliche Abfolge zu vereinheitlichen, indem Sie Beobachtungen zusammenfassen, die zeitlich eng miteinander verbunden sind.Zeitreihen verhalten sich besser, wenn die Zeitvariable einheitlich gemessen wird. Das bedeutet, dass Ihre Daten in gleich großen Zeitintervallen zusammengefasst werden müssen.Wie Sie vorschlagen, ist es an der Zeit, wieder darüber nachzudenken, was genau gemessen wird und wie es gemessen wird.
Betreff: BereitstellungsmodellMittlerweile glaube ich, dass ich kein gültiges/vernünftiges Modell für die Daten erstellen kann.
Mein erster Ansatz bestand darin, eine durch Xs angegebene Validierungsspalte zu generieren.
Der Zeitreihen-Hinweis von @dale_lehman war nützlich, deshalb habe ich mir die Daten auch zeitreihenweise angeschaut,
Ich erkannte, dass sich die Kombination der X mit der Zeit ändert. Und hier sieht es für mich wieder so aus, als wäre „Neu“ anders. Ja, die Xes decken den gleichen Bereich ab, aber das reicht nicht aus. Ich denke, bei „Neu“ ist die Kombination 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 stark nichtlinear, daher ist es schwierig, hineinzuschauen).
Andererseits war ich mit keiner anderen Methode (neuronal, Boosted Tree) in der Lage, ein vernünftiges Modell anzupassen. Meiner Meinung nach verfügen wir nicht über die richtigen Informationen in den X-Spalten, um ein Volumenmodell zu erstellen.
Also würde ich mir die Physik des Prozesses oder was auch immer ansehen,
- wie die X das Y verändern dürfen/können,
- was für ein Lärm es sein könnte
- und was bewirkt, dass sich die Dinge im Laufe der Zeit ändern, und nehmen Sie es in den Datensatz auf.
- 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 beim Erstellen einer nach Zeit geschichteten Validierungsspalte das gleiche Ergebnis erhalten habe (faires Modell für den ersten Teil, kein Modell mit den neuen Daten).
Viel Glück,
Betreff: BereitstellungsmodellWenn ich jetzt genauer hinsehe, erkenne ich, dass es sich um Zeitreihendaten handelt.Aus meiner ersten Sicht scheint es nicht so zu sein, dass sich der Prozess wesentlich geändert hat.Ich denke jedoch, dass das Problem darin besteht, dass das Train-Validate-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 vermute, dass die Modellleistung bei der Validierung und nie zuvor gesehene Daten ähnlicher sein sollten, wenn Sie das Modell auf diese Weise schätzen.Ich bin immer noch etwas besorgt über die auffälligen Unterschiede zwischen den
Betreff: BereitstellungsmodellHallo Dale und Georg
Danke für deine Antwort.
Tatsächlich scheinen mir die Unterschiede zwischen den beiden Verteilungen für die einzelnen Prädiktoren nicht so unterschiedlich zu sein (siehe Histogramme im beigefügten Bild). Mit bls geben wir den Trainings-Val-Test-Satz an und exp den Satz, den das Modell nie gesehen hat. Vielleicht zeigt das X20 einen neuen Höhepunkt in den noch nie gesehenen Daten, die zuvor fehlten. Die übrigen Verteilungen sind jedoch nur weniger bevölkert als die vorherigen.
Wenn die Prädiktorverteilung des Trainingssatzes breiter ist als die des Testsatzes, sollte das Modell den Phasenraum „besucht“ haben, der vom Prädiktor des Testsatzes eingenommen wird. Richtig? Warum sollte es also eine schlechte Vorhersage geben?
Wie auch immer, ich habe bestätigt (auch wenn das für uns seltsam ist), was Sie sagen, indem ich zufällig 2000 Instanzen genommen habe (anstelle der letzten 2000 Instanzen, die das Random-Forest-Modell nie gesehen hat und nach dem Training konnte es die Reaktion korrekt vorhersagen). Wenn also ein kleiner Unterschied in Bezug auf Durchschnitt/Standard einen großen Unterschied in Bezug auf die Vorhersageleistung ausmacht, wie können wir diese Modelle dann in der Produktion verwenden, wo sich die Signale kontinuierlich ändern?
Rgds.Felice/Gian
Betreff: BereitstellungsmodellIch stimme zu @dale_lehman , die neuen Daten sind anders.
Ich war in der Lage, ein ähnliches Modell anzupassen, funktionierte aber bei neuen Daten ebenfalls schlecht.

Die Streudiagrammmatrix zeigt einige Details, z. B. X5 mit einem sehr kleinen Bereich der Originaldaten, dasselbe gilt für X11 ...
In beiden Bildern sind die neuen Daten ausgewählt. Vielleicht hilft Ihnen das dabei, den Grund für den Unterschied herauszufinden.

Betreff: BereitstellungsmodellNahezu alle X-Variablen (mit Ausnahme von X12, X13 und X19) unterscheiden sich im Durchschnitt deutlich zwischen den beiden Sätzen.Ich vermute also, dass es sich bei den neuen Daten nicht einfach um eine weitere Zufallsstichprobe aus derselben Grundgesamtheit handelt, sondern aus einer anderen Grundgesamtheit.Es ist nicht verwunderlich, dass Ihr Modell, das recht 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, die man stellen muss, ist, warum es aus einer anderen Population stammt.Anscheinend dachten Sie, die Daten stammten aus derselben Population (oder etwas Ähnlichem).Allerdings müssen diese 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 einfach „Y nach X anpassen“ verwendet, wobei Y alle Ihre X-Variablen und X die Quelltabelle ist, die beim Verketten erstellt wurde.