¿Qué son los algoritmos de machine learning?

Autor

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

¿Qué son los algoritmos de machine learning?

Un algoritmo de machine learning es el procedimiento y la lógica matemática a través de los cuales una "máquina", un sistema de inteligencia artificial (IA), aprende a identificar patrones en los datos de entrenamiento y aplica ese reconocimiento de patrones para hacer predicciones precisas sobre nuevos datos. Los algoritmos de machine learning son los componentes fundamentales de la IA moderna y la ciencia de datos, desde modelos simples de regresión lineal hasta técnicas de aprendizaje profundo de vanguardia.

Los términos "algoritmo" y "modelo" a menudo se usan indistintamente, pero representan conceptos distintos (aunque relacionados). Algoritmo es un término genérico para un proceso paso a paso, generalmente descrito en lenguaje matemático o pseudocódigo, para realizar alguna función o propósito. En el contexto de la inteligencia artificial, un modelo de IA es cualquier programa que recibe datos de entrada y genera una predicción o decisión sin más intervención humana.

Un algoritmo de machine learning es un conjunto definido de pasos que se utilizan para entrenar un modelo de machine learning para que pueda hacer predicciones útiles en su caso de uso del mundo real. Comprende no solo la forma en que el modelo asigna un punto de datos de entrada a su salida correspondiente, sino también el proceso de optimización de las predicciones del modelo para "ajustar" un conjunto de datos de entrenamiento de ejemplos relevantes. Es un algoritmo que permite a una máquina aprender de los datos.

En términos sencillos, el resultado de aplicar un algoritmo de machine learning a un conjunto de datos es un modelo entrenado. El “entrenamiento” puede entenderse como un proceso iterativo de actualización de los parámetros del modelo(los aspectos ajustables de la lógica matemática que utiliza el modelo para hacer predicciones o decisiones sobre los datos de entrada) de una manera que produzca resultados más útiles.

Aunque existen algoritmos de machine learning diseñados explícitamente para entrenar modelos para realizar una única tarea específica, eso es más una excepción que una regla. En términos generales, cada algoritmo de machine learning (ML) tiene cualidades matemáticas o prácticas particulares que son útiles para ciertos tipos de tareas (o ciertos tipos o cantidades de datos). En muchos casos, la misma técnica de ML se puede utilizar para entrenar modelos para múltiples tareas (aunque similares). Por el contrario, casi siempre hay varios algoritmos de ML adecuados para entrenar un modelo para cualquier tarea determinada.

El beneficio central de los algoritmos de ML es que permiten que los modelos de IA aprendan de la experiencia implícitamente. Esto contrasta con las técnicas de IA "clásicas" o "basadas en reglas", que requieren que un científico de datos, un experto en la materia o un ingeniero de ML programen manual y explícitamente la lógica de toma de decisiones del modelo. En las últimas décadas, los sistemas de ML se han convertido en el modo dominante de inteligencia artificial y análisis de datos sobre la IA basada en reglas porque, entre otras razones, el ML implícito basado en datos es inherentemente más flexible, escalable y accesible.

Dicho esto, es esencial tener en cuenta que ajustar un modelo a sus datos de entrenamiento es simplemente un medio para un fin. La premisa fundamental del ML es que si se optimiza el rendimiento de un modelo en tareas de muestra que se asemejan adecuadamente a los problemas del mundo real para los que se utilizará, el modelo entrenado también se desempeñará bien en nuevos datos que no ha visto en el entrenamiento. El objetivo final del ML es la generalización, la traducción del rendimiento de los datos de entrenamiento a datos nuevos e invisibles. Un enfoque miope en el entrenamiento en sí mismo corre el riesgo de sobreajuste, un fenómeno en el que el conocimiento de un modelo se adapta tan a fondo a los patrones en sus datos de entrenamiento que no puede generalizar, lo que produce un modelo que sobresale en el entrenamiento, pero falla en escenarios del mundo real.

Por lo tanto, entrenar un modelo de ML útil implica no solo seleccionar y configurar un tipo apropiado de algoritmo de ML, sino también la curaduría adecuada de los datos de entrenamiento y la validación cuidadosa del rendimiento posterior al entrenamiento.

Las últimas tendencias de IA presentadas por expertos

Obtenga insights curados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM .

¡Gracias! Ya está suscrito.

Su suscripción se entregará en inglés. En cada boletín, encontrará un enlace para darse de baja. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

Tipos de algoritmos de ML

