0% encontró este documento útil (0 votos)
87 vistas7 páginas

T7 - Algoritmos de Agrupamiento

Este documento describe diferentes tipos de algoritmos de agrupamiento (clustering) y algunos de los algoritmos más populares. Explica que el agrupamiento es una tarea de aprendizaje no supervisado que permite encontrar patrones en datos no etiquetados. Describe algoritmos basados en densidad, distribución, centroides y jerarquía, y discute K-means, DBSCAN, mezcla gaussiana y BIRCH como algunos de los algoritmos de agrupamiento más conocidos. El objetivo general es proporcionar una introducción a los conceptos y métodos fundamentales de agrup
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
87 vistas7 páginas

T7 - Algoritmos de Agrupamiento

Este documento describe diferentes tipos de algoritmos de agrupamiento (clustering) y algunos de los algoritmos más populares. Explica que el agrupamiento es una tarea de aprendizaje no supervisado que permite encontrar patrones en datos no etiquetados. Describe algoritmos basados en densidad, distribución, centroides y jerarquía, y discute K-means, DBSCAN, mezcla gaussiana y BIRCH como algunos de los algoritmos de agrupamiento más conocidos. El objetivo general es proporcionar una introducción a los conceptos y métodos fundamentales de agrup
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 7

UNIVERSIDAD DE GUADALAJARA

CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E


INGENIERÍAS
Inteligencia Artificial

Nombre del alumno: Alejandro Canales González


Profesor: Erasmo Gabriel Martı́nez Soltero
Tı́tulo de la práctica: “Tarea 7 - Clustering”
Fecha: 13 de noviembre de 2022

Introducción
En esta investigación estudiaremos los algoritmos de agrupamiento o
’clustering’.

Prolegómenos
Hay tres diferentes tipos de enfoques en el machine learning, dependien-
do de los datos que se tengan. Puedes optar por aprendizaje supervisado,
semisupervisado o no supervisado.
En aprendizaje supervisado se cuenta con datos etiquetados, por lo que
se consiguen resultados de los que se tiene certeza que son valores correctos,
esto es, acorde a tus entradas. Es como estimar el precio de una computadora
a partir de sus caracterı́sticas (RAM, microprocesador. . . ).
Con el aprendizaje semisupervisado, se tienen conjuntos de datos más
grandes, donde algunos de los datos están etiquetados, pero la mayorı́a no

1
lo están. Esto engloba una gran parte de los datos reales del mundo, ya que
sale caro conseguir expertos para clasificar cada punto de datos. Se puede
trabajar con esto al usar una combinación de aprendizaje supervisado y no
supervisado.
El aprendizaje no supervisado significa que se cuenta con un conjunto de
datos que está completamente desclasificado. No se sabe realmente si exis-
ten o no patrones ocultos en los datos, de modo que le dejas al algoritmo
encontrar tantos como pueda. Aquı́ es donde los algoritmos de agrupamien-
to entran. Es uno de los métodos que se pueden usar en un problema de
aprendizaje no supervisado.

¿Qué es un algoritmo de agrupamiento?


Agrupamiento o análisis de agrupamiento es una tarea de machine lear-
ning sin supervisión.
Utilizar un algoritmo de agrupamiento significa que vas a darle al algo-
ritmo bastante información de entrada sin etiquetas y permitirle encontrar
en los datos cualquier tipo de agrupación que pueda. Esas agrupaciones son
llamadas agrupamientos. Un agrupamiento es un grupo de puntos de datos
que son similares entre sı́, basándose en la relación alrededor de los puntos de
datos. El agrupamiento se usa para cosas como ingenierı́a de caracterı́sticas
o descubrimiento de patrones. Manejan todo tipo de datos únicos. Cuando
vas comenzando con datos de los que no sabes nada, el agrupamiento puede
resultar un buen punto de partida para conseguir algo de información.

Tipos de algoritmos de agrupamientos


