Mehrfachregression (OLS) mit transformierten Prediktor-Variablen

Gegeben: Kennfeld mit Eingangsmatrix X und einem Ergebnisvektor y

x1	x2	y
----------------
1,2	3,1	5,7
2,5	3,1	8,2
3,5	4,5	5,0
4,0	4,5	8,2
6,0	5,0	9,5
7,5	6,5	10,5

Gesucht: Lösungsvektor b der Flächengleichung y = f(x1,x2) mit beliebiger Näherung

y = b0 + b1x1 + b2x1^2 + b3x2 + b4x2^2

Lösungsprinzip

Lösungsgleichung über Matrizenrechnung (Ordinary Least Squares, OLS)

b = (X^T * X)^-1 * X^T * y

Erweiterte Tabelle mit Eingangswerten, die fehlenden Werte für x1² und x2² werden ergänzt

x1     x1²    x2     x2²	
x1     x2     x3     x4      y
---------------------------------
1,2    1,44   3,1    9,61    5,7
2,5    6,25   3,1    9,61    8,2
3,5    12,25  4,5    20,25   5,0
4,0    16     4,5    20,25   8,2
6,0    36     5,0    25      9,5
7,5    56,25  6,5    42,25   10,5

SciLab-Code

// Eingabedaten
x1 = [1.2 2.5 3.5 4.0 6.0 7.5]
x2 = [1.44 6.25 12.25 16.0 36.0 56.25]
x3 = [3.1 3.1 4.5 4.5 5.0 6.5]
x4 = [9.61 9.61 20.25 20.25 25.0 42.25]

y = [5.7 8.2 5.0 8.2 9.5 10.5]

// Auffüllen der ersten Spalte der X-Matrix mit 1 ist wichtig (Startwerte)!
X = [ones(6,1) x1' x2' x3' x4']

// Koeffizientenvektor ausrechnen (y muss auch transponiert werden, da Eingabe als Zeilenvektor)
b = inv(X'*X)*X'*y'

// Koeffizientenvektor testen
erg = (X*b)'

Ergebnis

b = [19.6184110 2.3267959 -0.0386958 -6.9383043 0.4893346]

erg = [5.548606304 8.387314176 5.9748294 6.9931181 9.7279811 10.4681504]

Grafische Anzeige

xdel
clf()
// Laufvariable für x1 von 1.2 bis 7.5, Schrittweite 0.1
x = [1.2:0.1:7.5];
// Laufvariable für x1 von 1.2 bis 7.5, Schrittweite 0.1
y = [3.1:0.1:6.5];
// Funktionsdefinition
function z=f(x,y)
  // ausgerechnete Werte für b verwenden
  z = 19.6184110 + 2.3267959 * x + -0.0386958 * x^2 + -6.9383043 * y + 0.4893346 * y^2;
endfunction
// 3D-Plot anzeigen
fplot3d(x, y, f);

Ausblick

Das Verfahren kann auch für Gleichungen mit Wurzelfunktionen oder trigonometrischen Termen benutzt werden. Je nach Beschaffenheit des “Gebirges” und gewünschtem Rechenaufwand können bel. Terme hinzugefügt werden. Es wäre z.B. also auch vorstellbar die Koeffizienten folgender Flächengleichung zu approximieren:

y = b0 + b1x1 + b2sin(x1) + b3x2 + b4sin(x2) + b5x1x2

Entsprechend ist die Tabelle mit Eingangswerten anzupassen. Je mehr Terme in der Näherungsgleichung addiert werden, um so genauer wird das Ergebnis in Abhängigkeit der verwendeten Glieder. Gleichzeitig steigt der Rechenaufwand bei der Matrizeninversion.

Links

deutsche Wikipedia
englische Wikipedia
Egwald Statistics: Multiple Regression
Michael Palmer: MULTIPLE REGRESSION

[MS Word] Gegliederte, nummerierte Überschriften in Word 2007 erstellen

  1. neue Formatvorlage erstellen, Schriftart, Schriftgröße festlegen, basierend auf Vorlage Standard, Folgeabsatz auch Standard
  2. Format -> Absatz: Ausrichtung einstellen, Gliederungsebene festlegen (wichtig!)
  3. Dialog schließen
  4. eine entsprechende Überschrift im Dokument schreiben, mit der gerade erstellten Formatvorlage formatieren
  5. oben im Menü -> Reiter Absatz -> Liste mit mehreren Ebenen -> Listenbibliothek -> die Auswahl mit den Überschriften nehmen
  6. in die eben nummerierte Überschrift rechtsklicken und Formatvorlagen -> ... aktualisieren, um der Auswahl anzupassen (alternativ im Formatvorlagenkatalog auf die Formatvorlage rechtsklicken)

[Google Chrome] interne Befehle ausführen

Die folgenden internen Befehle müssen in die Adressleiste eingegeben werden:

  • about:version – Versionsübersicht
  • about:plugins – Plugins
  • about:stats – Statistiken
  • about:histograms – Statistiken
  • about:dns – DNS Statistiken
  • about:cache – Cache
  • about:network – Netzwerk
  • about:memory – Speicher
  • about:crash – Fehlerseite
  • chrome://extensions – installierte Erweiterungen anzeigen