NETWORK INTELLIGENCE

Anno accademico 2024/2025 - Docente: Marco SIINO

Risultati di apprendimento attesi

Conoscenza degli aspetti teorici di base e avanzati dell'Intelligenza Artificiale applicata al dominio delle reti. Conoscenza completa della teoria sul Machine Learning. Conoscenza delle librerie e dei linguaggi maggiormente utilizzati per il Deep Learning.

Conoscenza e capacità di comprensione: Sfruttando le conoscenze acquisite, lo studente sarà in grado di applicare i fondamenti teorici inerenti lo sviluppo di modelli di Deep Learning per le telecomunicazioni e le reti.

Conoscenze e capacità di comprensione applicate: Sfruttando le competenze acquisite nel corso gli studenti saranno in grado di identificare i requisiti principali per lo specifico contesto applicativo e di individuare e progettare le soluzioni più appropriate.

Alla fine del corso gli studenti saranno in grado di individuare le migliori soluzioni per la progettazione e lo sviluppo di modelli di Intelligenza Artificiale da applicare al dominio delle reti.

Modalità di svolgimento dell'insegnamento

Didattica frontale/tradizionale.

Prerequisiti richiesti

Teoria della probabilità e variabili aleatoria, teoria dei segnali determinati e aleatori, schemi di modulazione analogica e i principali aspetti relativi alle modulazioni digitali (ASK, FSK, PSK) e alla codifica di canale. Fondamentali di statistica e analisi matematica.

Frequenza lezioni

Non obbligatoria.

Contenuti del corso

Tematiche: Il corso si suddivide in tre principali aree di interesse:

  1. Fondamenti di Machine Learning:

    • Introduzione al Machine Learning: definizioni, tecniche e algoritmi principali.
    • Apprendimento supervisionato e non supervisionato: classificazione, regressione, clustering.
    • Algoritmi classici: alberi decisionali, support vector machine, K-means, reti neurali di base.

  2. Deep Learning e reti neurali profonde:

    • Fondamenti di Deep Learning: reti neurali multilivello, funzioni di attivazione e backpropagation.
    • Architetture avanzate: reti neurali convoluzionali (CNN), reti ricorrenti (RNN), Long Short-Term Memory (LSTM).
    • Tecniche di addestramento e ottimizzazione: dropout, batch normalization, ottimizzatori come Adam e SGD.

  3. Reinforcement Learning e applicazioni:

    • Nozioni di base sul Reinforcement Learning: agenti, ambienti, ricompense e politiche di azione.
    • Algoritmi chiave: Q-learning, Deep Q-Networks (DQN), politiche attor-critico (A2C, PPO).
    • Applicazioni del RL nel networking: ottimizzazione delle risorse di rete, routing intelligente, gestione del traffico.

Applicazioni nel dominio delle reti: I partecipanti esploreranno l'applicazione delle tecniche sopra menzionate in contesti reali legati alle reti di comunicazione. Alcuni esempi includono:

  • Ottimizzazione delle prestazioni di rete: utilizzo di algoritmi ML per prevedere e migliorare la qualità del servizio.
  • Gestione del traffico: applicazione di DL e RL per l’allocazione dinamica delle risorse di rete.
  • Sicurezza delle reti: rilevamento di intrusioni e attacchi informatici attraverso modelli predittivi.
  • Automazione della rete: utilizzo del Reinforcement Learning per automatizzare il controllo di reti complesse.

Testi di riferimento

  • "Pattern Recognition and Machine Learning", Christopher M. Bishop
  • "Deep Learning", Ian Goodfellow, Yoshua Bengio e Aaron Courville
  • "Understanding Machine Learning: From Theory to Algorithms", Shai Shalev-Shwartz e Shai Ben-David
  • "Reinforcement Learning: An Introduction", Richard S. Sutton e Andrew G. Barto

Programmazione del corso

 ArgomentiRiferimenti testi
1Fondamenti di Machine Learning1,3
2Deep Learning e reti neurali profonde2
3Reinforcement Learning e applicazioni4
4Applicazioni di IA nel dominio delle reti

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

Written exam and oral exam.


Alternatively, developing a project and discussing it.


Verification of learning can also be carried out electronically, should conditions require it.

Esempi di domande e/o esercizi frequenti

  • Spiega la differenza tra apprendimento supervisionato e apprendimento non supervisionato, fornendo esempi di applicazioni nel contesto delle reti di comunicazione.
  • Come funziona l'algoritmo di Support Vector Machine (SVM) e in che modo può essere applicato per classificare traffico di rete?
  • Descrivi il processo di backpropagation in una rete neurale profonda e la sua importanza nell'addestramento del modello.
  • Quali sono le principali differenze tra reti neurali convoluzionali (CNN) e reti ricorrenti (RNN)? Fornisci un esempio di applicazione di ciascuna nel dominio delle reti.
  • In che modo l'algoritmo di Q-learning viene utilizzato nel Reinforcement Learning per gestire l'allocazione delle risorse di rete?
  • Spiega come il dropout e la batch normalization migliorano l'addestramento di una rete neurale profonda.
  • Come si può utilizzare il Deep Learning per migliorare la sicurezza delle reti e rilevare intrusioni?
  • Qual è il ruolo degli ottimizzatori come Adam o SGD nell'addestramento di modelli di Deep Learning, e come influenzano la convergenza?
  • Descrivi un'applicazione pratica del Reinforcement Learning nell'automazione delle reti.
  • Quali sfide presenta l'applicazione del Machine Learning nella gestione del traffico di rete in tempo reale?
  • ENGLISH VERSION