Struttura del corso

Parte 1 – Deep Learning e concetti DNN

Introduzione AI, Machine Learning e Deep Learning

    Storia, concetti di base e applicazioni usuali dell'intelligenza artificiale lontano Delle fantasie portate da questo dominio Intelligenza Collettiva: aggregare la conoscenza condivisa da molti agenti virtuali Algoritmi genetici: per far evolvere una popolazione di agenti virtuali per selezione Abituale Learning Machine: definizione. Tipi di attività: apprendimento supervisionato, apprendimento non supervisionato, apprendimento per rinforzo Tipi di azioni: classificazione, regressione, clustering, stima della densità, riduzione della dimensionalità Esempi di algoritmi di Machine Learning: regressione lineare, Naive Bayes, Random Tree Machine learning VS Deep Learning: problemi su cui il Machine Learning rimane oggi lo stato dell'arte (Random Forests & XGBoosts)

 

Concetti di base di una rete neurale (Applicazione: percettrone multistrato)

    Richiamo alle basi matematiche. Definizione di una rete di neuroni: architettura classica, attivazione e Ponderazione delle attivazioni precedenti, profondità di una rete Definizione dell'apprendimento di una rete di neuroni: funzioni di costo, retropropagazione, discesa stocastica del gradiente, massima verosimiglianza. Modellazione di una rete neurale: modellazione dei dati di input e output in base al tipo di problema (regressione, classificazione...). Maledizione della dimensionalità. Distinzione tra dati multi-feature e segnale. Scelta di una funzione di costo in base ai dati. Approssimazione di una funzione da parte di una rete di neuroni: presentazione ed esempi Approssimazione di una distribuzione da parte di una rete di neuroni: presentazione ed esempi Data Augmentation: come bilanciare un dataset Generalizzazione dei risultati di una rete di neuroni. Inizializzazione e regolarizzazione di una rete neurale: regolarizzazione L1/L2, Batch Normalization Algoritmi di ottimizzazione e convergenza

 

Utensili ML / DL standard

È prevista una semplice presentazione con vantaggi, svantaggi, posizione nell'ecosistema e utilizzo.

    Strumenti di gestione dei dati: Apache Spark, Apache Hadoop Tools Apprendimento automatico: Numpy, Scipy, Sci-kit Quadri di alto livello DL: PyTorch, Keras, Lasagne Strutture DL di basso livello: Theano, Torch, Caffe, Tensorflow

 

Convoluzionale Neural Networks (CNN).

    Presentazione delle CNN: principi fondamentali e applicazioni Funzionamento di base di una CNN: livello convoluzionale, uso di un kernel, Padding & stride, generazione di feature map, pooling layer. Estensioni 1D, 2D e 3D. Presentazione delle diverse architetture CNN che hanno portato lo stato dell'arte nella classificazione Immagini: LeNet, VGG Networks, Network in Network, Inception, Resnet. Presentazione delle innovazioni apportate da ciascuna architettura e delle loro applicazioni più globali (Convoluzione 1x1 o connessioni residue) Uso di un modello di attenzione. Applicazione ad un caso di classificazione comune (testo o immagine) CNN per la generazione: super-risoluzione, segmentazione pixel-to-pixel. Presentazione di Principali strategie per aumentare le feature map per la generazione di immagini.

 

Ricorrente Neural Networks (RNN).

    Presentazione delle RNN: principi fondamentali e applicazioni. Funzionamento di base della RNN: attivazione nascosta, retropropagazione nel tempo, versione Unfolded. Evoluzioni verso le Gated Recurrent Units (GRU) e LSTM (Long Short Term Memory). Presentazione dei diversi stati e delle evoluzioni portate da queste architetture Problemi di convergenza e gradiente di vanizzazione Architetture classiche: predizione di una serie temporale, classificazione ... Architettura di tipo decodificatore RNN. Uso di un modello di attenzione. Applicazioni della PNL: codifica di parole/caratteri, traduzione. Applicazioni video: previsione della successiva immagine generata di una sequenza video.

