5 Modi per Ottenere Dataset Interessanti per il Tuo Prossimo Progetto di Dati (Non Kaggle)

5 ways to get interesting datasets for your next data project (not Kaggle)

Stanco di Kaggle e FiveThirtyEight? Ecco le strategie alternative che uso per ottenere dataset di alta qualità e unici

Immagine di Efe Kurnaz su Unsplash

La chiave per un grande progetto di data science è un grande dataset, ma trovare dati di qualità è molto più facile a dirsi che a farsi.

Ricordo quando studiavo per il mio master in Data Science, poco più di un anno fa. Durante il corso, ho scoperto che trovare idee per i progetti era la parte facile – era trovare buoni dataset ciò con cui ho avuto più difficoltà. Passavo ore a cercare in internet, strappandomi i capelli nel tentativo di trovare fonti di dati interessanti e non arrivando a nulla.

Da allora, ho fatto molta strada nel mio approccio, e in questo articolo voglio condividere con voi le 5 strategie che uso per trovare dataset. Se siete stufi di fonti standard come Kaggle e FiveThirtyEight, queste strategie vi permetteranno di ottenere dati unici e molto più adatti ai casi d’uso specifici che avete in mente.

1. Crea i tuoi dati

Sì, ci crediate o no, questa è effettivamente una strategia legittima. Ha persino un nome tecnico fantasioso (“generazione di dati sintetici”).

Se state provando una nuova idea o avete requisiti di dati molto specifici, creare dati sintetici è un modo fantastico per ottenere dataset originali e su misura.

Ad esempio, diciamo che state cercando di costruire un modello di previsione di churn, un modello che può prevedere quanto è probabile che un cliente lasci un’azienda. Churn è un “problema operativo” abbastanza comune che molte aziende affrontano, e affrontare un problema del genere è un ottimo modo per dimostrare ai recruiter che sapete usare l’AI per risolvere problemi commerciali rilevanti, come ho sostenuto in precedenza:

Come trovare idee uniche per i progetti di data science che rendono il tuo portfolio unico

Dimentica Titanic e MNIST: scegli un progetto unico che sviluppi le tue abilità e ti aiuti a distinguerti dalla folla

towardsdatascience.com

Tuttavia, se cercate online “churn datasets”, vedrete che ci sono (al momento della stesura) solo due dataset principali disponibili pubblicamente: il Bank Customer Churn Dataset e il Telecom Churn Dataset. Questi dataset sono un ottimo punto di partenza, ma potrebbero non riflettere il tipo di dati richiesti per modellare il churn in altri settori.

Invece, potreste provare a creare dati sintetici più adatti alle vostre esigenze.

Se questo sembra troppo bello per essere vero, ecco un dataset di esempio che ho creato con una breve richiesta a quel vecchio classico, ChatGPT:

Immagine dell'autore

Certo, ChatGPT è limitato nella velocità e nella dimensione dei dataset che può creare, quindi se volete ampliare questa tecnica vi consiglio di usare la libreria Python faker o le funzioni sklearn.datasets.make_classification e sklearn.datasets.make_regression di scikit-learn. Questi strumenti sono un modo fantastico per generare programmaticamente enormi dataset in un battito di ciglia, e perfetti per costruire modelli di proof-of-concept senza dover passare ore alla ricerca del dataset perfetto.

Nella pratica, raramente ho avuto bisogno di utilizzare tecniche di creazione di dati sintetici per generare interi dataset (e, come spiegherò in seguito, sarebbe saggio esercitare cautela se intendete farlo). Invece, trovo che questa sia una tecnica davvero interessante per generare esempi avversari o aggiungere rumore ai vostri dataset, permettendomi di testare le debolezze dei miei modelli e costruire versioni più robuste. Ma indipendentemente da come usate questa tecnica, è uno strumento incredibilmente utile da avere a disposizione.

Chiedere gentilmente i dati di un’azienda

Creare dati sintetici è una soluzione pratica per le situazioni in cui non si riesce a trovare il tipo di dati che si cerca, ma il problema ovvio è che non si ha alcuna garanzia che i dati siano una buona rappresentazione delle popolazioni reali.

Se si vuole garantire che i dati siano realistici, il modo migliore per farlo è, sorpresa sorpresa…

… cercare effettivamente dei dati reali.

Un modo per farlo è contattare le aziende che potrebbero avere tali dati e chiedere se sarebbero interessate a condividerne alcuni con voi. A rischio di sottolineare l’ovvio, nessuna azienda vi fornirà dati altamente sensibili o se state pianificando di usarli per scopi commerciali o non etici. Sarebbe semplicemente stupido.

Tuttavia, se intendete utilizzare i dati per la ricerca (ad esempio, per un progetto universitario), potreste scoprire che le aziende sono aperte a fornire dati se è nel contesto di un accordo di ricerca con reciprocità.

Cosa intendo con questo? È effettivamente abbastanza semplice: intendo un accordo in cui vi forniscono alcuni dati (anonimizzati / desensibilizzati) e voi utilizzate i dati per condurre una ricerca che sia di beneficio per loro. Ad esempio, se siete interessati a studiare la modellizzazione del churn, potreste mettere insieme una proposta per confrontare diverse tecniche di previsione del churn. Quindi, condividete la proposta con alcune aziende e chiedete se c’è la possibilità di lavorare insieme. Se siete persistenti e lanciate una rete ampia, probabilmente troverete un’azienda disposta a fornire dati per il vostro progetto a condizione che condividiate i risultati con loro in modo che possano beneficiare della ricerca.

