Interface AgglomerationMethod
- All Known Implementing Classes:
AverageLinkage
,CentroidLinkage
,CompleteLinkage
,MedianLinkage
,SingleLinkage
,WardLinkage
,WeightedAverageLinkage
public interface AgglomerationMethod
An AgglomerationMethod represents the Lance-Williams dissimilarity update formula
used for hierarchical agglomerative clustering.
The general form of the Lance-Williams matrix-update formula:
d[(i,j),k] = ai*d[i,k] + aj*d[j,k] + b*d[i,j] + g*|d[i,k]-d[j,k]|
Parameters ai, aj, b, and g are defined differently for different methods:
Method ai aj b g
------------- ------------------ ------------------ ------------------------ -----
Single 0.5 0.5 0 -0.5
Complete 0.5 0.5 0 0.5
Average ci/(ci+cj) cj/(ci+cj) 0 0
Centroid ci/(ci+cj) cj/(ci+cj) -ci*cj/((ci+cj)*(ci+cj)) 0
Median 0.5 0.5 -0.25 0
Ward (ci+ck)/(ci+cj+ck) (cj+ck)/(ci+cj+ck) -ck/(ci+cj+ck) 0
WeightedAverage 0.5 0.5 0 0
(ci, cj, ck are cluster cardinalities)
-
Method Summary
Modifier and TypeMethodDescriptiondouble
computeDissimilarity
(double dik, double djk, double dij, int ci, int cj, int ck) Compute the dissimilarity between the newly formed cluster (i,j) and the existing cluster k.
-
Method Details
-
computeDissimilarity
double computeDissimilarity(double dik, double djk, double dij, int ci, int cj, int ck) Compute the dissimilarity between the newly formed cluster (i,j) and the existing cluster k.- Parameters:
dik
- dissimilarity between clusters i and kdjk
- dissimilarity between clusters j and kdij
- dissimilarity between clusters i and jci
- cardinality of cluster icj
- cardinality of cluster jck
- cardinality of cluster k- Returns:
- dissimilarity between cluster (i,j) and cluster k.
-