Los algoritmos de ML se pueden clasificar en tres categorías fundamentales: aprendizaje supervisado, aprendizaje no supervisado o aprendizaje por refuerzo. Cada uno de estos paradigmas de aprendizaje se diferencia principalmente por sus distintos objetivos, los tipos de tareas de entrenamiento que implican esos objetivos y las técnicas utilizadas para optimizar el rendimiento en esas tareas.

  • Los algoritmos de aprendizaje supervisado entrenan un modelo para predecir la salida "correcta" para una entrada determinada: en otras palabras, para aprender a relacionar entre variables independientes (la característica de los datos de entrada) y variables dependientes (la salida o el "objetivo"). Se utilizan para entrenar modelos para tareas que requieren cierto grado de precisión en relación con alguna "verdad fundamental " conocida, como la clasificación o la regresión. Esa verdad fundamental generalmente (pero no siempre) viene en forma de datos etiquetados: datos que se han anotado para proporcionar contexto al modelo, por ejemplo, un conjunto de datos que comprende datos etiquetados [input, output] etiquetados.

  • Los algoritmos de aprendizaje no supervisado entrenan un modelo para discernir patrones intrínsecos, dependencias y correlaciones en conjuntos de datos no etiquetados. A diferencia del aprendizaje supervisado, el aprendizaje no supervisado no implica la existencia de ninguna verdad fundamental externa con la que se deban comparar sus resultados.

  • Los algoritmos de aprendizaje por refuerzo (RL) entrenan un modelo, a través de prueba y error, para evaluar su entorno y tomar una acción que genere la mayor recompensa. El aprendizaje por refuerzo se adapta bien a escenarios que no implican la existencia de una verdad fundamental singular, pero sí implican las acciones "buenas" (para ser recompensadas) y las acciones "malas" (para ser penalizadas). Mientras que el objetivo de los algoritmos de aprendizaje supervisado es optimizar los parámetros de una manera que minimice el error, el objetivo de los algoritmos de aprendizaje por refuerzo es optimizar los parámetros del modelo de una manera que maximice la recompensa.

Aunque no hay algoritmos de ML que no se ajusten a ninguno de estos tres paradigmas, existen algunos métodos de aprendizaje cuya categorización es relativamente ambigua. Por ejemplo, el aprendizaje semisupervisado combina el aprendizaje supervisado y no supervisado. El aprendizaje autosupervisado manipula los datos de entrada y diseña las tareas de entrenamiento de una manera que permite el aprendizaje supervisado con datos no etiquetados.

Un modelo se puede entrenar con más de un tipo de algoritmo de machine learning. Por ejemplo, los modelos de lenguaje grandes (LLM) generalmente se someten a su entrenamiento inicial ("preentrenamiento") a través del aprendizaje autosupervisado, pero luego se ajustan a través de algoritmos convencionales de aprendizaje supervisado y algoritmos de aprendizaje por refuerzo. Del mismo modo, los algoritmos de aprendizaje por conjuntos implican la agregación de múltiples modelos en un único modelo "final".

Los algoritmos de ML no son iguales para todos: cada algoritmo tiene varios hiperparámetros que deben configurarse para adaptar mejor un modelo al escenario específico y al conjunto de datos en el que van a operar. Como analogía, considere la pizza: un “algoritmo” básico para hacer pizza podría definirse como echar salsa de tomate sobre una masa circular, colocar queso mozzarella encima de esa salsa y cocinarla en un horno, pero hay un número casi infinito de varias formas en que el “algoritmo” podría configurarse específicamente para adaptarse a gustos, ingredientes, presupuestos o limitaciones específicos.

Mixture of Experts | 28 de agosto, episodio 70

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

Algoritmos de aprendizaje supervisado

El objetivo formal de cualquier algoritmo de ML supervisado es optimizar los parámetros del modelo de manera que minimice los resultados de una función de pérdida que mide la divergencia ("pérdida") entre los resultados previstos de un modelo para cada entrada y los resultados de verdad fundamental para cada una de esas entradas.

En el aprendizaje supervisado convencional, esa verdad fundamental la proporcionan los datos etiquetados. Por ejemplo, entrenar un modelo que detecta correos electrónicos no deseados generalmente requiere que un anotador humano realice comentarios manualmente sobre un corpus de correos electrónicos de ejemplo y etiquete cada uno como "SPAM" o "NO SPAM". El objetivo de entrenar el modelo es ajustar los parámetros del modelo hasta que las predicciones de salida del modelo para un correo electrónico determinado se alineen constantemente con la forma en que el humano etiquetó ese correo electrónico. Debido a que este método implica la supervisión humana directa de lo que aprende la máquina, se denomina aprendizaje "supervisado". El aprendizaje supervisado, a su vez, se define simplemente como ML que utiliza datos etiquetados.

Pero algunas instancias, particularmente en el aprendizaje profundo moderno, requieren conjuntos de datos tan grandes y puntos de datos tan complejos que obtener suficientes datos de entrenamiento etiquetados se vuelve prohibitivo en cuanto a tiempo y mano de obra. El aprendizaje autosupervisado, desarrollado en gran medida para abordar tales escenarios, diseña tareas de entrenamiento de modo que se pueda inferir una etiqueta (o "pseudoetiqueta") a partir de datos no etiquetados. Esto pone a prueba la definición convencional de aprendizaje supervisado que requiere datos etiquetados. Por lo tanto, los algoritmos de aprendizaje supervisado se definen mejor y más ampliamente como métodos de ML que implican cierta verdad fundamental (o "señal de supervisión") para optimizar y alguna función de pérdida que compara los resultados del modelo con la verdad fundamental.

