Aprendizaje automático 101: supervisado, no supervisado, refuerzo y más allá

El aprendizaje automático es una parte esencial de ser un Científico de datos . En términos más simples, el aprendizaje automático utilizaalgoritmos para descubrir patrones y hacer predicciones.Es uno de los métodos más populares utilizados para procesar grandes cantidades de datos sin procesar y su popularidad aumentará a medida que más empresas intenten tomar decisiones basadas en datos.



Aprendizaje automático abarca un amplio conjunto de ideas, herramientas y técnicas que utilizan los científicos de datos y otros profesionales. hemos explicado estos conceptos más ampliamente , pero esta vez, echemos un vistazoen algunos de los componentes específicos, ycómo se pueden utilizar para resolver problemas.



Aprendizaje automático supervisado

Las tareas más sencillas caen bajo el paraguas de aprendizaje supervisado .

En el aprendizaje supervisado tenemos acceso a ejemplos de pares entrada-salida correctos que podemos mostrar a la máquina durante la fase de entrenamiento. El ejemplo común de reconocimiento de escritura a mano generalmente se aborda como una tarea de aprendizaje supervisado. Le mostramos a la computadora una serie de imágenes de dígitos escritos a mano junto con las etiquetas correctas para esos dígitos, y la computadora aprende los patrones que relacionan las imágenes con sus etiquetas.

Aprender a realizar tareas de esta manera, mediante un ejemplo explícito, es relativamente fácil de entender y sencillo de implementar, pero hay una tarea crucial: solo podemos hacerlo si tenemos acceso a un conjunto de datos de pares de entrada-salida correctos. En el ejemplo de escritura a mano, esto significa que en algún momento necesitamos enviar a un humano para clasificar las imágenes en el conjunto de entrenamiento. Este es un trabajo laborioso y, a menudo, inviable, pero cuando existen datos, los algoritmos de aprendizaje supervisado pueden ser extremadamente efectivos en una amplia gama de tareas.



Regresión y Clasificación

Las tareas supervisadas de aprendizaje automático se pueden clasificar en términos generales en dos subgrupos: regresión y clasificación . La regresión es el problema de estimar o predecir una cantidad continua. ¿Cuál será el valor del S&P 500 dentro de un mes? ¿Qué altura tendrá un niño de adulto? ¿Cuántos de nuestros clientes se irán a un competidor este año? Estos son ejemplos de preguntas que caerían bajo el paraguas de la regresión. Para resolver estos problemas en un marco de aprendizaje automático supervisado, recopilaríamos ejemplos anteriores de pares de entrada/salida de respuesta correcta que tratan el mismo problema. Para las entradas, identificaríamos características que creemos sería predictivo de los resultados que deseamos predecir.

Para el primer problema, podríamos tratar de recopilar como características los precios históricos de las acciones por debajo del S&P 500 en fechas determinadas junto con el valor del S&P 500 un mes después. Esto formaría nuestro conjunto de entrenamiento, a partir del cual la máquina intentaría determinar alguna relación funcional entre las características y los valores eventuales del S&P 500.

Clasificación trata de asignar observaciones en categorías discretas, en lugar de estimar cantidades continuas. En el caso más simple, hay dos categorías posibles; este caso se conoce como clasificación binaria . Muchas preguntas importantes se pueden enmarcar en términos de clasificación binaria. ¿Un cliente determinado nos dejará por un competidor? ¿Un paciente dado tiene cáncer? ¿Una imagen dada contiene un perrito caliente? Los algoritmos para realizar la clasificación binaria son particularmente importantes porque muchos de los algoritmos para realizar el tipo más general de clasificación donde hay etiquetas arbitrarias son simplemente un grupo de clasificadores binarios que trabajan juntos. Por ejemplo, una solución simple para el problema del reconocimiento de escritura a mano es simplemente entrenar un grupo de clasificadores binarios: un detector 0, un detector 1, un detector 2, etc., que emiten su certeza de que la imagen es de su dígito respectivo. El clasificador solo genera el dígito cuyo clasificador tiene la mayor certeza.



Por otro lado, hay una clase de tareas completamente diferente a la que se hace referencia como aprendizaje sin supervisión . Las tareas de aprendizaje supervisado encuentran patrones donde tenemos un conjunto de datos de respuestas correctas para aprender. Las tareas de aprendizaje no supervisadas encuentran patrones donde nosotros no. Esto puede deberse a que las respuestas correctas no son observables, o no son factibles de obtener, o tal vez para un problema dado, ni siquiera existe una respuesta correcta per se.

Clustering y Modelado Generativo

