Die Two-Step Clusteranalyse unter SPSS

From Teachwiki
Revision as of 08:56, 23 September 2008 by Tolksdok (Talk) (Beispiel: Abhängigkeit der Clusterzuordnung von der Datensortierung)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Einleitung[edit]

Die Two-Step Clusteranalyse ermöglicht es, große Datenmengen unter Nutzung beschränkter Speicherressourcen in Cluster einzuordnen. Hierbei werden die Daten zunächst einmalig eingelesen, und im ersten Schritt über eine Baumstruktur in verschiedene kleine Untercluster eingeteilt. Die Größe der Untercluster ist von der vorgegebenen Baumhöhe und den zugelassenen Verzweigungen der Blattknoten abhängig, sowie von der Größe des für den Vorgang zugewiesenen Speichers. Obwohl der gebildete so genannte CF-Baum während dieses ersten Schrittes unter Umständen mehrmals neu aufgebaut und dabei modifiziert werden kann, so müssen die Daten dafür nicht erneut eingelesen werden. Für einen Neuaufbau des Baumes ist nur geringer zusätzlicher Speicher notwendig, der anschließend wieder frei wird. Weiterhin besteht in diesem ersten Schritt die Möglichkeit, die Daten von Ausreißern zu bereinigen.

Im zweiten Schritt dieser Art Clusteranalyse werden die über den Baum gefundenen Untercluster über einen agglomerativen hierarchischen Clusteralgorithmus zusammengefasst. Die Untercluster werden hierbei wie einzelne Datenpunkte behandelt. Auf diese Art wird in diesem Algorithmus mit einer reduzierten Datenmenge gerechnet, was sich besonders bei einem anfangs großen Datenaufkommen in einer beschleunigten Verarbeitung bemerkbar macht.

Im Gegensatz zum herkömmlichen hierarchischen Clusteralgorithmus steigt der Rechenaufwand bei der Two-Step Clusteranalyse linear zur Datenmenge, und nicht quadratisch (Zhang et al, 1997).

Weiterhin bietet SPSS die Möglichkeit, über den Algorithmus die beste Clusteranzahl finden zu lassen, es ist auch möglich, eine Höchstzahl an Clustern anzugeben.

Das Prinzip der zweistufigen Clusteranalyse mit der Bildung eines CF-Baumes basiert auf der von Zhang et al. (1997) entwickelten BIRCH-Methode (Balanced Iterative Reducing and Clustering using Hierarchies) zum Clustern stetiger Daten. SPSS verwendet jedoch eine modifizierte Variante, deren Besonderheit unter Anderem darin liegt, dass sowohl stetige als auch kategorielle Daten verarbeitet werden können. Das für diesen Algorithmus verwendete Distanzmaß wird von der Log-Likelihood-Funktion abgeleitet und wurde bereits von Chiu et al. (1999) vorgestellt.

CF-Baum[edit]

Der CF-Baum (Cluster feature tree - Gruppenmerkmalsbaum) wird im ersten Schritt der zweistufigen Clusteranalyse gebildet und ermöglicht eine Vorsortierung der Daten sowie eine Reduzierung des Datenvolumens, um im zweiten Schritt die hierarchische Clusteranalyse an einem reduzierten Datenaufkommen durchführen zu können.

Jeder neue Datenpunkt, der eingelesen wird, wird in einem sequentiellen Verfahren (Theodoridis, Koutroumbas, 1998) die Knoten des CF-Baumes entlang geleitet. An jedem Knoten wird die dem neuen Punkt am nächsten liegende Verzweigung gefunden, welcher der Punkt dann bis zu einem Endknoten folgt. So werden die Daten über mehrere Baumebenen immer weiter unterteilt.

Der Baum hat eine vorgegebene Maximalhöhe, sowie eine maximale Anzahl von Verzweigungen bzw. Einträgen an jedem Baumknoten. Zum Beispiel ist in der Voreinstellung unter SPSS eine Maximalhöhe von 3, sowie eine maximale Anzahl von Verzweigungen von 8 angegeben. Ein solcher Baum enthält somit maximal 585 Knoteneinträge: 1 Knoten auf Stufe 1, 8 Knoten auf Stufe 2 und 64 Endknoten auf Stufe 3. In jedem Endknoten können wiederum jeweils 8 Untercluster enthalten sein, also kann es insgesamt maximal 512 Untercluster geben.

Bild1.png