Los algoritmos de aprendizaje supervisado se utilizan para entrenar un modelo para tareas de clasificación, tareas de regresión o ambas.

  • La clasificación implica predicciones discretas, como la categoría específica a la que pertenece un punto de datos. Las tareas de clasificación son binarias (”sí” o “no”, “aprobar” o “rechazar”, “spam” o “no spam”)o multiclase. Algunos algoritmos de clasificación solo son adecuados para la clasificación binaria, pero cualquier clasificador multiclase puede realizar una clasificación binaria.

  •  La regresión se utiliza para predecir valores continuos , como cantidades, precios, duración o temperatura. Se utilizan en análisis de series temporales, forecasting, precios y predicción de probabilidades, entre muchos otros casos de uso.

Muchos algoritmos de aprendizaje supervisado se pueden utilizar para entrenar modelos de regresión o clasificación. Por ejemplo, un modelo podría usar la regresión para predecir la probabilidad de que un punto de datos determinado pertenezca a cada categoría potencial, y luego obtener resultados de la categoría con la probabilidad más alta.

Algoritmos de regresión comunes

  • La regresión lineal es uno de los algoritmos de ML básicos y ampliamente utilizados. Los algoritmos de regresión lineal calculan una salida (variable dependiente) como una combinación ponderada de una o más variables de entrada (variables independientes). Al aprender la ponderación óptima para cada variable de entrada, el algoritmo produce la "línea de mejor ajuste" para los puntos de datos observados en el entrenamiento. Existe una amplia gama de variantes y extensiones de regresión lineal que emplean una lógica similar para modelar relaciones más variadas matemáticamente entre variables dependientes e independientes, como la regresión polinómica (que modela relaciones curvas no lineales) o la regresión cuantílica (que modela relaciones en puntos específicos de la distribución de un conjunto de datos).

  • Los algoritmos del árbol de decisión alcanzan las predicciones de salida final a través de una secuencia ramificada de decisiones if-then-else que se pueden visualizar como un diagrama similar a un árbol. Se pueden utilizar tanto para la regresión como para la clasificación. A diferencia de la mayoría de los algoritmos de aprendizaje monitorear, el objetivo del algoritmo no es optimizar sus predicciones de resultados minimizando una única función de pérdida global, sino optimizar el poder predictivo de cada nodo de ramificación individual del árbol.

  • Los modelos de espacio de estados (SSM) modelan sistemas dinámicos y datos secuenciales a través de dos ecuaciones interrelacionadas: una, la ecuación de estado, describe la dinámica interna ("estado") de un sistema que no es directamente observable; la otra, la ecuación de resultados, describe cómo esas dinámicas internas se relacionan con los resultados observables, es decir, con los resultados del sistema. Se utilizan en diversos campos, desde la ingeniería eléctrica hasta el forecasting financiero y el procesamiento de lenguaje natural (PLN).

Algoritmos de clasificación comunes

  • Los clasificadores Naïve Bayes operan con la lógica del teorema de Bayes, que es esencialmente una formulación matemática de la idea de que la información de eventos posteriores (como un resultado) se puede utilizar para actualizar la comprensión de eventos anteriores (como entradas). En otras palabras, el modelo aprende la importancia relativa de una variable de entrada determinada en función de la fuerza con la que se correlaciona con resultados específicos. Su suposición "ingenua" homónima es que todas las características que contribuyen a una clasificación son independientes entre sí. Esta simplificación hace que el algoritmo sea rápido y eficaz para tareas sencillas, como la detección de spam.

  • La regresión logística adapta el algoritmo de regresión lineal para resolver problemas de clasificación binaria al introducir la suma ponderada de las características de entrada en una función sigmoidea, que comprime cualquier entrada en un valor entre 0 y 1. El valor resultante se puede interpretar como la probabilidad de que ocurra un evento determinado, en este caso, una clasificación específica.

  • Los algoritmos de vecino más cercano (KNN) clasifican los puntos de datos en función de su proximidad en el espacio de incorporación vectorial a otros puntos de datos ya clasificados, es decir, etiquetados, con el supuesto de que se pueden encontrar puntos de datos similares cerca uno del otro. La k se refiere a cuántos puntos de datos vecinos se tienen en cuenta: por ejemplo, en un algoritmo KNN donde k = 5, el punto de datos de entrada se comparará con sus 5 vecinos más cercanos y se clasificará según la categoría que esté más representada entre esos 5 puntos de datos vecinos.

  • Las máquinas de vectores de soporte (SVM) son modelos potentes que aparentemente realizan clasificación binaria, pero también pueden adaptarse para problemas de clasificación multiclase. El objetivo de un algoritmo SVM no es aprender directamente a categorizar puntos de datos: en cambio, su objetivo es aprender el límite óptimo para separar dos categorías de puntos de datos etiquetados para luego clasificar nuevos puntos de datos en función de qué lado del límite se encuentran. El algoritmo SVM define este límite como el hiperplano que maximiza el margen (o brecha) entre puntos de datos de clases opuestas, un concepto similar a la suposición de baja densidad en el aprendizaje semisupervisado. Lógicamente, los únicos puntos de datos que pueden admitir el cálculo de ese hiperplano son los puntos de datos de cada clase que están más cerca del límite. Por lo tanto, las incorporaciones vectoriales de esos puntos de datos adyacentes a los límites se denominan vectores de soporte.

