Tipos de aprendizaje en Machine Learning: supervisado y no supervisado

Paloma Recuero de los Santos    16 noviembre, 2017
Iris

El Machine Learning o aprendizaje automático consiste básicamente en automatizar, mediante distintos algoritmos, la identificación de patrones o tendencias que se “esconden” en los datos. Por ello, resulta muy importante no sólo la elección del algoritmo más adecuado (y su posterior parametrización para cada problemática concreta), sino también el hecho de disponer de un gran volumen de datos de suficiente calidad. 

En los últimos años, el machine learning ha cobrado una gran importancia en el mundo de los negocios, ya que el uso inteligente de las analíticas de datos es clave para el éxito empresarial. Las predicciones de Gartner para el 2020 revelan que, además sus beneficios en campos como la toma de decisiones inteligentes, la robótica, los vehículos autónomos y la hiperautomatización, surge con gran fuerza el ámbito de la seguridad. En particular, las aplicaciones de inteligencia artificial para la protección de los sistemas conectados IoT.

En este post vamos a explicar en qué consiste el aprendizaje automático, que tipos de aprendizaje hay, cómo funcionan y para qué se utilizan.

Realmente, ¿qué es Machine learning?

Es una rama de la inteligencia artificial que empezó a cobrar importancia a partir de los años 80. Se trata de un tipo de IA que ya no depende de unas reglas y un programador, sino que la computadora puede establecer sus propias reglas y aprender por sí misma.

El aprendizaje automático se produce por medio de algoritmos. Un algoritmo no es más que una serie de pasos ordenados que se dan para realizar una tarea.

El objetivo del machine learning es crear un modelo que nos permita resolver una tarea dada. Luego se entrena el modelo usando gran cantidad de datos. El modelo aprende de estos datos y es capaz de hacer predicciones. Según la tarea que se quiera realizar, será más adecuado trabajar con un algoritmo u otro.

La elección del algoritmo no es fácil. Si buscamos información en internet, podemos encontrar con un auténtica avalancha de artículos muy detallados, que a veces, más que ayudarnos, nos confunden. Por ello, vamos a intentar dar algunas pautas básicas para empezar a trabajar. 

Hay dos preguntas fundamentales que nos debemos plantear. La primera es:

¿Qué queremos hacer?

El quid de la cuestión es definir de forma clara el objetivo. Para resolver nuestro problema, pues, nos plantearemos qué tipo de tarea es la que tendremos que acometer. Puede tratarse, por ejemplo, de:

  • Problemas de clasificación como detección de correo basura o “spam”.
  • Problemas de clustering como recomendar un libro a un usuario basándonos en sus compras anteriores (sistema de recomendación) f
  • Problemas de regresión, como averiguar cuánto va usar un cliente determinado servicio (determinar un valor)

Si consideramos el clásico problema de retención de clientes, vemos que podemos abordarlo desde distintos enfoques. Queremos hacer una segmentación de clientes, sí, pero ¿qué estrategia es la más adecuada? ¿Es mejor tratarlo como problema de clasificación, clustering o incluso regresión? La pista clave nos la va a dar plantearnos la segunda pregunta.

¿Qué información tengo para conseguir mi objetivo?

Si yo me pregunto:  “Mis clientes, ¿se agrupan de alguna manera, de forma natural?”, no he definido ningún objetivo (target) para el agrupamiento.

Sin embargo, si planteo la pregunta de esta otra forma: ¿Podemos identificar grupos de clientes con una alta probabilidad de solicitar la baja del servicio en cuanto finalice su contrato?, tenemos un objetivo perfectamente definido: ¿se dará de baja el cliente?, y queremos tomar medidas según la respuesta que obtengamos.

En el primer caso, nos encontramos ante un ejemplo de aprendizaje no supervisado, mientras que el segundo lo es de aprendizaje supervisado.  

En las fases iniciales del proceso de Data Science, es muy importante decidir si la “estrategia de ataque” será supervisada o no supervisada, y en éste último caso definir de forma precisa cuál va a ser la variable objetivo. Según decidamos, trabajaremos con una familia de algoritmos o con otra.

Una vez identificado lo anterior, se emplearán algoritmos prefijados para que se pueda escoger con cual trabajar. Entre los más conocidos se tienen: scikit-learning, Machine learning algorithm cheat see, entre otros.

http://www.datasciguide.com/content/scikit-learn-algorithm-cheat-sheet/
Figura 2: “Chuleta” de selección de algoritmo de Scikit-learn.
 

Tipos de Machine Learning

Los tipos de implementación de Machine Learning pueden clasificarse en tres categorías diferentes:

  • Aprendizaje supervisado
  • Aprendizaje no supervisado
  • Aprendizaje de refuerzo según la naturaleza de los datos que recibe.

Aprendizaje Supervisado

En el aprendizaje supervisado, los algoritmos trabajan con datos “etiquetados” (labeled data), intentado encontrar una función que, dadas las variables de entrada (input data), les asigne la etiqueta de salida adecuada. El algoritmo se entrena con un “histórico” de datos y así “aprende” a asignar la etiqueta de salida adecuada a un nuevo valor, es decir, predice el valor de salida. (Simeone, 2018)