Die Knoten auf der letzten Stufe werden Blätter genannt. In ihnen sind die Untercluster (UC) aufgeführt, die durch bereits eingelesene Punkte gebildet werden. In den Unterclustern des CF-Baumes sind jedoch nicht mehr die einzelnen Datenpunkte enthalten sondern nur noch Kennzahlen, die so genannten Cluster features. Ein Cluster feature CF_i des Clusters i ist in SPSS definiert durch

CF_i=(N_i, \bar{x}_i, s_i^2 , N_{iB})


Dabei ist N_i die Anzahl der Dateneinträge im Cluster i.


Die Vektoren \bar{x}_i=\frac{1}{N_i}\sum_{j=1}^{N_i}{x_{ij}} und s_i^2=\frac{1}{N_i-1}\sum_{j=1}^{N_i}{(x_{ij}-\bar{x}_i)^2} enthalten das arithmetische Mittel bzw. die empirische Varianz der Einträge des Clusters i für jede Variable.


Im Vektor N_{iB}=(N_{i1_B}, \dots , N_{iP_B}) sind die Häufigkeiten der unterschiedlichen Ausprägungen der kategoriellen Variablen (falls solche im Datensatz auftreten) aufgeführt.


N_{i{p_B}m} im Vektor N_{ip_B}=(N_{ip_B1}, \dots , N_{ip_BM_{p_B}}), \;p_B=1_B, \dots , P_B, \;m=1, \dots, M_{p_B} ist die absolute Häufigkeit des Auftretens von Kategorie m in der p_B-ten kategoriellen Variablen für Punkte des Clusters i. Die p_B-te kategorielle Variable kann maximal M_{p_B} verschiedene Ausprägungen annehmen.


Mit Hilfe des CF-Vektors lässt sich ein Cluster charakterisieren. Für die Berechnung der Distanz zweier Cluster erhält man alle nötigen Werte aus dem CF-Vektor, ohne dass man die in den Clustern enthaltenen Punkte genau kennen muss. Werden zwei Cluster i und j zusammengefasst, so läßt sich der neue CF-Vektor CF_{\langle i,j\rangle} ebenfalls aus den beiden Vektoren CF_i und CF_j berechnen, ohne jedoch die einzelnen, in beiden Clustern enthaltenen Punkte zu benötigen: CF_{\langle i,j\rangle}=(N_i + N_j, x_{\langle i,j\rangle}, s_{\langle i,j\rangle}^2, N_{iB} + N_{jB})

wobei

x_{\langle i,j\rangle}=\frac{N_i \bar{x}_i + N_j \bar{x}_j}{N_i + N_j} und s_{\langle i,j\rangle}^2=\frac{(N_i-1)s_i^2+(N_j-1)s_j^2 +\bar{x}_i +\bar{x}_j}{N_i+N_j-1} sind.


In einen CF-Baum ist in jedem Knoten der CF-Vektor eingetragen, der das Cluster unterhalb des Knotens charakterisiert. Ein Cluster unterhalb eines Knotens enthalte hierbei alle Punkte, die man über Verzweigungen unterhalb des betreffenden Knotens in den Unterclustern der Blätter findet.


Ein Punkt wird, vom Ursprung ausgehend, an jeder Verzweigung zu dem Knoten weitergeleitet, der dem Punkt am nächsten liegt. Um diese Nähe zu quantifizieren, wird ein Distanzmaß benötigt, das in Folgenden erläutert werden soll.

Distanzmaß[edit]

Wie schon erwähnt, wird unter SPSS ein Distanzmaß verwendet, das sowohl stetige als auch kategorielle Variablen in den Daten berücksichtigt. Sind die Daten rein stetig, so kann auch einfach das Euklidische Distanzmaß verwendet werden.

Hierbei ist für Daten mit jeweils P stetigen Variablen die Distanz zweier Cluster C_i und C_j definiert als (euklidischer) Abstand der beiden Clusterzentren \bar{x}_{i} und \bar{x}_{j}:

d_E(i,j)=\sqrt{\sum_{p=1}^P{\bar{x}_{ip}-\bar{x}_{jp}}}

wobei \bar{x}_{ip} das arithmetische Mittel für die Variable p in Cluster C_i ist.

Für den Fall, dass jedoch auch kategorielle Variablen vorhanden sind, wird ein Distanzmaß verwendet, dass auf Wahrscheinlichkeitsverteilungen basiert. Es verwendet die Abnahme in der maximierten Log-Likelihood-Funktion \hat{l} nach dem Zusammenführen zweier Cluster.

