Previsioni sì o no
Fa parte della sezione Apprendimento supervisionato del percorso Machine Learning di Coddy. Lezione 16 di 58.
In questo capitolo risponderai a domande con risposta sì o no usando le probabilità. Si conclude con un filtro antispam che costruirai, classificando le email così:
Una prenotazione al ristorante verrà cancellata? LogisticRegression lo impara da 60 prenotazioni passate: giorni di anticipo con cui è stata effettuata la prenotazione e cancellata (1) o mantenuta (0):
from sklearn.linear_model import LogisticRegression
model = LogisticRegression(max_iter=1000) # passi sufficienti per completare l'addestramento
model.fit(X, cancelled) # X: giorni di anticipo, una colonna
print(np.round(model.predict_proba([[3], [40]]), 2))Questo stampa:
[[0.91 0.09]
[0.28 0.72]]Ogni riga di prenotazione contiene la probabilità della classe 0, poi quella della classe 1. [:, 1] mantiene le probabilità della classe 1, cioè una cancellazione.
Seguono una S: mai al di sotto di 0 o al di sopra di 1, come dovrebbero essere le probabilità.
Sfida
MedioUn club di aquiloni prenota tre fasce orarie di lancio per domani. kites.csv contiene 90 lanci passati: wind_kmh e flew, 1 se l’aquilone si è sollevato da terra. Il programma legge il vento previsto per ogni fascia oraria in slots.
- Adatta una
LogisticRegression(max_iter=1000) ai dati sul vento. - Stampa la probabilità di volo per ogni fascia oraria, in percentuale intera.
- Stampa i voli previsti: la somma delle probabilità (1 decimale).
Per un altro club:
6 km/h: 9% chance the kite flies
18 km/h: 64% chance the kite flies
30 km/h: 97% chance the kite flies
Expected flights: 1.7 of 3Provalo tu
import numpy as np
import pandas as pd
from sklearn.linear_model import LogisticRegression
# 90 lanci precedenti: il vento in km/h e flew (1 se l'aquilone si è alzato in volo)
kites = pd.read_csv("kites.csv")
# Le tre fasce orarie di lancio di domani, in base al vento previsto
winds = []
for i in range(3):
winds.append(int(input()))
slots = pd.DataFrame({"wind_kmh": winds})
# Scrivi il tuo codice qui sotto
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
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