Schița de curs
Partea 1 – Concepte de Învățare Profundă și DNN
Introducere în IA, Învățarea Automată și Învățarea Profundă
- Istoric, concepte de bază și aplicații obișnuite ale inteligenței artificiale dincolo de fanteziile asociate acestui domeniu
- Inteligența colectivă: agregarea cunoștințelor împărtășite de mulți agenți virtuali
- Algoritmi genetici: evoluția unei populații de agenți virtuali prin selecție
- Învățarea automată obișnuită: definiție.
- Tipuri de sarcini: învățare supervizată, învățare nesupervizată, învățare prin întărire
- Tipuri de acțiuni: clasificare, regresie, clustering, estimare a densității, reducere a dimensionalității
- Exemple de algoritmi de învățare automată: Regresie liniară, Naive Bayes, Arbore aleator
- Învățarea automată vs. Învățarea profundă: probleme în care învățarea automată rămâne încă la stadiul actual (Păduri aleatoare & XGBoosts)
Concepte de bază ale unei rețele neuronale (Aplicație: perceptron multicelular)
- Reamintirea bazelor matematice.
- Definirea unei rețele de neuroni: arhitectura clasică, activarea și
- Ponderea activărilor anterioare, adâncimea unei rețele
- Definirea învățării unei rețele de neuroni: funcții de cost, back-propagation, coborâre stocastică a gradientului, maximizarea verosimilității.
- Modelarea unei rețele neuronale: modelarea datelor de intrare și de ieșire în funcție de tipul de problemă (regresie, clasificare ...). Blestemul dimensionalității.
- Distincția între date cu multiple 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
- Creșterea datelor: 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, Normalizare pe lot
- Algoritmi de optimizare și convergență
Instrumente standard ML / DL
Se planifică o prezentare simplă cu avantaje, dezavantaje, poziția în ecosistem și utilizare.
- Instrumente de gestionare a datelor: Apache Spark, Apache Hadoop Tools
- Învățarea automată: Numpy, Scipy, Sci-kit
- Cadre de nivel înalt pentru DL: PyTorch, Keras, Lasagne
- Cadre de nivel scăzut pentru DL: 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: stratul convoluțional, utilizarea unui nucleu,
- Padding & stride, generarea hărților de caracteristici, straturi de pooling. Extensii 1D, 2D și 3D.
- Prezentarea diferitelor arhitecturi CNN care au adus stadiul actual în clasificare
- Imagini: LeNet, Rețele VGG, Network in Network, Inception, Resnet. Prezentarea inovațiilor aduse de fiecare arhitectură și a aplicațiilor lor mai largi (Convoluție 1x1 sau conexiuni reziduale)
- Utilizarea unui model de atenție.
- Aplicație 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 prin timp, versiune desfășurată.
- Evoluții către Unitățile Recurente cu Poartă (GRU) și LSTM (Memorie pe Termen Lung și Scurt).
- Prezentarea diferitelor stări și a evoluțiilor aduse de aceste arhitecturi
- Probleme de convergență și gradient dispărut
- Arhitecturi clasice: Prezicerea unei serii temporale, clasificare ...
- Arhitectura de tip RNN Encoder Decoder. Utilizarea unui model de atenție.
- Aplicații NLP: codificare de cuvinte / caractere, traducere.
- Aplicații video: predicția următoarei imagini generate dintr-o secvență video.
Modele generative: Autoencoder Variabil (VAE) și Rețele Generatoare Adversariale (GAN).
- Prezentarea modelelor generative, legătura cu CNN-urile
- Auto-encoder: reducerea dimensionalității și generare limitată
- Auto-encoder variabil: model generativ și aproximarea distribuției unui dat. Definirea și utilizarea spațiului latent. Trucul de reparametrizare. Aplicații și limite observate
- Rețele Generatoare Adversariale: Fundamente.
- Arhitectura duală de rețea (Generator și discriminator) cu învățare alternativă, funcții de cost disponibile.
- Convergența unui GAN și dificultăți întâlnite.
- Îmbunătățirea convergenței: Wasserstein GAN, Began. Distanța de mișcare a pământului.
- Aplicații pentru generarea de imagini sau fotografii, generare de text, super-rezoluție.
Învățarea profundă prin întărire.
- Prezentarea învățării prin întărire: 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
- Învățare profundă Q: reluare a experienței și aplicare la controlul unui joc video.
- Optimizarea politicii de învățare. On-policy & off-policy. Arhitectura Actor critic. A3C.
- Aplicații: controlul unui singur joc video sau a unui sistem digital.
Partea 2 – Theano pentru Învățarea Profundă
Bazele Theano
- Introducere
- Instalare și Configurare
Funcții Theano
- intrări, ieșiri, actualizări, date
Antrenarea și optimizarea unei rețele neuronale folosind Theano
- Modelarea unei rețele neuronale
- Regresie logistică
- Straturi ascunse
- Antrenarea unei rețele
- Calcul și clasificare
- Optimizare
- Pierdere logaritmică
Testarea modelului
Partea 3 – DNN folosind Tensorflow
Bazele TensorFlow
- Crearea, inițializarea, salvarea și restaurarea variabilelor TensorFlow
- Alimentarea, citirea și preîncărcarea datelor TensorFlow
- Cum să utilizezi infrastructura TensorFlow pentru a antrena modele la scară largă
- Vizualizarea și evaluarea modelelor cu TensorBoard
Mecanica TensorFlow
- Pregătirea datelor
- Descărcare
- Intrări și placeholderi
-
Construirea graficuluiS
- Inferență
- Pierdere
- Antrenament
-
Antrenarea modelului
- Graficul
- Sesiunea
- Bucla de antrenament
-
Evaluarea modelului
- Construirea graficului de evaluare
- Ieșirea de evaluare
Perceptronul
- Funcții de activare
- Algoritmul de învățare al perceptronului
- Clasificare binară cu perceptronul
- Clasificare de documente cu perceptronul
- Limitările perceptronului
De la Perceptron la Mașini cu Vectori de Sprijin
- Nuclee și trucul nucleului
- Clasificare cu marja maximă și vectori de sprijin
Rețele Neuronale Artificiale
- Granițe de decizie neliniare
- Rețele neuronale artificiale feedforward și feedback
- Perceptroni multicelulari
- Minimizarea funcției de cost
- Propagare înainte
- Propagare inversă
- Îmbunătățirea modului în care rețelele neuronale învață
Rețele Neuronale Convoluționale
- Obiective
- Arhitectura modelului
- Principii
- Organizarea codului
- Lansarea și antrenarea modelului
- Evaluarea unui model
Introduceri de bază pentru modulele următoare (Se va oferi o scurtă introducere în funcție de timpul disponibil):
Utilizare avansată a TensorFlow
- Fire de execuție și cozi
- TensorFlow distribuit
- Scrierea documentației și partajarea modelului tău
- Personalizarea cititorilor de date
- Manipularea fișierelor de model TensorFlow
TensorFlow Serving
- Introducere
- Tutorial de bază pentru servire
- Tutorial avansat pentru servire
- Tutorial pentru servirea modelului Inception
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 învățare automată și să fi lucrat cu programarea Python și bibliotecile aferente.
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