Cursusaanbod
De cursus is verdeeld in drie afzonderlijke dagen, waarvan de derde optioneel is.
Dag 1 - Machine Learning & Deep Learning: Theoretische concepten
1. Inleiding IA, Machine Learning & Deep Learning
- Geschiedenis, fundamentele concepten en gebruikelijke toepassingen van kunstmatige intelligentie ver van de fantasieën die door dit veld worden gedragen
- Collectieve intelligentie: het samenvoegen van kennis die door veel virtuele agenten wordt gedeeld
- Genetische algoritmen: het ontwikkelen van een populatie van virtuele agenten door selectie
- Machine Learning Gebruikelijk: definitie.
- Soorten taken: begeleid leren, leren zonder toezicht, versterkend leren
- Soorten acties: classificatie, regressie, clustering, dichtheidsschatting, dimensionaliteitsreductie
- Voorbeelden van algoritmes Machine Learning: Lineaire regressie, Naïeve Bayes, Random Tree
- Machine learning VS Deep Learning: problemen waarvoor de Machine Learning vandaag de dag nog steeds de stand van de techniek is (Random Forests & XGBoosts)
2. Fundamentele concepten van een neuraal netwerk (Toepassing: meerlaags perceptron)
- Herinnering aan wiskundige basisprincipes.
- Definitie van een neuraal netwerk: klassieke architectuur, activatie- en wegingsfuncties van eerdere activeringen, diepte van een netwerk
- Definitie van neurale netwerktraining: kostenfuncties, back-propagatie, stochastische gradiëntafdaling, maximale waarschijnlijkheid.
- Modellering van een neuraal netwerk: modellering van input- en outputgegevens volgens het type probleem (regressie, classificatie, enz.). Vloek van dimensionaliteit. Onderscheid tussen multi-feature data en signaal. Keuze van een kostenfunctie op basis van de gegevens.
- Benaderen van een functie door een neuraal netwerk: presentatie en voorbeelden
- Benaderen van een verdeling door een neuraal netwerk: presentatie en voorbeelden
- Data Augmentation: hoe balanceer je een dataset?
- Generalisatie van de resultaten van een neuraal netwerk.
- Initialisaties en regularisaties van een neuraal netwerk: L1/L2 regularisatie, Batch Normalisatie, enz.
- Optimalisaties en convergentie-algoritmen.
3. Gebruikelijke ML/DL-tools
Er is een eenvoudige presentatie gepland met voor- en nadelen, positie in het ecosysteem en gebruik.
- Tools voor gegevensbeheer: Apache Spark, Apache Hadoop
- Veelgebruikte tools Machine Learning: Numpy, Scipy, Sci-kit
- DL-frameworks op hoog niveau: PyTorch, Keras, Lasagne
- DL-frameworks op laag niveau: Theano, Torch, Caffe, Tensorflow
Dag 2 - Convolutionele en terugkerende netwerken
4. Convolutioneel Neural Networks (CNN).
- Presentatie van CNN's: fundamentele principes en toepassingen
- Fundamentele werking van een CNN: convolutionele laag, gebruik van een kernel, padding & stride, genereren van feature maps, pooling layers. 1D-, 2D- en 3D-extensies.
- Presentatie van de verschillende CNN-architecturen die de stand van de techniek op het gebied van beeldclassificatie hebben gebracht: LeNet, VGG Networks, Network in Network, Inception, Resnet. Presentatie van de innovaties van elke architectuur en hun meer globale toepassingen (1x1 convolutie of restverbindingen)
- Gebruik van een aandachtsmodel.
- Toepassing op een gemeenschappelijk classificatiescenario (tekst of afbeelding)
- CNN's voor generatie: superresolutie, pixel-tot-pixel segmentatie. Een overzicht van de belangrijkste strategieën voor het vergroten van functiekaarten voor het genereren van afbeeldingen.
5. Terugkerend Neural Networks (RNN).
- Presentatie van RNN's: fundamentele principes en toepassingen.
- Hoe de RNN werkt: verborgen activering, terugverspreiding door de tijd, uitgevouwen versie.
- Evolutie naar GRU (Gated Recurrent Units) en LSTM (Long Short Term Memory). Presentatie van de verschillende toestanden en de evoluties die deze architecturen met zich meebrengen
- Convergentieproblemen en gradiëntvervanising
- Soorten klassieke architecturen: Voorspelling van een tijdreeks, classificatie, enz.
- RNN Encoder Decoder architectuur. Gebruik van een aandachtsmodel.
- NLP-toepassingen: woord-/tekencodering, vertaling.
- Video-apps: Voorspel het volgende gegenereerde frame van een videosequentie.
Dag 3 - Generatiemodellen en Reinforcement Learning
6. Generatiemodellen: Variational AutoEncoder (VAE) en Generative Adversarial Networks (GAN).
- Presentatie van generatiemodellen, link met CNN's gezien in dag 2
- Auto-encoder: dimensionaliteitsreductie en beperkte generatie
- Variational Auto-encoder: generatiemodel en benadering van de distributie van een stuk data. Definitie en gebruik van latente ruimte. Truc voor herparametrering. Toepassingen en waargenomen beperkingen
- Generatieve vijandige netwerken: grondbeginselen. Architectuur met twee roosters (generator en discriminator) met afwisselend leren, kostenfuncties beschikbaar.
- Convergentie van een GAN en ondervonden moeilijkheden.
- Verbeterde convergentie: Wasserstein GAN, BeGAN. Bewegende afstand van de aarde.
- Toepassingen voor het genereren van afbeeldingen of foto's, het genereren van tekst,
resolutie.
7. Diep Reinforcement Learning.
- Overzicht van reinforcement learning: het besturen van een agent in een door de staat gedefinieerde omgeving en mogelijke acties
- Een neuraal netwerk gebruiken om de toestandsfunctie te benaderen
- Deep Q Learning: ervaar het opnieuw afspelen en toepassen op de besturing van een videogame.
- Optimalisaties van het leerbeleid. On-policy en off-policy. De architectuur van de acteurscriticus. A3C.
- Toepassingen: besturing van een eenvoudig videospel of een digitaal systeem.
Vereisten
Niveau ingénieur