Читать книгу Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow - Aurélien Géron - Страница 100
Formel 3-3: F1
ОглавлениеDer F1-Score lässt sich mit der Funktion f1_score() berechnen:
>>> from sklearn.metrics import f1_score
>>> f1_score(y_train_5, y_pred)
0.7420962043663375
Der F1-Score begünstigt Klassifikatoren mit ähnlicher Relevanz und Sensitivität. Das ist nicht immer erwünscht: Bei manchen Anwendungen ist Relevanz wichtiger, in anderen ist die Sensitivität von herausragender Bedeutung. Wenn Sie beispielsweise einen Klassifikator trainieren, der für Kinder geeignete Videos erkennt, werden Sie vermutlich einen bevorzugen, der zwar viele gute Videos verwirft (niedrige Sensitivität), aber wirklich nur geeignete anzeigt (hohe Relevanz). Ablehnen werden Sie hingegen den Klassifikator, der zwar eine hohe Sensitivität aufweist, dafür aber ein paar wirklich ungeeignete Videos in Ihrem Produkt anzeigt (in solchen Fällen könnten Sie sogar erwägen, die Videoauswahl des Klassifikators von Hand zu überprüfen). Wenn Sie andererseits Einkaufsdiebstähle auf den Bildern einer Überwachungskamera erkennen möchten, ist es vermutlich in Ordnung, wenn Ihr Klassifikator eine Relevanz von nur 30% erzielt, dafür aber eine Sensitivität von 99% aufweist (das Sicherheitspersonal wird dann einige Fehlalarme erhalten, aber fast alle Diebe werden geschnappt).
Leider können Sie nicht beides haben: Ein Erhöhen der Relevanz senkt die Sensitivität und umgekehrt. Dies nennt man auch die Wechselbeziehung zwischen Relevanz und Sensitivität.