Keras - Unterschied zwischen kategorischer Genauigkeit und sparse_categorical_accuracy

8

Was ist der Unterschied zwischen categorical_accuracy und sparse_categorical_accuracy in Keras? Es gibt keinen Hinweis in der Dokumentation für diese Messwerte , und indem ich Dr. Google frage, habe ich auch keine Antworten dafür gefunden.

Der Quellcode kann hier gefunden werden:

%Vor%     
reindeer 10.06.2017, 19:55
quelle

2 Antworten

5

Betrachten Sie die Quelle

%Vor%

categorical_accuracy überprüft, ob der Index des maximalen wahren Wertes gleich dem Index des maximalen vorhergesagten Wertes ist.

sparse_categorical_accuracy überprüft, ob der maximale wahre Wert gleich dem Index des maximalen vorhergesagten Wertes ist.

Aus Marcins Antwort oben entspricht categorical_accuracy einem one-hot codierten Vektor für y_true .

    
Matti Lyra 11.06.2017, 12:54
quelle
10

Also müssen Sie in categorical_accuracy Ihr Ziel ( y ) als einen einzigen kodierten Vektor angeben (zB bei 3 Klassen, wenn eine wahre Klasse eine zweite Klasse ist, y sollte (0, 1, 0) sein. In sparse_categorical_accuracy sollten Sie nur eine ganze Zahl der wahren Klasse angeben (im Fall des vorherigen Beispiels - es wäre 1 , da die Klassenindexierung 0 -basiert ist).

    
Marcin Możejko 11.06.2017 12:42
quelle