Syllabus del Corso di Programmazione & Analisi Dati

Obiettivi del Corso:

  • Impartire una conoscenza approfondita di Python, dalle sue basi sintattiche alle strutture dati complesse, per sviluppare solide competenze di programmazione applicabili a vari ambiti.
  • Introdurre le fondamenta dell'analisi dei dati utilizzando Pandas e Numpy, consentendo ai partecipanti di manipolare, analizzare e accedere ai dati in modo efficace.
  • Esplorare tecniche avanzate di visualizzazione dei dati con Matplotlib e Seaborn, per comunicare risultati complessi attraverso grafici e diagrammi intuitivi.
  • Fornire una solida base nel machine learning con Python, attraverso l'uso di Scikit-learn per l'apprendimento supervisionato e non supervisionato, inclusi modelli di regressione e classificazione.
  • Approfondire metodi di data mining, clustering, e riduzione della dimensionalità, utilizzando Scikit-learn e Scipy, per scoprire pattern nascosti nei dati e migliorare la preparazione dei dati per il machine learning.
  • Preparare i partecipanti a gestire sfide reali nel campo dell'analisi dei dati e del machine learning, attraverso l'applicazione pratica delle competenze acquisite in progetti finali che integrano data mining, analisi dei dati e tecniche di machine learning.

Durata del Corso: 30 ore, suddivise in 20 lezioni da 1 ora e 30 minuti ciascuna.

________________________

Lezione 1: Introduzione a Python

• Panoramica del corso.
• Installazione di Python e configurazione dell’ambiente di sviluppo.
• Sintassi di base di Python: variabili, tipi di dati, operazioni.

Lezione 2: Strutture Dati in Python

• Liste, tuple, dizionari, set.
• Comprensioni di liste e dizionari.

Lezione 3: Controllo del Flusso

• Condizioni, cicli for e while.
• Istruzioni break, continue, pass.

Lezione 4: Funzioni e Moduli

• Definizione e chiamata di funzioni.
• Scopo delle variabili, parametri, valori di ritorno.
• Importazione di moduli e pacchetti.

Lezione 5: Gestione delle Eccezioni e File I/O

• Gestione delle eccezioni.
• Lettura e scrittura di file.

Lezione 6: Analisi dei Dati con Pandas e Numpy

• Installazione e configurazione di Pandas e Numpy.
• Serie e DataFrame: creazione, manipolazione, accesso ai dati.
• Operazioni matematiche e scientifiche con Numpy.

Lezione 7: Operazioni Avanzate con Pandas

• Operazioni sui DataFrame: filtraggio, ordinamento, aggregazione.
• Merge, join, concatenazione di DataFrame.

Lezione 8: Visualizzazione dei Dati

• Introduzione a Matplotlib e Seaborn.
• Creazione di grafici e visualizzazioni dei dati.

Lezione 9: Introduzione al Machine Learning con Python

• Panoramica del Machine Learning.
• Processo di apprendimento supervisionato e non supervisionato.

Lezione 10: Preprocessing dei Dati con Scikit-learn

• Gestione dei dati mancanti.
• Normalizzazione e standardizzazione dei dati.

Lezione 11: Data Mining e Esplorazione dei Dati

• Tecniche di data mining per la scoperta di pattern.
• Identificazione di outliers e pulizia dei dati.

Lezione 12: Clustering e Riduzione della Dimensionalità con Scikit-learn e Scipy

• K-Means, PCA (Principal Component Analysis).
• Uso di Scipy per metodi avanzati di clustering e analisi.

Lezione 13: Analisi Avanzata dei Dati e Visualizzazione

• Tecniche avanzate di visualizzazione dei dati.
• Esplorazione multidimensionale dei dati.

Lezione 14: Modelli di Regressione con Scikit-learn

• Regressione lineare e logistica.
• Valutazione dei modelli.

Lezione 15: Modelli di Classificazione con Scikit-learn

• K-Nearest Neighbors (KNN).
• Support Vector Machines (SVM), Decision Trees.

Lezione 16: Preparazione dei Dati per Machine Learning

• Tecniche di data preparation.
• Selezione delle caratteristiche e riduzione della dimensionalità.

Lezione 17: Sentiment Analysis e Data Mining

• Metodi di Sentiment Analysis.
• Applicazioni di data mining per l'analisi del sentiment.

Lezione 18: Topic Modeling e Classificazione del Testo

• Introduzione al Topic Modeling.
• Classificazione del testo con modelli ML.

Lezione 19: Applicazioni Pratiche di Machine Learning

• Caso studio: applicazioni reali di machine learning.
• Discussione su casi d'uso e best practices.

Lezione 20: Progetto Finale e Revisione

• Sviluppo di un progetto finale che incorpora tecniche di data mining, clustering e machine learning.
• Discussione dei progetti, feedback e revisione del corso.

________________________

Metodologia Didattica:

  • Lezioni interattive con dimostrazioni pratiche.
  • Esercizi pratici per consolidare le conoscenze.
  • Utilizzo di quiz e test per la valutazione dell'apprendimento.
  • Forum di discussione per il supporto tra pari e il chiarimento dei dubbi.

Materiale Fornito:

  • Slide delle lezioni.
  • Video tutorial.
  • Guide e risorse online selezionate.

Valutazione:

  • Compiti pratici per ogni modulo.
  • Partecipazione ai forum di discussione.
  • Progetto finale per valutare il raggiungimento degli obiettivi di apprendimento.