Motivo para normalizar las medidas de distancia euclidiana en agrupamiento jerárquico


19

Aparentemente, en la agrupación jerárquica en la que la medida de la distancia es la distancia euclidiana, los datos primero deben normalizarse o estandarizarse para evitar que la covariable con la mayor varianza impulse la agrupación. ¿Por qué es esto? ¿No es deseable este hecho?

Respuestas:


20

Depende de tus datos. Y en realidad no tiene nada que ver con la agrupación jerárquica, sino con las funciones de distancia en sí mismas.

El problema es cuando tienes atributos mixtos .

Digamos que tiene datos sobre personas. Peso en gramos y talla de zapato. Los tamaños de los zapatos difieren muy poco, mientras que las diferencias en la masa corporal (en gramos) son mucho más grandes. Puedes encontrar docenas de ejemplos. Simplemente no puede comparar 1 gy 1 diferencia de tamaño de zapato. De hecho, en este ejemplo calculas algo que tendría la unidad física de !soltamaño del zapato

Por lo general, en estos casos, la distancia euclidiana simplemente no tiene sentido. Pero aún puede funcionar, en muchas situaciones, si normaliza sus datos. Incluso si realmente no tiene sentido, es una buena heurística para situaciones en las que no tiene una función de distancia "probada correcta", como la distancia euclidiana en el mundo físico a escala humana.


Acabas de responder a mis pensamientos, supongo que estar sentado solo mientras pensar demasiado ayuda.
Karl Morrison

13

Si no estandariza sus datos, entonces las variables medidas en unidades de gran valor dominarán la diferencia calculada y las variables que se miden en unidades de poco valor contribuirán muy poco.

Podemos visualizar esto en R a través de:

set.seed(42)
dat <- data.frame(var1 = rnorm(100, mean = 100000),
                  var2 = runif(100),
                  var3 = runif(100))
dist1 <- dist(dat)
dist2 <- dist(dat[,1, drop = FALSE])

dist1contiene las distancias euclidianas para las 100 observaciones basadas en las tres variables, mientras que dist2contiene la distancia euclidiana basada var1solo.

> summary(dist1)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
0.07351 0.77840 1.15200 1.36200 1.77000 5.30200 
> summary(dist2)
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
0.000072 0.470000 0.963600 1.169000 1.663000 5.280000

Observe cuán similares son las distribuciones de distancias, lo que indica poca contribución de var2y var3, y las distancias reales son muy similares:

> head(dist1)
[1] 1.9707186 1.0936524 0.8745579 1.2724471 1.6054603 0.1870085
> head(dist2)
[1] 1.9356566 1.0078300 0.7380958 0.9666901 1.4770830 0.1405636

Si estandarizamos los datos

dist3 <- dist(scale(dat))
dist4 <- dist(scale(dat[,1, drop = FALSE]))

entonces hay un gran cambio en las distancias basadas solo en var1las basadas en las tres variables:

> summary(dist3)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
0.09761 1.62400 2.25000 2.28200 2.93600 5.33100 
> summary(dist4)
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
0.000069 0.451400 0.925400 1.123000 1.597000 5.070000 
> head(dist3)
[1] 2.2636288 1.7272588 1.7791074 3.0129750 2.5821981 0.4434073
> head(dist4)
[1] 1.8587830 0.9678046 0.7087827 0.9282985 1.4184214 0.1349811

Como el agrupamiento jerárquico usa estas distancias, si es deseable estandarizar o no dependerá del tipo de datos / variables que tenga y si desea que las cosas grandes dominen las distancias y, por lo tanto, dominen la formación del agrupamiento. La respuesta a esto es específica del dominio y específica del conjunto de datos.


4

Anony-Mousse dio una excelente respuesta . Solo agregaría que la métrica de distancia que tiene sentido dependerá de la forma de las distribuciones multivariadas. Para Gaussian multivariante, la distancia de Mahalanobis es la medida adecuada.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.