Mi IBM Inicie sesión Suscríbase

¿Qué es una función de pérdida?

12 de julio de 2024

Autores

Dave Bergmann

Senior Writer, AI Models

IBM

Cole Stryker

Editorial Lead, AI Models

Gather

¿Qué es una función de pérdida?

En machine learning (ML), se utiliza una función de pérdida para medir el rendimiento del modelo calculando la desviación de las predicciones de un modelo con respecto a las predicciones correctas de "verdad fundamental". La optimización de un modelo implica ajustar sus parámetros para minimizar la obtención de alguna función de pérdida.

Una función de pérdida es un tipo de función objetivo, que en el contexto de la ciencia de datos se refiere a cualquier función cuya minimización o maximización representa el objetivo del entrenamiento del modelo. El término "función de pérdida", que suele ser sinónimo de función de coste o función de error, hace referencia específicamente a situaciones en las que la minimización es el objetivo del entrenamiento para un modelo de machine learning.

En términos simples, una función de pérdida rastrea el grado de error en los resultados de un modelo de inteligencia artificial (IA) . Lo hace cuantificando la diferencia ("pérdida") entre un valor previsto, es decir, el resultado del modelo, para una entrada determinada y el valor real o verdad fundamental. Si las predicciones de un modelo son precisas, la pérdida es pequeña. Si sus predicciones son inexactas, la pérdida es grande.

El objetivo fundamental del machine learning es entrenar modelos para generar buenas predicciones. Las funciones de pérdida nos permiten definir y perseguir ese objetivo matemáticamente. Durante el entrenamiento, los modelos "aprenden" a generar mejores predicciones ajustando los parámetros de forma que se reduzcan las pérdidas. Un modelo de machine learning se ha entrenado lo suficiente cuando la pérdida se ha minimizado por debajo de un umbral predeterminado.

Diseño 3D de bolas rodando por un circuito

Las últimas noticias + conocimientos de IA 


Descubra ideas y noticias de expertos sobre IA, nube y mucho más en el boletín semanal Think. 

¿Cómo funcionan las funciones de pérdida?

En una configuración de entrenamiento típica, un modelo hace predicciones sobre un lote de puntos de datos de muestra extraídos del conjunto de datos de entrenamiento y una función de pérdida mide el error promedio para cada ejemplo. Esta información se utiliza para optimizar los parámetros del modelo.

Las funciones de pérdida son propias del aprendizaje supervisado, cuyas tareas de entrenamiento suponen la existencia de una respuesta correcta: la verdad fundamental. Los algoritmos de aprendizaje no supervisado convencionales, como la agrupación o la asociación, no implican respuestas "correctas" o "incorrectas", ya que únicamente buscan descubrir patrones intrínsecos en datos no etiquetados.

El aprendizaje supervisado requiere conjuntos de datos etiquetados en los que las anotaciones manuales proporcionan información básica para cada muestra de entrenamiento. Por ejemplo, los modelos de segmentación de imágenes requieren muestras de entrenamiento con cada píxel anotado según su clase correcta. En el aprendizaje autosupervisado, que enmascara o transforma partes de muestras de datos no etiquetadas y encarga a los modelos su reconstrucción, la propia muestra original sirve como verdad fundamental.

Funciones de pérdida y optimización de modelos

Las funciones de pérdida no son simplemente métricas de evaluación. Su propósito explícito no es solo medir el éxito del modelo, sino también servir como entrada para un algoritmo que optimiza los parámetros del modelo para minimizar la pérdida.

Los algoritmos de optimización, como el descenso de gradiente, normalmente utilizan el gradiente de la función de pérdida. El gradiente es la derivada de una función con múltiples variables. Esencialmente, una derivada describe la tasa y la cantidad en las que cambia la salida de una función en cualquier punto. Por lo tanto, es importante que las funciones de pérdida sean diferenciables: en otras palabras, que tengan una derivada en todos los puntos.

Los modelos de machine learning aprenden a hacer predicciones precisas mediante ajustes en ciertos parámetros del modelo. Por ejemplo, un algoritmo de regresión lineal simple modela los datos con la función y = wx+b, donde y es la salida del modelo, x es la entrada, w es una ponderación y b es un sesgo. El modelo aprende actualizando los términos de ponderación y sesgo hasta que la función de pérdida se ha minimizado lo suficiente.

