Una rutina para elegir eps y minPts para DBSCAN

13

DBSCAN es el algoritmo de agrupación más citado de acuerdo con cierta literatura y puede encontrar agrupaciones de formas arbitrarias basadas en la densidad. Tiene dos parámetros eps (como radio de vecindad) y minPts (como vecinos mínimos para considerar un punto como punto central) que creo que depende en gran medida de ellos.

¿Hay alguna rutina o método comúnmente utilizado para elegir estos parámetros?

Mehraban
fuente
1
Tenga en cuenta que hay una pregunta similar sobre Stack Overflow : ¿Cómo elegir eps y minpts para DBSCAN (R)?
gung - Restablece a Monica

Respuestas:

11

Hay muchas publicaciones que proponen métodos para elegir estos parámetros.

La más notable es OPTICS, una variación de DBSCAN que elimina el parámetro epsilon; produce un resultado jerárquico que se puede ver más o menos como "ejecutar DBSCAN con cada épsilon posible".

Para minPts, sugiero no confiar en un método automático, sino en su conocimiento de dominio .

Un buen algoritmo de agrupación tiene parámetros que le permiten personalizarlo según sus necesidades.

Un parámetro que pasó por alto es la función de distancia. Lo primero que debe hacer para DBSCAN es encontrar una buena función de distancia para su aplicación . ¡No confíe en que la distancia euclidiana sea la mejor para cada aplicación!

HA SALIDO - Anony-Mousse
fuente
Aunque el usuario puede elegir la función de distancia, dudo que sea un parámetro.
Mehraban
1
Por supuesto que es. Es tanto un parámetro como la función de kernel para cualquier otro método kernelized (de hecho, puede kernelize DBSCAN trivialmente de esta manera), y en mi experiencia, otras distancias como Canberra o Clark pueden mejorar significativamente los resultados .
HA SALIDO - Anony-Mousse
No subestimo la influencia de la función de distancia en la agrupación, pero creo que de alguna manera es general, no específica de dbscan o de cualquier otro algoritmo de agrupación; mientras que eps y minPts son explícitamente parámetros de dbscan.
Mehraban
1
También hay muchos algoritmos no basados ​​en la distancia. Y cuando considera que minPts es el mismo que, por ejemplo, kpara la clasificación de vecino más cercano, puede decir lo mismo para el parámetro minPts. Supongo que la principal diferencia es que para la distancia, hay un valor predeterminado "a menudo": distancia euclidiana; mientras que para minPts el valor será específico de los datos.
HA SALIDO - Anony-Mousse
1
OPTICS en sí mismo no le dará particiones, sino un orden de clúster. Para obtener particiones, use la extracción xi descrita en el documento OPTICS. Vea cada documento de variantes para comprender las diferencias.
HA SALIDO - Anony-Mousse