Por ejemplo, un detector de spam, analiza el histórico de mensajes, viendo qué función puede representar, según los parámetros de entrada que se definan (el remitente, si el destinatario es individual o parte de una lista, si el asunto contiene determinados términos etc), la asignación de la etiqueta “spam” o “no es spam”. Una vez definida esta función, al introducir un nuevo mensaje no etiquetado, el algoritmo es capaz de asignarle la etiqueta correcta.

El aprendizaje supervisado se suele usar en:

  • Problemas de clasificación (identificación de dígitos, diagnósticos, o detección de fraude de identidad).
  • Problemas de regresión (predicciones meteorológicas, de expectativa de vida, de crecimiento etc).

Estos dos tipos principales de aprendizaje supervisado, clasificación y regresión, se distinguen por el tipo de variable objetivo. En los casos de clasificación, es de tipo categórico, mientras que, en los casos de regresión, la variable objetivo es de tipo numérico.

Los algoritmos más habituales que aplican para el aprendizaje supervisado son:

  1. Árboles de decisión.
  2. Clasificación de Naïve Bayes.
  3. Regresión por mínimos cuadrados.
  4. Regresión Logística.
  5. Support Vector Machines (SVM).
  6. Métodos “Ensemble” (Conjuntos de clasificadores).

Aprendizaje no Supervisado

El aprendizaje no supervisado tiene lugar cuando no se dispone de datos “etiquetados”  para el entrenamiento. Sólo conocemos los datos de entrada, pero no existen datos de salida que correspondan a un determinado input. Por tanto, sólo podemos describir la estructura de los datos, para intentar encontrar algún tipo de organización que simplifique el análisis. Por ello, tienen un carácter exploratorio.

Por ejemplo, las tareas de clustering, buscan agrupamientos basados en similitudes, pero nada garantiza que éstas tengan algún significado o utilidad. En ocasiones, al explorar los datos sin un objetivo definido, se pueden encontrar correlaciones espúreas curiosas, pero poco prácticas.

El aprendizaje no supervisado se suele usar en:

  • Problemas de clustering
  • Agrupamientos de co-ocurrencias
  • Perfilado o profiling.

Si embargo, los problemas que implican tareas de encontrar similitud, predicción de enlaces o reducción de datos, pueden ser supervisados o no.

Los tipos de algoritmo más habituales en aprendizaje no supervisado son:
1. Algoritmos de clustering
2. Análisis de componentes principales
3. Descomposición en valores singulares (singular value decomposition)
4. Análisis de componentes principales (Independent Component Analysis)

¿Entonces, qué es el aprendizaje por refuerzo?

No todos los algoritmos ML se pueden clasificar como algoritmos de aprendizaje supervisado o no supervisado. Hay una “tierra de nadie” que es donde encajan las técnicas de aprendizaje por refuerzo.

Este tipo aprendizaje se basa en mejorar la respuesta del modelo usando un proceso de retroalimentación. El algoritmo aprende observando el mundo que le rodea. Su información de entrada es el feedback o retroalimentación que obtiene del mundo exterior como respuesta a sus acciones. Por lo tanto, el sistema aprende a base de ensayo-error.

No es un tipo de aprendizaje supervisado, porque no se basa estrictamente en un conjunto de datos  etiquetados, sino en la monitorización de la respuesta a las acciones tomadas. Tampoco es un aprendizaje no supervisado, ya que, cuando modelamos a nuestro “aprendiz”sabemos de antemano cuál es la recompensa esperada.  

 Si quieres saber más sobre tipos de aprendizaje, no te pierdas este otro post, donde explicamos qué es el aprendizaje por transferencia.

Usos prácticos del Machine learning

Para terminar, veamos algunos de los usos prácticos mas habituales del aprendizaje automático.

  • Seguridad informática, diagnóstico de ataques, prevención de fraude online, detección de anomalías, etc.
  • Reconocimiento de imágenes o patrones (facial, dactilar, objetos, voz, etc)
  • Conducción autónoma, mediante algoritmos deep learning: identificación de imágenes en tiempo real, detección de obstáculos y señales de tráfico, prevención de accidentes…
  • Salud: evaluación automática de pruebas diagnósticas, robótica médica etc
  • Análisis de mercado de valores ( predicciones financieras, evolución de mercados etc)
  • Motores de recomendación

Es fundamental tener claro en todo momento los objetivos buscados por la empresa a la hora de utilizar estas técnicas, para poder plantear las preguntas adecuadas a los datos. Y, por supuesto, trabajar siempre con datos de calidad.


Simeone, O. (2018). A Very Brief Introduction to Machine Learning With Applications to Communication Systems. Repositorio Universidad de Cornell.

Computerworld. (2019). Tendencias tecnológicas para 2020: las apuestas de Gartner.

Para mantenerte al día con LUCA visita nuestra página web,  suscríbete a LUCA Data Speaks o síguenos en TwitterLinkedIn YouTube.

Comentarios

    1. Hola Daniel, Si quieres aprender sobre Machine Learning, echa un vistado a los “Tutoriales IA Big Data” e “IA para todos los públicos” que aparecen como opciones en el menú “Inteligencia Artificial” en la cabecera del blog, justo debajo del logo de LUCA. Ahí puedes encontrar mucha información de interés sobre estos temas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *