Levenberg-Marquardt Algorithmus

Neue Frage »

GastUser0815 Auf diesen Beitrag antworten »
Levenberg-Marquardt Algorithmus
Hallo,

ich habe folgendes Script zum LM Algorithmus gefunden.

igpm.rwth-aachen.de/Numa/NumaMB/SS10/LevMarq.pdf

An diesem Absatz habe ich leider Probleme: "Mit diesen Werten kann µ0 berechnet werden"

Wahrscheinlich verstehe ich die Formel nicht richtig bzw. wende Sie falsch an.

Ich komme einfach nicht auf den Wert: -134.3190

Ich bekomme aus dieser Rechnung eigentlich immer eine Matrix mit 1 Spalte und 5 Zeilen

[[ 7.32085758]
[ 9.03710215]
[ 14.12167174]
[ 0. ]
[ -0. ]]

Kann mir vielleicht jemand ein bisschen auf die Sprünge helfen. Ich rechne einfach Stumpf die Formel runter. Also Matrix Subtraktion F(x0)-F(x0+s0) ...usw.
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von GastUser0815
An diesem Absatz habe ich leider Probleme: "Mit diesen Werten kann µ0 berechnet werden"

Das sehe ich nirgendwo in diesem Skript, allenfalls "Mit diesen Werten kann berechnet werden".

Zitat:
Original von GastUser0815
Ich bekomme aus dieser Rechnung eigentlich immer eine Matrix mit 1 Spalte und 5 Zeilen

Wie das? Alle Normwerte in dieser Formel sind reelle Zahlen!


Und ist vorher sonst alles klar? Z.B. was mit "Lösen des Ausgleichsproblems" gemeint ist, das ist ja wohl mit der dickste Brocken im Gesamtpaket, zumindest bei größerer Parameteranzahl (bei zwei wie hier geht es noch vergleichsweise).
GastUser0815 Auf diesen Beitrag antworten »

Hi HAL9000,

Zitat:
Das sehe ich nirgendwo in diesem Skript,

sorry das "" wurde verschluckt beim absenden. Ich hoffe das man es jetzt sehen kann.


Zitat:
Wie das? Alle Normwerte in dieser Formel sind reelle Zahlen!


Also ich habe alle Werte so wie sie bis zu dieser benannten Formel stehen genauso als Ergebnis ausgerechnet bekommen.

Und diese Ergebnisse sind doch 1 Dimensionale Matrizen. Wie komme ich denn von diesen auf diese Normwerte? Ich glaube genau da liegt auch mein Verständnis Problem.

Die Norm wäre doch von dieser Matrix:

Vielen Dank das du Dir meine Frage angesehen hast.
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von GastUser0815
Die Norm wäre doch von dieser Matrix:

Richtig, das ist die euklidische Norm, bei -dimensionalen Vektoren entsprechend .
GastUser0815 Auf diesen Beitrag antworten »

Hi,

ok aber leider habe selbst bei den exakt gleichen Vorgabewerten wie im Script angegeben im Zähler:

-53.116852060949675

und im Nenner: 4.607024999348855

Ich verstehe einfach nicht was da so falsch bei mir läuft.

Ich berechne die Norm von F(x0) dann die von F(x1) denn wie beschrieben ist F(x1)=F(x0+s0)

Für den Zähler Subtrahiere ich nun diese beiden Ergebnisse voneinander und das Ergebnis ist

-53.116852060949675

Für den Nenner die gleich Prozedur.
HAL 9000 Auf diesen Beitrag antworten »

Ich gehe zunächst mal davon aus, dass du die vorherigen Werte mit deiner Rechnung soweit nachvollziehen konntest, also insbesondere und darauf aufbauend sowie und ? Nicht dass wir an der falschen Stelle suchen.

EDIT: Also ich komme auf die angegebenen -134.3, wenn ich die vorher berechneten Werte einsetze. verwirrt

EDIT2:

Zitat:
Original von GastUser0815
im Zähler:

-53.116852060949675

und im Nenner: 4.607024999348855

Ich verstehe einfach nicht was da so falsch bei mir läuft.

