bestes ModellHallo
Meine Frage lautet: Wie finde ich das beste parametrische Modell, das gut zu meinem Datensatz passt?
ich möchte ein parametrisches Modell finden, das meine Antwort gut vorhersagen kann
Erweiterte statistische ModellierungGrundlegende Datenanalyse und ModellierungRe: bestes ModellHallo @maryam_nourmand ,
Ihre Frage betrifft ein weites Feld und möglicherweise müssen (viele) Fragen angesprochen und beantwortet werden, bevor diese Frage beantwortet werden kann:
- Wie werden die Daten erhoben? Beobachtungsstudie, experimentelles Design, ...? Repräsentativität und Vollständigkeit des Datensatzes? Eine explorative Datenanalyse kann hilfreich sein, um einige Muster und mögliche Fallstricke in Bezug auf die Annahmen in Regressionsmodellen zu erkennen, wie z. B. Multikollinearität, die ein angepasstes Modell wie PLS oder Vorverarbeitungsschritte wie PCA erfordern kann.
- Ziel des/der Modell(e)? Kausale Erklärungen, Vorhersage und Optimierung oder beides (auch verknüpft mit dem verfügbaren Datensatz und der Erfassungsmethode)?
- Validierungsstrategie/Funktionsauswahl? Wie stellen Sie sicher, dass die erstellten Modelle beispielsweise das richtige Komplexitätsniveau aufweisen und dennoch eine gute Vorhersageleistung bieten? Bewerten Sie die Leistung und Robustheit des Modells mithilfe einer „Standard“-Validierungsstrategie für maschinelles Lernen (mit Kreuzvalidierung oder Aufteilung von Training/Validierung/Test) oder mithilfe eines „statistisch orientierten“ Ansatzes, der auf Wahrscheinlichkeit, Informationskriterien (AICc, BIC), p-Werten usw. basiert? Beachten Sie, dass die Modellkomplexität auch direkt durch die Datenerfassung begrenzt werden sollte: Wenn Sie beispielsweise Faktoren mit 3 verschiedenen Ebenen haben, können Sie keine höheren Terme als Terme zweiter Ordnung anpassen.
- Bewertungs-/Auswahlmetriken und Schwellenwerte? Wie bewerten Sie die Modelle? Was ist der Auswahlprozess/das Auswahlkriterium: Wählen Sie diejenigen mit den besten Vorhersageergebnissen mit der ausgewählten Metrik aus oder wählen Sie alle Modelle aus, die eine bessere Leistung als ein Benchmark-Modell oder ein naives Modell usw. haben? Wie testen Sie das Modell abschließend?
Einige dieser Fragen und Antworten wurden bereits in früheren Beiträgen beschrieben:
https://community.jmp.com/t5/Discussions/Statistical-Significance/mp/765928/highlight/true#M94573
https://community.jmp.com/t5/Discussions/Analysis-of-split-plot-design-with-full-factorial-vs-RSM/mp/770579/highlight/true#M95183
Zum Erstellen, Vergleichen und Auswählen von Modellen sind Bewertungsmaßstäbe erforderlich, die mit Ihrem Ziel verknüpft sind, sowie Schwellenwerte/Kriterien, um ein oder mehrere Modelle auszuwählen. Wenn Sie einfach das beste Vorhersagemodell möchten, können Sie:
- Erstellen Sie ein Modell mit einer Standard-ML-Validierungsstrategie (z. B. Kreuzvalidierung) oder einer Strategie, mit der die Komplexität des Modells kontrolliert werden kann.
- Verwenden Sie eine oder mehrere Metriken, die mit der Vorhersagegenauigkeit verknüpft sind, wie RMSE, MAPE usw.
- Vergleichen Sie Modelle anhand der Metrik(en) und des Fachwissens: Welches/welche ist/sind für Ihr Thema am geeignetsten/relevantesten und welche weisen die beste Leistung auf,
- Sie können einzelne Vorhersagen mit den ausgewählten Modellen schätzen, um zu sehen, wie/wo sie sich unterscheiden, und/oder ein kombiniertes Modell verwenden, um die Vorhersagefehler auszugleichen.
- Testen Sie das Modell in einer „realen“ Situation/Produktionsumgebung.
Diese Ressourcen könnten Sie auch interessieren:
Welches Modell wann?
Spezifizieren und Anpassen von Modellen
Erstellen und Verstehen von Vorhersagemodellen
Erstellen von Vorhersagemodellen für korrelierte und hochdimensionale Daten
Erstellen besserer Vorhersagemodelle mit JMP Pro – Modellscreening (es kann hilfreich sein, Optionen für parametrische und Machine-Learning-Modelle zu screenen und gleichzeitig zu vergleichen)
Prädiktive Modellierung
STIPS-Modul 7: Prädiktive Modellierung und Text Mining
Welches Modell wann? (und welcher Modellierungstyp?) - (2023-US-PO-1509)
Auswählen von Modellen in JMP mit Modellauswahlkriterien - (2023-US-30MP-1456)
Data Mining und prädiktive Modellierung
Ich hoffe, dieser erste Diskussionsstarter wird Ihnen helfen,
Re: bestes Modell
Wenn ich mein Ziel genauer erklären möchte:
Ich habe einen ersten Datensatz mit Daten von Krebspatienten. Ich möchte ein geeignetes parametrisches statistisches Modell finden, das am besten zu meinem Datensatz passt. Mit diesem Modell möchte ich Daten simulieren, um eine Verschiebung des Achsenabschnitts des Modells anzuwenden. Letztendlich möchte ich sehen, wie schnell mein bereits vorhandenes maschinelles Lernmodell diese Verschiebung in einem Kontrolldiagramm erkennen kann (d. h. die ARL ermitteln kann). Zu diesem Zweck benötige ich das am besten passende Modell für meine Daten, damit ich Daten daraus simulieren kann.
Re: bestes ModellHallo @maryam_nourmand ,
Ok, dann werden Sie wahrscheinlich eher einen Data-Mining-Ansatz mit einem festen Datensatz von Beobachtungsdaten verwenden, in den Sie versuchen, ein akzeptables Vorhersagemodell einzufügen. Die Verwendung von Validierungsspalten (mit Schichtung Ihrer Funktionen) hilft bei der Validierung (um Überanpassung zu vermeiden) und beim Testen Ihres Modells anhand von Produktionsdaten. In Bezug auf die Modellierungsstrategie werden Sie sehr wahrscheinlich schrittweise Ansätze zur Auswahl von Funktionen und verallgemeinerte Regressionsansätze mit Validierungsspaltenmethode verwenden.
Als Beispiel habe ich den Cancer_Data-Datensatz von Kaggle verwendet, um anhand individueller Merkmale vorherzusagen, ob es sich um gutartigen oder bösartigen Krebs handelt: https://www.kaggle.com/datasets/erdemtaha/cancer-data?resource=download
Nach einer ersten explorativen Datenanalyse, die sich hauptsächlich auf Verteilungen und Korrelationen zwischen Merkmalen konzentrierte, erstellte ich eine Validierungsspaltenformel (Schichtung nach Merkmalen) mit 70/20/10-Verhältnissen für Trainings-/Validierungs-/Testsätze und verwendete dann ein verallgemeinertes Regressionsmodell mit Validierungsspaltenmethode und gab alle Haupteffektmerkmale und 2-Merkmals-Interaktionsterme als mögliche Terme in das Modell ein. Ich entschied mich für ein adaptives elastisches Netz, da die Merkmale stark korreliert sind, aber es könnten auch andere Optionen wie PLS- oder PCA-Vorverarbeitung vorhanden sein.
Sie können dann die Formel dieses Modells speichern und den Prediction Profiler verwenden, um Simulationen zu erstellen, die Auswirkung von Merkmalseffekten auf die Antwort zu beurteilen und möglicherweise die Auswirkung von zunehmendem Rauschen auf die vorhergesagte Antwort abzuschätzen.
Ich hoffe, diese wenigen Optionen können Ihnen bei Ihrem Thema helfen,
Re: bestes ModellIhre Antwort veranlasst mich zu der Frage: Was meinen Sie mit einem „parametrischen statistischen Modell“? Normalerweise betrachte ich Modelle des maschinellen Lernens als nichtparametrisch. Schließen Sie solche Modelle hier also aus? Das ist unklar, da Sie sagen, Sie hätten bereits ein maschinelles Lernmodell. Möchten Sie ein parametrisches und ein nichtparametrisches Modell vergleichen? Wenn Sie die Modell-Screening-Plattform verwenden, können Sie eine Reihe von beiden Arten von Vorhersagemodellen erstellen. Unter Verwendung dessen, was Sie als „am besten passend“ erachten, können Sie dann die Vorhersageformel speichern, um Simulationen durchzuführen. Ich bin mir nicht ganz sicher, was Sie mit einer „Verschiebung des Achsenabschnitts des Modells“ meinen, aber ich denke, Sie könnten einfach eine additive Störung in die Formel einfügen, um die simulierten Daten zu generieren.
Re: bestes ModellDanke für Ihre Antwort.
Ich denke aber, dass es für die Simulation besser ist, zum Abschnitt „Spalten speichern -> Simulationsformel speichern“ zu gehen, da dieser eine Formel für die Simulation enthält, die ich auch zum Schreiben von Code verwenden kann, oder?
Und danke für die Vorstellung des Datensatzes.
Aber haben Sie einen Datensatz zu einem Behandlungsprozess, der mehrere Phasen umfasst? Ich meine, nach der ersten Behandlung tritt ein Krankheitsrückfall ein, und die zweite Behandlung wird durchgeführt, und die Behandlungsinformationen wie Medikamentendosis usw. werden aufgezeichnet. Wenn Sie einen solchen Datensatz haben, wäre ich dankbar, wenn Sie ihn weitergeben könnten.
Re: bestes ModellJa, mit „parametrischem Modell“ meine ich keine Modelle des maschinellen Lernens.
Mein Ziel bei der Suche nach dem besten parametrischen Modell besteht darin, eine größere Datenmenge als meinen ursprünglichen Datensatz zu simulieren und zu generieren. Ich möchte mehr Daten für mein maschinelles Lernmodell verwenden, aber ich möchte, dass die simulierten Daten meinem ursprünglichen Datensatz sehr ähnlich sind und ihm ähneln.
Re: bestes ModellIch verstehe nicht, warum Sie dafür ein parametrisches Modell benötigen. Sie können jedes beliebige Vorhersagemodell ausführen und mit dem Profiler eine beliebige Anzahl zusätzlicher Datenpunkte simulieren, indem Sie unterschiedliche Werte für die unabhängigen Variablen angeben und den Vorhersagen zufälliges Rauschen hinzufügen. Vielleicht verstehe ich nicht, was Sie vorhaben, aber ich halte den Teil mit dem parametrischen Modell nicht für notwendig.
Re: bestes ModellWas ist der Unterschied zwischen dem Speichern von Simulationsformeln über „Spalten speichern -> Simulationsformel speichern“ und der Simulation mit dem Profiler-Tool?
Der Grund, warum ich für die Simulation ein parametrisches Modell verwende, besteht darin, dass ich die Beziehung und die Simulationsformel haben möchte, damit ich den entsprechenden Code schreiben und diesen Vorgang 100 Mal in einer Schleife wiederholen kann (um die ARL meiner Kontrollkarte basierend auf dem Modell zu erhalten, das ich in Phase I erstellt habe).
Würde ich dies manuell mit der Software machen, wäre es zeitaufwändig und schwierig.
Re: bestes ModellHallo @maryam_nourmand ,
Es hängt davon ab, was Ihr Ziel ist.
Das Speichern einer Simulationsformel kann Ihnen dabei helfen, die Koeffizientenverteilungen Ihres Modells zu beurteilen, indem Sie die Diagnoseantwort mit der Diagnosesimulationsformel austauschen: Simulieren

