Schița de curs
Partea 1 – Concepte de Deep Learning și DNN
Introducere în AI, Machine Learning și Deep Learning
- Istoric, concepte de bază și aplicații uzuale ale inteligenței artificiale, dincolo de fanteziile asociate acestui domeniu
- Inteligența colectivă: agregarea cunoștințelor partajate de numeroși agenți virtuali
- Algoritmi genetici: pentru a evolua o populație de agenți virtuali prin selecție
- Machine Learning uzual: definiție.
- Tipuri de sarcini: supervised learning, unsupervised learning, reinforcement learning
- Tipuri de acțiuni: clasificare, regresie, clustering, estimarea densității, reducerea dimensionalității
- Exemple de algoritmi de Machine Learning: regresie liniară, Naive Bayes, Random Tree
- Machine learning vs Deep Learning: probleme la care Machine Learning rămâne și astăzi state of the art (Random Forests și XGBoosts)
Concepte de bază ale unei rețele neuronale (Aplicație: perceptron multi-strat)
- Reamintirea bazelor matematice.
- Definirea unei rețele de neuroni: arhitectură clasică, activare și
- Ponderarea activărilor anterioare, adâncimea unei rețele
- Definirea învățării unei rețele de neuroni: funcții de cost, back-propagation, coborâre de gradient stocastică, maximum likelihood.
- Modelarea unei rețele neuronale: modelarea datelor de intrare și de ieșire în funcție de tipul problemei (regresie, clasificare...). Curse of dimensionality.
- Distincția dintre datele multi-caracteristici și semnal. Alegerea unei funcții de cost în funcție de date.
- Aproximarea unei funcții printr-o rețea de neuroni: prezentare și exemple
- Aproximarea unei distribuții printr-o rețea de neuroni: prezentare și exemple
- Data Augmentation: cum să echilibrezi un set de date
- Generalizarea rezultatelor unei rețele de neuroni.
- Inițializarea și regularizarea unei rețele neuronale: regularizare L1 / L2, Batch Normalization
- Algoritmi de optimizare și convergență
Instrumente standard de ML / DL
Este planificată o prezentare simplă, cu avantaje, dezavantaje, poziție în ecosistem și utilizare.
- Instrumente de gestionare a datelor: Apache Spark, Apache Hadoop Tools
- Machine Learning: Numpy, Scipy, Sci-kit
- Framework-uri DL de nivel înalt: PyTorch, Keras, Lasagne
- Framework-uri DL de nivel scăzut: Theano, Torch, Caffe, Tensorflow
Rețele neuronale convoluționale (CNN).
- Prezentarea CNN-urilor: principii fundamentale și aplicații
- Funcționarea de bază a unui CNN: strat convoluțional, utilizarea unui kernel,
- Padding și stride, generarea hărților de caracteristici, straturi de pooling. Extensii 1D, 2D și 3D.
- Prezentarea diferitelor arhitecturi CNN care au adus state of the art în clasificare
- Imagini: LeNet, VGG Networks, Network in Network, Inception, Resnet. Prezentarea inovațiilor aduse de fiecare arhitectură și a aplicațiilor lor mai globale (convoluție 1x1 sau conexiuni reziduale)
- Utilizarea unui model de atenție.
- Aplicare la un caz comun de clasificare (text sau imagine)
- CNN-uri pentru generare: super-rezoluție, segmentare pixel-la-pixel. Prezentarea
- Principalele strategii pentru creșterea hărților de caracteristici pentru generarea de imagini.
Rețele neuronale recurente (RNN).
- Prezentarea RNN-urilor: principii fundamentale și aplicații.
- Funcționarea de bază a RNN-ului: activare ascunsă, back propagation through time, versiune desfășurată.
- Evoluții către Gated Recurrent Units (GRUs) și LSTM (Long Short Term Memory).
- Prezentarea diferitelor stări și a evoluțiilor aduse de aceste arhitecturi
- Probleme de convergență și vanishing gradient
- Arhitecturi clasice: predicția unei serii temporale, clasificare...
- Arhitectură de tip RNN Encoder Decoder. Utilizarea unui model de atenție.
- Aplicații NLP: codificare cuvinte / caractere, traducere.
- Aplicații video: predicția următoarei imagini generate dintr-o secvență video.
Modele generative: Variational AutoEncoder (VAE) și Generative Adversarial Networks (GAN).
- Prezentarea modelelor generative, legătura cu CNN-urile
- Auto-encoder: reducerea dimensionalității și generare limitată
- Variational Auto-encoder: model generativ și aproximarea distribuției unui dat. Definirea și utilizarea spațiului latent. Reparameterization trick. Aplicații și limite observate
- Generative Adversarial Networks: Fundamente.
- Arhitectură de rețea duală (Generator și discriminator) cu învățare alternativă, funcții de cost disponibile.
- Convergența unui GAN și dificultățile întâmpinate.
- Îmbunătățirea convergenței: Wasserstein GAN, Began. Earth Moving Distance.
- Aplicații pentru generarea de imagini sau fotografii, generarea de text, super-rezoluție.
Deep Reinforcement Learning.
- Prezentarea reinforcement learning: controlul unui agent într-un mediu definit
- Printr-o stare și acțiuni posibile
- Utilizarea unei rețele neuronale pentru a aproxima funcția de stare
- Deep Q Learning: experience replay și aplicare la controlul unui joc video.
- Optimizarea politicii de învățare. On-policy && off-policy. Arhitectură actor critic. A3C.
- Aplicații: controlul unui singur joc video sau al unui sistem digital.
Partea 2 – Theano pentru Deep Learning
Noțiuni de bază Theano
- Introducere
- Instalare și configurare
Funcții Theano
- inputs, outputs, updates, givens
Antrenarea și optimizarea unei rețele neuronale folosind Theano
- Modelarea rețelelor neuronale
- Regresie logistică
- Straturi ascunse
- Antrenarea unei rețele
- Calcul și clasificare
- Optimizare
- Log Loss
Testarea modelului
Partea 3 – DNN folosind Tensorflow
Noțiuni de bază TensorFlow
- Crearea, inițializarea, salvarea și restaurarea variabilelor TensorFlow
- Feeding, Reading și Preloading a datelor TensorFlow
- Cum să folosești infrastructura TensorFlow pentru a antrena modele la scară
- Vizualizarea și evaluarea modelelor cu TensorBoard
Mecanica TensorFlow
- Pregătește datele
- Descarcă
- Inputs și Placeholders
-
Construiește graful
- Inferență
- Pierdere
- Antrenare
-
Antrenează modelul
- Graful
- Sesiunea
- Bucla de antrenare
-
Evaluează modelul
- Construiește graful de evaluare
- Ieșirea evaluării
Perceptronul
- Funcții de activare
- Algoritmul de învățare al perceptronului
- Clasificare binară cu perceptronul
- Clasificarea documentelor cu perceptronul
- Limitările perceptronului
De la perceptron la Support Vector Machines
- Kernels și kernel trick
- Clasificare cu marjă maximă și vectori suport
Rețele neuronale artificiale
- Granițe de decizie neliniare
- Rețele neuronale artificiale feedforward și feedback
- Perceptroni multistrat
- Minimizarea funcției de cost
- Propagare înainte
- Back propagation
- Îmbunătățirea modului în care învață rețelele neuronale
Rețele neuronale convoluționale
- Obiective
- Arhitectura modelului
- Principii
- Organizarea codului
- Lansarea și antrenarea modelului
- Evaluarea unui model
Introduceri de bază care trebuie oferite pentru modulele de mai jos (introducere scurtă, în funcție de disponibilitatea de timp):
Tensorflow - Utilizare avansată
- Threading și Queues
- Distributed TensorFlow
- Scrierea documentației și partajarea modelului tău
- Personalizarea cititoarelor de date
- Manipularea fișierelor modelului TensorFlow
TensorFlow Serving
- Introducere
- Tutorial de bază pentru Serving
- Tutorial avansat pentru Serving
- Tutorial pentru Serving Inception Model
Cerințe
Cunoștințe de bază în fizică, matematică și programare. Implicare în activități de procesare a imaginilor.
Participanții ar trebui să aibă o înțelegere prealabilă a conceptelor de machine learning și să fi lucrat cu programarea Python și cu bibliotecile acestuia.
Mărturii (2)
Formarea a fost organizată și bine planificată, iar din ea am ieșit cu cunoștințe sistematizate și o perspectivă bună asupra temelor pe care le-am abordat.
Magdalena - Samsung Electronics Polska Sp. z o.o.
Curs - Deep Learning with TensorFlow 2
Tradus de catre o masina
Mi-a plăcut foarte mult finalul unde am avut ocazia să jucăm cu CHAT GPT. Sala nu era configuraționată cel mai bine pentru aceasta - ar fi fost mai util să avem câteva mese mici în loc de o masă mare, astfel încât să putem forma grupuri mai mici și să ne brainstorm-urim idei.
Nola - Laramie County Community College
Curs - Artificial Intelligence (AI) Overview
Tradus de catre o masina