Basados en densidad
En agrupamiento basado en densidad, los datos se agrupan por áreas de
puntos de datos de altas concentraciones, que se encuentren rodeados por
áreas de puntos de datos de baja concentración. Básicamente los algoritmos
encuentran los lugares que presentan mayor densidad de puntos de datos y
llama a dichos lugares agrupamientos. Lo maravilloso de esto es que los agru-
pamientos pueden tomar cualquier forma. No estás limitado por condiciones
esperadas. Los algoritmos de agrupamiento bajo el tipo basado en densidad
descartan los valores atı́picos, por lo que no los agregan a los agrupamientos.
Basados en distribución
Con una aproximación de un algoritmo de agrupamiento basado en la
distribución, todos los puntos de datos son considerados partes de algún
agrupamiento, basándose en la probabilidad que tienen de pertenecer a dicho
agrupamiento. Funciona ası́: hay un punto central y conforme la distancia
entre un punto de datos y el centro aumenta, la probabilidad de que sea
parte de ese agrupamiento disminuye. Si no estás seguro de cómo está la
distribución de tus datos, debes optar por un tipo de algoritmo distinto a
este.
Basados en centroides

2
Estos agrupamientos son probablemente los más populares. Son un tanto
sensibles a los parámetros iniciales brindados, pero son rápidos y eficientes.
Estos tipos de algoritmos separan puntos de datos basándose en múltiples
centroides dentro de los datos. Cada punto de datos se asigna a otro agru-
pamiento a partir de su distancia cuadrada respecto a un centroide. Este es
el tipo de agrupamiento más comúnmente utilizado.
Basados en jerarquı́a
Son tı́picamente usados en datos jerarquizados, del tipo que suele tenerse
en una compañı́a de bases de datos o taxonómicas. Construye un árbol
de agrupamientos para que todo se organice de arriba abajo. Este tipo de
algoritmo de agrupamiento es más restrictivo que los anteriores, pero es
perfecto para cierto tipo de conjuntos de datos.

¿Cuándo optar por algoritmos de agrupamiento?


Cuando cuentas con datos no clasificados, es muy probable que estés
usando algún tipo de algoritmo de aprendizaje no supervisado.
Existen muchas técnicas diferentes de aprendizaje no supervisado, como
redes neuronales, aprendizaje reforzado, y agrupamiento. El tipo de algorit-
mo especı́fico que quieras usar dependerá de lo que parezcan tus tipos de
datos. Tal vez quieras usar agrupamiento cuando intentes hacer detección
de anomalı́as y ası́ tratar de encontrar valores atı́picos en tus datos, pues
ayuda al separar de los agrupamientos normales, mostrando los lı́mites que
determinan si un punto de datos es un valor atı́pico o no.
Si no estás seguro de qué tipo de prestaciones usar para tu modelo de
machine learning, el agrupamiento descubre patrones que puedes usar pa-
ra descubrir qué sobresale dentro los datos. Es especialmente útil para la
exploración de datos de la que no se sabe nada. Tal vez tome algo de tiem-
po reconocer qué tipo de algoritmo de agrupamiento funciona mejor, pero,
cuando lo logres, obtendrás información invaluable de tus datos. Pudes en-
contrar conexiones que jamás te habrı́as imaginado.
Algunas aplicaciones en el mundo real de agrupamiento incluyen detec-
ción de fraude en seguros, clasificar libros dentro de una biblioteca o segmen-
tación de clientes en mercadeo. También puede ser utilizado en problemas
más grandes, como análisis de terremotos o planeamiento de ciudades.

1. Los 8 algoritmos de agrupamiento más famosos.


Ahora que sabes algo más de los algoritmos de agrupamiento, cómo tra-
bajan y los diferentes tipos disponibles, podemos hablar de los algoritmos
en sı́ que más comúnmente verás en la práctica. Intentaremos demostrar
cómo no todos los algoritmos de agrupamiento son funcionales para todos
los problemas de agrupar.

3
1.1. K-means
K-means o K-media es el más comúnmente usado. Está basado en cen-
troides y es el más sencillo de los algoritmos de aprendizaje no supervisados.
Este algoritmo intenta minimizar la varianza de los puntos de datos dentro
de un agrupamiento. K-means también es la entrada por la cual la mayorı́a
de estudiantes conocen el machine learning no supervisado. Es mejor si se
usa en conjuntos de datos más bien pequeños, ya que itera sobre todos los
puntos de datos, lo que se traduce en mayor tiempo y recursos utilizados
para clasificarlos, si es que existe una cantidad grande de ellos en el conjunto
de datos. No es un algoritmo que escale bien.

