¿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 a aplicar 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 deep learning de vanguardia.

Los términos "algoritmo" y "modelo" se utilizan a menudo indistintamente, pero representan conceptos distintos (aunque relacionados). El algoritmo es un término genérico para un proceso gradual, 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 intervención humana adicional.

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 real. Comprende no solo la forma en la que el modelo asigna una entrada a su resultado correspondiente, sino también el proceso de optimización de las predicciones del modelo para "ajustar" un conjunto de datos 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 (ML) 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 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 machine learning puede utilizarse 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 implícitamente de la experiencia. 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 programe manual y explícitamente la lógica de toma de decisiones del modelo. En las últimas décadas, los sistemas de machine learning 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 machine learning implícito basado en datos es intrínsecamente 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 machine learning 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 funcionará bien con datos nuevos que no haya visto en el entrenamiento. El objetivo final del machine learning es la generalización, la traducción del rendimiento de los datos de entrenamiento en datos nuevos e invisibles. Un enfoque miope en el entrenamiento en sí mismo conlleva el riesgo de sobreajuste, un fenómeno en el que el conocimiento de un modelo se adapta tan completamente a los patrones de sus datos de entrenamiento que no puede generalizarse, lo que da como resultado un modelo que destaca en el entrenamiento pero falla en escenarios del mundo real.

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

Las últimas tendencias en IA, presentadas por expertos

Obtenga conocimientos organizados 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! Está suscrito.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. 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 machine learning

