Schița de curs
Partea 1 – Concepte de Deep Learning și DNN
Introducere AI, Machine Learning & Deep Learning
- Istoria, conceptele de bază și aplicațiile obișnuite ale inteligenței artificiale, acolo unde fantasii domeniului sunt depășite
- Inteligența colectivă: agregarea cunoștințelor împărtășite de mai mulți agenți virtuali
- Algoritmi genetici: evoluția unei populații de agenți virtuali prin selecție
- Machine Learning obișnuită: definiție.
- Tipuri de sarcini: învățare supravegheată, învățare ne-supravegheată, învățare prin întăriri
- Tipuri de acțiuni: clasificare, regresie, grupare, estimarea densității, reducerea dimensionalității
- Exemple de algoritmi Machine Learning: Regresia liniară, Naive Bayes, Random Tree
- Machine learning VS Deep Learning: problemele pentru care Machine Learning rămâne astăzi la stație (Random Forests & XGBoosts)
Concepte de bază ale unei rețele neuronale (Aplicație: perceptron multi-strat)
- Reamintirea bazelor matematice.
- Definiția unei rețele neuronale: arhitectură clasică, activare și
- ponderarea activărilor anterioare, adâncimea unei rețele
- Definiția învățării unei rețele neuronale: funcții de cost, back-propagation, descendentă gradient stochastică, maximizarea verosimilitudinii.
- Modelarea unei rețele neuronale: modelarea datelor de intrare și iesire în funcție de tipul problemei (regresie, clasificare ...). Cursesul dimensionalității.
- Diferența dintre date multi-feature și semnal. Alegerea unei funcții de cost în funcție de date.
- Aproximarea unei funcții prin rețea neuronală: prezentare și exemple
- Aproximarea unei distribuții prin rețea neuronală: prezentare și exemple
- Augmentarea datelor: cum să echilibrați un set de date
- Generalizarea rezultatelor unei rețele neuronale.
- Inițializarea și regularizarea unei rețele neurona: L1 / L2 regularizare, Normalizarea Batch
- Algoritmi de optimizare și convergență
Unelte standard ML / DL
O prezentare simplă cu avantaje, dezavantaje, poziție în ecosistem și utilizare este planificată.
- Unelte de gestionare a datelor: Apache Spark, Apache Hadoop
- Machine Learning: Numpy, Scipy, Sci-kit
- Framework-uri de nivel înalt DL: PyTorch, Keras, Lasagne
- Framework-uri de nivel scăzut DL: Theano, Torch, Caffe, Tensorflow
Rețele Neuronale Convoluționale (CNN).
- Prezentarea CNN-urilor: principii fundamentale și aplicații
- Funcționarea de bază a unei CNN: stratul convoluțional, utilizarea unui kernel,
- Padding & stride, generarea hărții caracteristicilor, straturile de pooling. Extensii 1D, 2D și 3D.
- Prezentarea arhitecturilor diferite ale CNN care au adus la stația stării în clasificare
- Imagini: LeNet, VGG Networks, Network in Network, Inception, Resnet. Prezentarea inovațiilor aduse de fiecare arhitectură și a aplicațiilor lor mai largi (Convolution 1x1 sau conexiuni reziduale)
- Utilizarea unui model cu atenție.
- Aplicație la un caz de clasificare comun (text sau imagine)
- CNN-uri pentru generație: super-rezoluție, segmentare pixel-to-pixel. Prezentarea
- Strategiile principale de creștere a hărților caracteristicelor pentru generația imaginilor.
Rețele Neuronale Recurente (RNN).
- Prezentarea RNN-urilor: principii fundamentale și aplicații.
- Funcționarea de bază a RNN: activarea ascunsă, back propagation through time, versiunea 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
- Problemele de convergență și vanishing gradient
- Arhitecturi clasice: predicția unei serii temporale, clasificare ...
- Arhitectură de tip RNN Encoder Decoder. Utilizarea unui model cu atenție.
- Aplicații NLP: codificare a cuvintelor / caracterelor, 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-uri
- Auto-encoder: reducerea dimensionalității și generația limitată
- Variational Auto-encoder: model generativ și aproximarea distribuției unei date. Definiția și utilizarea spațiului latent. Reparametrizarea truc. Aplicații și limitări observate
- Generative Adversarial Networks: Fundamente.
- Arhitectura duală (Generator și discriminator) cu învățare alternativă, funcții de cost disponibile.
- Convergența unei GAN și dificultățile întâmpinate.
- Convergență îmbunătățită: Wasserstein GAN, Began. Distanța Earth Moving.
- Aplicații pentru generația de imagini sau fotografii, generația de text, super-rezoluție.
Deep Reinforcement Learning.
- Prezentarea învățării prin întăriri: controlul unui agent într-un mediu definit
- Prin stari și acțiuni posibile
- Utilizarea unei rețele neurona pentru aproximarea funcției de stare
- Deep Q Learning: experiența replay, și aplicația la controlul unui joc video.
- Optimizarea politicii de învățare. On-policy && off-policy. Arhitectură Actor critic. A3C.
- Aplicații: controlul unui joc video sau a unui sistem digital.
Partea 2 – Theano pentru Deep Learning
Bazele Theano
- Introducere
- Instalare și configurare
TheanoFunctions
- intrări, ieșiri, actualizări, givens
Antrenarea și optimizarea unei rețele neurona folosind Theano
- Modelarea rețelei neurone
- Regresia logistică
- Straturi ascunse
- Antrenarea unei rețele
- Calcul și clasificare
- Optimizare
- Log Loss
Testarea modelului
Partea 3 – DNN folosind Tensorflow
Bazele TensorFlow
- Crearea, inițializarea, salvarea și restaurarea variabilelor TensorFlow
- Hranirea, citirea și preîncărcarea datelor TensorFlow
- Cum să folosiți infrastructura TensorFlow pentru a antrena modele la scară largă
- Vizualizarea și evaluarea modelelor cu TensorBoard
Mecanica TensorFlow
- Prepararea datelor
- Descărcare
- Intrări și placeholder-uri
-
Construirea graficelor
- Inference
- Pierderi
- Antrenare
-
Antrenarea modelului
- Graficul
- Sesiunea
- Bucle de antrenare
-
Evaluarea modelului
- Construirea graficului de evaluare
- Ieșirea de evaluare
Perceptronul
- Funcții de activare
- Algoritmul de învățare a perceptronului
- Clasificarea binară cu perceptronul
- Clasificarea documentelor cu perceptronul
- Limitările perceptronului
De la Perceptron la Support Vector Machines
- Kernele și trucul cu kernel
- Clasificarea maximă margină și vectorii de sprijin
Rețele Neuronale Artificiale
- Frontiere de decizie neliniare
- Rețele neuronale feedforward și feedback
- Perceptroni multi-strat
- Minimizarea funcției de cost
- Propagarea înainte
- Propagarea înapoi
- Îmbunătățirea modului în care rețelele neurone învață
Rețele Neuronale Convoluționale
- Obiective
- Arhitectura modelului
- Principii
- Organizarea codului
- Lansarea și antrenarea modelului
- Evaluarea modelului
Introduceri de bază pentru modulele de mai jos (introducere succintă de oferit în funcție de timp disponibil):
Tensorflow - Utilizare Avansată
- Thread-uri și cozi
- TensorFlow distribuit
- Scrierea documentației și împărtășirea modelului
- Personalizarea cititorilor de date
- Manipularea fișierelor model TensorFlow
Servirea TensorFlow
- Introducere
- Tutorial de bază pentru servire
- Tutorial avansat pentru servire
- Tutorial de servire al modelului Inception
Cerințe
Cunoștințe de 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 bibliotecile sale.
Mărturii (5)
Hunter este minunat, foarte implicat, extrem de cunoscător și plăcut. Foarte bine făcut.
Rick Johnson - Laramie County Community College
Curs - Artificial Intelligence (AI) Overview
Tradus de catre o masina
Formatorul a explicat conținutul într-o manieră excelentă și a fost implicat pe tot parcursul. El s-a oprit pentru a pune întrebări și ne-a lăsat să găsim soluțiile proprii în unele sesiuni practice. De asemenea, a adaptat cursul bine la nevoile noastre.
Robert Baker
Curs - Deep Learning with TensorFlow 2.0
Tradus de catre o masina
Tomasz cunoște cu adevărat bine informațiile și cursul a fost bine organizat din punct de vedere al ritmului.
Raju Krishnamurthy - Google
Curs - TensorFlow Extended (TFX)
Tradus de catre o masina
Organizația, conform agendei propuse, cunoștințele extinse ale instruiționarului în acest domeniu
Ali Kattan - TWPI
Curs - Natural Language Processing with TensorFlow
Tradus de catre o masina
Very updated approach or CPI (tensor flow, era, learn) to do machine learning.
Paul Lee
Curs - TensorFlow for Image Recognition
Tradus de catre o masina