Meta tags:
description= AUC-ROC-Kurven in Python mit sklearn berechnen und darstellen. TPR, FPR, Schwellenwerte und wann AUC besser als Genauigkeit ist.;
Headings (most frequently used words):
roc, auc, kurve, was, ist, die, schwellenwert, beispiel, schlüsselbegriffe, tp, fp, tn, fn, mit, scikit, learn, berechnen, mehrere, modelle, vergleichen, einen, betriebspunkt, wählen, vs, andere, metriken, häufige, fallstricke, praktisches, krankheitsvorhersage, verwandte, themen, zusammenfassung, minimales, funktionierendes, darstellen, youdens, statistik, geschäftlich, motivierter,
Text of the page (most frequently used words):
python (58), auc (51), roc (36), die (34), plt (33), import (27), #sklearn (26), der (24), from (23), und (22), fpr (22), tpr (21), ist (20), kurve (19), matplotlib (18), positive (17), random_state (16), lernen (15), das (15), schwellenwert (15), sie (14), roc_curve (14), y_test (14), y_proba (14), roc_auc_score (13), mysql (13), mit (12), x_test (12), model (12), mongodb (12), ein (11), als (11), positiv (11), für (10), einen (10), label (10), x_train (10), y_train (10), logisticregression (10), train_test_split (10), wird (9), man (9), regression (9), fälle (9), was (8), eine (8), bei (8), wie (8), kopieren (8), rate (8), make_classification (8), listen (8), html (7), falsch (7), oder (7), auf (7), color (7), strings (7), elemente (7), alle (6), über (6), beispiel (6), von (6), thresholds (6), sind (6), curve (6), plot (6), clf (6), predict_proba (6), for (6), metrics (6), dem (6), recall (6), negativ (6), string (6), w3docs (5), tools (5), wählen (5), mehrere (5), modelle (5), vergleichen (5), scikit (5), learn (5), labels (5), klassifikator (5), modell (5), kapitel (5), dass (5), random (5), fit (5), test_size (5), model_selection (5), linear_model (5), datasets (5), nicht (5), threshold (5), print (5), the (5), erstellen (5), tutorial (5), tuples (5), methoden (5), formatter (5), json (4), generator (4), verwenden (4), positiven (4), wann (4), zufällig (4), grid (4), konfusionsmatrix (4), datensatz (4), true (4), false (4), name (4), logistic (4), data (4), pyplot (4), kann (4), negative (4), precision (4), klassen (4), zwischen (4), mehr (4), best_idx (4), best (4), n_features (4), 500 (4), n_samples (4), sets (4), tatsächlich (4), dateien (4), entfernen (4), erste (4), schritte (4), dictionaries (4), set (4), listenelemente (4), durchlaufen (4), code (3), encoder (3), editor (3), quizze (3), übungen (3), php (3), javascript (3), css (3), beispiele (3), metriken (3), berechnen (3), gibt (3), zahl (3), den (3), negativen (3), youdens (3), arrays (3), zum (3), darstellen (3), übergeben (3), keine (3), binärer (3), werden (3), search (3), kreuzvalidierung (3), diesem (3), werte (3), show (3), 120 (3), dpi (3), png (3), savefig (3), tight_layout (3), lower (3), right (3), loc (3), legend (3), dataset (3), title (3), ylabel (3), xlabel (3), figsize (3), figure (3), ihre (3), wenn (3), daten (3), auch (3), schwellenwerte (3), ergebnisse (3), sehr (3), des (3), zusammen (3), aber (3), diesen (3), train (3), jeden (3), jeder (3), vorhergesagt (3), einführung (3), variablen (3), hinzufügen (3), zugreifen (3), italiano (2), português (2), español (2), français (2), русский (2), deutsch (2), english (2), uns (2), beautifier (2), diff (2), password (2), java (2), git (2), bücher (2), snippets (2), zusammenfassung (2), verwandte (2), themen (2), praktisches (2), krankheitsvorhersage (2), häufige (2), fallstricke (2), andere (2), betriebspunkt (2), schlüsselbegriffe (2), this (2), page (2), nearest (2), neighbors (2), cross (2), validation (2), fähigkeit (2), modells (2), hyperparameter (2), klassifikatoren (2), zur (2), ihrer (2), stark (2), wahrscheinlichkeitswerte (2), fläche (2), unter (2), stellt (2), jedem (2), entscheidungsschwellenwert (2), dar (2), entscheidungsbaum (2), scoring (2), roc_auc (2), zuverlässige (2), bewertung (2), logistische (2), bausteine (2), verwendet (2), brustkrebs (2), merkmale (2), classifiers (2), items (2), randomforestclassifier (2), x_scaled (2), scaler (2), standardscaler (2), features (2), load_breast_cancer (2), binary (2), end (2), sich (2), immer (2), integer (2), klasse (2), wahrscheinlichkeiten (2), unausgewogenen (2), viele (2), markiert (2), intuitiv (2), gleichgewicht (2), metrik (2), erkennen (2), niedrigerer (2), wahl (2), schwellenwerts (2), best_threshold (2), j_scores (2), numpy (2), einzelnen (2), punkt (2), fasst (2), zwei (2), regel (2), models (2), decisiontreeclassifier (2), tree (2), kurven (2), linie (2), besser (2), number (2), points (2), get (2), plotting (2), test (2), gewähltes (2), entspricht (2), area (2), under (2), einer (2), vorhersagt (2), alles (2), welcher (2), anteil (2), achse (2), möglichen (2), hoher (2), echter (2), vier (2), richtig (2), entweder (2), and (2), handling (2), zahlen (2), limit (2), update (2), drop (2), collection (2), delete (2), insert (2), datenbank (2), schleifen (2), verbinden (2), ändern (2), hash (2), 2026, rechte, vorbehalten, entwickler, gemacht, sprache, datenschutzrichtlinie, kontakt, unternehmen, probier, üben, kostenlose, tutorials, web, seit, 2014, next, previous, yes, helpful, ihnen, einzige, schwellenwertunabhängige, diskriminative, ihres, betriebspunkte, zusammenfasst, abzustimmen, qualität, kommunizieren, dann, spezifischen, toleranz, anwendung, gegenüber, ergebnissen, passt, unausgewogene, datensätze, seltenen, fällen, bevorzugt, domänenwissen, produktionsschwellenwert, schwellenwertauswahl, zurück, harten, perfekt, kernaussage, konzept, weiterer, dessen, wahrscheinlichkeitsausgaben, bewertet, können, abstimmt, schätzungen, erhält, einzelne, trainings, testaufteilung, hinaus, verallgemeinern, häufigste, kombiniert, beide, sollten, erzielen, bestätigt, hoch, prädiktiv, breast_cancer_roc, breast, cancer, 100, n_estimators, forest, 1000, max_iter, stratify, fit_transform, scale, important, target, load, 569, samples, malignant, benign, preprocessing, ensemble, folgende, ausgeliefert, bedeuten, merkmalsraum, wirklich, überlappen, aufgabe, informativ, bedeutet, schlecht, bewerten, einem, zurückgehaltenen, testset, schätzung, erhalten, zeigt, direkt, übergibt, gridsearchcv, überanpassung, trainingsset, standardmäßig, behandeln, größere, explizit, pos_label, vergessen, anzugeben, benötigt, predict, harte, anstelle, etwa, oft, informativer, klein, erscheinen, weniger, starke, klassenungleichgewichte, seltene, aussagekräftig, ohne, erweiterung, anpassen, noch, schwellenwertabhängig, harmonisches, score, erfordert, hauptsächlich, kümmert, irreführend, datensätzen, ausgewogen, accuracy, achtung, besten, betrugserkennung, tolerieren, betrug, medizinischen, screenings, möchte, möglicherweise, wenige, ebenfalls, letztlich, geschäftsentscheidung, durch, kosten, jedes, fehlertyps, bestimmt, geschäftlich, motivierter, youden, argmax, int, maximiert, findet, weitesten, diagonalen, entfernt, statistik, letztendlich, müssen, produktion, auswählen, gängige, strategien, größeren, seiner, bessere, rigorosen, modellauswahlprozess, kombinieren, dies, roc_comparison, comparison, max_depth, decision, gängiges, vorgehen, trainieren, deren, derselben, grafik, diagonale, gestrichelte, repräsentiert, zufälligen, weiter, richtung, oberen, linken, ecke, ausbeult, desto, baseline, linestyle, gray, steelblue, genaue, wert, variiert, leicht, nach, version, sollte, bereich, liegen, 944, ausgabe, ungefähr, folgt, aussehen, len, compute, probability, scores, class, column, split, into, create, toy, classification, minimales, funktionierendes, modul, bietet, abrufen, schwellenwertweisen, ermitteln, werts, wahrscheinlichkeit, positives, höher, einstuft, negatives, ausgezeichnet, gut, akzeptabel, praktische, probleme, schlechter, vorhergesagten, invertiert, kein, skill, zufälligem, raten, perfekter, trennt, fall, bedeutung, gesamte, einzigen, schwellenwerteinstellung, zeichnen, pfad, selektivsten, nichts, bis, wenigsten, selektiven, korrekt, erkannt, sensitivität, genannt, fälschlicherweise, kompromiss, gleichzeitig, selektiv, hohe, präzision, übersieht, jedoch, echte, niedriger, erkennt, erzeugt, fehlalarme, verändern, verschiebt, positiver, versehentlichen, markieren, negativer, aus, anstatt, hartes, beispielsweise, liegt, wahrscheinlichkeitswert, diese, zellen, behandelten, bewertungsmetrik, ausführlichere, finden, bevor, wir, selbst, widmen, wichtig, verstehen, erzeugen, vorhersage, tatsächliche, vorhergesagte, richtige, darstellt, berechnet, dahinterstehenden, begriffe, liest, aufgebaut, dieses, behandelt, receiver, operating, characteristic, wichtigsten, klassifikationsmodelle, erfasst, eines, hinweg, trennen, liefert, damit, deutlich, reichhaltigeres, bild, einzelner, genauigkeitswert, genauigkeit, http, anfragen, pytest, pakete, virtuelle, umgebungen, tooling, practices, threading, asyncio, concurrency, csv, sys, itertools, collections, ausnahmen, auslösen, error, standard, library, addieren, umkehren, duplikate, how, enums, abstrakte, kapselung, polymorphismus, dataclasses, static, classmethod, property, magic, methods, advanced, oop, match, anweisung, enumerate, zip, map, comprehensions, kontextmanager, rekursion, closures, generatoren, decorators, args, kwargs, type, hints, intermediate, sort, query, find, join, table, order, where, select, tabelle, einstieg, bootstrap, aggregation, means, kategoriale, hierarchisches, clustering, skalierung, multiple, polynomiale, lineare, streudiagramm, normalverteilung, datenverteilung, perzentil, standardabweichung, mittelwert, median, modus, machine, learning, kreisdiagramme, histogramme, balken, scatter, subplot, beschriftungen, marker, django, scipy, pandas, modules, löschen, schreiben, lesen, dateiverarbeitung, file, formatierung, benutzereingabe, try, except, pip, regex, math, datumsangaben, module, scope, iteratoren, vererbung, objekte, lambda, funktionen, while, else, tupeln, gruppieren, operatoren, booleans, casting, datentypen, kommentare, syntax, variablennamen, aktualisieren, tupel, entpacken, tuple, sortieren, slicen, home, ausgabevariablen, verschachtelte, modifizieren, list, comprehension, zusammenführen, globale, format, escape, zeichen, dictionary, verketten, zuweisen, aufrufen, anmelden, durchsuchen, formatters, url, reverse, sha256, md5, length, calculator, colors, hsl, hex, mixer, converter, picker, general, kurse, anleitung,
Text of the page (random words):
rings modifizieren verschachtelte dictionaries ausgabevariablen python home python listen python sets python strings python tuples python variablen elemente entfernen listenelemente entfernen set elemente entfernen set methoden strings slicen listen sortieren string methoden tuple methoden tupel entpacken tuples aktualisieren variablennamen python einführung python erste schritte python syntax python kommentare python variablen python datentypen python zahlen python casting python strings python booleans python operatoren python listen python tupeln gruppieren python dictionaries python if else python while schleifen python for schleifen python funktionen python lambda python arrays python klassen objekte python vererbung python iteratoren python scope python module python datumsangaben python math python json python regex python pip python try except python benutzereingabe python string formatierung file handling python dateiverarbeitung python dateien lesen python dateien schreiben erstellen python dateien löschen python modules numpy tutorial pandas tutorial scipy tutorial django tutorial python matplotlib matplotlib einführung matplotlib erste schritte matplotlib pyplot matplotlib plotting matplotlib marker matplotlib linie matplotlib beschriftungen matplotlib grid matplotlib subplot matplotlib scatter matplotlib balken matplotlib histogramme matplotlib kreisdiagramme machine learning erste schritte mittelwert median modus standardabweichung perzentil datenverteilung normalverteilung von daten streudiagramm lineare regression polynomiale regression multiple regression skalierung train test entscheidungsbaum konfusionsmatrix hierarchisches clustering logistische regression grid search kategoriale daten k means bootstrap aggregation cross validation auc roc kurve k nearest neighbors python mysql mysql einstieg mysql datenbank erstellen mysql tabelle erstellen mysql insert mysql select mysql where mysql order by mysql delete mysql drop table mysql update mysql limit mysql join python mongodb mongodb erste schritte mongodb datenbank erstellen mongodb collection erstellen mongodb insert mongodb find mongodb query mongodb sort mongodb delete mongodb drop collection mongodb update mongodb limit intermediate python f strings type hints args kwargs decorators generatoren closures rekursion kontextmanager comprehensions enumerate zip map match anweisung advanced oop magic methods property static classmethod dataclasses polymorphismus kapselung abstrakte klassen enums python how to listen duplikate entfernen string umkehren zwei zahlen addieren error handling and the standard library ausnahmen auslösen collections itertools os sys random csv dateien concurrency in python asyncio threading python tooling and best practices virtuelle umgebungen pakete pytest http anfragen auc roc kurve auc roc kurven in python mit sklearn berechnen und darstellen tpr fpr schwellenwerte und wann auc besser als genauigkeit ist die auc roc kurve area under the receiver operating characteristic curve ist eine der wichtigsten metriken zur bewertung binärer klassifikationsmodelle sie erfasst die fähigkeit eines modells positive und negative beispiele über jeden möglichen entscheidungsschwellenwert hinweg zu trennen und liefert damit ein deutlich reichhaltigeres bild als ein einzelner genauigkeitswert dieses kapitel behandelt was die roc kurve ist und wie sie aufgebaut wird wie man tpr fpr und die dahinterstehenden begriffe der konfusionsmatrix liest wie man auc roc mit python s scikit learn berechnet wie man die roc kurve mit matplotlib darstellt wann auc roc die richtige metrik ist und wann nicht schlüsselbegriffe tp fp tn fn bevor wir uns der kurve selbst widmen ist es wichtig die vier ergebnisse zu verstehen die ein binärer klassifikator erzeugen kann bei jeder vorhersage ist das tatsächliche label entweder positiv p oder negativ n und das vorhergesagte label ist entweder positiv oder negativ vorhergesagt positiv vorhergesagt negativ tatsächlich positiv richtig positiv tp falsch negativ fn tatsächlich negativ falsch positiv fp richtig negativ tn diese vier zellen sind die bausteine jeder in diesem kapitel behandelten bewertungsmetrik eine ausführlichere einführung finden sie im kapitel konfusionsmatrix was ist die roc kurve ein klassifikator gibt in der regel einen wahrscheinlichkeitswert eine zahl zwischen 0 und 1 aus anstatt ein hartes label sie wählen einen schwellenwert beispielsweise 0 5 und alles was über dem schwellenwert liegt wird als positiv vorhergesagt das verändern des schwellenwerts verschiebt das gleichgewicht zwischen dem erkennen echter positiver fälle und dem versehentlichen markieren echter negativer fälle ein sehr niedriger schwellenwert erkennt mehr positive fälle hoher recall erzeugt aber auch mehr fehlalarme ein sehr hoher schwellenwert ist selektiv hohe präzision übersieht jedoch echte positive fälle die roc kurve stellt diesen kompromiss für jeden möglichen schwellenwert gleichzeitig dar x achse false positive rate fpr welcher anteil der tatsächlich negativen fälle wird fälschlicherweise als positiv markiert y achse true positive rate tpr auch recall oder sensitivität genannt welcher anteil der tatsächlich positiven fälle wird korrekt erkannt tpr tp tp fn und fpr fp fp tn jeder punkt auf der roc kurve entspricht einer schwellenwerteinstellung zusammen zeichnen sie einen pfad von 0 0 dem selektivsten schwellenwert der nichts als positiv vorhersagt bis 1 1 dem am wenigsten selektiven schwellenwert der alles als positiv vorhersagt was ist auc der auc area under the curve fasst die gesamte roc kurve in einer einzigen zahl zwischen 0 und 1 zusammen auc bedeutung 1 0 perfekter klassifikator trennt jeden positiven von jedem negativen fall 0 5 kein skill entspricht zufälligem raten 0 5 schlechter als zufällig ihre vorhergesagten wahrscheinlichkeiten sind invertiert 0 7 0 8 akzeptabel für viele praktische probleme 0 8 0 9 gut 0 9 ausgezeichnet intuitiv ist auc die wahrscheinlichkeit dass das modell ein zufällig gewähltes positives beispiel höher einstuft als ein zufällig gewähltes negatives beispiel auc roc mit scikit learn berechnen das modul sklearn metrics bietet roc_curve zum abrufen der schwellenwertweisen tpr fpr werte und roc_auc_score zum ermitteln des einzelnen auc werts minimales funktionierendes beispiel from sklearn datasets import make_classification from sklearn linear_model import logisticregression from sklearn model_selection import train_test_split from sklearn metrics import roc_auc_score roc_curve 1 create a toy binary classification dataset x y make_classification n_samples 500 n_features 10 random_state 42 2 split into train test sets x_train x_test y_train y_test train_test_split x y test_size 0 3 random_state 42 3 train a logistic regression model model logisticregression random_state 42 model fit x_train y_train 4 get probability scores for the positive class column 1 y_proba model predict_proba x_test 1 5 compute auc auc roc_auc_score y_test y_proba print f auc roc auc 3f 6 get the fpr tpr thresholds arrays for plotting fpr tpr thresholds roc_curve y_test y_proba print f number of threshold points len thresholds kopieren die ausgabe wird ungefähr wie folgt aussehen auc roc 0 944 number of threshold points 30 kopieren der genaue wert variiert leicht je nach ihrer scikit learn version sollte aber für diesen datensatz im bereich 0 90 0 97 liegen die roc kurve darstellen import matplotlib pyplot as plt from sklearn datasets import make_classification from sklearn linear_model import logisticregression from sklearn model_selection import train_test_split from sklearn metrics import roc_auc_score roc_curve x y make_classification n_samples 500 n_features 10 random_state 42 x_train x_test y_train y_test train_test_split x y test_size 0 3 random_state 42 model logisticregression random_state 42 model fit x_train y_train y_proba model predict_proba x_test 1 auc roc_auc_score y_test y_proba fpr tpr _ roc_curve y_test y_proba plt figure figsize 7 5 plt plot fpr tpr color steelblue lw 2 label f roc curve auc auc 2f plt plot 0 1 0 1 color gray linestyle label random baseline auc 0 50 plt xlabel false positive rate fpr plt ylabel true positive rate tpr plt title roc curve plt legend loc lower right plt tight_layout plt savefig roc_curve png dpi 120 plt show kopieren die diagonale gestrichelte linie repräsentiert einen zufälligen klassifikator je weiter die roc kurve in richtung der oberen linken ecke ausbeult desto besser ist das modell mehrere modelle vergleichen ein gängiges vorgehen ist es mehrere modelle zu trainieren und deren roc kurven in derselben grafik zu vergleichen from sklearn datasets import make_classification from sklearn linear_model import logisticregression from sklearn tree import decisiontreeclassifier from sklearn model_selection import train_test_split from sklearn metrics import roc_auc_score roc_curve import matplotlib pyplot as plt x y make_classification n_samples 500 n_features 10 random_state 42 x_train x_test y_train y_test train_test_split x y test_size 0 3 random_state 42 models logistic regression logisticregression random_state 42 decision tree decisiontreeclassifier max_depth 3 random_state 42 plt figure figsize 7 5 for name clf in models items clf fit x_train y_train y_proba clf predict_proba x_test 1 fpr tpr _ roc_curve y_test y_proba auc roc_auc_score y_test y_proba plt plot fpr tpr lw 2 label f name auc auc 2f plt plot 0 1 0 1 k label random auc 0 50 plt xlabel false positive rate plt ylabel true positive rate plt title roc curve comparison plt legend loc lower right plt tight_layout plt savefig roc_comparison png dpi 120 plt show kopieren das modell mit der größeren fläche unter seiner kurve ist in der regel die bessere wahl für diesen datensatz für einen rigorosen modellauswahlprozess kombinieren sie dies mit kreuzvalidierung einen betriebspunkt wählen schwellenwert der auc fasst alle schwellenwerte zusammen aber letztendlich müssen sie einen schwellenwert für die produktion auswählen zwei gängige strategien 1 youdens j statistik youdens j maximiert tpr fpr und findet den einzelnen punkt auf der roc kurve der am weitesten von der diagonalen entfernt ist from sklearn datasets import make_classification from sklearn linear_model import logisticregression from sklearn model_selection import train_test_split from sklearn metrics import roc_curve import numpy as np x y make_classification n_samples 500 n_features 10 random_state 42 x_train x_test y_train y_test train_test_split x y test_size 0 3 random_state 42 model logisticregression random_state 42 model fit x_train y_train y_proba model predict_proba x_test 1 fpr tpr thresholds roc_curve y_test y_proba j_scores tpr fpr best_idx int np argmax j_scores best_threshold thresholds best_idx print f best threshold youden s j best_threshold 3f print f tpr at best threshold tpr best_idx 3f print f fpr at best threshold fpr best_idx 3f kopieren 2 geschäftlich motivierter schwellenwert bei der betrugserkennung kann man mehr falsch positive ergebnisse tolerieren um mehr betrug zu erkennen niedrigerer schwellenwert bei medizinischen screenings möchte man möglicherweise sehr wenige falsch negative ergebnisse ebenfalls niedrigerer schwellenwert die wahl des schwellenwerts ist letztlich eine geschäftsentscheidung die durch die kosten jedes fehlertyps bestimmt wird auc roc vs andere metriken metrik am besten wenn achtung bei accuracy klassen ausgewogen sind irreführend bei unausgewogenen datensätzen precision recall man sich hauptsächlich um eine klasse kümmert erfordert einen schwellenwert f1 score harmonisches gleichgewicht zwischen precision und recall noch schwellenwertabhängig auc roc modelle vergleichen oder schwellenwerte anpassen nicht aussagekräftig für mehrere klassen ohne erweiterung auc pr precision recall auc starke klassenungleichgewichte seltene positive fälle weniger intuitiv als roc bei stark unausgewogenen daten etwa 1 positive fälle ist die auc pr kurve precision vs recall oft informativer als die auc roc da fpr klein erscheinen kann auch wenn viele negative fälle falsch markiert werden häufige fallstricke harte labels anstelle von wahrscheinlichkeiten übergeben roc_auc_score benötigt wahrscheinlichkeitswerte keine 0 1 labels verwenden sie model predict_proba x_test 1 nicht model predict x_test vergessen die positive klasse anzugeben standardmäßig behandeln roc_curve und roc_auc_score das größere integer label als positiv übergeben sie explizit pos_label 1 wenn ihre labels keine 0 1 integer sind überanpassung an auc auf dem trainingsset bewerten sie immer auf einem zurückgehaltenen testset oder verwenden sie kreuzvalidierung um eine zuverlässige auc schätzung zu erhalten das kapitel grid search zeigt wie man scoring roc_auc direkt an gridsearchcv übergibt auc 0 5 bedeutet nicht immer dass das modell schlecht ist es kann bedeuten dass sich positive und negative beispiele im merkmalsraum wirklich überlappen oder dass ihre merkmale für die aufgabe nicht informativ sind praktisches beispiel krankheitsvorhersage das folgende end to end beispiel verwendet den brustkrebs datensatz der mit scikit learn ausgeliefert wird from sklearn datasets import load_breast_cancer from sklearn ensemble import randomforestclassifier from sklearn linear_model import logisticregression from sklearn model_selection import train_test_split from sklearn preprocessing import standardscaler from sklearn metrics import roc_auc_score roc_curve import matplotlib pyplot as plt load dataset 569 samples 30 features binary labels malignant 0 benign 1 data load_breast_cancer x y data data data target scale features important for logistic regression scaler standardscaler x_scaled scaler fit_transform x x_train x_test y_train y_test train_test_split x_scaled y test_size 0 2 random_state 42 stratify y classifiers logistic regression logisticregression max_iter 1000 random_state 42 random forest randomforestclassifier n_estimators 100 random_state 42 plt figure figsize 7 5 for name clf in classifiers items clf fit x_train y_train y_proba clf predict_proba x_test 1 auc roc_auc_score y_test y_proba fpr tpr _ roc_curve y_test y_proba plt plot fpr tpr lw 2 label f name auc auc 3f plt plot 0 1 0 1 k label random auc 0 50 plt xlabel false positive rate plt ylabel true positive rate plt title roc curve breast cancer dataset plt legend loc lower right plt tight_layout plt savefig breast_cancer_roc png dpi 120 plt show kopieren beide klassifikatoren sollten bei diesem datensatz auc werte über 0 98 erzielen was bestätigt dass die brustkrebs merkmale hoch prädiktiv sind verwandte themen konfusionsmatrix die tp fp tn fn bausteine die in diesem kapitel verwendet werden logistische regression das häufigste modell das mit der auc roc bewertung kombiniert wird kreuzvalidierung wie man zuverlässige auc schätzungen erhält die über eine einzelne trainings testaufteilung hinaus verallgemeinern grid search wie man hyperparameter mit scoring roc_auc abstimmt entscheidungsbaum ein wei...
|