Cómo crear un modelo de aprendizaje no supervisado con desplazamiento medio

Video: SESIÓN DE APRENDIZAJE UTILIZANDO RUTAS

Un algoritmo de agrupamiento que se ofrece en scikit-learn que se puede utilizar en el análisis predictivo es el algoritmo de media turno. Este algoritmo, como DBSCAN, no requiere que se especifique el número de grupos, o cualquier otro parámetro, cuando se crea el modelo. El principal parámetro de ajuste para este algoritmo se llama ancho de banda parámetro. Tu puedes pensar en ancho de banda como elegir el tamaño de una ventana redonda que puede abarcar los puntos de datos en un clúster. La elección de un valor para el ancho de banda no es trivial, así que vaya con el valor predeterminado.

Ejecutar el conjunto de datos completo

Los pasos para crear un nuevo modelo con un algoritmo diferente es esencialmente el mismo cada vez:

  1. Abrir una nueva sesión intérprete interactivo de Python.
    Utilice una nueva sesión de Python para que la memoria es clara y tiene una pizarra limpia para trabajar.
  2. Pegar el código siguiente en el indicador y observar la salida:
    gt; gt; gt; de load_iris sklearn.datasets importación
    gt; gt; gt; iris = load_iris ()
  3. Crear una instancia de desplazamiento medio. Escriba el siguiente código en el intérprete:
    gt; gt; gt; de sklearn.cluster MeanShift importación
    gt; gt; gt; ms = MeanShift ()
    La media de cambio creada con valor predeterminado de ancho de banda.
  4. Comprobar qué parámetros se utilizaron escribiendo el siguiente código en el intérprete:
    gt; gt; gt; Sra
    MeanShift (ancho de banda = Ninguno, bin_seeding = False, cluster_all = True, min_bin_freq = 1, n_jobs = 1, semillas = None)
  5. Ajustar los datos del iris en el algoritmo de agrupamiento media turno escribiendo el siguiente código en el intérprete:
    gt; gt; gt; ms.fit (iris.data)
    Para comprobar los resultados, coloque el código siguiente en el intérprete:

gt; gt; gt; ms.labels_

array ([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,

1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,

1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])

La media de cambio produjo dos agrupaciones (0 y 1).

La visualización de los racimos

Un diagrama de dispersión es una buena manera de visualizar la relación entre un gran número de puntos de datos. Es útil para identificar visualmente grupos de datos y la búsqueda de puntos de datos que están distantes de los grupos formados.

Vamos a producir un gráfico de dispersión de la salida DBSCAN. Escriba el siguiente código:

gt; gt; gt; pylab importación como pl

gt; gt; gt; sklearn.decomposition de PCA importación

gt; gt; gt; PCA = PCA (n_components = 2) .fit (iris.data)

gt; gt; gt; pca_2d = pca.transform (iris.data)

gt; gt; gt; pl.figure ( `Figura 13-7`)

gt; gt; gt; para i en el rango (0, pca_2d.shape [0]):

gt; gt; gt; si ms.labels_ [i] == 1:

gt; gt; gt; c1 = pl.scatter (pca_2d [i, 0], pca_2d [i, 1], C `r` =,

marcador = `+`)

gt; gt; gt; elif ms.labels_ [i] == 0:

gt; gt; gt; c2 = pl.scatter (pca_2d [i, 0], pca_2d [i, 1], c = `g`,

Video: Ministrar por medio del Consejo de Barrio

marcadores = `o`)

gt; gt; gt; pl.legend ([c1, c2], [ `Cluster 1`, `Cluster 2`)]

gt; gt; gt; pl.title ( "cambio Mean encuentra 2 grupos)

gt; gt; pl.show ()

Video: Portafolio Electrónico con Office Word

predictivos-analytics-2e-media-shift
desplazamiento medio encuentra dos grupos.

La salida gráfica de dispersión de este código se muestra aquí.

desplazamiento medio encontró dos grupos. Usted puede tratar de ajustar el modelo con el ancho de banda parámetro para ver si puede obtener una solución de tres clústeres. desplazamiento medio es muy sensible a la ancho de banda parámetro:

  • Si el valor elegido es demasiado grande, entonces los grupos tenderán a combinar y el resultado final será un menor número de racimos de lo deseado.
  • Si el valor elegido es demasiado pequeño, entonces el algoritmo puede producir demasiados grupos y se necesitará más tiempo para funcionar.

Evaluación del modelo

La media de cambio no produjo los resultados ideales con los parámetros por defecto para el conjunto de datos del iris, pero una solución de dos clúster está en línea con otros algoritmos de agrupamiento. Cada proyecto debe ser examinado individualmente para ver qué tan bien el número de clúster se ajusta al problema de negocio.

La ventaja obvia de usar desplazamiento medio es que usted no tiene que predeterminar el número de agrupaciones. De hecho, se puede usar el desplazamiento de media como una herramienta para encontrar el número de grupos para la creación de un modelo de K-medias. desplazamiento medio se utiliza a menudo para aplicaciones de visión artificial porque es bueno en dimensiones más bajas, tiene capacidad para grupos de cualquier forma, y ​​tiene capacidad para grupos de cualquier tamaño.

Artículos Relacionados