Una gran subclase de tareas no supervisadas es el problema de agrupamiento . La agrupación se refiere a agrupar observaciones de tal manera que los miembros de un grupo común sean similares entre sí y diferentes de los miembros de otros grupos. Una aplicación común aquí es en marketing, donde deseamos identificar segmentos de clientes o prospectos con preferencias o hábitos de compra similares. Un desafío importante en la agrupación en clústeres es que a menudo es difícil o imposible saber cuántos clústeres deben existir o cómo deben verse los clústeres.

aprendizaje automático

Una clase muy interesante de tareas no supervisadas es modelado generativo . Los modelos generativos son modelos que imitan el proceso que genera los datos de entrenamiento. Un buen modelo generativo sería capaz de generar nuevos datos que se parezcan a los datos de entrenamiento en algún sentido. Este tipo de aprendizaje no es supervisado porque el proceso que genera los datos no es directamente observable, solo los datos en sí son observables.



Los desarrollos recientes en este campo han llevado a avances sorprendentes y, en ocasiones, espeluznantes en la generación de imágenes. La imagen aquí se crea entrenando una especie de modelo de aprendizaje no supervisado llamado modelo de red antagónica generalizada convolucional profunda para generar imágenes de rostros y pedirle imágenes de un hombre sonriente.

Aprendizaje por refuerzo, híbridos y más

Un nuevo tipo de problema de aprendizaje que ha ganado mucha tracción recientemente se llama aprendizaje reforzado . En el aprendizaje por refuerzo, no proporcionamos a la máquina ejemplos de pares de entrada-salida correctos, pero sí proporcionamos un método para que la máquina cuantifique su rendimiento en forma de un señal de recompensa . Los métodos de aprendizaje por refuerzo se asemejan a cómo aprenden los humanos y los animales: la máquina prueba un montón de cosas diferentes y es recompensada cuando hace algo bien.

El aprendizaje por refuerzo es útil en los casos en que el espacio de la solución es enorme o infinito y, por lo general, se aplica en los casos en los que se puede pensar en la máquina como un agente que interactúa con su entorno. Una de las primeras grandes historias de éxito de este tipo de modelo fue la de un pequeño equipo queentrenó un modelo de aprendizaje por refuerzo para jugar videojuegos de Atari usando solo la salida de píxeles del juego como entrada. El modelo finalmente pudo superar a los jugadores humanos en tres de los juegos, y la compañía que creó el modelofue adquirida por Google por más de $ 500 millonespoco después.

Para implementar el aprendizaje supervisado al problema de jugar videojuegos de Atari, necesitaríamos un conjunto de datos que contenga millones o miles de millones de juegos de ejemplo jugados por humanos reales para que la máquina aprenda. Por el contrario, el aprendizaje por refuerzo funciona dando a la máquina una recompensa de acuerdo con lo bien que se está desempeñando en su tarea. Los videojuegos sencillos se adaptan bien a este tipo de tareas ya que la puntuación funciona bien como recompensa. La máquina procede a aprender por simulación qué patrones maximizan su recompensa.

A menudo, los enfoques híbridos conducen a buenos resultados. Por ejemplo, una tarea importante en algunas áreas es la tarea de Detección de anomalías . Un algoritmo de detección de anomalías monitorea alguna señal e indica cuando algo extraño sucede Un buen ejemplo es la detección de fraude. Queremos un algoritmo que monitoree un flujo de transacciones con tarjetas de crédito y marque las extrañas. Pero, ¿qué significa extraño? Este problema se adapta a una especie de enfoque híbrido supervisado/no supervisado. Ciertamente, hay algunos patrones conocidos que nos gustaría que el algoritmo pudiera detectar, y podemos entrenar un modelo de aprendizaje supervisado mostrándole ejemplos de los patrones de fraude conocidos. Pero también queremos poder detectar ejemplos previamente desconocidos de posibles fraudes o actividades anormales, que podrían lograrse mediante métodos de aprendizaje no supervisado.

Los conceptos básicos del aprendizaje automático pueden tener un gran impacto

Muchas de las herramientas más avanzadas requieren una gran cantidad de conocimientos sofisticados en matemáticas avanzadas, estadísticas e ingeniería de software. Para un principiante que quiera empezar, puede parecer abrumador, especialmente si quiere trabajar con algunos de los nuevos y emocionantes modelos.

La buena noticia es que puedes hacer mucho con los conceptos básicos, que son ampliamente accesibles. Se implementa una variedad de modelos de aprendizaje supervisado y no supervisado en R y Python, que están disponibles gratuitamente y son fáciles de configurar en su propia computadora, e incluso se pueden usar modelos simples como la regresión lineal o logística para realizar tareas interesantes e importantes de aprendizaje automático.

Echa un vistazo a nuestro Curso de certificado de aprendizaje automático para aprender los conceptos básicos y comenzar. Si quieres más, aplicar ahora a BrainStation Diplomado en ciencia de datos.