Algoritmos de aprendizaje autosupervisado

El objetivo de los algoritmos de aprendizaje autosupervisado es realizar un aprendizaje supervisado sin requerir datos etiquetados mediante el diseño de tareas que utilicen la estructura de los propios datos no etiquetados para señales de supervisión. Las técnicas de aprendizaje autosupervisado generalmente se dividen en uno de dos subconjuntos: autopredicción o aprendizaje contrastivo.

Autopredicción

Los algoritmos de autopredicción entrenan un modelo para predecir un aspecto de un punto de datos cuando se le da otra información sobre ese punto de datos. Yann LeCun articuló el objetivo de tales métodos en términos simples: "finja que hay una parte de la entrada que no conoce y prediga eso". 1 Por ejemplo:

  • Predecir cualquier parte de la entrada de cualquier otra parte
  • Predice el futuro desde el pasado
  • Predecir lo enmascarado desde lo visible
  • Predecir cualquier parte ocluida de todas las partes disponibles

Los modelos entrenados mediante autopredicción suelen ser generativos, en lugar de discriminativos. Algunos ejemplos destacados de modelos de machine learning entrenados que utilizaron algoritmos de autopredicción incluyen autocodificadores y modelos de lenguaje grandes (LLM):

  • Los autocodificadores tienen la tarea de reconstruir la entrada original después de comprimirla solo en sus variables latentes. La entrada original sirve como verdad fundamental.

  • Los LLM autorregresivos (los modelos de generación de texto que saltaron a la fama tras el lanzamiento de ChatGPT) tienen la tarea de predecir iterativamente el siguiente token en una secuencia, dados solo los tokens anteriores en esa secuencia. Para cada predicción, el siguiente token real de la secuencia sirve como verdad fundamental.

Aprendizaje contrastivo

Los algoritmos de aprendizaje contrastivo proporcionan a los modelos múltiples muestras de datos y les asignan la tarea de predecir cuán diferentes (o similares) son. Los emparejamientos de puntos de datos a menudo se crean mediante el aumento de datos: transformando o perturbando datos no etiquetados para crear nuevas instancias o vistas aumentadas. Por ejemplo, las técnicas de aumento comunes para los datos de imagen incluyen rotación, recorte aleatorio, giro, ruidos, filtrado y coloraciones.

El aprendizaje contrastivo se emplea de manera destacada en el entrenamiento de modelos de visión artificial: por ejemplo, puede ayudar a un modelo a aprender a reconocer el mismo objeto cuando se ve desde diferentes ángulos. También es esencial en el entrenamiento de IA multimodal: por ejemplo, puede ayudar a un modelo a aprender a "traducir" incorporaciones vectoriales de una modalidad de datos (como texto) a otra (como voz o imágenes).

Algoritmos de aprendizaje no supervisados

El machine learning no supervisado se utiliza para enseñar a los modelos a descubrir patrones intrínsecos, correlaciones y estructuras en datos no etiquetados. A diferencia del aprendizaje supervisado, que implica la existencia de respuestas "correctas" que el modelo debe aprender para obtener resultados, o el aprendizaje por refuerzo, que implica un espectro de acciones "buenas" y "malas" que un modelo podría realizar, el aprendizaje no supervisado es más útil en escenarios donde el resultado ideal no se conoce de antemano.

Estos objetivos no se rigen por ninguna verdad fundamental predefinida o estructura de recompensa, por lo tanto, son "no supervisados". Así, los algoritmos de aprendizaje no supervisados no implican funciones de pérdida, ya que sus tareas no implican un resultado ideal conocido para medir y optimizar. El éxito del proceso de aprendizaje se rige principalmente por el ajuste manual de hiperparámetros, en lugar de algoritmos que optimicen los parámetros internos del modelo.

Hay tres subconjuntos fundamentales de algoritmos de aprendizaje no supervisado: algoritmos de agrupación en clústeres, algoritmos de asociación y algoritmos de reducción de dimensionalidad.

Algoritmos de agrupación en clústeres

