# Multidimensionale Skalierung

Die Multidimensionale Skalierung (auch Mehrdimensionale Skalierung, oder Ähnlichkeitsstrukturanalyse, abgekürzt: MDS) ist ein Bündel von Verfahren der multivariaten Statistik. Ihr formales Ziel ist es, die Objekte räumlich so anzuordnen, dass die Abstände (Distanzen) zwischen den Objekten im Raum möglichst exakt den erhobenen Un-/ Ähnlichkeiten entsprechen. Je weiter die Objekte voneinander entfernt sind, desto unähnlicher sind sie und je näher sie beieinander sind, desto ähnlicher sind sie. Es werden also Informationen über Paare von Objekten erhoben, um daraus metrische Informationen über die Objekte zu ermitteln.
Die Lösung der multidimensionalen Skalierung, die sogenannte Konfiguration, wird meist in zwei oder drei Dimensionen geschätzt, was die Interpretierbarkeit erleichtert. Prinzipiell kann die Konfiguration für $n$ Objekte in einem bis zu $(n-1)$-dimensionalen Raum bestimmt werden. Neben der räumlichen Konfiguration von Objekten liefert die multidimensionale Skalierung eine Reihe von Kennziffern (z. B. Stress1, S-Stress, ALSCAL, Bestimmtheitsmaß usw.), welche die Güte der Konfiguration beurteilen.
Die multidimensionale Skalierung geht zurück auf den Psychologen Warren S. Torgerson (Veröffentlichungen 1952–1968). Die wichtigsten statistischen Verfahren sind die metrische bzw. die nicht metrische multidimensionale Skalierung nach Kruskal.
Ein Anwendungsbeispiel für die multidimensionale Skalierung ist das Property Fitting im Marketing.

## Verschiedene Verfahren der MDS

Bei den verschiedenen Verfahren der MDS kann allgemein zwischen solchen für quadratische Matrizen und solchen für rechteckige Matrizen unterschieden werden. Dabei können bei als matrixkonditional bezeichneten Daten maximal die Werte innerhalb einer Matrix miteinander verglichen werden und entsprechend bei zeilenkonditionalen Daten nur die Werte innerhalb einer Zeile.
Es können drei Modellkonstellationen unterschieden werden:
* einfache MDS: eine Matrix und eine Konfiguration (Es wird von einem allen Subjekten inhärenten Wahrnehmungsraum ausgegangen, was nicht durch das Modell geprüft wird.)
* wiederholte MDS: mehr als eine Matrix aber ebenfalls nur eine Konfiguration (Gleiche Hypothese wie bei der einfachen MDS, aber hier wird diese durch das Modell geprüft)
* INDSCAL: mehr als eine Matrix und mehr als eine Konfiguration, genauer werden jeder individuellen Matrix für jede Dimension Stauchungs- bzw. Streckungsfaktoren zugewiesen und auf eine allgemeine Konfiguration angewandt. Es wird von einem allen Subjekten inhärenten Wahrnehmungsraum ausgegangen, dessen Dimensionen aber individuell als unterschiedliche wichtig bewertet werden, was durch das Verfahren geprüft wird.
Zu den Verfahren für zeilenkonditionale Daten zählen:
* Ankerpunktmethode: ein Objekt dient als Referenzpunkt für alle anderen Objekte. Die Matrix ist dann zwar quadratisch, aber asymmetrisch und daher zeilenkonditional.
* Multidimensionale Entfaltung (MDU): nicht ein Objekt, sondern jedes Subjekt wird als Ankerpunkt interpretiert.

## Metrische multidimensionale Skalierung

Ziel der metrischen multidimensionalen Skalierung ist es, Objekte mit Abständen $d_{ij}$ im hoch dimensionalen Raum so in einem kleineren $m$-dimensionalen Raum anzuordnen, dass die euklidischen Distanzen in diesem Raum möglichst genau den Distanzen $d_{ij}$ gleichen. Diese Konfiguration lässt sich durch die Verwendung der euklidischen Metrik leicht interpretieren, da Distanzen $d_{ij}$ zwischen den Objekten ihrer Entfernung per Luftlinie entsprechen.
Neben euklidischen Distanzmaßen sind auch die in Faktorenanalysen verwendeten Metriken gebräuchlich. In diskreten Modellen kommt unter anderem die Manhattan-Metrik zum Einsatz.
Sind als Startwerte anstatt Distanzen Ähnlichkeitsmaße $c_{ij}$ zwischen Objekten gegeben, so lassen sich diese durch die Transformation
    $d_{ij}={\sqrt {c_{ii}+c_{jj}-2c_{ij}}}$