Die Simulationsformel ist lediglich eine komprimierte Version der Vorhersageformeln, die Sie aus dem Modellanpassungsbericht speichern können: Anstatt eine Wahrscheinlichkeitsspalte für jede Klasse und eine Spalte für die endgültige Klassifizierung zu haben, speichern Sie nur eine Spalte mit Wahrscheinlichkeitsberechnung und Klassifizierung innerhalb derselben Formel.
Wenn Sie mehr an der Robustheit Ihres Modells in Bezug auf Variationen in Ihren Eingaben interessiert sind, kann es hilfreich sein, den Simulator von Prediction Profiler mit Variationen in den Eingaben (und möglicherweise Rauschen in der Ausgabe) zu verwenden und ein Simulationsexperiment auszuführen. Sie können dann Variationen in Ihren Eingaben erzeugen und möglicherweise die Verteilungen Ihrer Merkmale verschieben, um zu sehen, wie sich dies auf Ihr Modell auswirkt, sowie das Rauschen erhöhen, um zu sehen, wie robust Ihr Vorhersagemodell sein könnte.
Eine Randbemerkung und in Bezug auf die von @dlehman1 vorgebrachten Punkte:
Mein Ziel bei der Suche nach dem besten parametrischen Modell besteht darin, eine größere Datenmenge als meinen ursprünglichen Datensatz zu simulieren und zu generieren. Ich möchte mehr Daten für mein maschinelles Lernmodell verwenden, aber ich möchte, dass die simulierten Daten meinem ursprünglichen Datensatz sehr ähnlich sind und ihm ähneln.
Um Daten zu simulieren und zu generieren, die den tatsächlich erfassten Daten ähneln, müssen Sie den Datengenerierungsprozess „nachahmen“. Wenn Ihr ML-Modell starke Nichtlinearitäten, Korrelationen oder andere Muster findet, die vom parametrischen Modell nicht berücksichtigt werden, sollten Sie mit dem ML-Modell Daten simulieren und generieren, da Sie sonst eine starke Verzerrung in die Simulation/generierten Daten einbringen. Ich verstehe nicht, warum für diesen Anwendungsfall ein separates Modell zur Datengenerierung und -vorhersage erforderlich ist.
Beachten Sie, dass ein Modell, egal wie aussagekräftig es ist, immer nur eine Vereinfachung eines Phänomens darstellt, das Sie verstehen und vorhersagen möchten. Die Datengenerierung aus diesem Modell kann also immer noch mehr oder weniger verzerrt sein (und wahrscheinlich weniger verrauschte Ergebnisse erzeugen als echte Daten).Es kann jedoch dennoch nützlich sein, die Robustheit gegenüber Abweichungen in den Daten wie von Ihnen beabsichtigt zu beurteilen.
Und nein, tut mir leid, ich habe keinen Datensatz, der eine Behandlung in mehreren Stufen enthält. Ich habe nur diesen hier gefunden und verwende ihn, um ein Illustrationsbeispiel bereitzustellen, das zu Ihrem Anwendungsfall passen könnte, das ist alles.
Hoffe, diese Antwort wird Ihnen helfen,
Re: bestes Modell@VictorG
Ich denke, ich werde einige neue JMP-Funktionen lernen. Bitte sagen Sie mir, woher Sie das Simulationsfenster mit den Spalten zum Auswechseln haben, das Sie anzeigen. Ich kann es nirgends finden. Ich sehe zwar, wo man Simulationsexperimente durchführen kann, aber ich kann nirgends eine Aufforderung zum Speichern einer Simulationsformel finden. Danke.
Re: bestes ModellHallo @dlehman1 ,
Die Simulationsfunktion kann durch einen Rechtsklick auf ein beliebiges Panel/einen beliebigen Bericht der Modellplattform aufgerufen werden: Starten Sie die Simulationsfunktion
Hier ein Beispiel zur Modellzusammenfassung von SVM:

