Los 4 principales problemas del Aprendizaje Automático

Después de haber invertido un buen tiempo hablando de lo qué es el Aprendizaje Automático (en inglés Machine Learning) quizá es conveniente hacerse una idea de los tipos de problemas más típicos que tenemos donde se hace necesaria la aplicación de dichos algoritmos de Aprendizaje Automático.

Saber identificar nuestro problema es ciertamente útil ya que de esa forma podremos saber cómo abordarlo y qué técnicas y algoritmos usar para ello.

Existen más tipos de problemas de los que trato en este artículo, pero son estos los más representativos y comunes. Para exponerlos de manera resumida una matriz muy potente que refleja los 4 problemas que trataré en este artículo es la siguiente:

Figura 1. Matriz resumen de los problemas que resuelve el Aprendizaje Automático

Regresión

Tal y como se observa en la matriz, los problemas de regresión se caracterizan por el hecho de que la variable de respuesta Y es cuantitativa. Esto significa que la solución a nuestro problema es representada por una variable numérica continua que puede ser flexiblemente determinada por las entradas X a nuestro modelo, en lugar de estar restringida a un grupo posible de valores. Ejemplos de variables cuantitativas pueden ser el salario y el peso de una persona.

Los problemas de regresión que tienen entradas con dependencia temporal son también llamados problemas de predicción de series temporales o forecasting. Un ejemplo de modelos que tratan estos problemas es el ARIMA, que permite a los científicos de datos explicar entre otras cosas la estacionalidad de las ventas, etc.

Los modelos de regresión predicen el valor de Y dados valores conocidos de variables X. Las predicciones dentro de el rango de valores del dataset que se usa para ajustar el modelo reciben el nombre de interpolaciones. Por el contrario, aquellas que están fuera del rango del dataset usado para ajustar o entrenar el modelo reciben el nombre de extrapolaciones. La realización de extrapolaciones se basan fuertemente en supuestos. Cuanto más lejos esté la extrapolación de los datos, más espacio hay para fallos debido a las diferencias entre las suposiciones y la realidad.

Existen diferentes modelos que pueden ser usados para predecir una variable cuantitativa, siendo la regresión lineal de los más simples. En el caso de la regresión lineal, el algoritmo intenta ajustarse a los datos de la mejor forma obteniendo el hiperplano más optimo (por ejemplo, el que minimize la distancia cuadrática a los puntos). En el modelo más general de regresión lineal, llamado regresión lineal múltiple tenemos ‘p’ variables independientes:

Figura 2. Formulación de un modelo de Regresión Lineal Múltiple

Clasificación

Los problemas de clasificación se caracterizan por tener una variable cualitativa Y como respuesta. Muchas veces las variables cualitativas también reciben el nombre de variables categóricas.

Al hecho de predecir una respuesta cualitativa de una observación se le llama clasificar dicha observación, es decir, predecir la categoría o clase a la que pertenece dicha observación.

Muchas veces los métodos encargados de clasificar lo que hacen es predecir la probabilidad de una observación de pertenecer a cada una de las categorías. En cierto modo se comportan también como algoritmos de regresión.

Entre los métodos de clasificación se encuentran:

  • Regresión Logística
  • K-NN (K-Nearest Neighbours) (K_Vecinos Más Próximos)
  • SVMs

Si bien, existen muchos más métodos para usar en clasificación. Como se enfatizó en el artículo de la matriz de confusión como método para la evaluación de algoritmos de clasificación, estos problemas son quizá los que más aparecen dentro del mundo empresarial y corporativo. Algunos ejemplos podrían ser:

  1. Clasificación de transacciones de tarjetas de crédito en fraudulentas o no fraudulentas
  2. Clasificación de clientes como potenciales impagadores de micro-créditos bancarios
  3. Clasificación de muestras de ADN y perfiles genéticos para determinar enfermedades.

En los problemas de clasificación tenemos un conjunto de tuplas (X, Y), cuyas Y toman valores categóricos. Si suponemos que contamos con n observaciones tendremos n tuplas con las que entrenar nuestro algoritmo de clasificación:

Figura 3.

Generalmente los algoritmos de clasificación calculan la probabilidad de cada clase y luego esas probabilidades se mapean y se clasifican las observaciones. Para calcular las probabilidades, se debe obtener una función que transforme las entradas X en una salida que prediga la probabilidad de X para cierta clase. x→f(x)=p(x)

