Работает ли tf.keras.metrics.AUC над проблемами нескольких классов? - PullRequest
0 голосов
/ 30 октября 2019

У меня проблема классификации по нескольким классам, и я хочу измерить AUC по данным обучения и тестирования.

tf.keras внедрил метрику AUC (tf.keras.metrics.AUC), но яне сможет понять, можно ли безопасно использовать этот показатель в задачах с несколькими классами. Даже пример «Классификация по несбалансированным данным» на официальной веб-странице посвящен проблеме двоичной классификации.

Я реализовал модель CNN, которая предсказывает шесть классов, имея слой softmax, который дает вероятности всехклассы. Я использовал этот показатель следующим образом:

self.model.compile(loss='categorical_crossentropy',
                       optimizer=Adam(hp.get("learning_rate")),
                       metrics=['accuracy', AUC()]),

, и код был выполнен без проблем. Однако иногда я вижу некоторые странные для меня результаты. Например, модель сообщила о точности 0,78333336 и AUC, равной 0,97327775. Возможно ли это? Может ли модель иметь низкую точность и такой высокий AUC?

Интересно, что, хотя код не дает никакой ошибки, метрика AUC вычисляется неправильно.

Кто-нибудь может подтвердить, поддерживают ли эти метрики проблемы классификации по нескольким классам?

Заранее спасибо,

Оскар

...