Utilizando el gradiente de la función de pérdida, los algoritmos de optimización determinan en qué dirección "escalonar" los parámetros del modelo para moverse hacia abajo en el gradiente y así reducir la pérdida.

Funciones de pérdida en deep learning

Los modelos de deep learning emplean grandes redes neuronales artificiales, que comprenden capas de neuronas interconectadas, cada una de las cuales tiene su propia función de activación no lineal, en lugar de depender de una función singular. Para diferenciar toda la red es necesario calcular las derivadas parciales de cientos, miles o incluso millones de variables y funciones de activación separadas con respecto a las demás.

 Para ello, las redes neuronales utilizan la retropropagación para encontrar el gradiente de la función de pérdida después de un pase hacia adelante que termina con una predicción en un punto de datos del conjunto de datos de entrenamiento. Abreviatura de propagación hacia atrás del error, la retropropagación comienza con la salida de la función de pérdida. En un paso hacia atrás a través de la red desde la capa de salida a la capa de entrada, la retropropagación utiliza la regla de la cadena para calcular cómo cada ponderación y sesgo individuales en la red contribuyeron a la pérdida general.

Los algoritmos de descenso de gradiente pueden usar el gradiente resultante de derivadas parciales para toda la red para actualizar iterativamente las ponderaciones de la red hasta que la pérdida se haya minimizado lo suficiente.

Regularización

Aunque los modelos se entrenan y validan realizando predicciones sobre un conjunto de datos de entrenamiento, obtener buenos resultados en los ejemplos de entrenamiento no es el objetivo final. El verdadero objetivo del machine learning es entrenar modelos que generalicen bien en nuevos ejemplos.

Confiar únicamente en la minimización de una función de pérdida singular se denomina "minimización empírica del riesgo". Si bien tiene un atractivo obvio y simple, corre el riesgo de que un modelo sobreajuste los datos de entrenamiento y, por lo tanto, se generalice de manera deficiente. Para reducir este riesgo, entre otros propósitos, muchos algoritmos y arquitecturas introducen términos de regularización que modifican la función de pérdida primaria.

Por ejemplo, el error absoluto medio (MAE), que en este contexto se denomina regularización L1, se puede utilizar para reforzar la dispersión penalizando el número de neuronas activadas en una red neuronal o la magnitud de su activación.

Mixture of Experts | Pódcast

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.

Tipos de funciones de pérdida

Existe una amplia variedad de funciones de pérdida diferentes, cada una adecuada a diferentes objetivos, tipos de datos y prioridades. En el nivel más alto, las funciones de pérdida más utilizadas se dividen en funciones de pérdida de regresión y funciones de pérdida de clasificación.

  • Las funciones de pérdida de regresión miden los errores en las predicciones que implican valores continuos. Aunque se aplican de forma más intuitiva a los modelos que estiman directamente conceptos cuantificables como el precio, la antigüedad, el tamaño o el tiempo, la regresión tiene una amplia gama de aplicaciones. Por ejemplo, una función de pérdida de regresión puede utilizarse para optimizar un modelo de imagen cuya tarea consiste en estimar el valor de color de los píxeles individuales.

  • Las funciones de pérdida de clasificación miden los errores en las predicciones que implican valores discretos, como la categoría a la que pertenece un punto de datos o si un correo electrónico es spam o no. Los tipos de pérdida de clasificación se pueden subdividir en los adecuados para la clasificación binaria y los adecuados para la clasificación multiclase.

Elegir la función de pérdida adecuada

La selección de cualquier función de pérdida dentro de esas dos amplias categorías debe depender de la naturaleza del caso de uso. Algunos algoritmos de machine learning requieren una función de pérdida específica acorde con su estructura matemática, pero para la mayoría de las arquitecturas de modelos existen, al menos teóricamente, múltiples opciones.

Las diferentes funciones de pérdida priorizan diferentes tipos de error. Por ejemplo, algunas podrían penalizar duramente los valores atípicos, mientras que otras controlan las variaciones menores. Algunas proporcionan una mayor precisión, pero a expensas de un cálculo más complejo y, por lo tanto, más tiempo y recursos computacionales para el cálculo

En última instancia, la elección de una función de pérdida debe reflejar la tarea de aprendizaje específica, la naturaleza de los datos que analiza el modelo, los tipos de imprecisiones que serán más costosas y los recursos computacionales disponibles.

Funciones de pérdida de regresión

