In questa guida, cammineremo attraverso 8 divertenti progetti di apprendimento automatico per principianti. I progetti sono alcuni dei migliori investimenti del vostro tempo. Vi divertirete ad imparare, sarete motivati e farete progressi più velocemente.

Vedete, nessuna quantità di teoria può sostituire la pratica pratica. I libri di testo e le lezioni possono cullarvi in una falsa convinzione di padronanza perché il materiale è lì davanti a voi. Ma una volta che provi ad applicarlo, potresti scoprire che è più difficile di quanto sembri.

I progetti ti aiutano a migliorare rapidamente le tue abilità di ML applicate e ti danno la possibilità di esplorare un argomento interessante.

Inoltre, puoi aggiungere progetti al tuo portfolio, rendendo più facile trovare un lavoro, trovare opportunità di carriera interessanti e persino negoziare uno stipendio più alto.

Questi sono 8 divertenti progetti di machine learning per principianti. Puoi completare ognuno di essi in un solo fine settimana, o espanderli in progetti più lunghi se ti piacciono.

Tabella dei contenuti

  1. Machine Learning Gladiator
  2. Giocare a Money Ball
  3. Prevedere i prezzi delle azioni
  4. Insegnare ad una rete neurale a leggere la scrittura a mano
  5. Investigare su Enron
  6. Scrivere algoritmi di ML da zero
  7. Minizzare il sentiment dei social media
  8. Migliorare l’assistenza sanitaria

Machine Learning Gladiator

Lo chiamiamo affettuosamente “machine learning gladiator,”ma non è una novità. Questo è uno dei modi più veloci per costruire un’intuizione pratica intorno al machine learning.

L’obiettivo è quello di prendere modelli out-of-the-box e applicarli a diversi set di dati. Questo progetto è fantastico per 3 ragioni principali:

Prima di tutto, costruirai l’intuizione per l’adattamento del modello al problema. Quali modelli sono robusti ai dati mancanti? Quali modelli gestiscono bene le caratteristiche categoriali? Sì, potete scavare nei libri di testo per trovare le risposte, ma imparerete meglio vedendolo in azione.

Secondo, questo progetto vi insegnerà l’inestimabile abilità di prototipare rapidamente i modelli. Nel mondo reale, è spesso difficile sapere quale modello funzionerà meglio senza semplicemente provarli.

Infine, questo esercizio vi aiuta a padroneggiare il flusso di lavoro della costruzione dei modelli. Per esempio, farete pratica…

  • Importazione dei dati
  • Pulizia dei dati
  • Suddivisione dei dati in set di allenamento/test o cross-validazione
  • Pre-elaborazione
  • Trasformazioni
  • Feature engineering

Perché userete modelli out-of-the-box, avrete la possibilità di concentrarvi sull’affinamento di questi passaggi critici.

Guardate le pagine di documentazione di sklearn (Python) o caret (R) per le istruzioni. Dovreste fare pratica con gli algoritmi di regressione, classificazione e clustering.

Tutorials

  • Python: sklearn – Tutorial ufficiale del pacchetto sklearn
  • Prevedere la qualità del vino con Scikit-Learn – Tutorial passo dopo passo per l’addestramento di un modello di apprendimento automatico
  • R: caret – Webinar tenuto dall’autore del pacchetto caret

Fonti di dati

  • UCI Machine Learning Repository – 350+ dataset ricercabili che coprono quasi ogni argomento. Troverai sicuramente dei dataset che ti interessano.
  • Kaggle Datasets – 100+ dataset caricati dalla comunità Kaggle. Ci sono alcuni set di dati davvero divertenti qui, tra cui PokemonGo spawn locations e Burritos in San Diego.
  • data.gov – Set di dati aperti rilasciati dal governo degli Stati Uniti. Ottimo posto dove guardare se sei interessato alle scienze sociali.

Gioca Money Ball

Nel libro Moneyball, gli Oakland A’s hanno rivoluzionato il baseball attraverso lo scouting analitico dei giocatori. Hanno costruito una squadra competitiva spendendo solo 1/3 di quello che squadre di grande mercato come gli Yankees pagavano per gli stipendi.

Prima di tutto, se non avete ancora letto il libro, dovreste dargli un’occhiata. È uno dei nostri preferiti!

Per fortuna, il mondo dello sport ha una tonnellata di dati con cui giocare. I dati delle squadre, delle partite, dei punteggi e dei giocatori sono tutti tracciati e liberamente disponibili online.

Ci sono molti progetti di apprendimento automatico divertenti per i principianti. Per esempio, si potrebbe provare…

  • Scommesse sportive… Prevedere i punteggi delle partite in base ai dati disponibili al momento prima di ogni nuova partita.
  • Talent scouting… Utilizzare le statistiche del college per prevedere quali giocatori avrebbero le migliori carriere professionali.
  • Gestione generale… Creare gruppi di giocatori in base ai loro punti di forza al fine di costruire una squadra a tutto tondo.

Lo sport è anche un dominio eccellente per praticare la visualizzazione dei dati e l’analisi esplorativa. Puoi usare queste abilità per aiutarti a decidere quali tipi di dati includere nelle tue analisi.

