@Reference(authors="J. Podani",title="New Combinatorial Clustering Methods",booktitle="Vegetatio 81(1/2)",url="https://doi.org/10.1007/978-94-009-2432-1_5",bibkey="doi:10.1007/978-94-009-2432-1_5") @Reference(authors="E. Diday, J. Lemaire, J. Pouget, F. Testu",title="Elements d\'analyse de donnees",booktitle="",bibkey="books/misc/DidayLPT85") @Alias(value={"variance","de.lmu.ifi.dbs.elki.algorithm.clustering.hierarchical.MinimumVarianceLinkageMethod"}) public class MinimumVarianceLinkage extends java.lang.Object implements Linkage
This is subtly different from Ward's method (WardLinkage
, MISSQ),
because variance is normalized by the cluster size; and Ward minimizes the
increase in sum of squares (without normalization).
\[d_{\text{MIVAR}}(A\cup B,C)=
\left(\tfrac{|A|+|C|}{|A|+|B|+|C|}\right)^2 d(A,C) +
\left(\tfrac{|B|+|C|}{|A|+|B|+|C|}\right)^2 d(B,C)
- \tfrac{|C|\cdot(|A|+|B|)}{(|A|+|B|+|C|)^2} d(A,B)\]
or equivalently:
\[d_{\text{MIVAR}}(A\cup B,C)=\tfrac{(|A|+|C|)^2 d(A,C)
+ (|B|+|C|)^2 d(B,C) - |C|\cdot(|A|+|B|) d(A,B)}{(|A|+|B|+|C|)^2}\]
Reference:
J. Podani
New Combinatorial Clustering Methods
Vegetatio 81(1/2)
attributes this to (but we did not verify):
E. Diday, J. Lemaire, J. Pouget, F. Testu
Elements d'analyse de donnees
Modifier and Type | Class and Description |
---|---|
static class |
MinimumVarianceLinkage.Parameterizer
Class parameterizer.
|
Modifier and Type | Field and Description |
---|---|
static MinimumVarianceLinkage |
STATIC
Static instance of class.
|
Constructor and Description |
---|
MinimumVarianceLinkage()
Deprecated.
use the static instance
STATIC instead. |
Modifier and Type | Method and Description |
---|---|
double |
combine(int sizex,
double dx,
int sizey,
double dy,
int sizej,
double dxy)
Compute combined linkage for two clusters.
|
double |
initial(double d,
boolean issquare)
Initialization of the distance matrix.
|
double |
restore(double d,
boolean issquare)
Restore a distance to the original scale.
|
public static final MinimumVarianceLinkage STATIC
@Deprecated public MinimumVarianceLinkage()
STATIC
instead.public double initial(double d, boolean issquare)
Linkage
public double restore(double d, boolean issquare)
Linkage
public double combine(int sizex, double dx, int sizey, double dy, int sizej, double dxy)
Linkage
combine
in interface Linkage
sizex
- Size of first cluster x before mergingdx
- Distance of cluster x to j before mergingsizey
- Size of second cluster y before mergingdy
- Distance of cluster y to j before mergingsizej
- Size of candidate cluster jdxy
- Distance between clusters x and y before mergingCopyright © 2019 ELKI Development Team. License information.