Se usó la API de Cloud Translation para traducir esta página.
Switch to English

tf.keras.losses.Reduction

Ver código fuente en GitHub

Tipos de reducción de pérdidas.

Contiene los siguientes valores:

  • AUTO : Indica que la opción de reducción será determinado por el contexto de uso. Para casi todos los casos el valor predeterminado es SUM_OVER_BATCH_SIZE . Cuando se utiliza con tf.distribute.Strategy , fuera de una función de formación tales como bucles tf.keras compile y fit , se espera que el valor de reducción que debe SUM o NONE . Usando AUTO en ese caso se producirá un error.
  • NONE : Ponderado pérdidas con una dimensión reducida (eje = -1, o eje especificado por la función de pérdida). Cuando este tipo de reducción utilizado con una función de bucles de formación Keras como fit / evaluate , sin reducir la pérdida de vectores se pasa al optimizador pero la pérdida reportada será un valor escalar.
  • SUM : suma escalar de pérdidas ponderadas.
  • SUM_OVER_BATCH_SIZE : Escalar SUM dividido por el número de elementos en pérdidas. No se admite la reducción de este tipo cuando se utiliza con tf.distribute.Strategy fuera de una función de bucles de formación como tf.keras compile / fit .

    Se puede implementar 'SUM_OVER_BATCH_SIZE' con el tamaño de lote mundial como:

 with strategy.scope():
  loss_obj = tf.keras.losses.CategoricalCrossentropy(
      reduction=tf.keras.losses.Reduction.NONE)
  ....
  loss = tf.reduce_sum(loss_object(labels, predictions)) *
      (1. / global_batch_size)
 

Por favor, vea la guía de capacitación personalizada
para más detalles sobre esto.

Métodos

all

Ver fuente

validate

Ver fuente

Las variables de clase

  • AUTO = 'auto'
  • NONE = 'none'
  • SUM = 'sum'
  • SUM_OVER_BATCH_SIZE = 'sum_over_batch_size'