Der Protokollverlust hat die nette Eigenschaft, dass es sich um eine differenzierbare Funktion handelt. Die Genauigkeit ist möglicherweise wichtiger und definitiv interpretierbarer, kann jedoch aufgrund des Backpropagation-Algorithmus, bei dem die Verlustfunktion differenzierbar sein muss, nicht direkt für das Training des Netzwerks verwendet werden. Wenn Ihr bevorzugter Verlust nicht direkt optimierbar ist (wie die Genauigkeit), verwenden Sie eine Verlustfunktion, die sich ähnlich verhält wie der Proxy der wahren Metrik. Im Falle einer binären Klassifizierung würden Sie am Ende ein Sigmoid und einen Protokollverlust verwenden, um die Genauigkeit zu approximieren. Sie sind stark korreliert.
show_accuracy
Parameter auf True gesetzt ist (wie bei der Anpassung oder bei der Auswertung). Ist das korrekt?def your_own_metric(y_true, y_pred)
Funktion und übergebe sie anmodel.compile(..., metrics=[your_own_metric])