K-Means Clustering: Agrupamiento con Minería de datos

introducción a K-Means

Vamos a comenzar con una pequeña introducción a algunas técnicas de data mining. En el artículo de hoy hablaremos especialmente del algoritmo de agrupamiento (en inglés, clustering) con el método de K-Means.

Como en Estrategias de Trading nos interesamos por sistemas de inversión cuantitativa, nos enfocaremos especialmente en cómo podemos aplicar K-Means para mejorar los métodos de inversión

Comenzamos:

¿De qué hablamos cuando hablamos de Data Mining?

Cuando utilizamos técnicas de minería de datos no nos interesamos por los datos fundamentales o la lógica de los mecanismos en los que se mueve el mercado. Simplemente «exprimimos» datos.

Una definición más formal sobre qué es data mining nos dice:

La minería de datos o exploración de datos  es un campo de la estadística y las ciencias de la computación referido al proceso que intenta descubrir patrones en grandes volúmenes de conjuntos de datos.​

Utiliza los métodos de la inteligencia artificial, aprendizaje automático, estadística y sistemas de bases de datos.

El objetivo general del proceso de minería de datos consiste en extraer información de un conjunto de datos y transformarla en una estructura comprensible para su uso posterior…La tarea de minería de datos real es el análisis automático o semi-automático de grandes cantidades de datos para extraer patrones interesantes hasta ahora desconocidos, como los grupos de registros de datos (análisis clúster), registros poco usuales (la detección de anomalías) y dependencias (minería por reglas de asociación). Esto generalmente implica el uso de técnicas de bases de datos como los índices espaciales

Fuente: https://es.wikipedia.org/wiki/Miner%C3%ADa_de_datos

K-Means

K-Means (traducido como K-Medias en español), es un método de agrupamiento o clustering.

El clustering es una técnica para encontrar y clasificar K grupos de datos (clusters). Así, los elementos que comparten características semejantes estarán juntos en un mismo grupo, separados de los otros grupos con los que no comparten características. 

Para saber si los datos son parecidos o diferentes el algoritmo K-medias utiliza la distancia entre los datos. Las observaciones que se parecen tendrán una menor distancia entre ellas. En general, como medida se utiliza la distancia euclideana aunque también se pueden utilizar otras funciones.

Cómo funciona el algoritmo KMeans

Los algoritmos de clustering son considerados de aprendizaje no supervisado. Este tipo de algoritmos de aprendizaje no supervisado busca patrones en los datos sin tener una predicción específica como objetivo (no hay variable dependiente). En lugar de tener una salida, los datos solo tienen una entrada que serían las múltiples variables que describen los datos.

K-means necesita como dato de entrada el número de grupos en los que vamos a segmentar la población. A partir de este número k de clusters, el algoritmo coloca primero k puntos aleatorios (centroides). Luego asigna a cualquiera de esos puntos todas las muestras con las distancias más pequeñas.
A continuación, el punto se desplaza a la media de las muestras más cercanas. Esto generará una nueva asignación de muestras, ya que algunas muestras están ahora más cerca de otro centroide. Este proceso se repite de forma iterativa y los grupos se van ajustando hasta que la asignación no cambia más moviendo los puntos. Este resultado final representa el ajuste que maximiza la distancia entre los distintos grupos y minimiza la distancia intragrupo.

El siguiente video explica muy bien cómo funciona este proceso iterativo.

Video: Ejemplo funcionamiento algoritmo K-Means

En este gif de ejemplo se ve bien cómo se mueven los centroides y cambian los grupos con las distintas iteraciones. Recordamos que un centroide es un punto de datos (imaginario o real) en el centro de un cluster.

K-means convergence

Fuente: CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0)], from Wikimedia Commons

Ejemplos: cuándo se puede utilizar K-Medias

Este tipo de algotimo de aprendizaje no supervisado es útil para explorar, describir y resumir datos de una forma distinta. Utilizar este agrupamiento de datos nos puede servir para confirmar (o rechazar) algún tipo de clasificación previa. También nos puede ayudar a descubrir patrones y relaciones que desconocíamos.
Por ejemplo, podemos aplicar K-means en:

  • Segmentación de clientes
  • Agrupación de textos que hablan de temas similares
  • Geoestadística
  • Comunidades de redes sociales

El clustering se utiliza principalmente en la fase de exploración de datos. Si buscamos ejemplos sobre aplicaciones en el campo de inversión cuantitativa hay varias ideas sobre aplicaciones interesantes:


Para saber más:

Introducción a la Minería de Datos : es un MOOC de Coursera. El curso es en español, dictado por la Universidad Católica de Chile, y te permite comenzar a familiarizarte con algunos conceptos básicos de la minería de datos (En los videos de la semana 5 hablan especialmente sobre métodos de clustering)

6 comentarios en «K-Means Clustering: Agrupamiento con Minería de datos»

    • Hi S666,
      I linked your post because I like how you explain «step by step» with scrips. By the way, I’m also inspiring in your examples to do a comparison between the k-means clusters and the different sectors of the sp500. If I finish it, this will be my next post
      Best,

      Responder

Deja un comentario

ESTRATEGIAS DE TRADING