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.
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.
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.
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.
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.
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.
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.
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.
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:
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 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).
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.
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.
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.
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 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 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:
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.
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.
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.
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".
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.
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.
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.
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.
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.
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