Modelli generazionali: Variational AutoEncoder (VAE) e Generative Adversarial Networks (GAN).

    Presentazione dei modelli generazionali, collegamento con le CNN Auto-encoder: riduzione della dimensionalità e generazione limitata Auto-encoder variazionale: modello generazionale e approssimazione della distribuzione di un dato. Definizione e uso dello spazio latente. Trucco di riparametrizzazione. Applicazioni e limiti osservati Reti antagoniste generative: fondamenti. Doppia architettura di rete (generatore e discriminatore) con apprendimento alternativo, funzioni di costo disponibili. Convergenza di un GAN e difficoltà incontrate. Convergenza migliorata: Wasserstein GAN, Inizio. Distanza di movimento della terra. Applicazioni per la generazione di immagini o fotografie, generazione di testi, super-risoluzione.

Profondo Reinforcement Learning.

    Presentazione del reinforcement learning: controllo di un agente in un ambiente definito Da uno stato e dalle possibili azioni Uso di una rete neurale per approssimare la funzione di stato Deep Q Learning: replay dell'esperienza e applicazione al controllo di un videogioco. Ottimizzazione della politica di apprendimento. Politica in linea e fuori politica. Attore critico architettura. A3C. Applicazioni: controllo di un singolo videogioco o di un sistema digitale.

 

Parte 2 – Theano per Deep Learning

Nozioni di base su Theano

    Introduzione Installazione e configurazione

Funzioni Theano

    ingressi, uscite, aggiornamenti, dati

Addestramento e ottimizzazione di una rete neurale con Theano

    Modellazione di reti neurali Regressione logistica Livelli nascosti Formazione di una rete Calcolo e classificazione Ottimizzazione Perdita di log

Test del modello

Parte 3 – DNN con Tensorflow

TensorFlow Nozioni di base

    Creazione, inizializzazione, salvataggio e ripristino di TensorFlow variabili Alimentazione, lettura e precaricamento TensorFlow dei dati Come usare l'infrastruttura TensorFlow per addestrare i modelli su larga scala Visualizzazione e valutazione dei modelli con TensorBoard

TensorFlow Meccanica

    Preparare i dati Scaricare Ingressi e segnaposto Costruisci il GraphS Inferenza Perdita Formazione
Eseguire il training del modello Il grafico
  • La Sessione
  • Anello del treno
  • Valutare il modello Costruisci il grafico di valutazione
  • Uscita di valutazione
  • Skynjarinn
  • Funzioni di attivazione L'algoritmo di apprendimento del percettrone Classificazione binaria con il percettrone Classificazione dei documenti con il percettrone Limitazioni del percettrone
  • Dal percettrone alle macchine vettoriali di supporto

      I kernel e il trucco del kernel Classificazione dei margini massimi e vettori di supporto

    Artificiale Neural Networks

      Limiti decisionali non lineari Reti neurali artificiali feedforward e feedback Percettroni multistrato Minimizzazione della funzione di costo Propagazione diretta Propagazione a ritroso Migliorare il modo in cui le reti neurali apprendono

    Convoluzionale Neural Networks

      Goals Architettura del modello Principi Organizzazione del codice Lancio e addestramento del modello Valutazione di un modello

     

      Introduzioni di base da fornire ai seguenti moduli (Breve introduzione da fornire in base alla disponibilità di tempo):

    Tensorflow - Utilizzo avanzato

    Threading e code Distribuito TensorFlow Scrittura della documentazione e condivisione del modello Personalizzazione dei lettori di dati Manipolazione di TensorFlow file di modello

    TensorFlow Servire

      Introduzione Tutorial di base sul servizio Esercitazione sulla pubblicazione avanzata Esercitazione sul modello di pubblicazione Inception

    Requisiti

    Background in fisica, matematica e programmazione. Coinvolgimento in attività di elaborazione delle immagini.

    I delegati devono avere una conoscenza preliminare dei concetti di apprendimento automatico e devono aver lavorato su Python programmazione e librerie.

      35 ore
     

    Numero di Partecipanti


    Data Inizio

    Data Fine


    Le date sono soggette a disponibilità e si svolgono tra le 09:30 e le 16:30.
    I corsi di formazione pubblici richiedono più di 5 partecipanti.

    Corsi relativi

    Categorie relative