Los problemas de regresión, como la regresión lineal o la regresión polinomial, generan valores continuos determinando la relación entre una o más variables independientes (x) y una variable dependiente (y): conocida x, predecir el valor de y. Por lo tanto, la pérdida de regresión debe ser sensible no solo a si una salida es incorrecta, sino también al grado en que diverge de la verdad fundamental.

Error cuadrático medio (MSE)

La función de pérdida de error cuadrático medio, también llamada pérdida L2 o pérdida cuadrática, suele ser la función predeterminada para la mayoría de los algoritmos de regresión. Como su nombre indica, el MSE se calcula como la media de las diferencias al cuadrado entre el valor previsto y el valor real en todos los ejemplos de entrenamiento. La fórmula para calcular el MSE a través de n puntos de datos se escribe como  1n∑i=1n(yi-yi^)2, en la que y es el valor verdadero e ŷ es el valor predicho.

Elevar el error al cuadrado significa que el valor resultante es siempre positivo: como tal, el MSE evalúa sólo la magnitud del error y no su dirección. Elevar el error al cuadrado también da a los grandes errores un impacto desproporcionadamente fuerte en la pérdida global, lo que castiga fuertemente a los valores atípicos e incentiva al modelo a reducirlos. Por tanto, el MSE es adecuado cuando se supone que las salidas objetivo tienen una distribución normal (gaussiana).

El MSE siempre es diferenciable, lo que lo hace práctico para optimizar los modelos de regresión mediante el descenso de gradiente.

Error logarítmico cuadrático medio (MSLE)

Para los problemas de regresión en los que las salidas objetivo tienen una gama muy amplia de valores potenciales, como los que implican un crecimiento exponencial, una penalización fuerte de los errores grandes podría ser contraproducente. El error logarítmico cuadrático medio (MSLE) compensa este problema al promediar los cuadrados del logaritmo natural de las diferencias entre los valores predichos y los valores medios. Sin embargo, cabe destacar que el MSLE asigna una mayor penalización a las predicciones demasiado bajas que a las demasiado altas.

La fórmula para MSLE se escribe como 1n∑i=1n(loge(1+yi)-loge(1+yi^))2

Error cuadrático medio (RMSE)

El error cuadrático medio es la raíz cuadrada del MSE, por lo que está estrechamente relacionado con la fórmula de las desviaciones típicas. En concreto, el RMSE se calcula como

i=1N(yi-yi^)2N .

Por lo tanto, el RMSE refleja en gran medida las cualidades del MSE en términos de sensibilidad a los valores atípicos, pero es más fácil de interpretar porque expresa la pérdida en las mismas unidades que el propio valor de salida. Este beneficio se ve algo atenuado por el hecho de que el cálculo de RSME requiere otro paso en comparación con el cálculo de MSE, lo que aumenta los costes de cálculo.

Error medio absoluto (MAE)

El error medio absoluto o pérdida L1 mide la diferencia absoluta media entre el valor previsto y el valor real. Al igual que el MSE, el MAE siempre es positivo y no distingue entre estimaciones demasiado altas o demasiado bajas. Se calcula como la suma del valor absoluto de todos los errores dividido por el tamaño de la muestra:  1Ni=1N|yi-yi^|

Dado que no eleva al cuadrado cada valor de pérdida, el MAE es más resistente a los valores atípicos que el MSE. Por lo tanto, el MAE es ideal cuando los datos pueden contener algunos valores extremos que no deberían afectar demasiado al modelo. La pérdida de L1 también penaliza más los pequeños errores que la pérdida de L2.

La función de pérdida del MAE no es diferenciable en los casos en los que la salida prevista coincide con la salida real. Por lo tanto, el MAE requiere más pasos intermedios durante la optimización.

Pérdida de Huber