Es sei zunächst \lbrace x_n: n=1, \dots , N_j \rbrace die Menge der Punkte in Cluster j,\;j=1,\dots,J und x_n=(x_{n1_A},\dots,x_{nP_A},x_{n1_B},\dots,x_{nP_B}) ein Punkt aus Cluster j mit P_A metrischen und P_B kategoriellen Einträgen, wobei P_A + P_B = P.

Weiterhin sei x_{np_A} normalverteilt mit Mittelwert \mu_{jp_A} und Varianz \sigma_{jp_A}^2, p_A=1_A, \dots , P_A.

Der p_B-te kategorielle Eintrag habe M_{p_B} Kategorien, die mit einem Wahrscheinlichkeitsvektor (q_{jp_B1},\dots,q_{jp_BM_{p_b}}) multinomialverteilt sind. Hierbei ist q_{jp_bm} die Wahrscheinlichkeit, mit der in Cluster j die p_B-te kategorielle Variable eine Wert der m-ten Kategorie annimmt.

Es ist 0\le q_{jp_bm}\le 1 sowie \sum_{m=1}^{M_{p_B}}{q_{jp_bm}}=1.


Unter diesen Voraussetzung kann gezeigt werden, dass die Maximum-Likelihood (ML) Schätzungen, die die ML-Funktion \hat{l} maximieren, die Folgenden sind (Chiu et al., 1999):

\hat{\mu}_{jp_A}=\frac{1}{N_j}\sum_{n:x_n \in C_j}{x_{np_A}}
\hat{\sigma}^2_{jp_A}=\frac{1}{N_j}\sum_{n:x_n \in C_j}{(x_{np_A}-\hat{\mu}_{jp_A})^2}
\hat{q}_{jp_Bm}=\frac{N_{jp_Bm}}{N_j}

Dabei ist N_{jp_Bm} die Anzahl der Fälle in Cluster j, die in der p_b-ten (kategoriellen) Variablen die m-te Kategorie annehmen.

Der Maximalwert, den die ML-Funktion annimmt ist demnach

\hat{l}=\sum_{j=1}^{J}{(\hat{l}_{AC_j}+\hat{l}_{BC_j}) }

wobei \hat{l}_{AC_j} und \hat{l}_{BC_j} den Anteilen der stetigen bzw. der kategoriellen Variablen entsprechen. Sie haben die Form

\hat{l}_{AC_j}=-\frac{1}{2}N_j\lbrack P_A \{\ln(2\pi)+1\}+\sum_{p_A=1_A}^{P_A}{\ln(\hat{\sigma}_{jp_A}^2)}\rbrack
\hat{l}_{BC_j}=-N\sum_{p_B=1_B}^{P_B}{\hat{E}_{jp_B}}

wobei

\hat{E}_{jp_B}=-\sum_{m=1}^{M_{p_B}}{\hat{q}_{jp_Bm}\ln\hat{q}_{jp_Bm}}

Das Distanzmaß wird nun von dieser Schätzung abgeleitet und kann als die Abnahme in der ML-Funktion \hat{l} nach dem Zusammenschluss zweier Cluster C_i und C_j verstanden werden, also

\hat{l}-\hat{l}_{neu}=\hat{l}_{C_i} + \hat{l}_{C_j} - \hat{l}_{C_{\langle i,j\rangle}}

Dieser Term wurde noch etwas vereinfacht und leicht modifiziert. In den Logarithmus-Term wurde \hat{\sigma}_{p_A} eingefügt, was für den Fall, dass ein Cluster nur einen Punkt enthält (und somit \hat{\sigma}_{\nu p_A}=0) wichtig ist, da sonst der Logarithmus nicht definiert wäre.

Das verwendete Distanzmaß ist nun:

d(i,j)=\xi_i + \xi_j + \xi_{\langle i,j\rangle}


wobei \xi_{\nu}=-N_{\nu}\lbrace \sum_{p_A=1}^{P_A}{\frac{1}{2}ln(\hat{\sigma}_{p_A}^2+\hat{\sigma}_{\nu p_A}^2)+\sum_{p_B=1}^{P_B}{\hat{E}_{\nu p_B}}}\rbrace mit \hat{E}_{\nu p_B}=-\sum_{m=1}^{M_{p_B}}{\frac{N_{\nu p_Bm}}{N_{\nu}}\ln\frac{N_{\nu p_Bm}}{N_{\nu}}}.

