Informazioni amministrative
Titolo | Propagazione in avanti |
Durata | 60 |
Modulo | B |
Tipo di lezione | Esercitazione |
Focus | Tecnico — Apprendimento profondo |
Argomento | Pass in avanti |
Parole chiave
Passo avanti, perdita,
Obiettivi di apprendimento
- Comprendere il processo di un forward pass
- Capire come calcolare una previsione forward pass, così come la perdita scollegata
- Sviluppare un forward pass utilizzando nessun modulo in Python (diverso da Numpy)
- Sviluppare un forward pass utilizzando Keras
Preparazione prevista
Eventi di apprendimento da completare prima
Obbligatorio per gli studenti
Nessuno.
Facoltativo per gli studenti
- Moltiplicazione delle matrici
- Iniziare con Numpy
- Conoscenza della regressione lineare e logistica ([Lecture: Regressione lineare]
Referenze e background per gli studenti
- John D. Kelleher e Brain McNamee (2018), Fondamenti dell'apprendimento automatico per l'analisi predittiva dei dati, MIT Press.
- Michael Nielsen. (2015), Reti neurali e apprendimento profondo, 1. Pressa di determinazione, San Francisco CA USA.
- Charu C. Aggarwal. (2018), Reti neurali e apprendimento profondo, 1. Springer
- Antonio Gulli, Sujit Pal. Apprendimento profondo con Keras, Packt, [ISBN: 9781787128422].
Consigliato per gli insegnanti
Nessuno.
Materiale didattico
- [Problema 1 (immagine)]
- [Problema 2 e problema 3 (HTML)]
- Problema 2 e problema 3 (.ipynb)
Istruzioni per gli insegnanti
- Questo tutorial introdurrà gli studenti ai fondamenti della propagazione in avanti per una rete neurale artificiale. Questo tutorial consisterà in un passaggio avanti usando penna e carta, usando Python con solo la libreria Numpy (per la manipolazione delle matrici) e quindi usando KERAS. Questo si baserà sulla comprensione fondamentale di quali funzioni di attivazione si applicano a specifici contesti problematici e di come le funzioni di attivazione differiscono nella complessità computazionale e l'applicazione da penna e carta, per codificare da zero utilizzando Numpy e quindi utilizzando un modulo di alto livello -> Keras.
- Agli studenti saranno presentati tre problemi:
- Problema 1: (Esempio 1 della lezione -> Immagine sul RHS di questo WIKI) e chiesto di condurre un forward pass utilizzando i seguenti parametri (20 minuti per completare):
- Funzione di attivazione sigmoide per il livello nascosto
- Funzione di attivazione sigmoide per lo strato esterno
- Funzione di perdita di MSE
- Problema 2: (Esempio 1 della lezione), agli studenti verrà chiesto (con guida a seconda della precedente esperienza di codifica) di sviluppare una rete neurale da zero utilizzando solo il modulo Numpy, e i pesi e le funzioni di attivazione dal problema 1 (che sono gli stessi dell'esempio 1 della lezione (20 minuti per completare).
- Problema 3: (Esempio 1 della lezione e utilizzando lo stesso esempio ma pesi casuali), agli studenti verrà chiesto (con guida a seconda dell'esperienza di codifica precedente) di sviluppare una rete neurale utilizzando il modulo Tensorflow 2.X con il modulo Keras inbuild, e i pesi e le funzioni di attivazione dal problema 1, e quindi utilizzando pesi casuali (che sono gli stessi dell'esempio 1 della lezione: 20 minuti per completare).
- Problema 1: (Esempio 1 della lezione -> Immagine sul RHS di questo WIKI) e chiesto di condurre un forward pass utilizzando i seguenti parametri (20 minuti per completare):
- Il sottoobiettivo di questi tre Problemi, è quello di far abituare gli studenti alla struttura e all'applicazione di concetti fondamentali (funzioni di attivazione, topologia e funzioni di perdita) per l'apprendimento profondo.
- Keras e TensorFlow 2.X sono utilizzati e saranno utilizzati per tutti gli esempi futuri.
Contorno
Durata (min) | Descrizione |
---|---|
20 | Problema 1: Applicazione penna e carta di un forward pass (esempio dalla lezione) |
20 | Problema 2: Sviluppo di una rete neurale da zero utilizzando Numpy (esempio dalla lezione) |
10 | Problema 3: Sviluppo di una rete neurale dall'utilizzo di Keras (esempio dalla lezione con pesi impostati e pesi casuali) |
10 | Riepilogo sul processo forward pass |
Riconoscimenti
Il programma Human-Centered AI Masters è stato co-finanziato dal meccanismo per collegare l'Europa dell'Unione europea nell'ambito della sovvenzione CEF-TC-2020-1 Digital Skills 2020-EU-IA-0068.