in Distanzen überführen.

### Algorithmus

Das Verfahren zur multidimensionalen Skalierung lässt sich in 4 Schritten beschreiben:
* Definiere Matrix $A=(a_{ij})$ mit $a_{ij}=-{\frac {1}{2}}d_{ij}^{2}$
* Definiere Matrix $B=(b_{ij})$ mit $b_{ij}=a_{ij}-a_{i\bullet }-a_{\bullet j}+a_{\bullet \bullet }$ wobei $a_{i\bullet }={\frac {1}{n}}\sum _{j=1}^{n}a_{ij}$ den Durchschnitt der Zeile $i$, $a_{\bullet j}={\frac {1}{n}}\sum _{i=1}^{n}a_{ij}$ den Durchschnitt der Spalte $j$ und $a_{\bullet \bullet }={\frac {1}{n^{2}}}\sum _{i=1}^{n}\sum _{j=1}^{n}a_{ij}$ den Durchschnitt aller Elemente von $A$ bezeichne.
* Bestimme die Eigenwerte $\lambda _{i}$ und die zugehörigen Eigenvektoren $\gamma _{i}=(\gamma _{ij})$ der Matrix $B=(b_{ij})$ mit der Eigenschaft: $\sum _{j=1}^{n}\gamma _{ij}^{2}=\lambda _{i}$.
* Die Koordinaten der zu skalierenden Datenpunkte im $m$ dimensionalen Raum ergeben sich dann aus den Eigenvektoren zu den $m$ größten Eigenwerten: $x_{i}=\gamma _{i}$.

### Beispiel

Gegeben sind die Distanzen der schnellsten Autoverbindungen zwischen verschiedenen Städten und gesucht werden die Koordinaten der Städte.
| | Berlin | Frankfurt | Hamburg | Köln | München |
| Berlin | 0 | 548 | 289 | 576 | 586 |
| Frankfurt | 548 | 0 | 493 | 195 | 392 |
| Hamburg | 289 | 493 | 0 | 427 | 776 |
| Köln | 576 | 195 | 427 | 0 | 577 |
| München | 586 | 392 | 776 | 577 | 0 |
Die metrische multidimensionale Skalierung für eine Konfiguration in zwei Dimensionen mit einer Statistiksoftware ergibt
| Stadt | X | Y |
| Berlin | 0,8585 | −1,1679 |
| Frankfurt | −0,6363 | 0,6660 |
| Hamburg | 1,5036 | 0,0800 |
| Köln | −0,0438 | 1,1760 |
| München | −1,6821 | −0,7542 |
Die gefundene Konfiguration ist eindeutig, bis auf Rotation und Skalierung:
* Jede rotierte Lösung liefert natürlich die gleichen (euklidischen) Distanzen zwischen den Städten und damit sind diese Lösungen gleichwertig.
* Aufgrund der Standardisierung im Algorithmus $\left(\textstyle \sum _{j=1}^{n}\gamma _{ij}^{2}=\lambda _{i}\right)$ liefert eine gleichmäßige Vervielfachung des Abstandes aller Städte vom Nullpunkt die gleichen Koordinaten für die Städte.

## Nicht-metrische multidimensionale Skalierung

Die nicht-metrische multidimensionale Skalierung will die metrische multidimensionale Skalierung in zwei Aspekten erweitern:
* keine Angabe einer expliziten Funktion zur Umwandlung von (Un-)Ähnlichkeiten in Distanzen und
* die Nutzung nicht-euklidischer Geometrien zur Auffindung von Konfigurationen.
Hängen die Unähnlichkeiten $\delta _{ij}$ mit den Distanzen $d_{ij}$ über $d_{ij}=f(\delta _{ij})$ zusammen, so muss diese Funktion $f$ schwach monoton sein: Gilt $\delta _{ij}<\delta _{kl}$, dann muss gelten $d_{ij}=f(\delta _{ij})<f(\delta _{kl})=d_{kl}$.
Bringt man daher die Paare von Unähnlichkeiten in eine Rangfolge
    $\delta _{i_{1}j_{1}}<\dots <\delta _{i_{k}j_{k}}$
