Verwenden Sie die Methode der kleinsten Quadrate, um die Potenzfunktion y=a*x^b und die Exponentialfunktion y=b*exp(a) anzupassen.

WBOY
Freigeben: 2024-01-16 16:51:11
nach vorne
1174 Leute haben es durchsucht

运用最小二乘法分别进行乘幂函数 y a x^b指数函数y b expa

Verwenden Sie die Methode der kleinsten Quadrate, um die Potenzfunktion y a x^b Exponentialfunktion y b expa x zu multiplizieren

x=[0,34 0,35 0,36 0,37 0,38 0,39 0,40 0,41 0,42 0,43];

y=[0,211 0,313 0,466 0,692 1,03 1,532 2,190 3,250 4,823 7,158];

Passen Sie den ersten an:

Funktion f = erste(c, x, y)

f = y - c(1) .* x .^ c(2);

Als erste.m-Datei speichern.

Von der Befehlszeile ausführen:

c = lsqnonlin('first', [0 0], [], [], [], x, y);

a = c(1)

b = c(2)

Passen Sie den zweiten an:

Funktion f = first2(c, x, y)

f = y - c(2) .* exp(c(1) .* x);

Als erste2.m-Datei speichern.

Von der Befehlszeile ausführen:

c2 = lsqnonlin('first2', [0 0], [], [], [], x, y);

a2 = c2(1)

b2 = c2(2)

So verwenden Sie Matlab für die Anpassung der kleinsten Quadrate

Verwenden Sie die Polyfit-Funktion (für die Polynomanpassung wird die Methode der kleinsten Quadrate verwendet)

Gib mir ein Beispiel

x=[90 91 92 93 94 95 96];

z=[70 122 144 152 174 196 202];

a=polyfit(x,z,1)

Ergebnis:

a =

1.0e+03 *

0,0205 -1,7551

1 stellt ein Polynom vom Grad 1 dar (es ist eine gerade Linie, wenn es Grad 1 ist, anwendbar auf Ihre Situation)

a ist der Koeffizientenvektor des Polynoms, der von Termen höherer Ordnung zu Termen niedriger Ordnung geordnet ist,

Wenn Sie die Ergebnisse beispielsweise verwenden möchten, möchten Sie wissen, was z ist, wenn x=97 ist

Dann gibt es zwei Methoden,

Verwenden Sie den Koeffizienten direkt

>>a(1)*97+a(2)

ans =

233.4286

Oder verwenden Sie die Polyvalenzfunktion

>>polyval(a,97)

ans =

233.4286

Anwendung der Methode der kleinsten Quadrate? ?

Die Methode der kleinsten Quadrate ist eine mathematische Optimierungstechnik, die die beste funktionale Übereinstimmung für einen Datensatz findet, indem sie die Summe der quadratischen Fehler minimiert.

Die Methode der kleinsten Quadrate besteht darin, die einfachste Methode zu verwenden, um einige absolut unerkennbare wahre Werte zu erhalten und gleichzeitig die Summe der quadratischen Fehler zu minimieren.

Die Methode der kleinsten Quadrate wird häufig zur Kurvenanpassung verwendet. Viele andere Optimierungsprobleme können auch in der Form der kleinsten Quadrate ausgedrückt werden, indem die Energie minimiert oder die Entropie maximiert wird.

Beginnen wir zum Beispiel mit der einfachsten linearen Funktion y=kx+b

Es ist bekannt, dass es auf der Koordinatenachse einige Punkte (1.1, 2.0), (2.1, 3.2), (3, 4.0), (4, 6), (5.1, 6.0) und den linearen Funktionsbeziehungsausdruck gibt das Bild geht durch diese Punkte

Natürlich kann diese gerade Linie nicht durch jeden Punkt verlaufen. Wir müssen nur die Summe der Quadrate der Abstände zu dieser geraden Linie minimieren. Dazu ist die Verwendung der Methode der kleinsten Quadrate erforderlich on. Da Sie nur nach der Methode der kleinsten Quadrate gefragt haben, werde ich nur so viel darüber reden.

Das hat man nur im College gelernt und wird im Allgemeinen zum Modellieren verwendet.

Das obige ist der detaillierte Inhalt vonVerwenden Sie die Methode der kleinsten Quadrate, um die Potenzfunktion y=a*x^b und die Exponentialfunktion y=b*exp(a) anzupassen.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:docexcel.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!