1.2. DBSCAN
DBSCAN significa Agrupamiento Espacial de Aplicaciones con Ruido
Basado en Densidad. Como su nombre lo indica, es un algoritmo de agru-
pamiento basado en la densidad. Es bueno para encontrar valores atı́picos.
Encuentra agrupamientos arbitrariamente formados, basándose en la den-
sidad de los puntos de datos en regiones distintas. Separa las regiones por
áreas de baja densidad, de tal manera que pueda detectar valores atı́picos
entre los agrupamientos de alta densidad. Este algoritmo es mejor que K-
means cuando se trata de trabajar con datos formados o constituidos de
manera disforme. DBSCAN usa dos parámetros para determinar la defini-
ción de los agrupamientos: minPts, esto es, el número mı́nimo de puntos de
datos que necesitan ser agrupados juntos para que una área sea considerada
de alta densidad, y los eps, o sea, la distancia utilizada para determinar si un
punto de datos se encuentra o no dentro de la misma área que otros puntos
de datos. Elegir los parámetros de inicio adecuados es crı́tico para que este
algoritmo funcione bien.

1.3. Modelo de Mixtura Gaussiana


Uno de los problemas con K-means es que los datos necesitan seguir un
patrón circular. La manera en que calcula la distancia entre los puntos de
datos tiene que ver con un camino circular, por ello, lo que no cumpla con
dicho requisito no se agrupa correctamente. Esto se corrige con el Modelo
de Mixtura Gaussiana, pues no necesita datos circulares para trabajar bien.
Usa múltiples distribuciones gaussianas para ajustar datos arbitrariamente
formados. Existen varios modelos gaussianos sencillos que actúan como ca-
pas ocultas en el modelo hı́brido, de modo que calcula la probabilidad de
que los puntos de datos pertenezcan a una distribución gaussiana especı́fica
y ese será el agrupamiento dentro del cual quedará clasificados.

1.4. BIRCH
El algoritmo de Balance Iterativo Reductor y Agrupador con Jerarquı́as
(BIRCH, en inglés) funciona mejor en grandes cantidades de datos que K-
means. Separa los datos en pequeños brevarios agrupados en lugar de utilizar

4
los puntos de datos originales. Los brevarios guardan tanta información de
distribución sobre los puntos de datos como les sea posible. Este algoritmo
es usualmente utilizado en conjunto con otros algoritmos de agrupamiento,
ya que sus técnicas pueden utilizarse en favor de los brevarios generados por
BIRCH. Su principal desventaja es que solo trabaja con valores numéricos.
No se puede usar para valores categóricos, a menos que se traten los datos
previamente con algún tipo de trasformación de datos.

1.5. De Afinidad de Propagación


Es completamente diferente de los anteriores en la manera en que agrupa
los datos. Cada punto de datos se comunica con los otros para conocer cuán
similares son y luego comienzan a revelar los agrupamientos dentro de los
datos. No se necesita decirle al algoritmo cuántos agrupamientos se esperan
encontrar, al inicio de los parámetros. Conforme los mensajes se envı́an
entre los puntos de datos, los conjuntos de datos —llamados ejemplares—
se encuentran y representan a los agrupamientos. Un ejemplar es hallado
después de que los puntos de datos han intercambiado mensajes entre ellos,
con lo que se forma un consenso acerca de qué tipo de puntos de datos
representan mejor al agrupamiento. Cuando no se está seguro de cuántos
agrupamientos esperar, como en un problema computacional, este es un
gran algoritmo de entrada.

1.6. Avance de Media


Este algoritmo es particularmente útil para el manejo de imágenes y pro-
cesamiento visual de ordenadores. Avance de Media (Mean-shift) se parece a
BIRCH, pues también encuentra agrupamientos sin un número inicial prede-
terminado. Es un tipo de agrupamiento jerárquico y su desventaja es que no
escala apropiadamente cuando se trabaja con grandes cantidades de datos.
Su método de funcionamiento es a través de iterar sobre todos los puntos de
datos y llevarlos hacia ‘el modo’. El modo en este contexto es el área de alta
densidad de puntos de datos en la región. Esta es la razón por la cual tal
vez hayas escuchado que se refieren a este algoritmo como ‘el algoritmo que
busca su modo’. El algoritmo pasará por este proceso iterativo con cada uno
de los puntos de datos y los moverá más cerca de donde se encuentren otros
puntos de datos hasta que estos hayan sido asignados a algún agrupamiento.