Los algoritmos de agrupación en clústeres dividen los puntos de datos no etiquetados en "clústeres" o agrupaciones, en función de su proximidad o similitud entre sí, para tareas como la segmentación del mercado. También se pueden utilizar como modelos predictivos para la detección de anomalías mediante el aprendizaje de los clústeres en los que deben clasificarse todos los puntos de datos e identificar cuándo un punto de datos atípico no encaja perfectamente en ninguno de esos clústeres.

  • Los algoritmos de agrupación en clústeres de K-means particionan los datos en k clústeres en un punto de datos determinado se asignarán al clúster cuyo centro (centroide) está cerca. El proceso comienza con una colocación inicial de k centroides, que a menudo es aleatoria (pero también puede determinarse mediante reglas específicas). Cada punto de datos se asigna al clúster del centroide más cercano. Luego, cada centroide se reubica en la posición que representa el promedio (media) de todos los puntos de datos que se le acaban de asignar; los puntos de datos se agrupan una vez más de acuerdo con el centroide más cercano, y la posición de cada centroide se ajusta nuevamente. Este proceso se repite iterativamente hasta que la ubicación del centroide de cada clúster se haya estabilizado.
  • Los modelos de mezcla gaussiana (GMM) son un algoritmo de agrupación en clústeres "suave". Un GMM asume que un conjunto de datos es una mezcla de múltiples distribuciones gaussianas, es decir, distribuciones clásicas “normales” o “curva de campana”, y predice la probabilidad de que un punto de datos determinado pertenezca a cada uno de esos clústeres distribuidos normalmente. El algoritmo GMM está diseñado para aprender los parámetros de cada distribución gaussiana (específicamente, la media, la varianza y la ponderación de cada distribución) que mejor se ajustan al conjunto de datos de entrenamiento.
  • DBSCAN (Density-Based Spatial Clustering Applications with Noise) crea clústeres a partir de puntos de datos que están muy juntos. En lugar de agrupar todos los puntos de datos en clústeres, marca los puntos de datos ubicados solos en regiones de baja densidad como valores atípicos. Identifica áreas lo suficientemente densas como para pertenecer a un clúster en función de si un cierto número de puntos de datos vecinos se encuentran en un radio específico. A diferencia de k-means, DBSCAN puede encontrar clústeres con formas arbitrarias y no requiere que se especifique el número de clústeres de antemano.

Algoritmos de asociación

  • Los algoritmos de asociación identifican correlaciones entre variables en grandes conjuntos de datos. Se utilizan de manera destacada en tareas como el análisis de la canasta de la compra o los motores de recomendación de productos: por ejemplo, un servicio de comercio electrónico podría usar algoritmos de asociación para identificar qué artículos se compran con frecuencia en combinación entre sí y usar esa información para promocionar dinámicamente artículos relacionados en su inventario.

  • El algoritmo a priori es un método de asociación clásico. El algoritmo realiza múltiples pasadas sobre el conjunto de datos utilizando un enfoque "ascendente", explorando la frecuencia de combinaciones progresivamente más grandes de elementos individuales y combinaciones de poda que aparecen con poca frecuencia. El principio a priori sostiene que si se considera frecuente una agrupación más grande de elementos, cualquier subconjunto de esa agrupación también debe ser frecuente. Por el contrario, si una agrupación más pequeña de elementos se considera poco frecuente, entonces cualquier superconjunto que incluya esa agrupación más pequeña también debe ser poco frecuente. Si bien es simple y altamente adaptable, el algoritmo a priori puede consumir mucha memoria y ser costoso desde el punto de vista computacional.

  • El recuento dinámico de elementos (DIC) es un método de asociación más eficiente desde el punto de vista informático, aunque funciona a través de una lógica similar a la del algoritmo a priori clásico. En lugar de explorar todo el conjunto de datos con cada pasada, comienza con solo un subconjunto de la base de datos y luego agrega periódicamente nuevos elementos, expandiendo "dinámicamente" su enfoque.

Otros algoritmos de asociación notables incluyen CHARM (abreviatura de Closed Association Rule Mining; los autores del artículo de CHARM señalan que "la H es gratuita")2 y CARMA (Continuous Association Rule Mining Algorithm).3

Algoritmos de reducción de dimensionalidad

Los algoritmos de reducción de dimensionalidad están diseñados para tomar un punto de datos y generar resultados de ese punto de datos. Más específicamente, están diseñados para aprender un mapeo de puntos de datos de alta dimensión en un espacio donde se pueden describir con precisión utilizando menos características: en otras palabras, para reducir la cantidad de dimensiones necesarias para representar los datos de manera efectiva.

