Cabecera personalizada

El blog de Mikel Niño
Emprendimiento digital, startups, Big Data Analytics y nuevos modelos de negocio

Conceptos básicos de "Machine Learning" (Aprendizaje Automático)

De entre las diferentes herramientas tecnológicas que se mencionan frecuentemente al hablar hoy en día de Big Data y de la analítica de datos en general, mucha de la atención se centra en el Aprendizaje Automático (“Machine Learning”) que, lejos de ser una aproximación tecnológica de reciente desarrollo, tiene ya un largo recorrido como una de las técnicas principales de aplicación de métodos probabilísticos en el campo de la inteligencia artificial, y podría decirse que está viviendo una segunda juventud gracias a los campos de aplicación que quedan abiertos a medida que se consolida la tendencia del Big Data Analytics. En esta entrada quiero centrarme en explicar las ideas básicas en las que se sustenta este concepto.

Un sistema de Aprendizaje Automático o Machine Learning no es más que un programa informático que toma decisiones basadas en la experiencia acumulada contenida en una batería de casos resueltos con éxito. Estos sistemas trabajan con la muestra de datos de dichos casos (que contendrá una serie potencialmente grande de variables que los caracterizan) y a partir de dicha muestra trata de extraer “reglas” o “fórmulas” que sean aplicables a la hora de tomar decisiones con nuevos casos.

Dentro del Aprendizaje Automático tenemos dos categorías principales. Por un lado tenemos el aprendizaje supervisado, en el que se parte de un conjunto de casos conocidos correctamente clasificados, es decir, cada caso contiene los valores de un conjunto de variables inductoras (predictoras, de entrada) que se han considerado pertinentes para describir las características principales de los casos analizados, más una variable resultado que actúa como categoría o clase en la que clasificamos ese caso, de entre las posibles clases que queremos asignar a los casos.

Por poner un ejemplo, podríamos estar recogiendo datos históricos de empresas, caracterizando su estado económico-financiero en un momento dado a partir de una serie de ratios (las variables inductoras), y finalmente las etiquetaríamos en función de si dos años después han entrado en quiebra o no (la variable resultado tendría por tanto dos posibles clases). El objetivo del sistema sería analizar esa muestra de datos y crear a partir de ella un programa clasificador que, ante un nuevo caso caracterizado por las variables inductoras (en el ejemplo los ratios económico-financieros de una empresa a evaluar), fuera capaz de asignarle la clase (el valor de la variable resultado, en este caso la predicción de si en dos años habrá quebrado o no) a la que pertenece, con una tasa de error asumible.

El diseño de un sistema de clasificación supervisada parte de un modelo general de “fórmula” a inducir de entre varias alternativas con algoritmos basados en diferentes paradigmas (árboles de decisión, inducción de reglas, redes bayesianas, etc.). De esa manera el aprendizaje consiste en, partiendo de la muestra de casos con que se cuenta, elegir y adaptar los parámetros de la estructura general del modelo escogido que trabajen mejor (obtengan una menor tasa de error) con dicha muestra.

El caso del aprendizaje no supervisado (también llamado “clustering”) se diferencia del anterior en que en la muestra de partida sólo contamos con variables de entrada (los casos no están clasificados en clases) y el objetivo es encontrar los patrones en los datos de entrada que permitan agrupar los casos y así identificar clases potenciales.

No hay comentarios:

Publicar un comentario