Aufbau des CF-Baumes[edit]

Beim Aufbau des CF-Baumes werden die Punkte nacheinander, in der Reihenfolge, in der sie in der Datei stehen, in den Baum eingeordnet.atei stehen, in den Baum eingeordnet. Sie werden, vom Ursprungsknoten ausgehend, zu dem Knoten auf den nächsten Stufe geschickt, zu dem die Distanz am Geringsten ist. Dabei wird ein Knoten als Cluster angesehen, das alle von ihm ausgehenden Knoten und Untercluster unterhalb enthält. Der Abstand zwischen einzuordnendem Punkt und Knoten wird über das vorher definierte Distanzmaß berechnet. Ist der dem Punkt am nächsten liegende Knoten identifiziert, so wird der von diesem ausgehende Knoten unterhalb gefundendem, der dem Punkt am nächsten liegt usw. bis der Punkt zu einem Blattknoten gelangt.

Im Blattknoten wird der Punkt nun dem im Blatt liegenden Untercluster zugeordnet, dem er am nächsten ist.

Voraussetzung dafür ist jedoch, dass der Punkt keine Überschreitung eines vorgegebenen Schwellenwertes T, der die maximal zulässige Heterogenität des Unterclusters regelt, verursacht. Käme es jedoch zu einer Überschreitung, so wird der Punkt als eigenes, neues Untercluster in den Blattknoten aufgenommen. Jeder Blattknoten kann jedoch nur eine gewisse Anzahl an Unterclustern B (Voreinstellung bei SPSS: B=8) aufnehmen. Ist diese Anzahl erreicht, so muß der Blattknoten in zwei neue Blätter geteilt werden.

Hierfür sucht man die beiden am weitesten entfernten Untercluster, und ordnet diese den zwei neuen Blättern zu. Alle anderen Untercluster des alten Blattes werden dann nach dem Kriterium der geringsten Distanz in die beiden Blätter verteilt.

Ist dies geschehen, so muss geprüft werden, ob der Knoten eine Stufe über den Blättern nicht schon die maximale Verzweigungsanzahl B erreicht hatte. Dann nämlich kann der neu hinzugekommene Blattknoten nicht mehr in diesem Astknoten aufgenommen werden, und der Astknoten muß ebenfalls geteilt werden. Das funktioniert nach dem gleichen Prinzip wie das Teilen eines Blattknotens.

So muss nach dem Spalten jedes Knotens der jeweils übergeordnete Knoten betrachtet werden und eventuell geteilt werden. Setzt sich das bis zum Ursprungsknoten fort, so erhöht sich der Baum um eine Ebene.

Für den CF-Baum ist nicht nur der Schwellenwert T für das Untercluster, und die maximale Anzahl an Verzweigungen B vorgegeben, sondern auch die maximale Höhe des Baumes h. Wird diese Höhe durch das Spalten von Knoten überschritten, so muss ein neuer Schwellenwert T festgelegt und der Baum neu aufgebaut werden.

Je größer T ist, desto kleiner ist der CF-Baum (bei gleicher enthaltener Punkteanzahl). Deshalb wird der Schwellenwert T erhöht, um nach dem Neuaufbau des Baumes mehr Punkte aufnehmen zu können. Die Vorgabe von SPSS ist T=0.


Neuaufbau mit reduziertem Schwellenwert T[edit]

Die Einträge im alten Baum werden Pfad für Pfad, beginnend mit dem am weitesten links liegenden Pfad (der zum am weitesten links liegenden Blatt führt) in den neuen Baum eingeordnet.

Dem neuen Baum wird immer nur Schritt für Schritt ein neuer Pfad hinzugefügt. Ist ein Pfad des alten Baumes in den neuen Baum eingelesen worden, so werden die entsprechenden Knoten und Einträge im alten Baum gelöscht. Auf diese Weise wird während des Neuaufbaus des CF-Baumes nur zusätzlicher Speicherplatz für einen Pfad benötigt, und nicht für einen ganzen Baum.

Es ist auch nicht notwendig, die Punkte neu einzulesen. Es werden nur die Blatteinträge neu eingeordnet.