so ergibt sich die Monotonie-Bedingung
    $f(\delta _{i_{1}j_{1}})<\dots <f(\delta _{i_{k}j_{k}})$.

### Shepard-Kruskal Algorithmus

Der Shepard-Kruskal Algorithmus ermittelt die Konfiguration iterativ:
* Initialisierung $(t=0)$: Wähle gewünschte Dimensionalität $m$ und ordne Objekte zufällig im Zielraum an. (Für $m=2{,}3$ lassen sich die Ergebnisse oft eingänglich darstellen.) Berechne die Distanzen $d_{ij}^{(0)}$ zwischen allen Objekten $i$ und $j$.
* Schritt $t$: Schätze Disparitäten ${\hat {d}}_{ij}^{(t)}$ der Objekte $i$ und $j$ unter Verwendung ihrer Distanz $d_{ij}^{(t)}$. Hierfür kann der Pool-Adjacent Violators Algorithmus (siehe unten) benutzt werden.
* Abbruchbedingung: Sobald eines der ausgewählten Abbruchkriterien (siehe folgenden Abschnitt) für den iterativen Prozess erreicht ist, endet der iterative Prozess mit der gefundenen Konfiguration, die (eventuell nur lokal) optimal ist. Andernfalls fahre mit Punkt 4 fort.
* Anpassung der Positionen $x_{i}$ an die Disparitäten: Berechne die neuen Koordinatenwerte $x_{i}^{(t+1)}$ für alle Objektpaare $i$ und $j\neq i$ (siehe unten), z. B. ähnlich einem Gradientenverfahren. Ermittle die Distanzen $d_{ij}^{(t+1)}$ für die neuen Positionen $x_{i}^{(t+1)}$ und fahre mit Punkt 2 fort.

#### Pool-Adjacent Violators Algorithmus

* Wenn die Monotoniebedingung zwischen zwei benachbarten Punkten nicht verletzt ist, verwenden wir die jeweiligen Distanz als Disparität, also ${\hat {d}}_{ij}^{(t)}=d_{ij}^{(t)}$.
* Wenn die Monotonie-Bedingung zwischen zwei ($p=2$) oder mehr ($p>2$) benachbarten Punkten verletzt ist, so verwenden wir den Mittelwert der entsprechenden Distanzen als Disparitäten, also ${\hat {d}}_{i_{l}j_{l}}^{(t)}=1/p\sum _{q=1}^{p}d_{i_{l+q}j_{l+q}}^{(t)}$.
Welche Transformationen bei der Berechnung der Disparitäten zulässig sind, hängt vom Skalenniveau der Rohdaten ab. Die Distanzen im Wahrnehmungsraum können aber durchaus ein anderes Skalenniveau annehmen. Inwieweit eine Anhebung des Skalenniveaus zulässig ist, wird mittels des Verdichtungsquotienten Q (Zahl der Ähnlichkeiten/(Zahl der Dimensionen*Zahl der Objekte)) beurteilt. Bei der „einfachen“ MDS liegen die Rohdaten schon in aggregierter Form vor, stellen also meist die Mittelwerte über die Antworten der Befragten dar.

#### Berechnung der neuen Positionen

Die neue Position $x_{i}^{(t+1)}$ wird berechnet als
    $x_{i}^{(t+1)}=x_{i}^{(t)}+\alpha \sum _{j\neq i}\left(1-{\frac {{\hat {d}}_{ij}^{(t)}}{d_{ij}^{(t)}}}\right)(x_{i}^{(t)}-x_{j}^{(t)})$.
