Corso Python per l’analisi dei dati

corso python

Il mio corso di Python ha l’obiettivo di insegnarti a programmare con successo modelli di machine learning tramite il linguaggio Python e le sue più famose librerie. Voglio insegnarti questo linguaggio attraverso la pratica diretta su veri problemi di Machine Learning, accompagnandoti lungo l’intera filiera di lavorazione dal dato.

Il linguaggio Python è famoso per la sua leggerezza sintattica e semplicità. Inoltre l’esistenza di librerie come Pandas e Numpy permettono di risolvere problemi frequenti della programmazione con letteralmente una linea di codice. Per questi motivi, almeno inizialmente, la curva di apprendimento in Python è generalmente più ripida rispetto ad altri linguaggi. Di conseguenza è particolarmente adatto anche a chi non ha solide basi di programmazione ma, per esigenze lavorative o per volontà personale, vuole studiare e applicare le tecniche di machine learning e di analisi predittive dei dati.

Parto da zero. Il corso mi sarà comunque utile?

Ho tenuto questo corso sia per studenti che non avevano mai programmato in precedenza e sia per studenti che provenivano da altri linguaggi (ad esempio R). In tutti i casi sono rimasti sempre piacevolmente sorpresi da quanto alcune operazioni risultassero comprensibili e immediate. Attenzione, non sto dicendo che programmare in Python è facile e che dopo un’ora del mio corso sarai pronto a creare un’intelligenza artificiale. Programmare è un’arte che richiede un lungo e duro studio, molto esercizio, pratica e aggiornamento costanti nel tempo. Sto dicendo invece, che con il nostro reciproco impegno, mio da docente e tuo da studente, si può riuscire in tempistiche ragionevoli ad acquisire tutta una serie di competenze utili e applicabili, sia per scopi personali e sia per il mondo del lavoro.

L’obiettivo del corso è quello di “insegnarti a fare”. Personalmente non ritengo utile strutturare il programma del corso con il classico paradigma: introduzione al linguaggio, le variabili, le stringhe, le tuple, le liste, i dizionari, le classi, eccetera.  Ciò può essere sicuramente utile a un programmatore già esperto in un altro linguaggio, per analizzare le differenze e le analogie tra i costrutti e le implementazioni in Python rispetto a quanto già fa ad esempio in Java. Ma per altre tipologie di studenti c’è l’elevato rischio di finire il corso e aver imparato a fare poco o niente.

Mi spiego meglio: alla fine del mio corso vorrei che, se qualcuno ti chiedesse cosa hai imparato, tu rispondessi qualcosa del tipo:

“ad acquisire dati da svariate fonti, importarle in Python, trasformarle e ricombinarle per renderle idonee ai miei scopi, applicare algoritmi di machine learning, valutarne l’accuratezza e rappresentare le informazioni con dei grafici”

e non

“ho imparato la differenza tra tuple e liste, ad aggiungere un nuovo elemento nella posizione iniziale della lista e a creare i DataFrame che so essere utili per il machine learning”

A scanso di equivoci, ritengo fondamentale conoscere anche questi concetti più astratti e nel corso li tratterò molto spesso. Ma ritengo che dal punto di vista didattico e cognitivo, agli studenti risulti molto più utile e gratificante imparare e parlare di come acquisire un file salvato su una pagina web (e per far questo introdurre man mano i vari concetti teorici) invece di utilizzare due ore per parlare di tutte le possibili operazioni ammissibili su un array. Per questo fine riterrei molto più utile studiare gratuitamente una guida dal sito html.it, invece che rivolgersi e pagare un docente.

Con queste premesse metodologiche, vi illustrerò nel prossimo paragrafo cosa andremo a imparare nel corso.

Il programma del corso “Python”

Python è oggi utilizzato in moltissime applicazioni: creazione di interfacce, sviluppo di siti web, programmazione di rete. Questo corso si focalizza su un unico particolare aspetto: utilizzare Python per l’analisi dei dati e con un focus particolare sulla creazione di modelli di Machine Learning. Questa sta diventando una competenza fondamentale per chiunque lavori nel mondo della Data Science e più in generale per chiunque abbia necessità di svolgere analisi predittive sui dati. Tutto il programma del corso si focalizza sul come guidarti passo per passo nella filiera di lavorazione dei dati.

Acquisizione dei dati

Partiremo dunque imparando a importare in Python dati provenienti da svariate fonti:

  • semplici file .csv
  • file Excel
  • file json
  • file pdf non strutturati
  • database relazionali come Sql Server
  • database non relazionali come MongoDB
  • file html e pagine web

