binary cross-entropy loss

En tabfunktion, der måler forskellen mellem sandsynligheder for to klasser i binær klassifikation.

Kort fortalt

Binary cross-entropy loss straffer modellen, når den gætter forkert på et ja/nej-spørgsmål, og belønner korrekte gæt.

Kategori
træning
Niveau
øvet
Udtale
ˈbaɪnəri krɒs ˈɛntrəpi lɒs

Betydninger

1
  1. 1

    Måler den gennemsnitlige forskel mellem den sande etiket (0 eller 1) og den forudsagte sandsynlighed for klasse 1.

    • Under træning minimeres binary cross-entropy loss ved hjælp af gradient descent.
    • I et binært klassifikationsproblem giver en perfekt forudsigelse (ŷ = y) en loss på 0.

Hvornår bruges det

Bruges som standard tabfunktion til binære klassifikationsproblemer, f.eks. spamdetektion eller sygdomsdiagnose. Det kombineres typisk med en sigmoid-aktivering i outputlaget.

Formel

L = - (y log(ŷ) + (1 - y) log(1 - ŷ))

Kodeeksempel

def binary_cross_entropy(y_true, y_pred):
    return - (y_true * np.log(y_pred) + (1 - y_true) * np.log(1 - y_pred))

Implementering af binary cross-entropy loss i Python ved hjælp af NumPy.

Oprindelse

Afledt af 'binary' (to klasser), 'cross-entropy' (et mål for divergens mellem to sandsynlighedsfordelinger) og 'loss' (tab).

Kilder

2
  • Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning.
  • Murphy, K. P. (2012). Machine Learning: A Probabilistic Perspective.