La reducción de la dimensionalidad a menudo se realiza como un paso de preprocesamiento de datos, lo que ayuda a reducir la complejidad y el ruido en los datos para mejorar las predicciones o disminuir las demandas computacionales. También es un paso esencial en el modelado del espacio latente de un conjunto de datos: una representación comprimida (de menor dimensión) de los datos que conserva solo el subconjunto de características más relevantes para la tarea en cuestión. Otros casos de uso comunes de reducción de dimensionalidad incluyen la compresión y la visualización de datos.

  • El análisis de componentes principales (PCA) simplifica los conjuntos de datos complejos al resumir las variables originales de los datos, muchas de las cuales a menudo están correlacionadas entre sí y, por lo tanto, son algo redundantes, como un subconjunto más pequeño de variables no correlacionadas, cada una de las cuales es una combinación lineal de variables originales. Más específicamente, el algoritmo prioriza los componentes principales de los datos: las combinaciones lineales de variables que tienen la mayor varianza en comparación con otras combinaciones lineales.

  • La incorporación estocástica de vecinos distribuidos en t (t-SNE) es un algoritmo de reducción de dimensionalidad no lineal que se utiliza comúnmente para fines de visualización de datos. Se utiliza casi exclusivamente para representar datos en 2 o 3 dimensiones, con el objetivo principal de garantizar que los puntos de datos cercanos entre sí en el espacio de dimensiones altas permanezcan cerca entre sí en el nuevo espacio de dimensiones inferiores.

  • Los autocodificadores son un tipo de arquitectura de red neuronal codificador-decodificador entrenada a través de lo que se podría considerar más comúnmente un algoritmo de aprendizaje autosupervisado(en el sentido de que su objetivo es minimizar una función de pérdida). Sin embargo, realizan una reducción de dimensionalidad de datos no etiquetados, en este caso, modelando su espacio latente. El codificador comprende una serie de capas progresivamente más pequeñas, lo que obliga a los datos de entrada a pasar a través de un "cuello de botella" que "comprime" los datos en cada vez menos dimensiones antes de llegar al decodificador. El decodificador, que comprende una serie de capas progresivamente más grandes, tiene la tarea de reconstruir los datos originales utilizando esta representación comprimida, con el objetivo de minimizar la pérdida de reconstrucción. Esto obliga al codificador a aprender a extraer y pasar solo la información más propicia para reconstruir con precisión la entrada original.

Algoritmos de aprendizaje semisupervisado

El aprendizaje semisupervisado, que generalmente se emplea para los mismos casos de uso que los métodos de aprendizaje supervisado, se distingue por técnicas para incorporar datos no etiquetados en el entrenamiento de modelos junto con un subconjunto de datos etiquetados. Son especialmente útiles en situaciones en las que obtener suficientes datos etiquetados es prohibitivamente difícil o costoso, pero los datos relevantes no etiquetados son relativamente fáciles de adquirir.

Los ejemplos no etiquetados utilizados en el aprendizaje semisupervisado deben ser relevantes para la tarea para la que se entrena el modelo. Por ejemplo, al entrenar un clasificador de imágenes para diferenciar entre imágenes de gatos y perros, la inclusión de imágenes sin etiquetar de gatos y perros ayudará al entrenamiento, pero las imágenes de caballos y motocicletas no. Esta condición informa una serie de suposiciones sobre cómo los puntos de datos se relacionan entre sí que proporcionan la lógica formal de los métodos semisupervisados.

Los algoritmos de aprendizaje semisupervisados generalmente se clasifican como transductivos, inductivos o inherentemente autosupervisados.

  • Los métodos transductivos se centran en clasificar los puntos de datos no etiquetados disponibles durante el entrenamiento para que puedan aplicarse posteriormente a algoritmos de aprendizaje supervisado convencionales. La propagación de etiquetas, por ejemplo, es un método basado en grafos que infiere "pseudoetiquetas" para datos no etiquetados mediante la "propagación" de etiquetas conocidas al punto de datos que se encuentra en los nodos vecinos del grafo.

  • Los métodos inductivos tienen como objetivo construir un modelo generalizable que pueda clasificar tanto los datos no etiquetados presentes durante el entrenamiento como cualquier punto de datos nuevo e invisible. En el autoentrenamiento, un modelo se entrena primero con aprendizaje supervisado convencional en un pequeño conjunto de datos etiquetado; luego se le encomienda al modelo hacer predicciones probabilísticas sobre puntos de datos no etiquetados; solo se aceptan predicciones por encima de cierto umbral de confianza. El coentrenamiento amplía el autoentrenamiento con el aprendizaje por conjuntos, entrenando a diferentes tipos de aprendices en diferentes características de los datos. Los métodos de clúster-then-label realizan una agrupación en clústeres no supervisada en todos los puntos de datos disponibles, luego asignan etiquetas a cada clúster en función de qué etiqueta se representa con mayor frecuencia dentro de ese clúster.

  • Algunos algoritmos, como las redes de escalera4 o las máquinas de vectores desoporte semisupervisadas (S3VM) 5, están diseñados inherentemente para el aprendizaje semisupervisado (mientras que los métodos transductivos e inductivos se adaptan o agregan pasos adicionales a los algoritmos supervisados convencionales).

Algoritmos de aprendizaje por refuerzo

Los algoritmos de aprendizaje por refuerzo (RL) son adecuados para tareas en las que no hay una salida (o acción) “correcta” singular, pero sí resultados “buenos”. Se utilizan de forma destacada en robótica, videojuegos, modelos de razonamiento y otros casos de uso en los que el espacio de posibles soluciones y enfoques es particularmente amplio, abierto o difícil de definir. En la jerga del RL, la entidad que se está entrenando generalmente se denomina "agente".