Los algoritmos de machine learning 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 el output "correcto" 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 (el output "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 suele (pero no siempre) presentarse 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] .

  • 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 deban compararse 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 obtendrá la mayor recompensa. El aprendizaje por refuerzo se adapta bien a escenarios que no implican la existencia de ninguna verdad fundamental singular, pero sí implican las acciones "buenas" (que deben recompensarse) y las acciones "malas" (que deben penalizarse). Mientras que el objetivo de los algoritmos de aprendizaje supervisado es optimizar los parámetros de forma que se minimice el error, el objetivo de los algoritmos de aprendizaje por refuerzo es optimizar los parámetros del modelo de forma que se 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 puede entrenarse con más de un tipo de algoritmo de machine learning. Por ejemplo, los modelos de lenguaje de gran tamaño (LLM) suelen someterse a su entrenamiento inicial ("preentrenamiento") a través del aprendizaje autosupervisado, pero luego se ajustan mediante algoritmos de aprendizaje supervisado convencionales 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 machine learning no son universales: 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, pensemos en la pizza: un "algoritmo" básico para hacer pizza podría definirse como echar salsa de tomate encima de una masa circular, colocar queso mozzarella encima de esa salsa y hornearla en un horno, pero hay un número casi infinito de 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

Descifrar 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 bullicio de la IA para ofrecerle las últimas noticias y conocimientos al respecto.

Algoritmos de aprendizaje supervisado

El objetivo formal de cualquier algoritmo de machine learning supervisado es optimizar los parámetros del modelo de forma que se minimice el resultado de una función de pérdida que mide la divergencia ("pérdida") entre el resultado previsto por un modelo para cada entrada y el resultado real para cada una de esas entradas.

En el aprendizaje supervisado convencional, esa verdad básica la proporcionan los datos etiquetados. Por ejemplo, entrenar un modelo que detecte correos electrónicos no deseados generalmente requiere que un anotador humano revise manualmente 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. Dado 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, a menudo se define simplemente como el machine learning que utiliza datos etiquetados.

Pero algunos casos, especialmente en el deep learning moderno, requieren conjuntos de datos tan grandes y puntos de datos tan complejos que obtener suficientes datos de entrenamiento etiquetados se vuelve prohibitivo en 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 de forma más amplia como métodos de machine learning que implican cierta verdad fundamental (o "señal de supervisión") hacia la que optimizar y cierta 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 el análisis de series temporales, la previsión, la fijación de precios y la 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 utilizar la regresión para predecir la probabilidad de que un punto de datos determinado pertenezca a cada categoría potencial, y luego dar como resultado la categoría con la probabilidad más alta.

Algoritmos de regresión comunes

  • La regresión lineal se encuentra entre los algoritmos básicos y ampliamente utilizados de machine learning. Los algoritmos de regresión lineal calculan un resultado (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 vistos en el entrenamiento. Existe una amplia gama de variantes y extensiones de la regresión lineal que utilizan una lógica similar para modelar relaciones matemáticamente más variadas entre variables dependientes e independientes, como la regresión polinomial (que modela relaciones no lineales y curvas) o la regresión cuantil (que modela relaciones en puntos específicos de la distribución de un conjunto de datos).

  • Los algoritmos de árbol de decisión llegan a predicciones finales de salida a través de una secuencia ramificada de decisiones "si-entonces-si no" que se pueden visualizar como un diagrama en forma de á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 supervisado, el objetivo del algoritmo no es optimizar sus predicciones de salida minimizando una única función de pérdida global, sino optimizar el poder predictivo de cada nodo individual del árbol.

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

Algoritmos de clasificación comunes

  • Los clasificadores Naïve Bayes operan según 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) puede utilizarse 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 puede interpretarse como la probabilidad de que se produzca un suceso determinado (en este caso, una clasificación específica).

  • Los algoritmos de K-vecino más cercano (KNN) clasifican los puntos de datos en función de su proximidad en el espacio de embedding vectorial a otros puntos de datos ya clasificados, es decir, etiquetados, con la suposición de que se pueden encontrar puntos de datos similares cerca unos de otros. 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á de acuerdo con 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 una clasificación binaria, pero que también pueden adaptarse para problemas de clasificación multiclase. El objetivo de un algoritmo SVM no es aprender directamente a categorizar los 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 caen. 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 respaldar 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, los embeddings vectoriales de esos puntos de datos adyacentes al límite se denominan vectores de soporte.

Algoritmos de aprendizaje autosupervisado

El objetivo de los algoritmos de aprendizaje autosupervisado es realizar un aprendizaje supervisado sin necesidad de 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 les proporciona otra información sobre ese punto de datos. Yann LeCun explicó el objetivo de estos métodos en términos sencillos: "finja que hay una parte de la entrada que no conoce y haga una predicción" 1 . Por ejemplo:

  • Predice cualquier parte de la entrada a partir de cualquier otra parte
  • Predice el futuro a partir del pasado
  • Predice lo enmascarado a partir de lo visible
  • Predice cualquier pieza ocluida a partir de todas las piezas disponibles

Los modelos entrenados mediante autopredicción suelen ser generativos, en lugar de discriminativos. Algunos ejemplos destacados de modelos de machine learning entrenados que utilizan algoritmos de autopredicción son los autocodificadores y los modelos de lenguaje de gran tamaño (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 básica.

Aprendizaje contrastivo

Los algoritmos de aprendizaje contrastivo proporcionan a los modelos múltiples muestras de datos y les asignan la tarea de predecir en qué medida son diferentes (o similares). 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, volteo, ruido, filtrado y coloraciones.

El aprendizaje contrastivo se utiliza de forma 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 la IA multimodal: por ejemplo, puede ayudar a un modelo a aprender a "traducir" embeddings 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 a generar, o del 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 en los que no se conoce de antemano el resultado ideal.

Estos objetivos no se rigen por ninguna verdad básica predefinida o estructura de recompensa, por lo tanto, "no supervisados". Por lo tanto, los algoritmos de aprendizaje no supervisado no implican funciones de pérdida, ya que sus tareas no conllevan un resultado ideal conocido con el que comparar 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 clustering, algoritmos de asociación y algoritmos de reducción de dimensionalidad.

Algoritmos de clustering

Los algoritmos de clustering 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 por la detección de los clústeres en los que deben clasificarse todos los puntos de datos e identificando cuándo un valor atípico no encaja perfectamente en ninguno de esos clústeres.

  • Los algoritmos de clustering de K medias dividen los datos en k clústeres en un punto de datos determinado que se asignará al clúster cuyo centro (centroide) se acerque. 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. A continuación, 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 según el centroide más cercano, y la posición de cada centroide se ajusta de nuevo. 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 clustering "suave". Un GMM supone que un conjunto de datos es una mezcla de múltiples distribuciones gaussianas, es decir, clásicas distribuciones "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 (en concreto, la media, la varianza y el peso de cada distribución) que mejor se ajustan al conjunto de datos de entrenamiento.
  • DBSCAN (Density-Based Spatial Clustering Aplicaciones 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 dentro de un radio especificado. A diferencia de k medias, DBSCAN puede encontrar clústeres de forma arbitraria 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. Aunque 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 conjuntos de elementos (DIC) es un método de asociación más eficiente desde el punto de vista informático, aunque funciona mediante 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 solo con 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 Minería de reglas de asociación cerrada; los autores del artículo de CHARM señalan que "la H no hace referencia a nada")2 y CARMA (Algoritmo de minería de reglas de asociación continua)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 una representación más eficiente de ese punto de datos. Más concretamente, están diseñados para aprender a asignar puntos de datos de alta dimensión a un espacio en el que puedan describirse con precisión utilizando menos características: en otras palabras, para reducir el número de dimensiones necesarias para representar los datos de forma eficaz.

La reducción de la dimensionalidad se realiza a menudo como un paso de preprocesamiento de datos, lo que ayuda a reducir la complejidad y el ruido de 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 la dimensionalidad incluyen la compresión de datos 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.

  • El embedding estocástico 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 alta dimensión permanezcan cerca entre sí en el nuevo espacio de menor dimensión.

  • Los autocodificadores son un tipo de arquitectura de red neuronal codificadora-decodificadora entrenada a través de lo que podría considerarse más comúnmente un algoritmo de aprendizaje autosupervisado (en el sentido de que su objetivo es minimizar una función de pérdida), pero realizan una reducción de la dimensionalidad de los datos no etiquetados, en este caso modelando su espacio latente. El codificador consta de 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, se encarga 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 semisupervisados

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 está entrenando 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 se clasifican generalmente como transductivos, inductivos o intrínsecamente 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 gráficos que infiere "pseudoetiquetas" para datos no etiquetados "propagando" etiquetas conocidas al punto de datos que se encuentra en los nodos vecinos del gráfico.

  • 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, el modelo tiene la tarea de hacer predicciones probabilísticas sobre puntos de datos no etiquetados; solo se aceptan las predicciones por encima de un determinado umbral de confianza. El coentrenamiento amplía el autoentrenamiento con el aprendizaje por conjuntos, entrenando a diferentes tipos de alumnos de base en diferentes características de los datos. Los métodos declúster-si-etiqueta realizan una agrupación no supervisada en todos los puntos de datos disponibles y, a continuación, 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 en escalera4 o las máquinas de vectores de soporte semisupervisadas (S3VM)5 están diseñados intrínsecamente para el aprendizaje semisupervisado (mientras que los métodos transductivos e inductivos se adaptan o añaden 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 un resultado "correcto" singular, pero hay 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 especialmente amplio, abierto o difícil de definir. En la jerga de RL, la entidad que se entrena suele denominarse "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 holísticamente a través de prueba y error. Esa señal de recompensa puede proceder de una función de recompensa, un modelo de recompensa entrenado por separado o un sistema de recompensa basado en reglas.

Los algoritmos 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 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 sobre lo "bueno" que es cada estado (normalmente basada en la recompensa potencial por las acciones que se pueden realizar desde ese estado) y, a continuación, elige las acciones que conducen a acciones de mayor valor. estados. 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

  • La optimización de políticas proximales (PPO) es un método basado en políticas que se utiliza principalmente en el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF)
    Entre los métodos actor-crítico se encuentran el actor-crítico de ventaja (A2C) y sus derivados, que utilizan una combinación de métodos basados en valores y en 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 por conjunto 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 fiable de lo que sería posible mediante cualquiera de sus algoritmos constituyentes por sí solo.

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

Boosting

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

  • El boosting adaptativo (AdaBoost) da más peso a los casos que fueron clasificados erróneamente por el modelo anterior, lo que garantiza que las actualizaciones del modelo posterior prioricen la mejora del rendimiento en esos ejemplos de entrenamiento. La predicción final está determinada por el voto de la mayoría ponderada y los modelos posteriores, más precisos, tienen más influencia sobre la output final.

  • El boosting de gradiente se centra en los errores cometidos por los alumnos anteriores, en lugar de en los puntos de datos en los que se equivocaron los modelos anteriores. Más concretamente, 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, revertir ingeniería 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 boosting de gradiente.

Bagging

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

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

Stacking

Los algoritmos de stacking combinan predicciones de múltiples aprendices básicos, cada uno de los cuales suele especializarse en un tipo concreto de predicción, y luego entrenan un "metamodelo" final a partir de los resultados de estos modelos básicos para aprender a combinar mejor sus predicciones y obtener un resultado final más preciso y sólido.

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

Algoritmos de deep learning

El deep learning es un subconjunto del machine learning definido por el uso de redes neuronales artificiales multicapa, normalmente entrenadas mediante aprendizaje supervisado sobre datos etiquetados o (como suele ser el caso de los modelos de IA generativa en particular) mediante aprendizaje autosupervisado sobre datos no etiquetados. En el aprendizaje por refuerzo profundo, una red neuronal profunda sirve como política de un agente RL. El deep learning ha impulsado la mayoría de los avances más avanzados en inteligencia artificial desde principios de la década de 2010. Entre sus puntos fuertes 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 del machine learning "tradicional", los modelos de deep learning comprenden muchas capas interconectadas de "neuronas" (o "nodos"), cada una de las cuales realiza 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 los resultados 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 del modelo. Crucialmente, 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 deep learning 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 deep learning lo que proporciona su increíble potencia y versatilidad. Imagine el entrenamiento de 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 única línea (o curva), los algoritmos de deep learning pueden juntar un número arbitrario de líneas más pequeñas y ajustables individualmente para formar la forma deseada. Las redes neuronales son aproximadores universales: se ha demostrado teóricamente que para cualquier función, existe una disposición de red neuronal que puede reproducirla6.

Arquitecturas vs. algoritmos

  • En el contexto del deep learning, los tipos de modelos específicos suelen denominarse "arquitecturas", un concepto relacionado con los algoritmos, pero distinto de ellos.

  • Una arquitectura de redes neuronales se refiere a su diseño: el número y tamaño de las capas; el uso de capas especializadas; la elección de las funciones de activación. La misma arquitectura de redes neuronales 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 deep learning comprende no solo la arquitectura de redes neuronales utilizada para un modelo, sino también la tarea para la que se está entrenando y los pasos dados para optimizarla para esa tarea.

Consideremos los autoencodificadores: desde el punto de vista de la arquitectura, un autoencodificador es un modelo codificador-decodificador: su red codificadora presenta capas cada vez más pequeñas, mientras que su red decodificadora presenta capas cada vez 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 las capas convolucionales progresivas más pequeñas reducen la muestra de los datos para aislar y segmentar las características clave, seguidas de capas progresivamente más grandes que aumentan la muestra 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 e implemente IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de nueva generación para desarrolladores de IA. Cree 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 líder en IA del sector de IBM y junto a su cartera de soluciones.

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

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

Explore los servicios de IA
Dé el siguiente paso

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

Explore watsonx.ai Solicite una demostración en directo
Notas a pie de página

Todos los enlaces son externos a IBM.com. 
1. “Energy-Based Self-Supervised Learning,” Yann LeCun (a través de la 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 November 2015
5. “Kolmogorov’s Mapping Neural Network Existence Theorem,” Proceedings of the IEEE First International Conference on Neural Networks (a través de la Universidad de 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