Numerical Cruncher
Clustering
ISODATA
ISODATA es el acrónimo de Iterative Self-Organizing Data Analysis Techniques (con la A añadida para hacer pronunciable el nombre), un iterativo método de agrupamiento que, como ya sucedía con el método de agrupamiento secuencial, requiere un considerable esfuerzo para ajustar adecuadamente todos sus parámetros. Además, éstos pueden modificarse en cada iteración del algoritmo.
Parámetros
- K: Número deseado de agrupamientos
- A: Número inicial de agrupamientos
- n: Umbral del número de patrones para la eliminación de agrupamientos
- s: Umbral de desviación típica para la división de un agrupamiento
- c: Umbral de distancia para la unión de agrupamientos
- L: Máximo número de mezclas en una iteración
- I: Máximo número de iteraciones permitidas
Algoritmo
- Inicialmente se seleccionan los centros de A agrupamientos.
- En cada una de las iteraciones del algoritmo (I como máximo).
- Se fijan los valores de los distintos parámetros del algoritmo
- Se asigna cada patrón al agrupamiento más cercano
- Se eliminan los agrupamientos con menos de n patrones
- Si el número actual de agrupamientos es pequeño (menor o igual que K/2), dividimos los agrupamientos más dispersos (siendo la dispersión de un agrupamiento la distancia media de sus patrones al centroide del cluster) por la componente de máxima dispersión (respetando el umbral mínimo s).
- En las iteraciones pares o cuando el número actual de agrupamientos es elevado (>2K), unimos como máximo L pares de agrupamientos cuya separación entre ellos quede por debajo del umbral de distancia c.