Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

tf.keras.losses.Reduction

Zobacz źródło na GitHub

Rodzaje redukcji strat.

Zawiera następujące wartości:

  • AUTO : Wskazuje, że opcja redukcji zostanie określona przez kontekst użytkowania. Dla prawie wszystkich przypadkach domyślnie na SUM_OVER_BATCH_SIZE . W przypadku korzystania z tf.distribute.Strategy poza wbudowanych szkolenia pętle takich jak tf.keras compile i fit , oczekujemy, wartość redukcji być SUM lub NONE . Korzystanie AUTO w tej sprawie zgłosi błąd.
  • NONE : ważona straty z jednym wymiarze zmniejszona (oś = 1, lub osi określonej przez funkcję strat). Przy tego typu ograniczenie stosowania z wbudowaną pętle szkoleniowych Keras jak fit / evaluate The redukowano strata wektor jest przekazywany do optymalizatora ale poinformował strata będzie wartością skalarną.
  • SUM : Skalar suma ważonych strat.
  • SUM_OVER_BATCH_SIZE : Skalar SUM podzielona przez liczbę elementów w stratach. Tego typu ograniczenie nie jest obsługiwana w przypadku korzystania z tf.distribute.Strategy zewnątrz wbudowaną pętle szkoleniowych jak tf.keras compile / fit .

    Można zaimplementować „SUM_OVER_BATCH_SIZE” za pomocą globalnej wielkości wsadu jak:

 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)
 

Proszę zobaczyć niestandardowy podręcznik szkoleniowy
Więcej szczegółów na ten temat.

metody

all

Pokaż źródło

validate

Pokaż źródło

Zmienne klasy

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