Modulo 1: Introduzione all’Intelligenza Artificiale e Machine Learning
Obiettivi: Comprendere i concetti di base, la storia e le applicazioni dell’IA e del Machine Learning.
Contenuti:
- Definizione e storia dell’Intelligenza Artificiale
- Tipologie di IA (debole, forte)
- Introduzione al Machine Learning: apprendimento supervisionato, non supervisionato e per rinforzo
- Panoramica sugli strumenti e librerie di Machine Learning (Python, Scikit-learn, TensorFlow, PyTorch)
Attività pratica:
- Ricerca di articoli e discussione online sulle applicazioni attuali dell’IA in diversi settori.
- Installazione dell’ambiente di sviluppo (Python, Jupyter Notebook, librerie).
- Attività asincrona: Quiz online per valutare la comprensione dei concetti introduttivi.
Modulo 2: Fondamenti di Machine Learning
Obiettivi: Acquisire familiarità con i concetti chiave e gli algoritmi principali di Machine Learning.
Contenuti:
- Preprocessing dei dati: gestione dei dati mancanti, normalizzazione, encoding
- Algoritmi di classificazione: regressione lineare, K-NN, Naive Bayes
- Metriche di valutazione dei modelli: precisione, accuratezza, F1-score
- Concetto di overfitting e underfitting
Attività pratica:
- Preprocessing di un dataset reale (es. dataset Iris) con tecniche di gestione dei dati mancanti e normalizzazione.
- Implementazione di un semplice algoritmo di classificazione (K-NN) e valutazione delle sue performance su un dataset fornito.
- Discussione online dei risultati e feedback dal docente.
Modulo 3: Apprendimento Supervisionato
Obiettivi: Approfondire tecniche avanzate di apprendimento supervisionato.
Contenuti:
- Decision Trees, Random Forest e Support Vector Machines (SVM)
- Regolarizzazione: Lasso, Ridge, Elastic Net
- Cross-validation e tecniche di tuning degli iperparametri
Attività pratica:
- Laboratorio online: Implementazione di una Random Forest e di un modello SVM con Scikit-learn su un dataset reale (es. Titanic dataset).
- Sessione di gruppo: Eseguire cross-validation e tuning degli iperparametri, con condivisione dei risultati durante un webinar di revisione.
- Compito a casa: Creare un report scritto con analisi dei risultati e miglioramenti possibili.
Modulo 4: Apprendimento Non Supervisionato
Obiettivi: Comprendere le tecniche di clustering e riduzione dimensionale.
Contenuti:
- Algoritmi di clustering: K-means e clustering gerarchico
- Riduzione dimensionale: PCA (Principal Component Analysis) e t-SNE
Attività pratica:
- Implementazione pratica: Eseguire un clustering K-means su un dataset (es. MNIST) e visualizzare i risultati con PCA o t-SNE.
- Sessione collaborativa: Confrontare e discutere i risultati del clustering durante una sessione di revisione in tempo reale.
- Quiz interattivo online per testare la comprensione delle tecniche di clustering.
Modulo 5: Introduzione al Deep Learning
Obiettivi: Fornire una panoramica delle reti neurali e delle loro applicazioni.
Contenuti:
- Architettura delle Reti Neurali Artificiali (ANN)
- Algoritmi di ottimizzazione (SGD, Adam)
- Introduzione alle Reti Neurali Convoluzionali (CNN) e alle Reti Neurali Ricorrenti (RNN)
- Strumenti per il Deep Learning: TensorFlow e PyTorch
Attività pratica:
- Laboratorio pratico: Implementazione di una rete neurale di base (MLP) utilizzando TensorFlow su un dataset di classificazione di immagini (es. MNIST).
- Discussione asincrona: Analisi comparativa dei modelli sviluppati dai diversi studenti in un forum online.
- Attività asincrona: Video tutorial su CNN e RNN, con esercizi di codifica guidati.
Modulo 6: Tecniche Avanzate di Deep Learning
Obiettivi: Approfondire le reti neurali profonde e le tecniche avanzate.
Contenuti:
- Reti Neurali Profonde (DNN)
- Transfer Learning e modelli pre-addestrati
- Generative Adversarial Networks (GAN)
- Introduzione all’Apprendimento per Rinforzo (Reinforcement Learning)
Attività pratica:
- Laboratorio online: Implementazione di Transfer Learning con un modello pre-addestrato (es. ResNet) su un dataset di immagini.
- Esercizio guidato: Creare una semplice GAN per generare immagini sintetiche.
- Attività asincrona: Studio autonomo sull’apprendimento per rinforzo con un video introduttivo e quiz di verifica.
Modulo 7: Intelligenza Artificiale Applicata
Obiettivi: Esplorare applicazioni reali dell’IA in diversi settori.
Contenuti:
- IA in sanità, industria, marketing e altre applicazioni
- IA per il riconoscimento vocale e la traduzione automatica
- Sistemi di raccomandazione
Attività pratica:
- Progetto di gruppo: Creazione di un sistema di raccomandazione utilizzando tecniche di filtraggio collaborativo e valutazione in un ambiente di laboratorio online.
- Sessione di gruppo live: Presentazione dei progetti di gruppo durante una sessione online con feedback in tempo reale.
Modulo 8: Etica e Regolamentazione dell’Intelligenza Artificiale
Obiettivi: Comprendere le implicazioni etiche e legali dello sviluppo e utilizzo dell’IA.
Contenuti:
- Bias nei modelli di IA
- Trasparenza e responsabilità nell’IA
- Normative e regolamentazioni internazionali
Attività pratica:
Discussione online di casi studio: Analisi delle implicazioni etiche in scenari reali di IA (es. riconoscimento facciale, bias nei modelli).
- Forum di discussione asincrono: Discutere potenziali soluzioni per affrontare problemi etici legati all’IA.
Modulo 9: Progetto Finale e Revisione
Obiettivi: Mettere in pratica le competenze acquisite attraverso un progetto finale.
Contenuti:
- Sviluppo di un progetto completo su un tema scelto (classificazione, clustering, riconoscimento di immagini, etc.).
- Presentazione online del progetto finale e discussione dei modelli e delle tecniche utilizzate.
Attività pratica:
- Lavoro individuale o di gruppo sul progetto.
- Revisione con il docente: Sessioni di feedback in tempo reale su progetti individuali o di gruppo tramite videoconferenze.
- Sessione finale: Presentazione online del progetto con domande e risposte dal gruppo e feedback finale.
Materiale e Strumenti Necessari:
- Python, Jupyter Notebook, librerie: Scikit-learn, TensorFlow, PyTorch
- Dataset pubblici per esercitazioni (es. MNIST, CIFAR-10, Iris dataset)
- Piattaforme di apprendimento online per videoconferenze, forum di discussione e quiz (es. Zoom, Google Classroom, Moodle)
Metodologia Didattica:
- Lezioni online in diretta e video registrati per lo studio asincrono.
- Esercitazioni pratiche su piattaforme di coding condivise (Google Colab, Jupyter Notebook in cloud).
- Forum di discussione e sessioni di revisione online.
- Progetti individuali e di gruppo con feedback continuo.