Fonti di dati

  • Database delle statistiche sportive – Statistiche sportive e dati storici che coprono molti sport professionali e diversi college. L’interfaccia pulita lo rende più facile per il web scraping.
  • Sports Reference – Un altro database di statistiche sportive. Interfaccia più disordinata, ma le singole tabelle possono essere esportate come file CSV.
  • cricsheet.org – Dati palla per palla per le partite di cricket internazionali e IPL. Sono disponibili i file CSV per le partite IPL e T20 internationals.

Prevedere i prezzi delle azioni

Il mercato azionario è come il paese delle caramelle per qualsiasi scienziato dei dati che sia anche lontanamente interessato alla finanza.

In primo luogo, hai molti tipi di dati tra cui puoi scegliere. Puoi trovare prezzi, fondamentali, indicatori macroeconomici globali, indici di volatilità, ecc… la lista continua.

Secondo, i dati possono essere molto granulari. Si possono facilmente ottenere dati di serie temporali per giorno (o anche minuto) per ogni azienda, il che permette di pensare in modo creativo alle strategie di trading.

Infine, i mercati finanziari hanno generalmente cicli di feedback brevi. Pertanto, è possibile convalidare rapidamente le tue previsioni su nuovi dati.

Alcuni esempi di progetti di apprendimento automatico per principianti che potresti provare includono…

  • Investimento quantitativo del valore… Prevedere i movimenti di prezzo a 6 mesi basati su indicatori fondamentali dalle relazioni trimestrali delle aziende.
  • Previsione… Costruire modelli di serie temporali, o anche reti neurali ricorrenti, sul delta tra la volatilità implicita e quella effettiva.
  • Arbitraggio statistico… Trovare azioni simili in base ai loro movimenti di prezzo e altri fattori e cercare periodi in cui i loro prezzi divergono.

Ovviamente disclaimer: costruire modelli di trading per praticare il machine learning è semplice. Renderli redditizi è estremamente difficile. Niente qui è un consiglio finanziario, e non raccomandiamo di fare trading con denaro reale.

Tutorials

  • Python: sklearn for Investing – serie di video su YouTube sull’applicazione del machine learning agli investimenti.
  • R: Quantitative Trading with R – Appunti di classe dettagliati per la finanza quantitativa con R.

Fonti di dati

  • Quandl – Mercato di dati che fornisce dati finanziari ed economici gratuiti (e premium). Per esempio, è possibile scaricare in blocco i prezzi di fine giornata delle azioni di oltre 3000 società statunitensi o i dati economici della Federal Reserve.
  • Quantopian – Comunità di finanza quantitativa che offre una piattaforma gratuita per sviluppare algoritmi di trading. Include set di dati.
  • US Fundamentals Archive – 5 anni di dati fondamentali per 5000+ società statunitensi.

Insegna a una rete neurale a leggere la scrittura a mano

Le reti neurali e l’apprendimento profondo sono due storie di successo della moderna intelligenza artificiale. Hanno portato a grandi progressi nel riconoscimento delle immagini, nella generazione automatica del testo e persino nelle auto a guida autonoma.

Per essere coinvolti in questo campo eccitante, si dovrebbe iniziare con un set di dati gestibile.

La MNIST Handwritten Digit Classification Challenge è il classico punto di ingresso. I dati delle immagini sono generalmente più difficili da lavorare rispetto ai dati relazionali “piatti”. I dati MNIST sono adatti ai principianti e sono abbastanza piccoli da stare su un computer.

Il riconoscimento della scrittura a mano vi metterà alla prova, ma non richiede un’elevata potenza di calcolo.

Per iniziare, vi consigliamo il primo capitolo del tutorial qui sotto. Ti insegnerà come costruire una rete neurale da zero che risolva la sfida MNIST con alta precisione.

Tutorial

  • Reti neurali e apprendimento profondo (libro online) – Il capitolo 1 spiega come scrivere una rete neurale da zero in Python per classificare le cifre dal MNIST. L’autore dà anche un’ottima spiegazione dell’intuizione dietro le reti neurali.

Fonti dei dati

  • MNIST – MNIST è un sottoinsieme modificato di due set di dati raccolti dal National Institute of Standards and Technology degli Stati Uniti. Contiene 70.000 immagini etichettate di cifre scritte a mano.

Investigate Enron

Lo scandalo e il crollo di Enron è stato uno dei più grandi tracolli aziendali della storia.

Nel 2000, Enron era una delle più grandi compagnie energetiche in America. Poi, dopo essere stata scoperta per frode, è precipitata nella bancarotta nel giro di un anno.

Fortunatamente per noi, abbiamo il database delle e-mail di Enron. Contiene 500 mila email tra 150 ex dipendenti Enron, per lo più dirigenti. È anche l’unico grande database pubblico di email reali, il che lo rende più prezioso.

In effetti, gli scienziati dei dati hanno usato questo set di dati per l’istruzione e la ricerca per anni.