Esta función debe hacer que las probabilidades de las clases estén lo más cerca posible al valor real de la clase. Es decir, supongamos que tenemos 2 clases posibles «clase A» y «clase B», si la muestra X tiene una Y=clase A, la función f debe ser tal que p(x) de la clase A sea cercana a 1 y p(x) de la clase B sea cercana a 0.

La función f tiene una serie de coeficientes β que se obtienen cumpliendo lo anterior. Uno de los métodos más generales es el de maximizar la función de verosimilitud utilizando los datos de entrenamiento (tuplas (X,Y)). La función de verosimilitud es:

Figura 4. Formula de la función de verosimilitud.

y los β serán los parámetros que maximicen l(β).

Clusterización, Clustering o Agrupamiento

Los algoritmos de clustering o agrupamiento son un amplio conjunto de técnicas para encontrar subgrupos o clústers en los datos. Cuando agrupamos los datos queremos encontrar particiones que dividan los datos en grupos distintos pero homogéneos.

Es decir, queremos que los grupos sean lo más distintos posibles entre ellos pero que las muestras dentro de cada grupo sean similares.
Para alcanzar este objetivo hay que definir qué entendemos con que unas muestras sean similares o distintas. Esta definición de similaridad depende de conocimiento de los datos a estudiar.

Supongamos que tenemos ‘p’ variables de ‘n’ observaciones de enfermedades. Podríamos usar las técnicas de clustering para agrupar las ‘n’ observaciones en grupos de enfermedades. Como se ve de la matriz mostrada en la Figura 1 este es un problema no supervisado ya que intentamos obtener conocimiento de la estructura de los datos (en este caso grupos de datos) y no producir una salida de número o clase.

Otra aplicación del clustering está en la segmentación de mercados usada en marketing, identificando grupos homogéneos de personas.

Los algoritmos más comunes dentro de la clusterización son:

  • K-Medias (K-Means en inglés)
  • DBSCAN (Density-based spatial clustering of applications with noise)

Reducción de la dimensionalidad

Los métodos de reducción de dimensionalidad son los procesos de reducir el número de variables obteniendo un subgrupo de variables principales. Puede ser dividido en selección de variables y en extracción de variables.

Estos métodos sirven para problemas donde se tienen una gran cantidad de variables y se pretende resumir o recopilarlas en otro grupo de variables más fácil de tratar.

Los métodos de reducción de dimensionalidad convierten la información de un dataset de gran dimensión en otro con menos dimensión asegurándose de que contiene información similar. Son usados típicamente en el proceso de resolución de problemas de Machine Learning.

Figura 5. Ejemplo de PCA (Principal Component Analysis) aplicado a 2 variables

Entre las ventajas de la reducción de dimensionalidad se encuentran:

  • Comprime y reduce el espacio requerido para almacenar los datos.
  • Mejora el tiempo de procesamiento para la realización de los mismos cálculos.
  • Tiene en cuenta el efecto de multicolinearidad, borra o minimiza variables redundantes incrementando el rendimiento de los modelos.
  • Puede reducir los datos a dimesiones representables como la 2D o 3D.

Estas ventajas son generales, siendo cada método de reducción de dimensionalidad distinto y siendo necesario de un estudio previo de cómo funcionan en particular.

En Resumen…

Son muchos los problemas que el Aprendizaje Automático (Machine Learning) nos ayuda a resolver pero, en el día del mundo empresarial y corporativo estos 4 son los principales retos a los que debemos enfrentar nuestros algoritmos.

Por supuesto quedan algunos otros de más avanzada índole más comunes dentro del mundo de la investigación y ciencia aplicada avanzada pero, por ahora, no indagaremos mucho más en ellos.

De nuevo, muchas gracias por leerme y mucha suerte en tu camino hacia convertirte en Data Scientist!

Suscríbete al Blog!

Recibe los próximos artículos sobre todos los temas que tienes que dominar para convertirte en un profesional del Machine Learning y de la Ciencia de Datos!

¿Crees que puede serle útil a alguien más? ¡Comparte! :)
0 0 votos
Valora este artículo!
Suscribirse a los comentarios de este artículo
Notificarme de
guest
0 Comments
Inline Feedbacks
Ver todos los comentarios