Data Analyst: Michele Bedin (www.michelebedin.com)
- Fase 1 - Proposta di progetto
- Fase 2 - Comprendere i dati
- Fase 3 - EDA
- Fase 4 - Test statistici
- Fase 5 - Analisi di regressione
- Fase 6 - Modelli di apprendimento automatico (attuale)
- Fase 7 - Consegna lavori
Introduzione
Sei un professionista dei dati in una società di analisi dei dati chiamata Automatidata. Il loro cliente, la New York City Taxi & Limousine Commission (TLC), è rimasto colpito dal tuo lavoro e ti ha chiesto di creare un modello di apprendimento automatico per prevedere se un cliente non lascerà la mancia. Vogliono utilizzare il modello in un'app che avvisi i tassisti dei clienti che difficilmente lasceranno la mancia, dato che i tassisti dipendono dalle mance.
Fase 6: costruire un modello di apprendimento automatico
In questa attività ti eserciterai a utilizzare tecniche di modellazione ad albero (tree-based modeling) per fare previsioni su una classe target binaria.
Lo scopo di questo modello è trovare il modo di generare maggiori entrate per i tassisti.
L'obiettivo di questo modello è prevedere se un cliente è generoso o meno con le mance.
Questa attività si divide in tre parti
Compito 1: Considerazioni etiche
-
Considera le implicazioni etiche della richiesta
-
L'obiettivo del modello dovrebbe essere modificato?
Compito 2: Ingegneria delle caratteristiche
- Esegui la selezione, l'estrazione e la trasformazione delle caratteristiche per preparare i dati alla modellazione.
Compito 3: Modellazione
- Costruire i modelli, valutarli e consigliare i passi successivi.
framework PACE
In questo notebook si fa riferimento al framework di problem-solving PACE. I seguenti componenti del notebook sono etichettati con la rispettiva fase PACE: Pianificare, Analizzare, Costruire ed Eseguire.
Pace: Pianificazione
In questa fase, consideriamo le seguenti domande:
Cosa ti viene chiesto di fare?
Prevedere se un cliente non lascerà la mancia.
Quali sono le implicazioni etiche del modello? Quali sono le conseguenze di un eventuale errore del tuo modello? Qual è l'effetto probabile del modello quando prevede un falso negativo (cioè quando il modello dice che un cliente darà la mancia, ma in realtà non lo farà)? Qual è l'effetto probabile del modello quando prevede un falso positivo (cioè quando il modello dice che un cliente non darà la mancia, ma in realtà lo farà)?
Errori di falso negativo potrebbero erodere la fiducia degli autisti nell'app. Falsi positivi potrebbero limitare l'accesso al servizio taxi per clienti etichettati erroneamente come cattivi manceggiatori. Entrambi gli scenari potrebbero danneggiare la reputazione dell'azienda e sollevare questioni etiche su equità e discriminazione.
I vantaggi di questo modello superano i potenziali problemi?
I rischi di discriminazione e perdita di fiducia sembrano superare i potenziali benefici di guadagni extra per gli autisti.
Procederesti con la richiesta di creare questo modello? Perché si o perché no?
No. Limitare l'accesso equo ai taxi è eticamente discutibile e comporta alti rischi.
L'obiettivo può essere modificato per renderlo meno problematico?
Potremmo sviluppare un modello che identifica i clienti più generosi, per aiutare gli autisti ad aumentare le entrate senza escludere ingiustamente alcune categorie di persone.
Supponiamo di modificare l'obiettivo della modellazione in modo che, invece di prevedere le persone che non lasceranno alcuna mancia, si preveda che le persone siano particolarmente generose quando lasceranno il 20% o più di mancia? Considera le seguenti domande:
Di quali caratteristiche hai bisogno per fare questa previsione?
Idealmente, avremmo bisogno della cronologia comportamentale di ogni cliente per conoscere le mance lasciate in passato. Includerei anche orari, date e luoghi di partenza e arrivo, tariffe stimate e metodo di pagamento.
Quale sarebbe la variabile target?
La variabile target sarebbe binaria (1 o 0), indicando se il cliente è previsto lasciare una mancia ≥ 20%.
Quale metrica dovresti utilizzare per valutare il tuo modello? Hai abbastanza informazioni per decidere ora?
Si tratta di un compito di classificazione in apprendimento supervisionato. Potremmo utilizzare accuratezza, precisione, recall, F-score o area sotto la curva ROC. Tuttavia, al momento non abbiamo informazioni sufficienti per decidere quale metrica sia più appropriata; ci serve conoscere l'equilibrio delle classi della variabile target.