analizzando in ogni caso come gestire le problematiche più frequenti e importanti.

Analisi descrittiva

Una volta acquisiti i dati, prima di passare al Machine Learning, sarà fondamentale conoscere come svolgere su Python e in particolare con la libreria Pandas tutte le attività di analisi descrittiva e dichiarativa dei dati. Per task del genere l’utilizzo del linguaggio SQL e di un database relazionale risulta più che sufficiente, oltre che in generale più semplice e performante. Tuttavia molto spesso all’interno di un progetto di Machine learning nasceranno esigenze di questo tipo, quando i dati sono ormai già stati importati in Python.

Risulta dunque fondamentale imparare a svolgere operazione di filtro, aggregazione, trasformazione e integrazione di dati. Inoltre non vorrei mai che un mio studente esca dal corso in grado di applicare un algoritmo di random forest per classificare una variabile target, ma non sappia come contare il numero di clienti per ogni regione a partire da un semplice file csv.

Preprocessing

Per utilizzare con efficacia gli algoritmi di Machine Learning è necessario sottoporre i dati a una serie di operazioni di pre-processamento indispensabili per la corretta esecuzione dei modelli. In questa fase impareremo tra l’altro a

  • codificare la variabile target
  • codificare le variabili categoriche
  • normalizzare i dati
  • gestire i dati mancanti
  • dividere i dati in un insieme di training e un insieme di test
  • selezionare o accorpare le variabili di input

Studio e implementazione del Perceptron

A questo punto potremo concentrarci finalmente sul Machine Learning. Descriveremo nel dettaglio il primo algoritmo del Perceptron, la cui ideazione è risalente addirittura alla fine degli anni cinquanta, che negli ultimi anni ha avuto un enorme successo grazie alla potenza computazionale dei nuovi computer e all’immensa disponibilità dei dati da parte delle aziende. A questo link https://www.iltascabile.com/scienze/origini-intelligenza-artificiale/ trovi un bell’articolo per approfondire.

Ti anticipo che qui ci sarà bisogno di un po’ di matematica, in particolare di algebra lineare, ma niente di difficile non preoccuparti. Se vuoi iniziare a dare un ripasso scarica gratuitamente i miei appunti che ho scritto appositamente.

Implementeremo l’algoritmo direttamente su Python e lo utilizzeremo per fare le nostre prime analisi predittive!

Esecuzione di algoritmi di classificazione supervisionata

A questo punto vedremo come usare altri algoritmi simili al Perceptron senza doverli per forza implementare tutti manualmente su Python. Utilizzeremo a questo scopo la famosa libreria Scikit-Learn per eseguire classificazioni con vari algoritmi, di cui analizzeremo proprietà e parametri. Useremo ad esempio:

  • la regressione logistica
  • la discesa stocastica del gradiente
  • gli alberi di decisioni
  • le random forest
  • l’algoritmo knn

Impareremo infine a valutare l’accuratezza di questi algoritmi e l’attendibilità dei risultati in riferimento a particolari problemi.

Informazioni generali

Modalità di erogazione: in diretta streaming con software di videoconferenza

Durata edizione one-to-one (lezioni ristrette a un solo partecipante): consiglio un minimo di 20 ore, da rivalutare in base ai propri obiettivi didattici

Costo edizione one-to-one (lezioni ristrette a un solo partecipante): 900€ per un corso di 20 ore. Nel prezzo è compreso in omaggio anche il Video-corso completo di Data Analysis, composto da 50+ ore di video lezione su 9 aree formative, 5 guide step by step alla creazione di un portfolio di analisi dei dati e vari progetti da svolgere in autonomia su cui ricevere feedback personalizzati.

Durata edizione aziendale (lezioni per partecipanti della stessa azienda): da definire in una call in base al numero di partecipanti e alle esigenze didattiche

Costo edizione aziendale (lezioni per partecipanti della stessa azienda): 60€/h

Data di partenza del corso: entro un mese circa dalla richiesta

Calendario: concordato con lo studente o l’azienda

Possibilità di registrare le lezioni per uso didattico:

Prerequisiti: nessuno

Tutti i prezzi di questa pagina sono esenti iva (iva allo 0%) in quanto erogati nell’ambito del regime fiscale forfettario.

Contattami

CAPTCHA immagine

Questo ci aiuta a prevenire lo spam, grazie.

Torna in alto
Torna su