Aber ich nun: Du hast jeweils vergessen, die vier Normwerte zu quadrieren !!!

ist die Norm.

ist das Quadrat der Norm.

Offenbar hast du die obere 2 (den Exponent) übersehen!
 
 
GastUser0815 Auf diesen Beitrag antworten »

Hier mal meine Ergebnisse:

F(x0)=[[ 0.]
[-3.]
[-4.]
[ 0.]
[ 0.]]

F'(x0)=[[ 4.00000006 4.00000012]
[ 2.00000006 13.00000125]
[ 0.00000006 16.00000191]
[ 1. 0. ]
[ 0. 1. ]]]

F(x0)+F'(x0)*s0=[[ 0.12609737]
[-0.14086195]
[ 0.06703912]
[-0.22266558]
[ 0.25418992]]]

F(x1)=[[ 0.92314087]
[22.83832264]
[53.43339146]
[ 0. ]
[ 0. ]]

Sieht jetzt wie ich finde alles soweit gut aus. Ableitung von F(x0) numerisch berechnet
HAL 9000 Auf diesen Beitrag antworten »

Du hast meinen EDIT2 gelesen?
GastUser0815 Auf diesen Beitrag antworten »

Zitat:
Du hast meinen EDIT2 gelesen?


Nein hatte ich nocht nicht. Sorry aber genau das war der Fehler die ganze Zeit. Ich habe vergessen von der Norm das Quadrat zu bilden.

Man das ärgert mich, aber manchmal ist es verhext.

Vielen vielen Dank für deine Hilfe
HAL 9000 Auf diesen Beitrag antworten »

Ja, tückisch: Da wird unten immer eine 2 angehängt zur Kennzeichnung der Euklidischen Norm, da achtet man nicht so genau drauf, wenn dann oben auch noch eine 2 steht. Egal, ist ja nun gefunden. Augenzwinkern
GastUser0815 Auf diesen Beitrag antworten »

Kann mir vielleicht irgend jemand erklären wie man aus diesem Prozess auf die Kovarianzmatrix der einzelnen Variablen kommt (a,b) oder halt für noch mehr Variablen?

Ich verstehe das absolut nicht wie ich das hin kommen soll. Bilde ich diese Matrix während der Iterationen
oder wie habe ich mir das vorzustellen.

Vielleicht könnte mir das jemand ein bisschen erklären.
HAL 9000 Auf diesen Beitrag antworten »

Mir ist nicht klar, was du hier mit Kovarianzmatrix meinst - ich sehe hier weit und breit keine. Erstaunt1

Die einzige "echte" Matrix, die ich hier sehe, ist , aber das ist nicht im entferntesten eine Kovarianzmatrix (jene sind im übrigen immer quadratisch), sondern eine Jacobi-Matrix.
GastUser0815 Auf diesen Beitrag antworten »

Also ich dachte ich könnte aus diesem Prozess eine Kovarianzmatrix bilden um daraus die Standardabweichungen der einzelnen Variablen die bestimmt werden zu berechnen.

Mir ist halt nicht wirklich klar wir ich von diesem Prozess aus zur Standardabweichung bzw zur Varianz von a und b komme.

Ich finde immer nur Beispiele für Messreihen x,y aber nicht mal für fit Funktionsvariablen.
HAL 9000 Auf diesen Beitrag antworten »

Ah Ok, ich dachte es geht immer noch um den PDF-File. Wie man bei einem derart nichtlinearen Modell die Kovarianzmatrix der Parameter bekommt, weiß ich auch nicht.
GastUser0815 Auf diesen Beitrag antworten »

Hi HAL,

ne ne das hatten wir ja geklärt. Möchte halt noch die Abweichungen der einzelnen Parameter berechnen, nach der Algorithmischen Näherung.

Hab jetzt noch ein paar Seiten gefunden die sowas mit dem Chi-Square-Test lösen. Hab ich noch nie von gehört. Muss ich mich erstmal einlesen. Es muss aber auch irgendwie mit einer Kovarianzmatrix zu lösen sein nur raff ich nicht wie.

Aber danke das Du dich gemeldet hast.

_calculate_statistics
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »