|
|
Kurvenanpassung: Unabhänigkeit der Parameter prüfen |
|
frankne |
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 08.02.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.02.2010, 20:56
Titel: Kurvenanpassung: Unabhänigkeit der Parameter prüfen
|
|
Hallo,
ich habe Messdaten und möchte mit Hilfe von diesen die Parameter eines Modells bestimmen. Dazu benutze ich die Funktion lsqcurvefit() von matlab. Gibt es eine Möglichkeit die Unabhängigkeit der Parameter zu prüfen?
Einfaches Beispiel: y = (a+b)*x+c wobei y und x meine Messdaten sind und a,b,c die Parameter. Die Kurvenanpassung würde folgenden Vektor ausgeben: [1 2 3] wobei auch der Vektor [0 3 3] möglich wäre. In diesem Beispiel ist der Zusammenhang von a und b offensichtlich. Was ist wenn ich jedoch durch die Methode des "scharfen Hinsehens" keine Zusammenhang erkenne. Lässt sich ein Zusammenhang/Abhängigkeit auch mit Hilfe von Matlab nachweisen?
VG Frank
|
|
|
|
|
Thomas84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.02.2010, 06:34
Titel:
|
|
Hallo,
du musst die Korrelation zwischen den Parametern betrachten. Falls diese groß ist gibt es eine starke Abhängigkeit zwischen den Parametern. Die Korrelationsmatrix lässt sich aus der Hess-Matrix (Matrix der 2. Ableitungen am Funktionsminimum) bestimmen.
Kovarianzmatrix = 2 * inv(Hess)
Der Korrelationskoeffizient ist dann einfach die normierte Kovarianz. Die Hess-Matrix kannst du dir bei fminunc mit ausgeben lassen. Bei der Verwendung von lsqcurvefit geht das wohl nicht so einfach (Es sei denn du kannst die Matrix analytisch berechnen).
viele Grüße
Thomas
|
|
|
frankne |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 08.02.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.02.2010, 12:32
Titel:
|
|
Hallo, ich glaube ich habe mich nicht richtig ausgedrückt. Schlussendlich möchte ich prüfen, ob die von lsqcurvefit erhaltene Lösung die einzige ist, oder ob es nur eine von Vielen ist
Darum nützt es hier nichts die Korrelation zu prüfen.
VG Frank
|
|
|
Thomas84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.02.2010, 13:51
Titel:
|
|
wenn der Korrelationskoeffizient zweier Parameter 1 oder -1 ist dann gibt es eine Abhängigkeit zwischen den Parametern und die erhaltene Lösung ist nicht eindeutig.
|
|
|
frankne |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 08.02.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2010, 10:43
Titel:
|
|
Danke für dein Bemühen, aber ich habs noch nicht verstanden.
Wenn ich dein Vorgehen an einem einfachen Beispiel: y = (a+b)*x+c nachvollziehe. erhalte ich doch eine 3x3 Nullmatrix??
d^2f/(da*da) = 0 und d^2f/(da*db) = 0 ... unabhängig von x
|
|
|
Thomas84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2010, 13:16
Titel:
|
|
Ich meine die Hess'sche Matrix der zu minimierenden Funktion. Also:
f = sum_k (z_k - (a+b)x_k - c)^2
In diesem linearen Fall (vielleicht auch allgemein) hat die Hess'sche Matrix keinen vollen Rank und ist nicht invertierbar. Wenn das passiert gibt es eine Abhängigkeit zwischen den Parametern.
|
|
|
frankne |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 08.02.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2010, 14:16
Titel:
|
|
Ich denke jetzt hab ichs verstanden. Danke!!!
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|