Berechnung der logistischen 3P-ParameterIch arbeite derzeit an einem Vorhersagemodell unter Verwendung von Logistic 3P fit mit JMP. Mit dem berechneten Fit-Modell erhalte ich sehr gute Kurven. Das Modell ist das Folgende:
y= c/{1+exp[a*(xb)]}
Dabei ist a der Wachstumsfaktor, b der Wendepunkt und c die Asymptote
Mein konkreter Zweifel ist der folgende: Wie kann ich a, b und c erhalten?
Ich muss mein Modell mit meinen Daten begründen. Wenn ich in mein Skript schaue, wird mir nur so etwas angezeigt: „Dispatch( {"Logistic 3P"}, „Prediction Model“, OutlineBox, {Close( 0 )} ),“. Also muss ich endlich verstehen, wie ich meine Vorhersagekurven und das Modell erhalte. Deshalb möchte ich wissen, wie ich mit meinen Daten eine solche Analyse durchführen kann.
Am besten
Alonso
Verbraucher- und MarktforschungDatenexploration und -visualisierungBetreff: Berechnung der logistischen 3P-ParameterHallo @Al_Rom24 ,
Einerseits handelt es sich bei JMP um eine im Handel erhältliche Software, und die Details des von ihr verwendeten Algorithmus sind in der Programmierung des Produkts verborgen, sodass Sie nicht ins Detail gehen können, wie JMP ermittelt diese Koeffizienten sozusagen.
Aber im Prinzip wird es wahrscheinlich eine iterative Regressionsanalyse durchführen, bei der wahrscheinlich sowohl die erste als auch die zweite Ableitung der Anpassungsfunktion untersucht werden, um die minimale Anpassungsstatistik (AICc usw., wie bereits erwähnt) zu bestimmen. Ich komme zurück auf das Beispiel einer Linie. Wenn Sie über drei Datenpunkte (3,5), (6,10) und (12,22) verfügen, können Sie mehrere unterschiedliche Linien an diese drei Punkte anpassen, aber es gibt eine Linie, die das Anpassungsresiduum reduziert und das ist genaueste Passform. Der Algorithmus von JMP ermittelt diese für Sie, sodass Sie dies nicht manuell tun müssen – eine sehr mühsame Aufgabe, da die exp-Funktion eine transzendente Funktion ist. Da es sich jedoch nicht um Open Source handelt, erfahren Sie nie den genauen Code, der Ihnen die Koeffizienten liefert. Wenn Sie genau wissen möchten, wie das geht, würde ich vorschlagen, Ihren eigenen Code zu schreiben und die Gradienten-Iterationen durchzuführen, damit Sie genau wissen, wie die Werte bestimmt werden. Haben Sie jemals eine lineare Regression manuell oder per Code durchgeführt? Hier gelten die gleichen Grundprinzipien, es ist nur komplizierter.
Da Sie erwähnen, dass Sie unterschiedliche Gruppen haben, denen Sie die Logistikfunktion zuordnen möchten, sollten Sie überlegen, wie sich diese Gruppen unterscheiden. Warum gibt es keine „allgemeine“ Passform für alle Daten? Was macht sie unterschiedlich, sodass sich für die verschiedenen Gruppen unterschiedliche Koeffizienten ergeben? Sollte der y-Achsenabschnitt/die Asymptote der Anpassung in allen Gruppen gleich sein? Wenn ja (oder nein), warum? Müssen die Wendepunkte alle gleich sein oder die großen x-Asymptoten? Was können Sie an Ihrem Thema oder Ihren Experimenten verwenden, um entweder die Anpassungen einzuschränken (dh alle den gleichen y-Achsenabschnitt oder den gleichen Wendepunkt) oder zu erklären, warum die Koeffizienten unterschiedlich sind?Solche Fragen müssen Sie mit Ihrem Fachwissen beantworten, über das andere hier nicht verfügen.
Viel Glück!,
DS
Betreff: Berechnung der logistischen 3P-ParameterVielen Dank für Ihre Antwort DS,
Ich verstehe Ihre Erklärung und schätze sie. Ich verwende JMP, um zu sehen, wie sich die Daten einiger Experimente verhalten, um ein Vorhersagemodell zu erstellen. Verwenden Sie die Option „Analysieren>>Spezialisiertes Modell>>Kurve anpassen, wählen Sie die Antwort „relativ“ und den Regressor „äquivalent“ aus, gruppieren Sie meine Daten in verschiedenen Ebenen (in diesem Fall Wassergehalt) und passen Sie die Daten schließlich mit Logistic 3P an. Ich schaue mir die Ergebnisse an und sehe, dass dieses Modell etwas liefert, was ich erwartet habe, und JMP zeigt mir, dass das Modell einen R^2=0,98 hat (ich habe einige Bilder meiner Ergebnisse angehängt).
Wenn ich meine Ergebnisse sehe, sind die Konstanten a, b und c für jede Gruppe unterschiedlich. Schließlich interessiert mich, wie JMP diese Konstanten erhalten hat, da, wie oben erwähnt, jede dieser Konstanten von der entsprechenden Gruppe abhängt.
Danke
AlRom
Betreff: Berechnung der logistischen 3P-ParameterHallo @Al_Rom24 ,
Ich bin mir nicht ganz sicher, was Ihr Problem ist, aber ich denke, dass es ein Missverständnis oder eine Verwirrung bezüglich Ihrer Daten und der von Ihnen verwendeten Modellanpassung geben könnte.
Zunächst einmal sind die Daten die Daten. Wenn Sie versuchen, die Daten an ein Modell anzupassen, ist es hilfreich, wenn Sie einen theoretischen Rahmen als Modell verwenden können. Der theoretische Rahmen (falls vorhanden) ist die „Rechtfertigung“ für die Verwendung eines bestimmten Modells gegenüber einem anderen. Wenn Sie beispielsweise in der Physik die Bewegung eines Objekts in einem Gravitationspotential wie auf der Erde beschreiben möchten, verwenden Sie zwei Formeln: y(t) = y0 + vy0*t -0,5*g*t^2 zur Beschreibung der y-Bewegung und x(t) = x0 + vx0*t für die x-Bewegung. Dies ist der theoretische Rahmen, auf dem Sie das Bewegungsmodell basieren – z. B. die Projektilbewegung im Gravitationsfeld der Erde. Sie würden den Rahmen der oszillierenden Bewegung wie f(t) = A*sin(w*t) nicht verwenden, um die Projektilbewegung zu beschreiben, da er nicht anwendbar ist.
Wenn Sie also Ihre Daten modellieren, sollten Sie über den theoretischen Rahmen nachdenken und darüber, welche Theorien am besten auf Ihre Situation anwendbar sind. Manchmal ist das nicht möglich und Sie müssen eine empirische Formel verwenden – eine, die nicht nur Ihre Daten am besten anpasst, sondern auch die Ergebnisse genau vorhersagt (für diesen letzten Teil sind zusätzliche Schritte erforderlich). Um es klar auszudrücken: Sie begründen das Modell nicht mit Ihren Daten, sondern verwenden dafür entweder einen theoretischen Rahmen oder Sie müssen empirische Modellierung verwenden, um das beste Modell zu ermitteln, und mit Ihrer Fachkenntnis argumentieren, warum ein solches Modell am besten ist angemessen, um Ihre spezifische Situation zu beschreiben.
Wenn JMP die Regressionsanpassung an Ihre Daten durchführt, lässt es grundsätzlich zu, dass die Variablen a, b und c variieren, um die beste Anpassung mit dem geringsten Restfehler zu ermitteln. Betrachten Sie es als eine lineare Regression, y = mx+b. In diesem Fall haben Sie zwei Variablen m und b, die beide variieren können, aber nur die richtige Kombination von ihnen liefert den niedrigsten Gesamtrestfehler. Im Logistikmodell gibt es drei Variablen, und die richtige Kombination dieser Variablen führt zum niedrigsten Restfehler. Dieses Residuum kann auf verschiedene Arten berechnet oder dargestellt werden, beispielsweise als AICc, BIC, SSE, MSE, RMSE oder R^2. Wenn Sie die nichtlineare logistische 3P-Anpassung (3P, 3 Parameter) durchführen, meldet JMP diese Koeffizienten zusammen mit einigen Statistiken darüber.
Wenn Sie dies wirklich selbst tun möchten, könnten Sie einige Schätzungen der Funktion vornehmen, indem Sie den Grenzwert für kleines x, großes x und x=b annehmen. Dies wäre jedoch etwas langsam und mühsam. JMP erledigt alles für Sie und bietet auch statistische Auswertungen dieser Schätzungen an, um ein aussagekräftiges Modell für Ihre Daten bereitzustellen.
Denken Sie daran, dass Sie mindestens einen Datenpunkt mehr haben müssen, als die Anzahl der Koeffizienten, die Sie modellieren möchten: Wenn Sie drei Datenpunkte haben und versuchen, einen logistischen 3p daran anzupassen, erhalten Sie eine perfekt eingeschränkte Anpassung 0 Freiheitsgrade und geringe statistische Relevanz – ähnlich wie beim Anpassen einer Linie an zwei Punkte gibt es keinen Spielraum, die Linie passt genau zu diesen Punkten, sodass keine Statistiken über die Koeffizienten erstellt werden können.
Hoffe das hilft!,
DS