Dabei ist $x_{i}^{(t)}$ die Position von Objekt $i$ zum Zeitpunkt $t$ und $\alpha$ ein Gewichtungsfaktor (nicht zu groß wählen, da sich der Stress-Wert auch verschlechtern kann – in der Regel 0,2).
Wenn nun zwei Objekte im Verhältnis zu ihrer Ähnlichkeit zu weit auseinanderliegen (${\hat {d}}_{ij}^{(t)}/d_{ij}^{(t)}$ ist größer 1, wodurch der Ausdruck in der Klammer negativ wird), werden sie aufeinander zu geschoben (die Richtung wird dabei durch die Differenz in der zweiten Klammer bestimmt). Zwei eher unähnliche Objekte, die zu nahe beieinander liegen, bewegt man voneinander weg. Dadurch wird der Stress-Wert in der Regel gesenkt und die Iteration wird mit Schritt 2. fortgeführt, wodurch sich der Stress-Wert in der Regel erneut senkt.

### Beispiel

Basierend auf dem obigen Beispiel können wir eine Rangfolge der Distanzen erstellen und die Monotoniebedingung aufstellen:
| Distanz: | $195$ | < | $289$ | < | $392$ | < | $427$ | < | $493$ | < | $548$ | < | $576$ | < | $577$ | < | $586$ | < | $776$ |
| Monotoniebedingung: | $d_{F,K}$ | < | $d_{B,HH}$ | < | $d_{F,M}$ | < | $d_{HH,K}$ | < | $d_{F,HH}$ | < | $d_{B,F}$ | < | $d_{B,K}$ | < | $d_{K,M}$ | < | $d_{B,M}$ | < | $d_{HH,M}$ |
Es wurde zu Beginn eine zufällige Konfiguration gewählt:
| Position | Position | Position | Distanz zu | Distanz zu | Distanz zu | Distanz zu | Distanz zu |
| Ort | X | Y | Berlin | Frankfurt | Hamburg | Köln | München |
| Berlin | 0,9961 | −1,5759 | 0 | | | | |
| Frankfurt | −1,1453 | 0,7840 | 3,1866 | 0 | | | |
| Hamburg | −0,7835 | 0,9408 | 3,0824 | 0,3942 | 0 | | |
| Köln | −0,1025 | −0,0208 | 1,9041 | 1,3172 | 1,1783 | 0 | |
| München | 1,0352 | −0,1281 | 1,4483 | 2,3635 | 2,1096 | 1,1428 | 0 |
daraus ergibt sich:
| Monotoniebed.: | $d_{F,K}$ | $\leq$ | $d_{B,HH}$ | $\leq$ | $d_{F,M}$ | $\leq$ | $d_{HH,K}$ | $\leq$ | $d_{F,HH}$ | $\leq$ | $d_{B,F}$ | $\leq$ | $d_{B,K}$ | $\leq$ | $d_{K,M}$ | $\leq$ | $d_{B,M}$ | $\leq$ | $d_{HH,M}$ |
| $d_{ij}^{(0)}$ | $1.3172$ | $\leq$ | $3{,}0824$ | $\not \leq$ | $2{,}3635$ | $\not \leq$ | $1{,}1783$ | $\not \leq$ | $0{,}3942$ | $\leq$ | $3{,}1866$ | $\not \leq$ | $1{,}9041$ | $\not \leq$ | $1{,}1428$ | $\not \leq$ | $1{,}4483$ | $\not \leq$ | $2{,}1096$ |
| PAV | | | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | $(3{,}0824+2{,}3635+1{,}1783+0{,}3942)/4$ | | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ | $(3{,}1866+1{,}9041+1{,}1428+1{,}4483+2{,}1096)/5$ |
| | | | $=1{,}7546$ | $=1{,}7546$ | $=1{,}7546$ | $=1{,}7546$ | $=1{,}7546$ | $=1{,}7546$ | $=1{,}7546$ | | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ | $=1{,}9447$ |
| ${\hat {d}}_{ij}^{(0)}$ | $1{,}3172$ | $\leq$ | $1{,}7546$ | $\leq$ | $1{,}7546$ | $\leq$ | $1{,}7546$ | $\leq$ | $1{,}7546$ | $\leq$ | $1{,}9447$ | $\leq$ | $1{,}9447$ | $\leq$ | $1{,}9447$ | $\leq$ | $1{,}9447$ | $\leq$ | $1{,}9447$ |
Aus den berechneten euklidischen Distanzen ergibt sich, dass die Monotoniebedingung in zwei Bereichen verletzt ist:
* $d_{B,HH}\leq d_{F,M}\leq d_{HH,K}\leq d_{F,HH}$ und
* $d_{B,F}\leq d_{B,K}\leq d_{K,M}\leq d_{B,M}\leq d_{HH,M}$.
Die Disparitäten ${\hat {d}}_{ij}^{(0)}$ werden daher als Mittelwerte (1,7546 bzw. 1,9447) der entsprechenden Bereiche berechnet. Mit den Disparitäten können nun die Punktpositionen verschoben werden. Dieses Verfahren wird iteriert und führt zur nebenstehenden Lösung.