En lugar de una señal de supervisión y tareas definidas explícitamente, implican una señal de recompensa que permite a los modelos aprender de manera integral a través de prueba y error. Esa señal de recompensa puede provenir de una función de recompensa, un modelo de recompensa entrenado por separado o un sistema de recompensa basado en reglas.

Los algoritmos de RL optimizan una política. Matemáticamente hablando, una política ( π ) es una función que toma un estado ( s ) como entrada y devuelve una acción ( a ): π(s)→a. El objetivo de un algoritmo de RL es aprender la política que toma la acción que obtendrá la máxima recompensa para cualquier estado dado.

Los algoritmos de RL pueden basarse en valores o en políticas. En los algoritmos basados en políticas, un modelo aprende directamente una política óptima. En los algoritmos basados en valores, el agente aprende una función de valor que calcula una puntuación de cuán "bueno" es cada estado, generalmente basada en la recompensa potencial por las acciones que se pueden tomar desde ese estado, luego elige acciones que conducen a estados de mayor valor. Los enfoques híbridos aprenden una función de valor que, a su vez, se utiliza para optimizar una política.

Los algoritmos de refuerzo notables incluyen:

  • Q-learning, derivado de métodos basados en valores

  • Optimización proximal de políticas (PPO), un método basado en políticas utilizado de manera destacada en el aprendizaje por refuerzo a partir de feedback humano (RLHF)
    Actor-crítico y derivados como ventaja actor-crítico (A2C), que utilizan un híbrido de métodos basados en valores y políticas

  • REINFORCE (abreviatura de REward Increment = Nonnegative Factor × Offset Reinforcement × Characteristic Eligibility), un método fundamental basado en políticas

Algoritmos de aprendizaje de conjuntos

El aprendizaje de conjuntos se refiere a técnicas que combinan múltiples algoritmos de machine learning, a menudo denominados “aprendices” en este contexto, para lograr un rendimiento más preciso o más confiable del que sería posible solo a través de cualquiera de sus algoritmos constituyentes.

Los algoritmos de aprendizaje de conjuntos suelen utilizar técnicas de boosting, stacking o o bagging.

Boosting

Los algoritmos de boosting construyen modelos secuencialmente, donde cada nuevo modelo posterior se entrena para corregir los errores del modelo anterior. La progresión de los aprendices inicialmente "débiles" finalmente culmina en un solo aprendiz "fuerte" altamente preciso.

  • Adaptive boosting (AdaBoost) da más peso a las instancias que originalmente fueron mal clasificadas por el modelo anterior, asegurando que las actualizaciones del modelo posterior prioricen mejorar el rendimiento en esos ejemplos de entrenamiento. La predicción final está determinada por el voto de la mayoría ponderada, y los modelos posteriores y más precisos tienen más influencia sobre el resultado final.

  • Gradient boosting se centra en los errores cometidos por los aprendices anteriores, en lugar de en los puntos de datos en los que se equivocaron los modelos anteriores. Más específicamente, entrena cada modelo para corregir, es decir, predecir, los errores cometidos por el modelo anterior en un punto de datos determinado. Al agregar las predicciones de cada modelo posterior, el conjunto puede, en última instancia, aplicar ingeniería inversa a la salida correcta para el punto de datos original. XGBoost (abreviatura de eXtreme Gradient Boosting) es una biblioteca de machine learning de código abierto para la implementación eficiente del aumento de gradiente.

Bagging

Los algoritmos de bagging, también conocidos como agregación bootstrap entrenan varios modelos en paralelo en diferentes subconjuntos muestreados aleatoriamente del conjunto de datos de entrenamiento, luego combinan sus predicciones a través de la votación (en problemas de clasificación) o el promedio (en problemas de regresión). Este enfoque es muy eficaz para reducir la varianza y prevenir el sobreajuste.

El algoritmo de bosque aleatorio, por ejemplo, utiliza bagging para construir conjuntos de modelos de árboles de decisión no correlacionados.

Apilamiento

Los algoritmos de stacking combinan predicciones de múltiples aprendices base, cada uno de los cuales a menudo se especializa en un tipo particular de predicción, y luego entrena un "metamodelo" final sobre los resultados de estos modelos base para aprender a combinar mejor sus predicciones para obtener un resultado más preciso y resultado final sólido.

En la técnica relacionada de destilación del conocimiento, el modelo final se entrena no solo en las predicciones de salida final (“objetivos duros”) de los aprendices base, sino también en sus salidas intermedias (“logits” u “objetivos blandos”), en un intento de replicar sus “procesos de pensamiento”.

Algoritmos de aprendizaje profundo

