• Home
  • Chimica
  • Astronomia
  • Energia
  • Natura
  • Biologia
  • Fisica
  • Elettronica
  • Lo strumento per non statistici genera automaticamente modelli che raccolgono informazioni da insiemi di dati complessi

    I ricercatori del MIT sperano di far progredire la democratizzazione della scienza dei dati con un nuovo strumento per i non programmatori che genera automaticamente modelli per l'analisi dei dati grezzi. Credito:Christine Daniloff, MIT

    I ricercatori del MIT sperano di far progredire la democratizzazione della scienza dei dati con un nuovo strumento per non statistici che genera automaticamente modelli per l'analisi dei dati grezzi.

    Democratizzare la scienza dei dati è l'idea che chiunque, con poca o nessuna competenza, può fare scienza dei dati se forniti ampi dati e strumenti di analisi user-friendly. Sostenendo quell'idea, il nuovo strumento acquisisce set di dati e genera sofisticati modelli statistici tipicamente utilizzati dagli esperti per analizzare, interpretare, e prevedere i modelli sottostanti nei dati.

    Lo strumento attualmente vive su Jupyter Notebook, un framework web open source che consente agli utenti di eseguire programmi in modo interattivo nei propri browser. Gli utenti devono solo scrivere poche righe di codice per scoprire approfondimenti, ad esempio, tendenze finanziarie, trasporto aereo, modelli di voto, la diffusione della malattia, e altre tendenze.

    In un documento presentato al Simposio ACM SIGPLAN di questa settimana sui principi dei linguaggi di programmazione, i ricercatori mostrano che il loro strumento può estrarre con precisione modelli e fare previsioni da set di dati del mondo reale, e persino superare i modelli costruiti manualmente in determinate attività di analisi dei dati.

    "L'obiettivo di alto livello è rendere la scienza dei dati accessibile a persone che non sono esperte di statistica, " dice il primo autore Feras Saad '15, MEng '16, un dottorato di ricerca studente presso il Dipartimento di Ingegneria Elettrica e Informatica (EECS). "Le persone hanno molti set di dati in giro, e il nostro obiettivo è creare sistemi che consentano alle persone di ottenere automaticamente modelli che possono utilizzare per porre domande su quei dati".

    In definitiva, lo strumento risolve un collo di bottiglia nel campo della scienza dei dati, afferma il coautore Vikash Mansinghka '05, MEng '09, dottorato di ricerca '09, un ricercatore del Dipartimento di Scienze del Cervello e della Cognizione (BCS) che gestisce il Probabilistic Computing Project. "C'è una carenza ampiamente riconosciuta di persone che capiscono come modellare bene i dati, " dice. "Questo è un problema nei governi, il settore non profit, e luoghi in cui le persone non possono permettersi i data scientist".

    Gli altri coautori del paper sono Marco Cusumano-Towner, un dottorato di ricerca EECS alunno; Ulrich Schachtle, un postdoc BCS con il Probabilistic Computing Project; e Martin Rinard, professore e ricercatore EECS nel Laboratorio di Informatica e Intelligenza Artificiale.

    Modellazione bayesiana

    Il lavoro utilizza la modellazione bayesiana, un metodo statistico che aggiorna continuamente la probabilità di una variabile man mano che diventano disponibili ulteriori informazioni su tale variabile. Ad esempio, lo statistico e scrittore Nate Silver utilizza modelli basati su Bayes per il suo popolare sito web FiveThirtyEight. In vista delle elezioni presidenziali, i modelli del sito fanno una previsione iniziale che uno dei candidati vincerà, sulla base di vari sondaggi e altri dati economici e demografici. Questa previsione è la variabile. Il giorno delle elezioni, il modello utilizza tali informazioni, e pesa i voti in arrivo e altri dati, per aggiornare continuamente quella probabilità del potenziale di vincita di un candidato.

    Più generalmente, I modelli bayesiani possono essere utilizzati per "prevedere" (prevedere un valore sconosciuto nel set di dati) e per scoprire modelli nei dati e relazioni tra variabili. Nel loro lavoro, i ricercatori si sono concentrati su due tipi di set di dati:serie temporali, una sequenza di punti dati in ordine cronologico; e dati tabulari, dove ogni riga rappresenta un'entità di interesse e ogni colonna rappresenta un attributo.

    I set di dati di serie temporali possono essere utilizzati per prevedere, dire, traffico aereo nei prossimi mesi o anni. Un modello probabilistico elabora punteggi di dati storici sul traffico e produce un grafico di serie temporali con modelli di traffico futuri tracciati lungo la linea. Il modello può anche scoprire fluttuazioni periodiche correlate ad altre variabili, come il periodo dell'anno.

    D'altra parte, un set di dati tabulare utilizzato per, dire, ricerca sociologica, può contenere da centinaia a milioni di righe, ognuno rappresenta una singola persona, con variabili che caratterizzano l'occupazione, stipendio, posizione di casa, e le risposte alle domande del sondaggio. I modelli probabilistici potrebbero essere utilizzati per riempire le variabili mancanti, come prevedere lo stipendio di qualcuno in base all'occupazione e alla posizione, o per identificare variabili che si informano a vicenda, come scoprire che l'età e l'occupazione di una persona sono predittive del suo stipendio.

    Gli statistici considerano la modellazione bayesiana come un gold standard per la costruzione di modelli dai dati. Ma la modellazione bayesiana è notoriamente dispendiosa in termini di tempo e impegnativa. Gli statistici prima fanno un'ipotesi plausibile sulla struttura del modello e sui parametri necessari, basandosi sulla loro conoscenza generale del problema e dei dati. Utilizzando un ambiente di programmazione statistica, come R, uno statistico poi costruisce modelli, si adatta ai parametri, controlla i risultati, e ripete il processo finché non raggiungono un compromesso di prestazioni appropriato che soppesa la complessità e la qualità del modello.

    Lo strumento dei ricercatori automatizza una parte fondamentale di questo processo. "Stiamo dando a un sistema software un lavoro che faresti fare a uno statistico junior o a uno scienziato dei dati, " Dice Mansinghka. "Il software può rispondere automaticamente alle domande dai dati, prevedendo previsioni o dicendoti qual è la struttura, e può farlo in modo rigoroso, riportando misure quantitative di incertezza. Questo livello di automazione e rigore è importante se stiamo cercando di rendere più accessibile la scienza dei dati".

    sintesi bayesiana

    Con il nuovo approccio, gli utenti scrivono una riga di codice che dettaglia la posizione dei dati grezzi. Lo strumento carica quei dati e crea più programmi probabilistici che rappresentano ciascuno un modello bayesiano dei dati. Tutti questi modelli generati automaticamente sono scritti in linguaggi di programmazione probabilistica specifici del dominio, linguaggi di codifica sviluppati per applicazioni specifiche, ottimizzati per rappresentare modelli bayesiani per un tipo specifico di dati.

    Lo strumento funziona utilizzando una versione modificata di una tecnica chiamata "sintesi del programma, " che crea automaticamente programmi per computer dati dati e un linguaggio con cui lavorare. La tecnica è fondamentalmente la programmazione del computer al contrario:dato un insieme di esempi input-output, la sintesi del programma procede a ritroso, riempire gli spazi vuoti per costruire un algoritmo che produce gli output di esempio in base agli input di esempio.

    L'approccio è diverso dalla normale sintesi del programma in due modi. Primo, lo strumento sintetizza programmi probabilistici che rappresentano modelli bayesiani per i dati, mentre i metodi tradizionali producono programmi che non modellano affatto i dati. Secondo, lo strumento sintetizza più programmi contemporaneamente, mentre i metodi tradizionali ne producono solo uno alla volta. Gli utenti possono scegliere quali modelli si adattano meglio alla loro applicazione.

    "Quando il sistema crea un modello, sputa un pezzo di codice scritto in uno di questi linguaggi di programmazione probabilistica specifici del dominio ... che le persone possono capire e interpretare, " Mansinghka dice. "Ad esempio, gli utenti possono verificare se un set di dati di una serie temporale come il volume del traffico aereo presenta variazioni stagionali semplicemente leggendo il codice, a differenza dei metodi di apprendimento automatico e statistica della scatola nera, dove gli utenti devono fidarsi delle previsioni di un modello ma non possono leggerlo per comprenderne la struttura."

    La programmazione probabilistica è un campo emergente all'intersezione di linguaggi di programmazione, intelligenza artificiale, e statistiche. Quest'anno, Il MIT ha ospitato la prima Conferenza Internazionale sulla Programmazione Probabilistica, che ha avuto più di 200 partecipanti, compresi i principali attori del settore nella programmazione probabilistica come Microsoft, Uber, e Google.


    © Scienza https://it.scienceaq.com