La pérdida de Huber, también llamada pérdida suave de L1, tiene como objetivo equilibrar las fortalezas del MAE y el MSE. Incorpora un hiperparámetro ajustable, δ, que actúa como punto de transición: para valores de pérdida inferiores o iguales a δ, la pérdida de Huber es cuadrática (como el MSE); para valores de pérdida superiores a δ, la pérdida de Huber es lineal (como el MAE).

 Lδ={12(y-y^)2if|(y-y^)|<δδ(|(y-y^)|-12δ)othErwisE

Por lo tanto, la pérdida de Huber ofrece una función totalmente diferenciable con la robustez del MAE frente a valores atípicos y la facilidad de optimización del MSE a través del descenso de gradiente. La transición del comportamiento cuadrático al lineal en δ también da como resultado una optimización menos propensa a problemas como la desaparición o explosión de gradientes en comparación con la pérdida del MSE.

Estos beneficios se ven atenuados por la necesidad de definir cuidadosamente δ, lo que añade complejidad al desarrollo del modelo. La pérdida de Huber es más apropiada cuando ni el MSE ni el MAE pueden arrojar resultados satisfactorios, como cuando un modelo debe ser robusto a los valores atípicos pero aún así penalizar severamente los valores extremos que están más allá de un umbral específico.

Funciones de pérdida de clasificación

Los problemas de clasificación, y las funciones de pérdida utilizadas para optimizar los modelos que los resuelven, se dividen en clasificación binaria , por ejemplo, "spam" o "no spam", "aprobar" o "rechazar", o clasificación multiclase .

Los problemas de clasificación multiclase pueden abordarse de dos maneras. Un enfoque consiste en calcular la probabilidad relativa de que un punto de datos pertenezca a cada categoría potencial y, a continuación, seleccionar la categoría a la que se le asigna la probabilidad más alta. Este enfoque suele emplearse en redes neuronales, utilizando una función de activación softmax para neuronas en la capa de salida. El enfoque alternativo consiste en dividir el problema en una serie de problemas de clasificación binaria.

Funciones de pérdida de entropía cruzada

En la mayoría de los casos, la pérdida de clasificación se calcula en términos de entropía. La entropía, en lenguaje sencillo, es una medida de incertidumbre dentro de un sistema. Para ver un ejemplo intuitivo, compare lanzar monedas con lanzar dados: el primero tiene una entropía más baja, ya que hay menos resultados potenciales en un lanzamiento de moneda (2) que en un lanzamiento de dados (6).

En el aprendizaje supervisado, las predicciones de los modelos se comparan con las clasificaciones de verdad fundamental que proporcionan las etiquetas de datos. Esas etiquetas de verdad fundamental son seguras y, por lo tanto, tienen una entropía baja o nula. Como tal, podemos medir la pérdida en términos de la diferencia de certeza que tendríamos al utilizar las etiquetas de verdad fundamental con la certeza de las etiquetas pronosticadas por el modelo.

La fórmula para la pérdida de entropía cruzada (CEL) se deriva de la de la divergencia de Kullback-Leibler (KL divergence), que mide la diferencia entre dos distribuciones de probabilidad. En última instancia, minimizar la pérdida implica minimizar la diferencia entre la distribución real de las probabilidades asignadas a cada etiqueta potencial y las probabilidades relativas para cada etiqueta prevista por el modelo.

Entropía cruzada binaria (pérdida logarítmica)

La pérdida de entropía cruzada binaria, también llamada pérdida logarítmica, se utiliza para la clasificación binaria. Los algoritmos de clasificación binaria suelen arrojar un valor de probabilidad entre 0 y 1. Por ejemplo, en un modelo de detección de spam de correo electrónico, las entradas de correo electrónico que den lugar a salidas más cercanas a 1 podrían etiquetarse como "spam". Las entradas que produzcan salidas más cercanas a 0 se clasificarían como "no spam". Un resultado de 0,5 indicaría la máxima incertidumbre o entropía.

Aunque el algoritmo genere valores entre 0 y 1, los valores reales para las predicciones correctas son exactamente "0" o "1". Por lo tanto, minimizar la pérdida de entropía cruzada binaria implica no solo penalizar las predicciones incorrectas, sino también penalizar las predicciones con baja certeza. Esto incentiva al modelo a aprender parámetros que produzcan predicciones que no solo sean correctas sino también seguras. Además, centrarse en los logaritmos de los valores de probabilidad previstos hace que el algoritmo penalice más las predicciones que están confiada y equivocadamente.

Para mantener la convención común de valores de pérdida más bajos que significan menos errores, el resultado se multiplica por -1. La pérdida logarítmica para un solo ejemplo i se calcula como –(yi·log(p(yi))+(1-yi)·log(1-p(yi))) , donde yi es la verdadera probabilidad, ya sea 0 o 1, y p(yi) es la probabilidad predicha. Por lo tanto, la pérdida promedio en un conjunto completo de n ejemplos de entrenamiento se calcula como –1n∑i=1nyi·log(p(yi))+(1-yi)·log(1-p(yi)) .

Pérdida de entropía cruzada categórica

La pérdida de entropía cruzada categórica (CCEL) aplica este mismo principio a la clasificación multiclase. Un modelo de clasificación multiclase suele generar un valor para cada clase potencial, que representa la probabilidad de que una entrada pertenezca a cada categoría respectiva. En otras palabras, output predicciones como una distribución de probabilidad.

En el deep learning, los clasificadores de redes neuronales suelen utilizar una función de activación softmax para las neuronas de la capa de salida. El valor de cada neurona de salida se asigna a un número entre 0 y 1, y los valores suman colectivamente 1.

Por ejemplo, en un punto de datos que contiene solo una categoría potencial, los valores de verdad básicos para cada predicción comprenden "1" para la clase verdadera y "0" para cada clase incorrecta. Minimizar el CCEL implica aumentar el valor de salida para la clase correcta y disminuir los valores de salida para las clases incorrectas, lo que acerca la distribución de probabilidad a la verdad fundamental. Para cada ejemplo, se debe calcular la pérdida logarítmica para cada clasificación potencial prevista por el modelo.

Pérdida de bisagra

La pérdida de bisagra es una función de pérdida alternativa para problemas de clasificación binaria y es particularmente adecuada para optimizar modelos de máquinas de vectores de soporte (SVM). En concreto, se trata de una función de pérdida eficaz para optimizar un límite de decisión que separa dos clases: los puntos pueden clasificarse posteriormente según en qué lado del límite de decisión se encuentren.

En los algoritmos que utilizan la pérdida de bisagra, el valor de verdad fundamental de cada etiqueta binaria se asigna a {-1, 1} en lugar de a {0,1}. La función de pérdida de bisagra se define como ℓ(𝑦)=max(0,1−𝑡⋅𝑦), en la que t es la etiqueta verdadera e y es la salida del clasificador. El resultado de esta ecuación siempre es no negativo: si 1− 𝑡 ⋅ 𝑦 es negativo (lo que solo es posible cuando t e y tienen el mismo signo porque el modelo predijo la clase correcta), la pérdida se define en cambio como 0.

Esto ofrece varias posibilidades e incentivos:

  • Cuando las predicciones del modelo son correctas y fiables, es decir, cuando y es el signo correcto e |y| ≥ 1, el valor de 1–t⋅𝑦 será negativo y, por lo tanto, = 0.

  • Cuando las predicciones del modelo son correctas, pero no seguras, es decir, cuando y es el signo correcto, pero |y| < 1, el valor de será positivo, entre 0 y 1. Esto desincentiva las predicciones poco fiables.

  • Cuando las predicciones del modelo son incorrectas, es decir, cuando y tiene el signo incorrecto, el valor de será mayor que 1 y aumentará linealmente con el valor de|y|. Esto desincentiva fuertemente las predicciones incorrectas.

Funciones de pérdida especializadas

Algunas arquitecturas modelo, especialmente las que se utilizan en el deep learning, emplean aparentemente funciones de pérdida únicas y especializadas. Aunque estas funciones objetivas son únicas en términos de contexto y lógica, a menudo, pero no siempre, se reducen a la aplicación especializada de una función de pérdida común a un objetivo de entrenamiento específico.

Por ejemplo:

  • Los autocodificadores son modelos no supervisados que aprenden a codificar de manera eficiente una representación comprimida de los datos de entrada exprimiendo dichos datos a través de un "cuello de botella" y luego utilizando esa representación comprimida para reconstruir la entrada original. Los autocodificadores aprenden minimizando la pérdida de reconstrucción: la diferencia entre la entrada original y la reconstruida, normalmente calculada a través del error cuadrático medio (MSE). Los autocodificadores variacionales incorporan la divergencia KL como término de regularización.
     

  • Los modelos de detección de objetos minimizan dos tipos de pérdida: regresión del cuadro delimitador y pérdida de entropía cruzada. El primero emplea el MSE, el MAE o una pérdida especializada como la intersección sobre la unión (IoU) para comparar las coordenadas del cuadro delimitador previsto con las de la verdad fundamental. Este último mide la clasificación del objeto en sí.
     

  • El aprendizaje contrastivo, una forma de aprendizaje autosupervisado, entrena un modelo para generar incrustaciones vectoriales similares para puntos de datos similares. Su objetivo es reducir la pérdida de contraste o variantes especializadas como la pérdida de tripletes.

Soluciones relacionadas

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 al servicio de su negocio con la experiencia líder del sector y la cartera de soluciones de IA de IBM.

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