Aprendizaje de minería de datos: análisis de conglomerados (agrupación de k-means, DBSCAN, AGNES), código python

Tabla de contenido

1. Introducción

2. Problema de agrupamiento

(1) Definición de problema de agrupamiento

(2) Base para la agrupación (definición de distancia)

3. Método de agrupamiento basado en prototipos (agrupamiento de k-medias)

(1) La idea básica y los pasos básicos del agrupamiento de k-medias

 (2) Características del agrupamiento de k-medias

4. Método de agrupamiento basado en la densidad DBSCAN

5. Método de agrupación jerárquica (método de agrupación AGNES)

código 6.python

(1) agrupación de k-medias

(2) DBSCAN

(3) Agnes


1. Introducción

El propósito de los tipos anteriores de minería de datos es extraer la relación entre los datos de muestra y las etiquetas, por lo que este modelo de aprendizaje se denomina aprendizaje supervisado.

El análisis de conglomerados es otro modo de aprendizaje, y los datos que procesa no tienen etiquetas , por lo que también se denomina método de aprendizaje no supervisado .

El análisis de conglomerados se refiere a la división de muestras de datos en diferentes conjuntos de acuerdo con las interrelaciones dentro de los datos.

2. Problema de agrupamiento

(1) Definición de problema de agrupamiento

El resultado del análisis de conglomerados es dividir muestras similares en el mismo conglomerado y dividir muestras con grandes diferencias en diferentes conglomerados .

(2) Base para la agrupación (definición de distancia)

La base para agrupar muestras es la similitud entre las muestras, y la similitud entre las muestras generalmente se mide por la distancia de la muestra .

El uso de diferentes definiciones de distancia puede tener un gran impacto en los resultados de la agrupación. Las definiciones de distancia comunes son:

1. Distancia de Minkowski

2. Distancia Manhattan

3. Distancia euclidiana

4. Distancia de Minkowski ponderada

5. Distancia del coseno

3. Método de agrupamiento basado en prototipos (agrupamiento de k-medias)

Hay tres métodos comunes de agrupamiento: métodos de agrupamiento basados ​​en prototipos, métodos de agrupamiento basados ​​en densidad y métodos de agrupamiento jerárquico.

Método de agrupamiento basado en prototipos: el llamado prototipo generalmente se refiere al punto central del grupo, y todas las muestras en el grupo tienen características similares con este punto central.

Agrupamiento de k-medias: el agrupamiento de k-medias es un método típico de agrupamiento basado en prototipos, que supone que todas las muestras se pueden dividir en k grupos, y cada muestra pertenece a uno de los grupos.

(1) La idea básica y los pasos básicos del agrupamiento de k-medias

La idea básica del agrupamiento de k-medias es: Dado un conjunto de muestra D={x1,x2,...,xn}, encuentre una partición de conglomerado C={C1,C2,. ...,Cn}, haciendo la suma del error cuadrático (SSE) de la distancia desde todos los puntos de muestra hasta el centroide del conglomerado donde se encuentra es la más pequeña.

Los pasos básicos:

1. Inicializar el centroide

2. Agrupación de muestras

3. Calcular el centroide del clúster

4. Juzgar la condición final

(Como se muestra en la figura a continuación, es el proceso de agrupamiento de k-medias)

 (2) Características del agrupamiento de k-medias

Al realizar el agrupamiento de k-medias, preste atención a los siguientes puntos:

1. Selección de k (usando diferentes valores de k para agrupar, el resultado final es diferente)

2. Centroides de inicialización generados aleatoriamente (para evitar resultados de agrupamiento con resultados deficientes causados ​​por centroides de inicialización, puede generar varios conjuntos más de centroides de inicialización para generar varios conjuntos de resultados de agrupamiento)

3. Conglomerados vacíos en el proceso de cálculo (algunos puntos de muestra pueden no pertenecer a ningún conglomerado durante el proceso de conglomerado, esto se denomina conglomerado vacío, para evitar el impacto del conglomerado vacío en los resultados del conglomerado, debemos ser un clúster vacío especifica un punto de masa para que no esté vacío)

4. Valores atípicos

5. Datos del sexo opuesto

4. Método de agrupamiento basado en la densidad DBSCAN

(agrupación espacial basada en la densidad orientada al ruido)

El método de agrupamiento se basa en un conjunto de parámetros del vecindario (radio del vecindario, umbral de densidad del vecindario) para describir la estrechez de la distribución de la muestra y usar esto como base para el agrupamiento.

proceso:

1. Establezca el radio del vecindario y el umbral de densidad del vecindario

2. Calcule el tipo de puntos de muestra (marque todas las muestras en el conjunto de datos como puntos centrales, puntos límite o puntos de ruido)

3. Agrupamiento (primero agrupar los puntos centrales, luego fusionar los puntos centrales cuya distancia es menor que el radio de la vecindad en un grupo, fusionar los puntos límite en los grupos de los puntos centrales asociados con ellos, y los puntos de ruido no se agrupan en cualquier grupo)

Características: No es necesario formular el número de grupos por adelantado En comparación con el método de agrupación en clústeres k-means, la forma de los grupos obtenidos por el método de agrupación DBSCAN ya no se limita a una forma esférica y se puede distribuir arbitrariamente.

5. Método de agrupación jerárquica (método de agrupación AGNES)

El método de agrupación en clústeres basado en jerarquías consiste en dividir el conjunto de datos en clústeres según diferentes jerarquías. Hay dos tipos de métodos de agrupamiento jerárquico, a saber, métodos de aglomeración de abajo hacia arriba y métodos de división de arriba hacia abajo.

AGNES es un método de agrupamiento jerárquico que utiliza una estrategia de aglomeración ascendente . Primero considera cada punto de muestra en el conjunto de datos como un conglomerado individual y luego fusiona los dos conglomerados más cercanos hasta alcanzar el número predeterminado de conglomerados.

Características: es adecuado para la agrupación en clústeres de cualquier forma. En comparación con la agrupación en clústeres de k-medias, se ve menos afectado por los valores atípicos.

código 6.python

(1) agrupación de k-medias

from sklearn.cluster import KMeans
kmeans=KMeans(n_clusters=4)
# 对数据集X进行聚类
kmeans.fit(X)
# kmeans.labels_输出数据集X的每个样本的分簇结果
y=kmeans.labels_
# kmeans.cluster_centers_输出聚类后簇的中心点(质点)的位置
centers=kmeans.cluster_centers_

# labels是聚类模型对新数据X1中每个样本的预测分簇结果
labels=kmeans.predict(X1)

Descripción de parámetros:

n_clusters es cuasi-agrupamiento

(2) DBSCAN

from sklearn.cluster import DBSCAN
dbscan = DBSCAN(eps=0.3,min_samples=5)
dbscan.fit(X)
y=dbscan.labels_

 Descripción de parámetros:

esp es el radio del vecindario, min_samples es el umbral de densidad del vecindario

(3) Agnes

from sklearn.cluster import AgglomerativeClustering
agg=AgglomerativeClustering(n_clusters=4,linkage='single')
agg.fit()
y=agg.labels_

Descripción de parámetros:

n_clusters es el número de clústeres que se agruparán, y el enlace se basa en la distancia entre clústeres para agrupar. ('único' significa enlace único, 'completo' significa enlace completo, 'promedio' significa ambos enlaces)

Supongo que te gusta

Origin blog.csdn.net/weixin_52135595/article/details/127037847
Recomendado
Clasificación