Rückblick: Screeningtest
Teil des Abschnitts Überwachtes Lernen der Machine Learning-Journey von Coddy. Lektion 26 von 58.
Aufgabe
MittelErinnerst du dich an die Zelle für übersehene Fälle, mit der dieses Kapitel begann? Eine Klinik untersucht Gewebeproben auf Krebs, und eine übersehene bösartige Probe ist der schlimmste Fehler. Das Programm liest die von der Klinik benötigte Sensitivität ein; der Starter lädt und skaliert die Proben (1 bedeutet bösartig) und listet thresholds auf, beginnend mit dem strengsten Schwellenwert.
- Trainiere eine logistische Regression und gib ihre AUC aus.
- Finde den ersten Schwellenwert, bei dem die Sensitivität den Bedarf erreicht.
- Gib bei diesem Schwellenwert die Zählwerte und die Präzision wie unten aus.
Für eine andere Klinik und 0.9:
AUC: 0.981
Threshold: 0.4
Caught 47 of 51 malignant samples
False alarms: 2
Precision: 0.959Probier es selbst
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import roc_auc_score, recall_score, precision_score, confusion_matrix
# Der Recall, den die Klinik benötigt, zum Beispiel 0.95
needed = float(input())
# Gewebeproben: 1 in y bedeutet bösartig – der Fall, den das Screening erkennen muss
cancer = load_breast_cancer()
X = cancer.data
y = 1 - cancer.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0, stratify=y)
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
# Zu testende Schwellenwerte, beginnend mit dem strengsten
thresholds = [0.5, 0.4, 0.3, 0.2, 0.1, 0.05]
# Schreibe deinen Code unten
Alle Lektionen in Überwachtes Lernen
1Dein erstes Modell
Aus Beispielen lernenTrainings- und TestdatensätzeAnpassen und VorhersagenEin Modell bewertenRückblick: Saatgutsortierer4Logistische Regression
Ja-Nein-VorhersagenDie EntscheidungsschwelleGewichte als IndizienMehrere KlassenRückblick: Spamfilter2Nächste Nachbarn
So entscheidet k-NNk wählenEntscheidungsgrenzenSkalierung für NachbarnRückblick: Wein-Nachbarn5Klassifikatoren bewerten
Die KonfusionsmatrixPräzision und TrefferquoteDer F1-ScoreUnausgewogene KlassenROC-KurvenRückblick: Screeningtest3Lineare Regression
Zahlen vorhersagenMehrere MerkmaleFehler messenResiduenplotsZusammenfassung: Fahrradverleih6Entscheidungsbäume
Bäume stellen FragenEinen Baum lesenBaumtiefeMerkmalswichtigkeitRückblick: Kreditentscheidungen9Ensembleverfahren
Random ForestsWarum Random Forests funktionierenGradient BoostingRückblick: Förster des Waldes12Abschließende Herausforderungen
Diabetes-FortschrittKreditgenehmigungHandgeschriebene ZiffernKundenabwanderungÜbe selbstständig: Online-Python-Compiler