### Abbruch- bzw. Gütekriterien

Ziel des Verfahrens ist eine optimale Anpassung der MDS-Lösung an die Rohdaten und somit ein möglichst geringer STRESS- oder Energiewert bzw. ein möglichst großes Bestimmtheitsmaß. Diese Werte sind als Unterschied zwischen Disparität und Distanz zu verstehen. Verändern sich die Werte nicht mehr oder nur geringfügig, wird das Iterationsverfahren abgebrochen.

#### STRESS-Maße

Der STRESS-Wert (STRESS für STandardized REsidual Sum of Squares, deutsch: standardisierte Residuenquadratsumme) berechnet sich (nach Kruskal) als Wurzel aus der Summe der Abweichungsquadrate der Disparitäten von den Distanzen, geteilt durch die Summe der quadrierten Distanzen. Damit ist STRESS ein normiertes Varianzmaß:
| Anpassungsgüte | STRESS 1 | STRESS 2 |
| gering | 0,2 | 0,4 |
| ausreichend | 0,1 | 0,2 |
| gut | 0,05 | 0,1 |
| ausgezeichnet | 0,025 | 0,05 |
| perfekt | 0 | 0 |
    $STRESS_{1}=\left({\frac {\sum _{i<j}(d_{ij}-{\hat {d}}_{ij})^{2}}{\sum _{i<j}d_{ij}^{2}}}\right)^{\frac {1}{2}}$
Ein alternatives STRESS Maß ist
    $STRESS_{2}=\left({\frac {\sum _{i<j}(d_{ij}-{\hat {d}}_{ij})^{2}}{\sum _{i<j}(d_{ij}-{\overline {d}})^{2}}}\right)^{\frac {1}{2}}$
mit ${\overline {d}}$ der Mittelwert aller Distanzen.
Prinzipiell gibt es keine exakten Vorgaben dafür, welcher STRESS-Wert noch akzeptabel ist und welchen man als „gut“ bezeichnen kann. „Um überhaupt eine Norm zu haben, hat man die ‚nullste aller Nullhypothesen’ untersucht und tausende von Zufallsdaten per MDS skaliert und dabei registriert, welche Stress-Werte sich ergeben“ (vgl. BORG/ STAUFENBIEL 1989). Kruskal hat Anhaltswerte für den STRESS-Wert erstellt, an denen man sich orientieren kann.

#### Bestimmtheitsmaß

Neben den einfachen Kostenkriterien STRESS wird ein alternatives Maß als Gütekriterium für die Anpassung der Konfiguration an die Rohdaten verwendet. Das Bestimmtheitsmaß ist die quadrierte Korrelation der Distanzen mit den Disparitäten und als Pegel der linearen Anpassung der Disparitäten an die Distanzen zu sehen. In der Praxis gelten Werte, die größer sind als 0,9 für das Bestimmtheitsmaß als akzeptabel.

#### Energie

Die Gewichtung der Summanden in der $STRESS_{1}$-Formel führt zu Energiemaßen
    $E=\left({\frac {\sum _{i<j}w_{ij}(d_{ij}-{\hat {d}}_{ij})^{2}}{\sum _{i<j}w_{ij}d_{ij}^{2}}}\right)^{\frac {1}{2}}$

## Software

In Statistikprogrammen, wie SPSS, kann die MDS automatisch durchgeführt werden. In R führt die Funktion cmdscale eine MDS durch. Ebenso verhält es sich mit Matlab, welches MDS durch die Funktion mdscale bereitstellt. In Python enthält das Paket scikit-learn eine entsprechende Funktion sklearn.manifold.MDS.