1.7. OPTICS
Significa Puntos de Ordenamiento para la Identificación de la Estructu-
ra de Agrupamientos (por sus siglas en inglés). Está basado en densidad,
similar a DBSCAN, pero es mejor porque puede encontrar agrupamientos
significativos en datos cuya densidad varı́a. Lo logra al ordenar puntos de
datos de tal forma que los puntos más cercanos entre sı́ queden como vecinos
dentro del nuevo esquema de clasificación. Esto vuelve más fácil la tarea de

5
detectar agrupamientos de diferente densidad. El algoritmo OPTICS única-
mente procesa cada punto de datos una ocasión, similar a DBSCAN (aunque
es de hecho más lento que DBSCAN). Existe también una distancia especial
almacenada para cada punto de datos que indica cuando un punto pertenece
a algún agrupamiento especı́fico.

1.8. Aglomeración Jerarquizada


Este es el más usual de los basados en jerarquı́as. Se usa para clasificar
objetos en agrupamientos a partir de cuán similares son entre sı́. Es una
especie de agrupamiento que va del fondo a la cima, donde cada punto de
datos es asignado a su propio agrupamiento. Luego, aquellos agrupamien-
tos se van juntando. En cada iteración, agrupamientos similares convergen
hasta que todos los puntos de datos forman parte de un agrupamiento raı́z
grande. El agrupamiento de aglomeración funciona mejor para encontrar
agrupamientos pequeños. El resultado final suele parecerse a un dendogra-
ma, de modo que puedas visualizar fácilmente los agrupamientos cuando el
algoritmo finaliza su trabajo.

2. Otros tipos de algoritmos de agrupamiento.


Además de los ocho antedichos, existen algoritmos de agrupamientos
especı́ficamente ajustados que rápida y eficientemente manejan tus datos.
Listamos algunos de ellos.
Existe un algoritmo de agrupamiento jerárquico opuesto al de Aglome-
ración. Comienza con una estrategia de agrupamiento de arriba abajo, por
lo que comienza con un agrupamiento raı́z grande y lo va dividiendo en otros
más pequeños. Se le conoce como el algoritmo de agrupamiento de División
Jerárquica. Existen investigaciones que muestran que crea jerarquı́as más
precisas que el de Aglomeración, aunque es mucho más complejo.
K-means de mini lotes es similar a K-media, salvo que usa tramos pe-
queños de datos de un tamaño fijo, con lo que consiguen ser almacenados
en memoria RAM. Esto ayuda a que corra más rápido que K-means, por lo
que su solución es encontrada (converge) en menos tiempo. Su desventaja
es que la rapidez va en desmedro de la calidad de los agrupamientos.
El último algoritmo que veremos es Agrupamiento Espectral, el cual
es completamente diferente de los anteriores. Trabaja al tomar ventaja de
la teorı́a de grafos. Este algoritmo no hace predicciones iniciales sobre los
agrupamientos que pudieran existir dentro del los datos. Trata los puntos
de datos como nodos en un grafo y a los agrupamientos encuentran su base
en comunidades de nodos que cuenten con aristas conectoras.

Pensamientos finales
Ten cuidado de los problemas de escalamiento con los algoritmos de
agrupamiento. Los conjuntos de datos podrı́an contar con millones de puntos

6
de datos, y ya que los algoritmos de agrupamiento funcionan calculando las
similitudes entre todos los pares de puntos de datos, pudieras terminar con
un algoritmo incapaz de escalar apropiadamente.

Conclusión
Los algoritmos de agrupamiento son una manera fantástica de aprender
cosas nuevas de conjuntos de datos viejos. A veces los agrupamientos resul-
tantes te sorprenderán y estos podrı́an ayudarte a entender mejor un proble-
ma. Una de las cosas más chidas de utilizar estos algoritmos de agrupamiento
para aprendizaje no supervisado es que puedes usar los resultados en algún
problema de aprendizaje supervisado. ¡Los agrupamientos bien pueden ser
tus nuevas prestaciones que uses en un conjunto de datos completamente
distinto! Se pueden usar los agrupamientos prácticamente en cualquier pro-
blema de machine learning no supervisado; sin embargo, asegúrate de que
sabes cómo analizar los resultados con precisión.

Referencias
Traducido directamente del inglés por Alejandro Canales González, des-
de la página web:
https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-
that-all-data-scientists-should-know/

También podría gustarte