Der neue Pfad wird Knoten für Knoten vom alten Pfad übernommen. Die Blatteinträge des alten Pfades werden jetzt neu eingeordnet. Eintrag für Eintrag (d.h. Untercluster für Untercluster) wird geprüft, ob sie unter dem erhöhten Schwellenwert T einem bereits im neuen Baum existierenden Untercluster zugeordnet werden können. Sind alle Einträge des alten Pfades eingeordnet, so werden diese sowie die nicht mehr benötigten Knoten im alten Baum gelöscht. Sind Knoten im neu angelegten Pfad nach Einlesen des alten Pfades leer geblieben, so können diese ebenfalls gelöscht werden.

Dann wird der nächste alte Pfad nach dem gleichen Schema eingeordnet.

Der neu angelegte Baum kann nie größer als der alte werden.

Ein solcher Neuaufbau kann mehrere Male erforderlich werden, bis alle Datenpunkte in den CF-Baum eingeordnet sind, und der hierarchische Clusteralgorithmus an den Unterclustern durchgeführt werden kann.

Behandlung von Ausreißern[edit]

Eine optionale Einstellung beim Durchführen der Two-Step-Clusteranalyse unter SPSS ist die Kontrolle von Ausreißern.

Dafür wird vor jedem Neuaufbau des CF-Baumes nach Clustern gesucht, die nur eine geringe Anzahl von Einträgen aufweisen. Gering bedeutet in diesem Zusammenhang, dass ein solches Cluster weniger als 25% der Einträge des größten vorhandenen Clusters enthält.

Beim Neuaufbau des Baumes wird das Cluster dann zunächst nicht mit einbezogen. Nachdem die Neubildung abgeschlossen ist, wird geprüft, ob sich das Cluster mit dem neuen Schwellenwert in den Baum einordnen lässt, ohne jedoch die Baumgröße zu verändern. Mit Baumgröße ist nicht die Höhe des Baumes gemeint, sondern die Anzahl der Knoten im Baum.

Kann das Cluster also nicht einem im neuen Baum vorhandenen Cluster hinzugefügt werden, so werden die Einträge im Cluster als Ausreißer betrachtet und gesondert abgelegt. Bei jedem Neuaufbau des Baumes wird erneut geprüft, ob sie nicht doch integriert werden können (Bühl, Zöfel, 2002). Sind alle Dateneinträge eingelesen worden, so erfolgt eine letzte Prüfung der ausgelassenen Cluster. Lassen sie sich auch diesmal nicht einfügen, so werden sie in der nachfolgenden Analyse nicht mit einbezogen.

Finden der besten Clusteranzahl (Auto-Clustering)[edit]

Im zweiten Schritt werden die Untercluster in einem hierarchischen Verfahren Schritt für Schritt zusammengefasst. Es werden immer die beiden (dem definierten Distanzmaß entsprechend) nächsten Untercluster zu einem neuen Cluster zusammengefasst und auf diese Art die Clusteranzahl schrittweise reduziert.

Hat die Clusteranzahl einen vorher definierten Schwellenwert erreicht, so beginnt der Algorithmus zur Bestimmung der besten Clusteranzahl. Die bei SPSS voreingestellte maximale Anzahl an Clustern liegt bei 15.

Der Algorithmus verwendet das Bayes'sche Informationskriterium (BIC) zum Beurteilen der Clusteranzahl. Es wird zunächst das Verhältnis der Änderungen im BIC durch das Zusammenfassen zweier Cluster mit dem Zusammenfassen der beiden letzten Cluster zu einem einzigen für eine erste Schätzung verwendet. Der BIC ist definiert als

BIC(J)=-2\sum_{j=1}^{J}{\xi_j+J\lbrace 2P_A+\sum_{p_B=1}^{P_B}{(M_{p_B}-1)}\rbrace\ln(N)}

und das Verhältnis der Änderung im BIC beim Zusammenfassen der Daten von J+1 auf J Cluster ist

R_1(J)=\frac{BIC(J)-BIC(J+1)}{BIC(1)-BIC(2)}

Falls BIC(1)< BIC(2), so wird die Clusteranzahl auf 1 gesetzt und der Algorithmus beendet.

Ist das nicht der Fall, so wird als Schätzung das kleinste J gewählt, für das R_1(J) < 0.04 ist.

Da normalerweise bei steigender Clusteranzahl der Wert des BIC zunächst abfällt, und dann wieder steigt, wird der Punkt J gesucht, bei dem der BIC am geringsten ist. Hierbei wird als erste grobe Schätzung die Zahl der Cluster gewählt, bei der der Abfall des BIC schwächer wird (Also: die Abnahme des BIC beim Zusammenführen zweier Cluster soll mindestens 25fach kleiner sein als beim Zusammenführen der beiden letzten Cluster- die kleinste Clusteranzahl, für die das zutrifft, wird als Schätzung genommen).