Anschließend werden Sie aufgefordert, die Spalten auszuwählen, die Sie ein- und ausschalten möchten. Im Kontext von „Simulieren“ können Sie es für die Parameterschätzungen eines linearen Regressionsmodells verwenden, indem Sie die Antwort durch die simulierte Antwort ersetzen, um die Verteilung der Parameterschätzungen zu beurteilen, oder für die Modellzusammenfassung, um die Konsistenz der Leistung des Modells zu beurteilen: Das Fenster „Simulieren“
Die Simulationsformel kann in der Plattform für verallgemeinerte Regression unter „Spalten speichern“ gefunden und gespeichert werden:

Ich verwende diese Option „Simulieren“, um die Robustheit von Machine-Learning-Modellen mithilfe einer Validierungsspaltenformel zu bewerten. Wenn ich diese Spalte als Validierung im Modelldialogfenster verwende, kann ich diese Spaltenwerte dann simulieren und ein- und auswechseln, um leicht unterschiedliche Trainings-/Validierungs-/Testsätze mit derselben Schichtungs- oder Gruppierungsmethode darzustellen. Es kann dabei helfen, die Robustheit des Algorithmus zu beurteilen (wie es auch eine Kreuzvalidierung ermöglichen würde: https://community.jmp.com/t5/Discussions/How-can-I-automate-and-summarize-many-repeat-validations-into/mp/632192/highlight/true#M83061 ) und möglicherweise die Leistungsverbesserung (falls vorhanden) des Modells durch Feinabstimmung der Hyperparameter zu testen ( https://community.jmp.com/t5/Discussions/Boosted-Tree-Tuning-TABLE-DESIGN/mp/609591/highlight/true#M81062 ).
Ich hoffe, diese Antwort hilft Ihnen weiter.
Re: bestes ModellHallo wieder
Sehen Sie sich beispielsweise diese Simulationsformel an:
(-0,741104921699375) + 0,0237113448295257 * :Gewicht + Übereinstimmung( :Geschlecht,
0, (:Alter - 33.8085106382979) * 0.0091364700024452,
1, (:Alter - 33.8085106382979) * 0,
.
) + (:Gewicht - 63,3936170212766) * Match( :Familie, 0, -0,015643799304455, 1, 0, . ) + (:Tumorgröße - 2,49893617021277) *
Übereinstimmung( :Familie, 0, 0,441690642908435, 1, 0, . ) + (:Tumorgröße - 2,49893617021277) * Übereinstimmung( :Hyper, 0, -0,346279666197286, 1, 0, . )
+Match( :hyper, 0, Match( :dissektion, 0, 0,354356313550484, 1, 0, . ), 1, Match( :dissektion, 0, 0, 1, 0, . ), . ) + (0,15468861367462
+ 0) * Tangens (Pi() * (Random Uniform() - 0,5))
ich brauche eine solche Formel wie diese für mein Projekt, weil ich einen Python-Code schreiben und 100 Mal generieren sollte, um ARL zu berechnen
konnte ich meinen Standpunkt verständlich machen?