Se sembra troppo bello per essere vero, potreste sorprendervi nel sapere che è esattamente ciò che ho fatto durante la mia laurea magistrale. Ho contattato un paio di aziende con una proposta su come avrei potuto usare i loro dati per una ricerca che sarebbe stata utile per loro, ho firmato alcuni documenti per confermare che non avrei usato i dati per altri scopi e ho condotto un progetto molto divertente utilizzando alcuni dati del mondo reale. Si può davvero fare.

L’altra cosa che mi piace particolarmente di questa strategia è che fornisce un modo per esercitare e sviluppare un insieme abbastanza ampio di competenze che sono importanti in Data Science. Bisogna comunicare bene, mostrare consapevolezza commerciale e diventare un professionista nella gestione delle aspettative degli stakeholder, tutte competenze essenziali nella vita quotidiana di un Data Scientist.

Per favore, fammi avere i tuoi dati. Sarò un bravo ragazzo, lo prometto! Immagine di Nayeli Rosales su Unsplash

Guarda nei repository in cui gli accademici archiviano il codice per i loro articoli scientifici

Molte raccolte di dati utilizzate in studi accademici non sono pubblicate su piattaforme come Kaggle, ma sono comunque disponibili pubblicamente per l’uso di altri ricercatori.

Uno dei modi migliori per trovare raccolte di dati come queste è cercare nei repository associati agli articoli scientifici. Perché? Perché molte riviste richiedono ai loro collaboratori di rendere pubblici i dati sottostanti. Ad esempio, due delle fonti di dati che ho utilizzato durante la mia laurea magistrale (la raccolta di dati Fragile Families e il sito web Hate Speech Data) non erano disponibili su Kaggle; li ho trovati attraverso articoli accademici e i loro repository di codice associati.

Come si trovano questi repository? In realtà è sorprendentemente semplice – Io inizio aprendo paperswithcode.com, cerco articoli nell’area che mi interessa e guardo le raccolte di dati disponibili fino a quando non trovo qualcosa di interessante. Dalla mia esperienza, questo è un modo davvero intelligente per trovare raccolte di dati che non sono state già sfruttate dalle masse su Kaggle.

BigQuery Public Datasets

Onestamente, non ho idea del perché più persone non facciano uso di BigQuery Public Datasets. Ci sono letteralmente centinaia di raccolte di dati che coprono tutto, dalle tendenze di ricerca di Google ai noleggi di biciclette di Londra fino al sequenziamento genomico della cannabis.

Una delle cose che mi piace particolarmente di questa fonte è che molte di queste raccolte di dati sono incredibilmente rilevanti dal punto di vista commerciale. Potete dire addio a argomenti accademici di nicchia come la classificazione dei fiori e la previsione dei numeri; in BigQuery, ci sono raccolte di dati su questioni commerciali reali come la performance degli annunci, le visite al sito web e le previsioni economiche.

Molte persone evitano questi dataset perché richiedono competenze SQL per caricarli. Ma anche se non conosci SQL e conosci solo un linguaggio come Python o R, ti incoraggio comunque a dedicare un’ora o due per imparare alcuni concetti di base di SQL e iniziare a interrogare questi dataset. Non ci vuole molto tempo per iniziare, e questi sono davvero un tesoro di dati di alto valore.

Per utilizzare i dataset in BigQuery Public Datasets, puoi registrarti per un account completamente gratuito e creare un progetto sandbox seguendo le istruzioni qui. Non è necessario inserire i dettagli della tua carta di credito o cose del genere, solo il tuo nome, la tua email, un po’ di informazioni sul progetto, e sei pronto. Se hai bisogno di più potenza di calcolo in un secondo momento, puoi aggiornare il progetto a uno a pagamento e accedere alle risorse di calcolo di GCP e alle funzionalità avanzate di BigQuery, ma personalmente non ho mai avuto bisogno di farlo e ho trovato il sandbox più che adeguato.

Prova un motore di ricerca per dataset

Il mio ultimo consiglio è di provare a utilizzare un motore di ricerca per dataset. Questi sono strumenti incredibilmente utili che sono emersi solo negli ultimi anni e rendono molto facile vedere rapidamente cosa c’è disponibile. Tre dei miei preferiti sono:

  • Harvard Dataverse
  • Google Dataset Search
  • Papers with Code

Nella mia esperienza, la ricerca con questi strumenti può essere una strategia molto più efficace rispetto all’utilizzo di motori di ricerca generici poiché spesso vengono forniti metadati sui dataset e hai la possibilità di classificarli in base a quanto spesso sono stati utilizzati e alla data di pubblicazione. Un approccio molto interessante, se mi chiedete.

Grazie per la lettura! Spero che troverete utili questi 5 consigli e non esitate a contattarmi se avete commenti o domande 🙂

Un’altra cosa – potresti essere nel mio 1%?

Meno dell’1% dei miei lettori su Nisoo clicca il mio pulsante “Segui”, quindi significa davvero molto quando lo fai, sia qui su Nisoo, Twitter o LinkedIn.

Se desideri avere accesso illimitato a tutte le mie storie (e al resto di Nisoo.com), puoi registrarti tramite il mio link di riferimento per $5 al mese. Non aggiunge alcun costo extra rispetto alla registrazione tramite la pagina di registrazione generale e aiuta a supportare la mia scrittura poiché ricevo una piccola commissione.