CURSO 16 - TECNOLOGÍA DE LA INFORMACIÓN
PROF. LIC. FABIÁN A. MARTINEZ
Aprendizaje de
Máquinas
Autor: Lic. Facundo Iglesias
Machine Learning: Conceptos,
Técnicas y Aplicaciones
Introducción
En las últimas décadas, el mundo ha experimentado una revolución tecnológica sin
precedentes, impulsada en gran parte por la proliferación de datos y la necesidad de
procesar, interpretar y obtener información útil de estos vastos volúmenes de información.
Una herramienta esencial en este proceso ha sido el Machine Learning (ML), subcampo de la
Inteligencia Artificial que se dedica a la creación y aplicación de algoritmos que permiten a
las máquinas aprender de datos y hacer predicciones o tomar decisiones sin ser
explícitamente programadas para hacerlo.
A medida que el campo ha madurado, ha diversificado sus técnicas, estrategias y áreas de
aplicación, convirtiéndose en una pieza clave en muchas industrias y áreas de investigación.
Desde sistemas de recomendación personalizados y reconocimiento facial hasta detección
de fraudes y control de robots, el ML ha transformado la forma en que operan numerosos
sectores y cómo interactuamos con la tecnología en nuestra vida cotidiana.
En este artículo, proporcionamos una revisión detallada de los fundamentos del Machine
Learning, incluyendo sus conceptos básicos, algoritmos principales, y técnicas de
entrenamiento. Además, examinamos las principales categorías de aprendizaje y concluimos
con ejemplos prácticos de su aplicación en industrias y negocios relevantes. El objetivo es
brindar una comprensión clara y amplia del estado actual del campo, sus posibilidades y
limitaciones.
Perspectiva histórica
La idea de que las máquinas podrían aprender de la información no es nueva, aunque su
realización técnica ha avanzado significativamente en las últimas décadas. En la década de
1940 y 1950, con los primeros ordenadores y las teorías sobre redes neuronales, comenzó el
sueño de crear máquinas que pudieran simular funciones cerebrales. Alan Turing, uno de los
pioneros en el campo de la computación, propuso en 1950 el "test de Turing", que sería una
medida para determinar si una máquina puede exhibir comportamiento inteligente.
En los años 60 y 70, el enfoque se centró en programas basados en reglas y sistemas
expertos. Estos sistemas eran muy buenos en tareas específicas, pero carecían de la
flexibilidad y adaptabilidad que más tarde proporcionaría el Machine Learning.
Fue en la década de 1980 cuando resurgió el interés en las redes neuronales, especialmente
con la introducción del algoritmo de retropropagación, lo que permitió a las redes aprender y
ajustar sus parámetros más eficientemente. A lo largo de los años 90 y 2000, el Machine
Learning empezó a incorporarse en tecnologías cotidianas, desde sistemas de
recomendación hasta filtros de correo no deseado.
Sin embargo, la verdadera explosión del Machine Learning ha ocurrido en la última década,
impulsada por la disponibilidad masiva de datos y avances significativos en capacidad de
cómputo. Los modelos actuales, particularmente en el área de aprendizaje profundo, superan
a menudo a los humanos en tareas específicas, como el reconocimiento de imágenes o el
procesamiento de lenguaje natural.
Algoritmos y Modelos en Machine Learning
Algoritmos
Un algoritmo en el contexto de Machine Learning se puede pensar como la receta para
aprender de los datos. Es el conjunto de instrucciones que le dice a la máquina cómo cambiar
y ajustar su modelo basado en la información que recibe. A lo largo de los años, se han
desarrollado múltiples algoritmos, y cada uno tiene sus propias fortalezas, debilidades y
casos de uso óptimos. Aquí hay una breve descripción de algunos de los algoritmos más
populares:
Regresión Lineal y Logística
Estos son algunos de los algoritmos más simples y ampliamente utilizados. Mientras que la
regresión lineal se utiliza para predecir valores continuos, la regresión logística se utiliza para
clasificación binaria.
Ejemplo: Supón que quieres predecir el precio de una casa basado en su tamaño en metros
cuadrados. A medida que el tamaño aumenta, generalmente el precio también aumenta. La
regresión lineal tratará de trazar una línea que mejor se ajuste a los puntos de datos. Ahora
bien, imagina que quieres predecir si un correo electrónico es spam o no basándote en la
frecuencia de ciertas palabras clave. La regresión logística te dirá la probabilidad de que un
correo sea spam.
Árboles de Decisión
Son estructuras de flujo que toman decisiones basadas en hacer preguntas sobre los
atributos de los datos. Pueden ser muy interpretables y se utilizan tanto para clasificación
como para regresión.
Ejemplo: Un banco quiere decidir si otorga o no una tarjeta de crédito a un cliente. Puede
basar su decisión en factores como ingresos, historial crediticio y edad. Un árbol de decisión
divide a los solicitantes en grupos según estos criterios hasta llegar a una decisión.
Bosques Aleatorios y Boosting:
Son métodos que combinan múltiples árboles de decisión para mejorar la precisión y evitar el
sobreadjuste.
Ejemplo: Para predecir si un paciente tiene una enfermedad específica, un hospital podría
usar múltiples árboles de decisión que consideren varios síntomas y resultados de pruebas.
Estos árboles se combinan en un bosque aleatorio o se potencian para hacer una predicción
más precisa.
Máquinas de Vectores de Soporte (SVM)
Son algoritmos diseñados para encontrar el hiperplano que mejor divide un conjunto de
datos en clases.
Ejemplo: Supón que tienes un conjunto de datos que muestra la localización de dos tipos de
flores en un jardín y quieres dibujar un límite que separe estas flores. SVM intentará
encontrar el mejor "muro" que las separe.
Redes Neuronales: Inspiradas en el funcionamiento del cerebro humano, estas estructuras
complejas son especialmente poderosas para tareas como el reconocimiento de imágenes y
el procesamiento de lenguaje natural.
Ejemplo: Las aplicaciones de reconocimiento facial en muchos smartphones utilizan redes
neuronales. Cuando le muestras a tu teléfono muchas fotos tuyas, la red neuronal "aprende"
a reconocerte y luego puede identificarte entre otras personas.
Modelos
Una vez que un algoritmo ha sido "entrenado" en un conjunto de datos, produce un "modelo".
El modelo es, esencialmente, lo que la máquina ha "aprendido" del conjunto de datos. Es la
representación concreta de lo que ha descubierto el algoritmo sobre los datos. Puede ser tan
simple como una ecuación lineal en el caso de la regresión lineal, o tan complejo como una
estructura con millones de parámetros en el caso de las redes neuronales profundas.
Para utilizar un modelo en situaciones del mundo real (por ejemplo, para hacer una
predicción sobre nuevos datos), se toma la entrada, se pasa a través del modelo, y el modelo
produce una salida. Esta salida es la "predicción" del modelo basada en lo que ha aprendido.
Es crucial entender que el modelo es solo tan bueno como los datos en los que fue entrenado
y el algoritmo utilizado. Por lo tanto, la selección y preparación adecuada de los datos, junto
con la elección del algoritmo correcto, son esenciales para obtener resultados precisos y
útiles en aplicaciones de Machine Learning.
Por ejemplo, un modelo de lenguaje se entrena con enormes cantidades de texto para
predecir la siguiente palabra en una oración, tal como hacen los teclados predictivos en
smartphones. Un modelo de recomendación, como los que utilizan las plataformas como
Netflix o Spotify, sugieren películas, canciones o productos basándose en tus interacciones
previas y las de usuarios similares. Un modelo de detección de fraudes bancarios identifica
transacciones sospechosas basándose en el patrón de gasto histórico de un cliente. Un
modelo de segmentación de clientes pueden categorizarlos en diferentes grupos basándose
en sus comportamientos de compra, historial de navegación, etc. Y un modelo de traducción
automática, como el utilizado en Google Translate, aprende a convertir texto de un idioma a
otro.
Entrenamiento y Evaluación
El entrenamiento y la evaluación son etapas cruciales en el proceso de desarrollo de
cualquier modelo de aprendizaje automático. Entender ambos es esencial para garantizar que
el modelo sea preciso y funcione bien en situaciones del mundo real.
El entrenamiento es el proceso mediante el cual un modelo de aprendizaje automático
"aprende" de los datos. Durante esta fase, se alimenta al modelo con un conjunto de datos
conocido como "conjunto de entrenamiento". El modelo ajusta sus parámetros internos
(como los pesos en una red neuronal) para hacer predicciones lo más precisas posible.
Por ejemplo, si estás entrenando un modelo para reconocer gatos en imágenes, le
proporcionarías miles de imágenes de gatos y no gatos. El modelo ajustaría sus
parámetros para identificar correctamente las características distintivas de un gato.
Una vez entrenado, es esencial evaluar el rendimiento del modelo utilizando un "conjunto de
test" que no haya sido visto durante el entrenamiento. Esta etapa garantiza que el modelo no
solo memorizó los datos con los que fue entrenado (overfitting) sino que puede generalizar y
realizar predicciones precisas en datos nuevos y desconocidos.
Para evaluar, se utilizan métricas específicas según el tipo de tarea:
Problemas de Regresión: Error cuadrático medio, error absoluto medio, entre otros.
Problemas de Clasificación: Precisión, recall, F1-score, área bajo la curva ROC, entre
otros.
Tipos de Aprendizaje en ML
El aprendizaje automático se puede categorizar según cómo un modelo aprende de los datos.
Esta clasificación es esencial, ya que guía la elección de algoritmos y técnicas a utilizar. Aquí
se presentan los principales tipos de aprendizaje en ML:
Aprendizaje Supervisado:
En este tipo de aprendizaje, el modelo se entrena con un conjunto de datos etiquetado.
Esto significa que cada entrada de datos tiene una salida o etiqueta asociada. El objetivo
es que el modelo aprenda a mapear entradas a salidas.
Ejemplo: Un sistema de correo electrónico que se entrena para clasificar correos
como "spam" o "no spam" basándose en ejemplos previamente etiquetados.
Aprendizaje No Supervisado:
En el aprendizaje no supervisado, el modelo se entrena con datos sin etiquetar. Aquí, el
objetivo es descubrir patrones o estructuras en los datos sin tener una guía explícita sobre
qué buscar.
Ejemplo: Segmentación de clientes en diferentes grupos basada en sus comportamientos
de compra, sin tener categorías previas definidas.
Aprendizaje Semi-Supervisado:
Este enfoque combina elementos de aprendizaje supervisado y no supervisado. Se utiliza
cuando se tiene una gran cantidad de datos sin etiquetar y una pequeña cantidad de datos
etiquetados.
Ejemplo: Entrenar un modelo de reconocimiento facial con muchas fotos sin etiquetar y
algunas fotos etiquetadas con nombres.
Aprendizaje por Refuerzo:
En el aprendizaje por refuerzo, un agente aprende cómo actuar en un ambiente para
maximizar alguna recompensa a largo plazo. No se basa en datos etiquetados, sino en
recompensas y penalizaciones a medida que el agente interactúa con su entorno.
Ejemplo: Entrenar a un robot para que aprenda a caminar. El robot recibe recompensas
cuando se mueve correctamente y penalizaciones cuando se cae.
Aprendizaje Basado en Transferencia:
Este tipo de aprendizaje implica tomar un modelo preentrenado en una tarea y adaptarlo a
una tarea relacionada pero diferente. Es útil cuando se tienen datos limitados para la nueva
tarea.
Ejemplo: Usar un modelo preentrenado en identificar objetos en imágenes generales para
afinarlo en la detección de tipos específicos de plantas.
El tipo de aprendizaje a utilizar depende de la naturaleza del problema, la disponibilidad de
datos y el objetivo deseado. Es esencial comprender estos diferentes enfoques para aplicar el
más adecuado en cada situación.
Aplicaciones del Machine Learning
El aprendizaje automático ha revolucionado muchos campos y sectores, permitiendo a las
máquinas aprender de los datos y mejorar su desempeño en diversas tareas.
Los asistentes virtuales como Siri y Alexa destacan por su reconocimiento de voz.
Plataformas como Google Fotos emplean la visión por computadora para gestionar
imágenes.
Empresas de entretenimiento digital, como Netflix y Spotify, utilizan ML para
recomendaciones personalizadas, mejorando la experiencia del usuario.
En el marketing digital, la publicidad dirigida se beneficia enormemente de ML,
permitiendo a plataformas como Facebook y Google mostrar anuncios personalizados.
El sector financiero integra el ML en la detección de fraude, identificando actividades
sospechosas en transacciones.
En la atención sanitaria, el diagnóstico médico se ve potenciado por algoritmos que
analizan imágenes para detectar condiciones médicas.
Los vehículos autónomos, como los desarrollados por Tesla, están equipados con
sistemas avanzados de ML para navegar de manera segura.
En el campo de la comunicación, herramientas como Google Translate aplican
procesamiento del lenguaje natural para traducir eficientemente entre idiomas.
Las cadenas de suministro y el comercio electrónico utilizan ML para la predicción de
demanda y oferta, asegurando una gestión eficiente del inventario.
El análisis de sentimiento se aplica en el análisis de reseñas y feedback de clientes,
proporcionando a las empresas insights valiosos sobre la percepción de su marca.
Finalmente, en el ámbito del ocio, la inteligencia artificial en los juegos, como AlphaGo de
DeepMind, demuestra capacidades que superan las habilidades de los campeones
humanos en juegos estratégicos complejos.
Limitaciones y consideraciones en el Machine Learning
El Machine Learning, a pesar de su potencial, enfrenta desafíos significativos. Por ejemplo, los
modelos pueden mostrar un rendimiento pobre si se basan en datos de baja calidad o
sesgados, como un sistema de reconocimiento facial que falla al identificar diversas etnias
debido a un conjunto de datos limitado. La interpretabilidad es otro problema; los médicos
podrían desconfiar de un modelo que no explica por qué ciertos pacientes están en riesgo.
Además, el sobreajuste hace que los modelos sean precisos con datos históricos pero
erróneos bajo condiciones nuevas o futuras, similar a un modelo financiero que no puede
predecir eventos del mercado real.
El criterio humano también es indispensable, ya que los sistemas que toman decisiones sin
contexto, como un filtro de CV que ignora la singularidad de las trayectorias personales,
pueden ser injustos. El alto costo computacional y los riesgos de seguridad, como la posible
extracción de datos sensibles, limitan la accesibilidad y la privacidad. El sesgo en los modelos
es una preocupación grave, evidenciada cuando los algoritmos replican discriminaciones
existentes, como en la predicción sesgada de actividades delictivas. La confianza excesiva en
estos sistemas, como depender completamente de la conducción autónoma sin supervisión,
puede ser peligrosa.
Finalmente, la rapidez del cambio tecnológico y cultural puede volver obsoletos los modelos,
como un predictor de tendencias de moda que se queda atrás, y las limitaciones teóricas,
como la incapacidad de replicar la profundidad emocional en el arte, muestran que el ML
tiene fronteras claras en su capacida
Conclusión
El Machine Learning ha revolucionado innumerables sectores y aplicaciones en la última
década, permitiendo a las máquinas aprender de los datos y realizar tareas que,
anteriormente, eran exclusivas de la capacidad humana. Desde la predicción de tendencias
en el mercado hasta la identificación de patrones en genomas, el ML ha demostrado ser una
herramienta poderosa y transformadora.
Sin embargo, no está exento de desafíos. La calidad de los datos, el posible sesgo en los
modelos, la interpretabilidad y la seguridad son solo algunas de las consideraciones que
deben abordarse para implementar soluciones de ML eficaces y éticas. A medida que
avanzamos en la adopción del ML en más áreas de nuestra vida diaria, es imperativo que los
profesionales, investigadores y decisores políticos colaboren en la creación de marcos y
pautas que garanticen que esta tecnología se utilice de manera responsable.
Además, es esencial reconocer que el ML es solo una herramienta dentro del vasto arsenal
tecnológico disponible para nosotros. Aunque puede ofrecer soluciones increíblemente
efectivas en muchos contextos, hay situaciones en las que otras técnicas o enfoques pueden
ser más adecuados. Por lo tanto, una comprensión holística y crítica del ML y sus
aplicaciones es esencial para cualquier organización o individuo que busque aprovechar su
poder.
Finalmente, el futuro del ML es prometedor. Con los avances en investigación, hardware y
técnicas de modelado, es probable que veamos mejoras aún más significativas en la
precisión, eficiencia y aplicabilidad de los modelos de ML. No obstante, siempre debemos
recordar equilibrar este entusiasmo con una reflexión cuidadosa sobre sus implicaciones
éticas y sociales.