Funktionen > Datenanalyse > Kurvenanpassung > Beispiel: Nichtlineare Regression 2
Beispiel: Nichtlineare Regression 2
Führen Sie unter Verwendung der Funktion LeastSquaresFit eine nichtlineare Regression durch. Der LeastSquaresFit-Gleichungslöser bietet höchste Flexibilität beim Lösen nichtlinearer Regressionsprobleme. Er ermöglicht es Ihnen, Nebenbedingungsgleichungen für jeden abhängigen Parameter anzugeben, untere und obere Schranken für Parameter zu definieren, die Standardabweichungen der x-Werte einzugeben sowie eine Vertrauensgrenze für die Berechnung festzulegen.
LeastSquaresFit
1. Definieren Sie einen Datensatz.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Diese Daten stammen aus einem Beispiel auf der NIST-Website. Die Daten wurden mithilfe der folgenden Gleichung mit einer Genauigkeit von 14 Stellen berechnet:
Zum Kopieren dieses Ausdrucks klicken
2. Definieren Sie eine Anpassungsfunktion.
Zum Kopieren dieses Ausdrucks klicken
Die einzelnen Parameter oben sind Elemente eines Vektors β. Sie können die Eingabefunktion auch mit einzelnen Variablennamen statt mit Elementen eines Vektors angeben.
Zum Kopieren dieses Ausdrucks klicken
3. Geben Sie Schätzwerte an.
Zum Kopieren dieses Ausdrucks klicken
4. Definieren Sie die Vertrauensgrenze für die Parameter.
Zum Kopieren dieses Ausdrucks klicken
5. Rufen Sie die Funktion LeastSquaresFit auf.
Zum Kopieren dieses Ausdrucks klicken
Der Gleichungslöser löst das resultierende Kleinste-Quadrate-Problem mit dem sequenziellen quadratischen Algorithmus. Durch die Einführung zusätzlicher Variablen wird das ursprüngliche Problem in ein nichtlineares Programmierproblem mit Gleichheitsnebenbedingung transformiert. Dieses Verfahren ist im Allgemeinen schneller und stabiler als die anderen Methoden.
6. Betrachten Sie den Ergebnisvektor, der von der Funktion LeastSquaresFit zurückgegeben wird.
Zum Kopieren dieses Ausdrucks klicken
Die erste Ergebnisspalte enthält die Werte für die angepassten Parameter. Die zweite Spalte enthält den linken und die dritte Spalte den rechten Randwert für das Konfidenzintervall der Parameter.
Die für die Parameter festgelegten Vertrauensgrenzen von 95 % decken einen ziemlich breiten Bereich ab und weisen darauf hin, dass die Anpassung schwierig ist und dass sich die einzelnen Parameter stark voneinander unterscheiden können. Infolgedessen unterscheiden sich die Werte der angepassten Parameter von den richtigen Werten, die auf der NIST-Website verzeichnet sind:
Zum Kopieren dieses Ausdrucks klicken Zum Kopieren dieses Ausdrucks klicken
7. Stellen Sie die Daten, die Kleinste-Quadrate-Anpassung und die NIST-Anpassung grafisch dar.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
8. Vergleichen Sie die Kleinste-Quadrate-Anpassung mit den ursprünglichen Daten:
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Die Anpassung ist fast konvergent, könnte jedoch von einer Justierung der Konvergenztoleranz profitieren. Hierzu kann eines der optionalen Argumente der Funktion LeastSquaresFit verwendet werden.
Bedingungen, Standardabweichung und Toleranz
Die Funktion LeastSquaresFit hat mehrere optionale Argumente:
Standardabweichungsvektor
Matrix mit oberen und unteren Schranken
Genauigkeit
Sie können jedes dieser optionalen Argumente für sich allein angeben. Werden jedoch mehrere Argumente eingegeben, dann ist die Reihenfolge der Argumente relevant.
1. Simulieren Sie eine Fehlmessung, indem Sie einen Datenwert angeben, der einen Ausreißer darstellt.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
2. Legen Sie eine obere und eine untere Schranke fest, um die Anpassungswerte zu beschränken.
Zum Kopieren dieses Ausdrucks klicken
Es wurden Schranken definiert, die weit außerhalb des erwarteten Parameterwertebereichs liegen, weil in diesem Fall keine bestimmten Schranken bekannt sind.
3. Legen Sie für jeden y-Wert eine Vektor von Standardabweichungen fest, um den Ausreißer zu maskieren.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Aufgrund des großen Werts von 108 für die Standardabweichung wird die Fehlmessung effektiv aus der Berechnung entfernt.
Wird ein einer Standardabweichung entsprechender Vektor als Argument der Funktion LeastSquaresFit eingegeben, minimiert der Gleichungslöser die folgende Funktion:
Zum Kopieren dieses Ausdrucks klicken
Ist die Standardabweichung für einen Punkt gleich 0, dann wird an diesem Punkt die ursprüngliche, nicht abgeleitete Funktion verwendet, d.h. StdYi wird gleich 1 gesetzt.
4. Legen Sie die Genauigkeit fest, um eine striktere Konvergenztoleranz für die Berechnung zu definieren (Standardwert ist 10-7).
Zum Kopieren dieses Ausdrucks klicken
5. Rufen Sie die Funktion LeastSquaresFit mit und ohne die Standardabweichung auf.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Die nicht maskierte Berechnung schlägt fehl, weil die Vertrauensgrenzen zu groß sind.
Die neuen Parameter liegen näher an den NIST-Werten:
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
6. Stellen Sie die Daten mit dem Ausreißer und der maskierten Anpassung grafisch dar.
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Zum Kopieren dieses Ausdrucks klicken
Verweis
Die Daten für dieses Beispiel stammen aus Lanczos, C., Applied Analysis, Prentice Hall, 1956, Seiten 272-280, gemäß Dokumentation im NIST Statistical Reference Dataset Archive.
War dies hilfreich?