Ich verwende R nicht, aber hier ist ein Zeitplan, der Ihnen hoffentlich dabei helfen wird, den Wert von BIC- oder AIC-Clustering-Kriterien für eine bestimmte Clustering-Lösung zu berechnen.
Dieser Ansatz folgt den zweistufigen SPSS-Algorithmen (siehe die dortigen Formeln, beginnend mit Kapitel "Anzahl der Cluster", und wechseln Sie dann zu "Log-Likelihood-Abstand", wo ksi, die Log-Likelihood, definiert ist). Der BIC (oder AIC) wird basierend auf dem Log-Likelihood-Abstand berechnet. Ich zeige die folgende Berechnung nur für quantitative Daten (die im SPSS-Dokument angegebene Formel ist allgemeiner und enthält auch kategoriale Daten; ich diskutiere nur den "Teil" der quantitativen Daten):
X is data matrix, N objects x P quantitative variables.
Y is column of length N designating cluster membership; clusters 1, 2,..., K.
1. Compute 1 x K row Nc showing number of objects in each cluster.
2. Compute P x K matrix Vc containing variances by clusters.
Use denominator "n", not "n-1", to compute those, because there may be clusters with just one object.
3. Compute P x 1 column containing variances for the whole sample. Use "n-1" denominator.
Then propagate the column to get P x K matrix V.
4. Compute log-likelihood LL, 1 x K row. LL = -Nc &* csum( ln(Vc + V)/2 ),
where "&*" means usual, elementwise multiplication;
"csum" means sum of elements within columns.
5. Compute BIC value. BIC = -2 * rsum(LL) + 2*K*P * ln(N),
where "rsum" means sum of elements within row.
6. Also could compute AIC value. AIC = -2 * rsum(LL) + 4*K*P
Note: By default SPSS TwoStep cluster procedure standardizes all
quantitative variables, therefore V consists of just 1s, it is constant 1.
V serves simply as an insurance against ln(0) case.
AIC- und BIC-Clustering-Kriterien werden nicht nur beim K-Mittel-Clustering verwendet. Sie können für jede Clustering-Methode nützlich sein, bei der die Dichte innerhalb des Clusters als Varianz innerhalb des Clusters behandelt wird. Da AIC und BIC für "übermäßige Parameter" zu bestrafen sind, bevorzugen sie eindeutig Lösungen mit weniger Clustern. "Weniger Cluster mehr voneinander getrennt" könnte ihr Motto sein.
Es kann verschiedene Versionen von BIC / AIC-Clustering-Kriterien geben. Die hier Vc
gezeigte verwendet Varianzen innerhalb des Clusters als Hauptbegriff für die Log-Wahrscheinlichkeit. Eine andere Version, die möglicherweise besser für das k-means-Clustering geeignet ist, basiert die Log-Wahrscheinlichkeit möglicherweise auf den Quadratsummen innerhalb des Clusters .
Die PDF-Version desselben SPSS-Dokuments, auf das ich mich bezogen habe.
Und hier sind schließlich die Formeln selbst, die dem obigen Pseudocode und dem Dokument entsprechen; Es stammt aus der Beschreibung der Funktion (Makro), die ich für SPSS-Benutzer geschrieben habe. Wenn Sie Vorschläge zur Verbesserung der Formeln haben, schreiben Sie bitte einen Kommentar oder eine Antwort.