Grundlagen der Statistik enthält Materialien verschiedener Vorlesungen und Kurse von H. Lohninger zur Statistik, Datenanalyse und Chemometrie .....mehr dazu.


Der NIPALS-Algorithmus

Author: Administrator (default)

Der NIPALS-Algorithmus ("Nonlinear Iterative Partial Least Squares") wurde von H. Wold ( ) zuerst für die PCA und später für die PLS entwickelt. Dieser Algorithmus gehört zu den am meisten verwendeten Methoden zur Berechnung der Hauptkomponenten eines Datensatzes. Er erzeugt numerisch genauere Ergebnisse als die Sigulärwertzerlegung (SVD) der Kovarianzmatrix. Allerdings ist der NIPALS-Algorithmus langsamer als das SVD-Verfahren.

Unter der Annahme, dass die zu analysierenden Daten in der Matrix X gespeichert sind, ergeben sich für die Berechnung der Loadings u und der Scores v folgende Schritte:

Schritt Mathematik Erklärung
1. u := xi Einen Spaltenvektor xi der Matrix X auswählen und in den Vektor u kopieren
2. v := (X'u)/(u'u) Die Matrix X auf u projizieren, um die korrespondierenden Loadings v zu finden.
3. v := v/|v| Den Loading-Vektor v auf die Länge 1 normieren.
4. uold := u
u := (Xp)/(v'v)
Den aktuellen Score-Vektor u in der Variablen uold zwischenspeichern. Nun die Matrix X auf v projizieren um den entsprechenden Score-Vektor u zu finden.
5. d := uold-u Um die Konvergenz des Verfahrens zu überprüfen, berechnet man den Differenzvektor d als Differenz zwischen dem alten und dem neuen Score-Vektor. Falls die Differenz |d| größer als eine vorgegebene Schwelle (z.B. 10-8) ist, wird bei Punkt 2 fortgefahren.
6. E := X - tp' Die abgeschätzte Hauptkomponente (das ist das Produkt aus Score- und Loading-Vektor) von der Matrix X subtrahieren.
7. X := E Um die restlichen Hauptkomponenten abzuschätzen, wird diese Prozedur von Schritt 1 an wiederholt; allerdings mit der Matrix E als das neue X


Anmerkung

Interessanterweise gibt es in Schweden auch einen Berg, der Nipals heisst [68°00'N, 18°42'E]


Last Update: 2012-10-08