Esempi di progetti di machine learning per principianti che potresti provare includono…

  • Rilevamento delle anomalie… Mappare la distribuzione delle e-mail inviate e ricevute per ora e cercare di rilevare un comportamento anomalo che porta allo scandalo pubblico.
  • Analisi delle reti sociali… Costruire modelli di grafici di rete tra i dipendenti per trovare gli influenzatori chiave.
  • Elaborazione del linguaggio naturale… Analizza il corpo dei messaggi insieme ai metadati delle email per classificare le email in base ai loro scopi.

Fonti dei dati

  • Enron Email Dataset – Questo è l’archivio email della Enron ospitato dalla CMU.
  • Descrizione dei dati Enron (PDF) – Analisi esplorativa dei dati delle email Enron che potrebbe aiutarti a mettere le basi.

Scrivere algoritmi ML da zero

Scrivere algoritmi di apprendimento automatico da zero è un eccellente strumento di apprendimento per due ragioni principali.

In primo luogo, non c’è modo migliore per costruire una vera comprensione dei loro meccanismi. Sarete costretti a pensare ad ogni passo, e questo porta alla vera padronanza.

In secondo luogo, imparerete come tradurre istruzioni matematiche in codice funzionante. Avrete bisogno di questa abilità quando adatterete gli algoritmi dalla ricerca accademica.

Per iniziare, vi consigliamo di scegliere un algoritmo che non sia troppo complesso. Ci sono dozzine di decisioni sottili che dovrai prendere anche per gli algoritmi più semplici.

Dopo esserti trovato a tuo agio nella costruzione di algoritmi semplici, prova ad estenderli per ottenere maggiori funzionalità. Per esempio, provate ad estendere un algoritmo di regressione logistica vanilla in una regressione lasso/ridge aggiungendo parametri di regolarizzazione.

Infine, ecco un consiglio che ogni principiante dovrebbe conoscere: Non scoraggiatevi se il vostro algoritmo non è veloce o sofisticato come quelli dei pacchetti esistenti. Quei pacchetti sono il frutto di anni di sviluppo!

Tutorials

  • Python: Logistic Regression from Scratch
  • Python: k-Nearest Neighbors from Scratch
  • R: Logistic Regression from Scratch

Mine Social Media Sentiment

I social media sono quasi diventati sinonimo di “big data” a causa della grande quantità di contenuti generati dagli utenti.

Sfruttare questa ricchezza di dati può rivelarsi un modo senza precedenti per tenere il polso delle opinioni, delle tendenze e del sentimento pubblico. Facebook, Twitter, YouTube, WeChat, WhatsApp, Reddit… la lista continua.

Inoltre, ogni generazione trascorre sempre più tempo sui social media rispetto ai loro predecessori. Questo significa che i dati dei social media diventeranno ancora più rilevanti per il marketing, il branding e il business nel suo complesso.

Mentre ci sono molte piattaforme di social media popolari là fuori, Twitter è il classico punto di ingresso per praticare il machine learning.

Con i dati di Twitter, si ottiene un’interessante miscela di dati (contenuti dei tweet) e meta-dati (posizione, hashtag, utenti, re-tweets, ecc.) che aprono percorsi di analisi quasi infiniti.

Tutorials

  • Python: Mining Twitter Data – Come eseguire l’analisi del sentimento sui dati di Twitter
  • R: Sentiment analysis with machine learning – Breve e dolce tutorial sull’analisi del sentimento

Fonti di dati

  • Twitter API – La twitter API è una fonte classica di dati in streaming. È possibile tracciare i tweet, gli hashtag e altro ancora.
  • StockTwits API – StockTwits è come un twitter per i commercianti e gli investitori. È possibile espandere questo set di dati in molti modi interessanti unendolo a set di dati di serie temporali utilizzando il timestamp e il simbolo del ticker.

Migliorare l’assistenza sanitaria

Un altro settore che sta subendo rapidi cambiamenti grazie al machine learning è la salute globale e l’assistenza sanitaria.

Nella maggior parte dei paesi, diventare un medico richiede molti anni di istruzione. Si tratta di un campo impegnativo con lunghe ore, alte poste in gioco e una barriera ancora più alta per entrare.

Come risultato, c’è stato recentemente uno sforzo significativo per alleviare il carico di lavoro dei medici e migliorare l’efficienza complessiva del sistema sanitario con l’aiuto del machine learning.

I casi d’uso includono:

  • Cura preventiva… Prevedere l’insorgenza di malattie sia a livello individuale che di comunità.
  • Cura diagnostica… Classificare automaticamente i dati delle immagini, come scansioni, radiografie, ecc.
  • Assicurazione… Aggiustare i premi assicurativi sulla base di fattori di rischio pubblicamente disponibili.

Come gli ospedali continuano a modernizzare le cartelle cliniche dei pazienti e come noi raccogliamo dati sanitari più granulari, ci sarà un afflusso di opportunità di basso frutto per i data scientists per fare la differenza.

Tutorials

  • R: Costruire modelli di apprendimento automatico significativi per la previsione delle malattie
  • Machine Learning in Health Care – Ottima presentazione di Microsoft Research

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *