Machine Learning: Back to Basics

Autor: Leonardo Covarrubias

Es la posibilidad de automatizar procesos (comúnmente tediosos) uno de los enfoques (o motivaciones) en el continuo desarrollo de programas informáticos. De lo que originalmente surgió como uno de los campos más amplios de la Inteligencia Artificial, el Aprendizaje Automático, o Machine Learning, persigue el objetivo de sustituir la necesidad de programar sistemas manualmente para lograr que los ordenadores aprendan sin ser codificados a realizar una tarea específica. Hemos llegado al punto de concebir el aprendizaje automático, algo así como la automatización de la automatización.

Cientos de artículos y de noticias sobre este tema se publican a diario; sin embargo, es probable que no tengamos claridad sobre su status quo, pues inclusive resulta complejo el definirlo, ya que existen enfoques variados y posturas contrapuestas. Y al recurrir a la primera fuente de información al respecto, Wikipedia, la confusión aumenta por las múltiples terminologías y recurrentes generalizaciones. Es por esto que busco dar claridad a este tema, en una versión actualizada de casi al día de hoy.

Adam Geitgey en el artículo Machine Learning is Fun! (lectura altamente recomendada) menciona: “Machine Learning is the idea that there are generic algorithms that can tell you something interesting about a set of data without you having to write any custom code specific to the problem. Instead of writing code, you feed data to the generic algorithm and it builds its own logic based on the data”. O en su traducción resumida al español, habla del aprendizaje automático como algoritmos genéricos que brindan información interesante sobre un conjunto de datos, sin la necesidad de escribir un código explícitamente para ello, pues el algoritmo genera una lógica a partir de datos.

Visión general de las Categorías de Machine Learning  

Las tres grandes categorías del aprendizaje automático se resumen en: aprendizaje supervisado, aprendizaje no supervisado y aprendizaje por refuerzo. La diferencia entre cada una de ellas es sencilla, pero de suma importancia.

Aprendizaje supervisado es la subcategoría del aprendizaje automático que se centra en el aprendizaje de un modelo de clasificación o regresión, esto es, el aprendizaje a partir de datos de entrenamiento etiquetados; o bien, entradas que también contienen los resultados u objetivos deseados y básicamente, «ejemplos» de lo que queremos predecir.

Regression

Classification 

Aprendizaje no supervisado, a diferencia del anterior, es una rama que se ocupa de los datos no etiquetados. Las tareas más comunes en el aprendizaje no supervisado son el análisis de conglomerados, la asignación de miembros de grupos, la reducción de la dimensionalidad, y la compresión de datos en un subespacio o colector de menor dimensión.

KMeans Algorithm. Scikit-Learn

Aprendizaje por refuerzo es el proceso de aprender de las recompensas al realizar una serie de acciones. En el aprendizaje por refuerzo, no le decimos al agente qué acción debe realizar, sino que nos limitamos a asignar una recompensa a cada acción y/o al resultado global. En lugar de tener etiquetas de «cierto/falso» para cada paso, el agente debe descubrir o aprender un comportamiento que maximice la recompensa para una serie de acciones. En este sentido, no se trata de un entorno supervisado, sino que está relacionado con el aprendizaje no supervisado, pero el aprendizaje por refuerzo tiene su propia categoría de aprendizaje automático.

¿Es el Machine Learning un todo en uno

En realidad, el concepto de machine learning es bastante intuitivo pero requiere de habilidad para lograr resultados significativos y esto puede lograrlo cualquier persona con el aprendizaje necesario; seguramente nos preguntamos cómo estos algoritmos son usados o en donde consumimos aplicativos con aprendizaje automático. Y los casos de uso van desde el sector salud en diagnósticos de pacientes hasta el sector financiero en detección de fraudes, incluso funciones en tu celular utilizan algoritmos de machine learning, como son los selfie-filters. 

Con ello bien en claro, podemos dimensionar los alcances del aprendizaje automático. Quizá el concepto de automatizar la automatización comience a tener lógica. O bien, pensamos en que el uso del machine learning puede atender cualquier problema obteniendo una respuesta positiva; pero recordemos que esto será posible solo si tenemos la cantidad de datos suficientes, pues en el orden de educar un modelo de aprendizaje necesitamos esencialmente un ser de datos que requieren tiempo para lograr una cantidad y calidad adecuadas.

Al día de hoy, sabiendo que la tecnología avanza a pasos agigantados, podemos consumir recursos gratuitos en cantidad. Existe una comunidad apasionada del open source que da soporte a las dudas que pueden surgir al comenzar a desarrollar nuestros aplicativos con machine learning. «We will not only use the machines for their intelligence, we will also collaborate with them in ways that we cannot even imagine» – Fei Fei Li, Director of Stanford’s Artificial Intelligence Lab.

Raschka, S. (2015). Python Machine Learning. Packt Publishing ltd.

Mohri, M., Rostamizadeh, A. (2018). Foundations of Machine Learning. MIT press. Sra, S., Nowozin, S., & Wright, S. J. (Eds.). (2012). Optimization for machine learning. Mit Press.

Scikit-Learn: Machine Learning in Python.

https://ogrisel.github.io/scikit-learn.org/sklearn-tutorial/index.html

Empieza la conversación en Community

Tambien te puede interesar

La innovación abierta: ¿qué es y por qué es importante?

Por: Roberto Osorno 05 de febrero de 2022   En las economías emergentes, se requiere de un modelo de innovación diferente. En el año 2003 Henry Chesbrough, un profesor de la Universidad de Berkeley, propuso un modelo de innovación diferente al tradicional,...

Converger para innovar

Por: Norma Medrano 07 de diciembre de 2021   ¿Te ha pasado que cuando quieres crear o rediseñar un producto o servicio, tienes muchas ideas muy buenas, empiezas a trabajar en su conceptualización, y de pronto te ves involucrado en un proceso creativo infinito,...

La magia del diseño de servicios

Por: Ariadna Ramírez 02 de noviembre de 2021   Posiblemente has escuchado el término “innovación” una infinidad de veces. Cuando nos hablan de ella, por lo regular lo asociamos con cosas como nuevas tecnologías, productos que jamás nos imaginamos que podrían...

Gozar de nuestras prendas sin que nos sea ajeno

Por: Mariana De la Mora 12 de agosto de 2021   HISTORIA MA'DELAMÓ. Es el apodo que nace en mi adolescencia, gracias a la composición de mi nombre y mi apellido; una etapa muy fuerte en mi vida, que me marcó por completo, por lo que adopté este apodo como el...

La innovación abierta: ¿qué es y por qué es importante?

Por: Roberto Osorno 05 de febrero de 2022   En las economías emergentes, se requiere de un modelo de innovación diferente. En el año 2003 Henry Chesbrough, un profesor de la Universidad de Berkeley, propuso un modelo de innovación diferente al tradicional,...

Converger para innovar

Por: Norma Medrano 07 de diciembre de 2021   ¿Te ha pasado que cuando quieres crear o rediseñar un producto o servicio, tienes muchas ideas muy buenas, empiezas a trabajar en su conceptualización, y de pronto te ves involucrado en un proceso creativo infinito,...

La magia del diseño de servicios

Por: Ariadna Ramírez 02 de noviembre de 2021   Posiblemente has escuchado el término “innovación” una infinidad de veces. Cuando nos hablan de ella, por lo regular lo asociamos con cosas como nuevas tecnologías, productos que jamás nos imaginamos que podrían...