Hat man nun eine vorläufige Schätzung J_1, so wird im zweiten Schritt der minimale Interclusterabstand (Abstand zweier Cluster) im Modell mit k Clustern benötigt. Dieser Abstand wird mit d_{min}(\mathcal C_k) bezeichnet. Nun werden die Werte

R_2(k)=\frac{d_{min}(\mathcal C_k)}{d_{min}(\mathcal C_{k+1})},\;k=J_1,\dots,2

berechnet. Die beiden größten Werte R_2(k_1) und R_2(k_2), R_2(k_1)>R_2(k_2) werden nun verglichen:

  • Falls R_2(k_1)>1.15 \;R_2(k_2), dann ist k_1 die optimale Clusteranzahl.
  • Sonst ist \max_{i =1,2}\;(k_i) die beste Anzahl.

Beispiel: Abhängigkeit der Clusterzuordnung von der Datensortierung[edit]

Bei der schrittweisen Einordnung der Dateneinträge in den CF-Baum kann es dazu kommen, dass gleiche Punkte, die an unterschiedlichen Zeitpunkten eingelesen werden, unterschiedlichen Unterclustern angehören. Bei einer Neuordnung des Baumes mit einer erhöhten Schranke T zur Regelung der Heterogenität kann es sein, dass dieser Fehler ausgeglichen wird. Es ist ebenfalls möglich, dass beim Zusammenfügen der Untercluster im zweiten Schritt solche Punkte dann doch im gleichen Cluster eingeordnet werden.

Generell ist es jedoch so, dass ähnliche Punkte während der Two-Step Clusteranalyse unterschiedlichen Clustern zugeordnet werden können.

Dies ist der Nachteil dieses Algorithmus, der dem Vorteil eines geringeren Rechenaufwandes trotz großer Datenmengen gegenübersteht.


Anhand eines sehr einfachen Beispieles soll dieses Problem kurz illustriert werden.

Bild2b.png

Gegeben sind neun Punkte, von denen jeweils vier eindeutig in ein Cluster gehören, und ein Punkt, der genau in der Mitte beider Cluster liegt. Für diese Daten wurde die Two-Step-Clusteranalyse zweimal durchgeführt. Im ersten Durchgang waren die Daten aufsteigend, im zweiten Durchgang absteigend geordnet. Der mittige Punkt wurde in jedem Durchgang jeweils den Daten des zuerst eingelesenen Clusters zugeordnet. Nachfolgend sind die CF-Bäume in beiden Durchgängen, sowie die gebildeten Cluster nach dem zweiten Durchgang abgebildet.

1. Durchgang[edit]

Bild3.png

gefundene Cluster[edit]

Bild4.png

2. Durchgang[edit]

Bild5.png

gefundene Cluster[edit]

Bild6.png

Zusammenfassung[edit]

Abschließend ist zu sagen, dass die Two-Step-Clusteranalyse eine besonders für große Datenmengen geeignete Clustermethode ist. Sie kommt sowohl mit metrischen als auch mit kategoriellen Variablen zurecht und schafft eine Clusterbildung mit nur linear zu Datenmenge ansteigendem Rechenaufwand. Es kann allerdings in Abhängkeit von der Sortierung der Daten zu Fehlern kommen. Um diese Fehler zu vermeiden, wird eine zufällige Anordnung der Daten beim Einlesen empfohlen.

Quellen[edit]

  • Bühl, A., Zöfel, P. (2002). SPSS 11. Einführung in die moderne Datenanalyse unter Windows, Pearson Studium.
  • Chiu, T., Fang, D., Chen, J., Wang, Y., Jeris, C. (1999). A Robust and Scalable Clustering Algorithm for Mixed Type Attributes in Large Database Environment. Proceedings of the seventh ACM SIGMOD international conference on knowledge discovery and data mining, San Francisco, Kalifonien.
  • Theodoridis, S., Koutroumbas, K. (1998). Pattern Recognition, Academic Press.
  • Zhang, T., Ramakrishnan, R., Livny, M. (1997). BIRCH: An Efficient Data Clustering Method for Very Large Databases. Proceedings of the ACM SIGMOD Conference on Management of Data, Montreal, Kanada.