domenica 23 febbraio 2025

Corso sulla Struttura dell’Intelligenza Artificiale: Progettare e addestrare un mini-modello


Progettare e addestrare un mini-modello

🎯 Obiettivo del modulo

Comprendere e sperimentare tutte le fasi necessarie per costruire e addestrare un modello di intelligenza artificiale semplice ma completo, utilizzando una rete neurale di tipo MLP (Multi-Layer Perceptron). Il modulo guida passo dopo passo nella realizzazione di un mini-engine per il training, includendo anche tecniche di miglioramento delle prestazioni come la normalizzazione, il dropout e l’early stopping. L’attività pratica culmina nell’allenamento di una mini-AI su dataset personalizzati.


📌 Contenuti dettagliati

🔧 Architettura MLP (Multi-Layer Perceptron)
  • Cos’è un MLP e perché è utile per problemi di classificazione e regressione.
  • Struttura base: input layer, hidden layer(s), output layer.
  • Attivazioni (ReLU, sigmoid, softmax) e funzione di output in base al compito.
  • Numero di neuroni e strati: come sceglierli e con quali criteri.
⚙️ Costruzione dell’engine di training
  • Forward pass: calcolo dell’output predetto dato l’input.
  • Loss function: scelta della funzione di perdita (MSE, cross-entropy) in base al tipo di compito.
  • Backward pass: calcolo dei gradienti tramite retropropagazione.
  • Ottimizzazione: aggiornamento dei pesi con gradient descent, SGD o Adam.
🧪 Tecniche per migliorare l’addestramento
  • Normalizzazione: scaling degli input (es. MinMax, Z-score) per velocizzare la convergenza.
  • Dropout: disattivazione casuale di neuroni durante il training per evitare overfitting.
  • Early stopping: interruzione automatica dell’addestramento quando non migliora più la validazione.
📊 Metriche e validazione
  • Accuracy, precision, recall, F1-score: come misurarle e quando usarle.
  • Divisione in training/validation/test set.
  • Visualizzazione delle curve di loss e accuratezza.

🧪 Laboratorio pratico – Allenare una mini-AI

Obiettivo: Costruire e addestrare una rete neurale MLP da zero (senza usare librerie avanzate come TensorFlow o PyTorch) su un dataset a scelta.

Dataset consigliati:

  • Classificazione emoji: data una parola o frase, predire l'emoji più coerente.
  • MNIST-like (cifre disegnate): classificazione di immagini semplici.
  • Sentiment Analysis: valutare se un testo è positivo o negativo.

Fasi del laboratorio:

  1. Definizione del dataset personalizzato.
  2. Preprocessing dei dati e normalizzazione.
  3. Costruzione della rete MLP in Python o pseudocodice.
  4. Definizione delle funzioni di forward, loss e backward.
  5. Implementazione dell’ottimizzazione (SGD o Adam).
  6. Aggiunta di dropout e early stopping.
  7. Addestramento e monitoraggio della rete.
  8. Valutazione delle prestazioni e visualizzazione dei risultati.

🧠 Competenze acquisite

  • Progettare una rete neurale MLP funzionale da zero.
  • Comprendere a fondo il processo di addestramento e ottimizzazione.
  • Saper applicare tecniche di regolarizzazione e metriche di validazione.
  • Allenare un modello su dati reali e interpretarne le performance.

Nessun commento:

Posta un commento

Come sopravvivere con l'informatica: Neurosimulators: deep learning ispirato al cervello

  📌 Neurosimulators: deep learning ispirato al cervello La prossima rivoluzione dell’intelligenza artificiale potrebbe arrivar...