El aprendizaje profundo es un subconjunto del machine learning definido por el uso de redes neuronales artificiales multicapa, generalmente entrenadas a través del aprendizaje supervisado en datos etiquetados o (como suele ser el caso de los modelos de IA generativa en particular) a través del aprendizaje autosupervisado en datos no etiquetados. En el aprendizaje profundo por refuerzo, una red neuronal profunda sirve como la política de un agente de RL. El aprendizaje profundo ha impulsado la mayoría de los avances de última generación en inteligencia artificial desde principios de la década de 2010. Entre sus fortalezas más importantes se encuentra su capacidad para automatizar el proceso de ingeniería de características, que a menudo es manual en el machine learning tradicional.

A diferencia de los algoritmos explícitamente definidos de machine learning "tradicionales", los modelos de aprendizaje profundo comprenden muchas capas interconectadas de "neuronas" (o "nodo") que realizan una operación matemática (llamada "función de activación"). La entrada a la función de activación de cada neurona es una combinación ponderada de las salidas de las funciones de activación de cada una de las neuronas de la capa anterior. Las neuronas de la capa final calculan el resultado final del modelo. De manera crucial, las funciones de activación realizadas en cada nodo son no lineales, lo que permite a las redes neuronales modelar patrones y dependencias complejos. Aunque las redes neuronales en la IA moderna se asocian más comúnmente con el aprendizaje profundo de vanguardia, las redes neuronales "no profundas", como las máquinas de Boltzmann restringidas, se han utilizado durante décadas.

Es la estructura distribuida de los algoritmos de aprendizaje profundo que proporciona su increíble potencia y versatilidad. Imagine entrenar datos como puntos de datos dispersos en un gráfico bidimensional, y el objetivo del entrenamiento de modelos es encontrar una línea que pase por cada uno de esos puntos de datos. Mientras que los algoritmos tradicionales de machine learning intentan esta hazaña con una única función matemática que produce una sola línea (o curva), los algoritmos de aprendizaje profundo pueden unir un número arbitrario de líneas más pequeñas y ajustables individualmente para lograr la forma deseada. Las redes neuronales son aproximadores universales: se ha demostrado teóricamente que, para cualquier función, existe una disposición de redes neuronales que puede reproducirla.6

Arquitecturas frente a algoritmos

  • En el contexto del aprendizaje profundo, los tipos de modelos específicos a menudo se denominan "arquitecturas", un concepto relacionado con los algoritmos, pero distinto de ellos.

  • Una arquitectura de red neuronal se refiere a su diseño: el número y tamaño de las capas; el uso de capas especializadas; la elección de activación. La misma arquitectura de red neuronal a menudo se puede entrenar para realizar uno de múltiples tipos de tareas o procesar una de múltiples modalidades de datos.

  • Un algoritmo de aprendizaje profundo comprende no solo la arquitectura de red neuronal utilizada para un modelo, sino la tarea para la que se está entrenando y los pasos que se toman para optimizarlo para esa tarea.

Considere los autocodificadores: en cuanto a la arquitectura, un autocodificador es un modelo de codificador-decodificador:su red de codificador tiene capas progresivamente más pequeñas, mientras que su red de decodificador tiene capas progresivamente más grandes. Pero un autocodificador es solo uno de los muchos modelos de codificador-decodificador: por ejemplo, los modelos de segmentación de imágenes tienen una arquitectura muy similar, en la que capas convolucionales progresivas más pequeñas reducen el muestreo de los datos para aislar y segmentar características clave, seguidas de capas progresivamente más grandes que aumentan el muestreo de los datos (segmentados) a su tamaño original.

Lo que hace que un autocodificador sea un autocodificador no es (solo) su arquitectura, sino el algoritmo utilizado para entrenarlo: un autocodificador tiene la tarea de reconstruir la entrada original y se optimiza mediante el entrenamiento del modelo para minimizar una función que mide la pérdida de reconstrucción (a menudo modificada por términos de regularización). Un modelo que tiene una arquitectura idéntica, pero está entrenado para realizar una tarea diferente y optimizado para un objetivo diferente no es un autocodificador.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Conozca los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida del desarrollo de IA. Produzca potentes soluciones de IA con interfaces fáciles de usar, flujos de trabajo y acceso a API y SDK estándar de la industria.

Explore watsonx.ai Reserve una demostración en vivo
Notas de pie de página

Todos los enlaces son externos a IBM.com. 
1. “Energy-Based Self-Supervised Learning,” Yann LeCun (consultado a través de UCLA), 19 de noviembre de 2019
2. “CHARM: An Efficient Algorithm for Closed Itemset Mining,” Proceedings of the 2002 SIAM International Conference on Data Mining
3. “Online Association Rule Mining,” Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, 1 de junio de 1999
4. “Semi-Supervised Learning with Ladder Networks,” arXiv, 24 de noviembre de 2015
5. “Kolmogorov’s Mapping Neural Network Existence Theorem,” Proceedings of the IEEE First International Conference on Neural Networks (consultado a través de University of Waterloo)1987
6. “Multilayer Feedforward Networks with a Non-Polynomial Activation Function Can Approximate Any Function,” Center for Research on Information Systems (New York University), marzo de 1992