¿Qué es Scipy en el lenguaje de programación de Python??
Scipy es una biblioteca de computación científica de código abierto y de código abierto proporcionada por el lenguaje de programación de Python. Está construido en Numpy; Por lo tanto, extiende las funcionalidades de la biblioteca Numpy también. Scipy es una abreviatura de la pitón científico y proporciona métodos útiles para manejar cualquier aplicación científica. Usando la biblioteca Scipy, puede administrar fácilmente cualquier tipo de problemas matemáticos, científicos, de optimización, computación, procesamiento de señales o estadísticos en un programa de Python. Además, proporciona varias técnicas útiles de visualización de datos y manipulación. La agrupación es uno de los métodos básicos de la biblioteca Scipy. Este artículo está específicamente dedicado a la agrupación en el lenguaje de programación de Python.
¿Qué se agrupa en el lenguaje de programación de Python??
La agrupación, como su nombre indica, hace grupos de datos. El concepto básico de agrupación es hacer que los grupos de datos tengan las mismas características. En palabras simples, la agrupación es el concepto de hacer pequeños grupos de datos que son similares en características para un gran grupo de datos. Muchas industrias como la atención médica, las finanzas, el comercio minorista, etc. Utilice el concepto de agrupación para varias tareas analíticas.
El concepto de agrupación en el lenguaje de programación de Python es el mismo que el concepto general de agrupación. El lenguaje de programación de Python proporciona varias herramientas útiles y fáciles de usar para realizar el análisis de clúster. Puede seleccionar entre la lista de la herramienta que mejor se adapte a su problema. Junto con eso, también debe darse cuenta de qué algoritmo funciona mejor y debe ser capaz de evaluar cada algoritmo que pueda usarse para su problema.
Para evaluar el rendimiento del algoritmo de agrupación, debe encontrar la distancia promedio del clúster desde el centro. La distancia promedio desde el centro del clúster de datos a cada observación determina la compacidad de un clúster y esto se conoce comúnmente como centroide. Esto es sensato porque todos los algoritmos de agrupación de Python generan grupos de datos bien empaquetados. Cuanto más sean los puntos de datos en el clúster, mejores serán los resultados del algoritmo de agrupación. Evaluar el rendimiento de un algoritmo de agrupación es tomar la suma de la distancia trazada del clúster contra el número total de grupos.
En general, hay tres técnicas para realizar la agrupación de la agrupación en Python, K-Means, Spectral y Gaussian Menchure Model Clustering. La técnica de agrupación K-Mean funciona mejor para tareas de baja dimensión con pocos números de entradas, mientras que la técnica de agrupación espectral es bastante adecuada para problemas de alta dimensión con varios miles de entradas. Por el contrario, el modelo de mezcla gaussiana se encuentra entre K-means y las técnicas de agrupación espectral. Es un modelo flexible y robusto que funciona mejor con tareas moderadamente complicadas.
¿Qué es Scipy Clustering??
La biblioteca Scipy en Python proporciona dos módulos básicos: el módulo VQ y el módulo de jerarquía para hacer grupos con un programa de Python. El módulo VQ significa cuantización vectorial que es más útil para compresión, comunicaciones, detección de objetivos, teoría de la información, etc. Sin embargo, solo admite los algoritmos de cuantización K-mean y vectorial. Por otro lado, el módulo jerárquico funciona mejor para visualizar los grupos con dendrogramas, calcular estadísticas en grupos, generar grupos jerárquicos a partir de matrices de distancia y cortar enlaces para generar grupos planos. Lo que significa que es más útil para la agrupación aglomerativa y jerárquica.
Cuantización vectorial y agrupación de K-mean
La cuantización vectorial o los algoritmos de agrupación K-mean de la biblioteca Scipy se utilizan para encontrar los grupos y el centro de los grupos en un conjunto de datos. Estos algoritmos toman el conjunto de vectores de observación y el número de grupos para generar como entrada. El algoritmo calcula los centroides del clúster y devuelve para cada uno de los k clústeres. La biblioteca Scipy ofrece la implementación completa del algoritmo K-means a través del paquete de clúster. Así es como puede usar el algoritmo VQ o K-Mean en su programa:
Ejemplo 1:
Demostrar un ejemplo de clúster.VQ para comprender cómo se puede usar en un programa de Python. Eche un vistazo al siguiente código de muestra:
De Scipy.grupo.VQ Import Kmeans, VQPrimero, el Scipy.grupo.VQ se utiliza para importar los módulos KMeans y VQ. Luego, se llama a la biblioteca Numpy para importar el Vstack y la matriz en el programa. Finalmente, el rand se importa al programa utilizando el Numpy.módulo aleatorio. Una variable de "datos" se inicializa y se pasa a la función KMeans () para encontrar el centroide de los datos. Los datos originales y el centroide calculado de los datos se pasan a la función VQ. Consulte el resultado de los módulos KMeans y VQ en la siguiente salida:
Agrupación jerárquica
La agrupación jerárquica se usa para hacer grupos de objetos similares utilizando los algoritmos de aprendizaje no supervisados. El algoritmo de agrupación jerárquica asigna un clúster a cada punto de datos al principio y luego combina los grupos más cercanos en cada iteración, lo que resulta en un solo grupo grande. Es muy útil para descubrir el número óptimo de grupos, presentar ideas y visualización interpretable. Para visualizar los grupos jerárquicos, se utilizan los dendrogramas.
Así es como puede usar la agrupación jerárquica en su programa Python:
Ejemplo 2:
Este ejemplo lo guiará sobre cómo realizar la agrupación jerárquica en un programa de Python. Consulte el siguiente código de muestra:
De Scipy.grupo.Dendrograma de importación de jerarquía, enlacePrimero, el Scipy.grupo.La clase de jerarquía se llama en el programa para hacer los grupos de jerarquía y la biblioteca Matplotlib se importa para mostrar el dendrograma del clúster de jerarquía. Los datos se proporcionan en la variable "x". Para dibujar el dendrograma, los datos se pasan a la función dendrogram (). El dendrograma resultante es el siguiente:
Conclusión
Este artículo está dedicado para aprender el concepto de agrupación en el lenguaje de programación de Python. Primero, aprendimos el concepto básico de agrupación. Entonces, exploramos qué es un clúster en Python. La biblioteca Scipy proporciona dos módulos de agrupación: VQ y jerarquía. Exploramos ambos módulos y con la ayuda de un ejemplo de cada módulo, aprendimos a usar y hacer los grupos en el programa Python.