Riepilogo: test di screening
Fa parte della sezione Apprendimento supervisionato del percorso Machine Learning di Coddy. Lezione 26 di 58.
Sfida
MedioRicordi la cella dei casi mancati con cui si è aperto questo capitolo? Una clinica esegue lo screening di campioni di tessuto per individuare il cancro, e un campione maligno non rilevato è l'errore peggiore. Il programma legge il richiamo di cui la clinica ha bisogno; il codice iniziale carica e normalizza i campioni (1 significa maligno) ed elenca thresholds, dal più restrittivo al meno restrittivo.
- Addestra una regressione logistica e stampa il suo AUC.
- Trova la prima soglia il cui richiamo raggiunge il valore richiesto.
- A quella soglia, stampa i conteggi e la precisione come sotto.
Per un'altra clinica e 0.9:
AUC: 0.981
Threshold: 0.4
Caught 47 of 51 malignant samples
False alarms: 2
Precision: 0.959Provalo tu
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
# Il valore di recall richiesto dalla clinica, ad esempio 0.95
needed = float(input())
# Campioni di tessuto: 1 in y indica un caso maligno, che lo screening deve individuare
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)
# Soglie da provare, dalla più restrittiva
thresholds = [0.5, 0.4, 0.3, 0.2, 0.1, 0.05]
# Scrivi il tuo codice qui sotto
Tutte le lezioni di Apprendimento supervisionato
1Il tuo primo modello
Imparare dagli esempiInsiemi di addestramento e testAdattare e prevedereValutare un modelloRiepilogo: Ordinatore di semi4Regressione logistica
Previsioni sì o noLa soglia decisionaleI pesi come evidenzePiù classiRiepilogo: filtro antispam2Vicini più prossimi
Come decide k-NNScegliere kConfini decisionaliNormalizzare le scale per i viciniRiepilogo: vicini del vino5Misurare i classificatori
La matrice di confusionePrecisione e richiamoIl punteggio F1Classi sbilanciateCurve ROCRiepilogo: test di screening8Convalida incrociata
Validazione K-foldConfronto equo tra modelliRicerca a grigliaRiepilogo: riparazioni di skateboard11Progetto: specie di pinguini
Incontra i pinguiniPrepara i datiScegli un modelloOttimizza il miglioreDistribuisci il modello3Regressione lineare
Prevedere numeriPiù caratteristicheMisurare gli erroriGrafici dei residuiRiepilogo: noleggio di biciclette6Alberi decisionali
Gli alberi fanno domandeLeggere un alberoProfondità dell’alberoImportanza delle caratteristicheRiepilogo: decisioni sui prestitiEsercitati da solo: Compilatore Python online