Rückgabe der Abgefragten Daten einer Confusion-Matrix mit Sklearn

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
b7w12
User
Beiträge: 2
Registriert: Dienstag 12. April 2022, 12:44

Hallo Zusammen,

Gibt es eine mögliche Methode, welche mir als Rückgabewert sagt, welche Zeilen/Spalten in der Confusion-Matrix berücksichtigt worden sind ?
Ich möchte den Sachverhalt nochmals an einem Beispiel erklären:

Die Confusion-Matrix sei wie folgt:
[2361 55]
[ 373 211]

Nun kenne ich jedoch nur die reine Anzahl für beispielsweise mein TruePositive mit 2361 Einträgen aus meinem Datensatz.
Gibt es nur hier eine Möglichkeit mir durch beispielsweiße ein Array oder einen String ausgeben zu lassen, welche Zeilen/Spalten meines Datensatzes in mein TruePositive mit einfließen?

Die Frage entsteht daraus, dass in meinem Datensatz eine bestimme Zeile für eine Kostenberechnung berücksichtigt werden soll. Ich benötige also jede Spalte die beispielsweise in das TruePositive mit einbezogen wird um eine genaue Kostenberechnung durchzuführen. Die Möglichkeit die Kosten mit einem Mittelwert zu berechnen, ist für diesen Sachverhalt leider ungenügend.

Vielen Dank im Voraus!
Benutzeravatar
ThomasL
User
Beiträge: 1379
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Hi,

du übergibst doch an confusion_matrix deine ground_truth y_true und die Prognose deines Modells y_pred.
Damit hast du ja alles was du brauchst.

Code: Alles auswählen

from sklearn.metrics import confusion_matrix
import numpy as np

y_true = np.array([0, 1, 0, 1, 0])
y_pred = np.array([0, 0, 1, 1, 0])

print(confusion_matrix(y_true, y_pred))

# [[2, 1],
#  [1, 1]]

print(np.where((y_true == 0) & (y_pred == 0)))

# (array([0, 4], dtype=int64),)
In diesem Beispeil haben die beiden TruePositives den Zeilenindex 0 und 4.
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
b7w12
User
Beiträge: 2
Registriert: Dienstag 12. April 2022, 12:44

Hi,

Danke für die Idee. Nach kleinen Anpassungen hat es mein Problem lösen können.
Antworten