Schița de curs
Partea 1 – Concepte de Învățare Profundă și DNN
Introducere în IA, Învățarea Automată și Învățarea Profundă
- Istorie, concepte de bază și aplicații uzuale 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: evolutia unei populații de agenți virtuali prin selecție
- Învățarea automată uzuală: definiție.
- Tipuri de sarcini: învățare supervizată, învățare nesupervizată, învățare prin întărire
- Tipuri de acțiuni: clasificare, regresie, clustering, estimarea densității, reducerea dimensionalității
- Exemple de algoritmi de învățare automată: regresie liniară, Naive Bayes, Arbore aleator
- Învățarea automată VS Învățarea profundă: probleme pentru 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 multi-strat)
- Recapitulare a bazelor matematice.
- Definiția unei rețele de neuroni: arhitectură clasică, activare și
- Ponderea activărilor anterioare, adâncimea unei rețele
- Definiția învățării unei rețele de neuroni: funcții de cost, back-propagation, coborâre gradient stocastică, maximă verosimilitate.
- Modelarea unei rețele neuronale: modelarea datelor de intrare și de ieșire în funcție de tipul problemei (regresie, clasificare...). Blestemul dimensionalității.
- Distincția între date 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
- 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 Batch
- Algoritmi de optimizare și convergență
Instrumente standard ML / DL
Este planificată o prezentare simplă cu avantaje, dezavantaje, poziționare în ecosistem și utilizare.
- Instrumente de gestionare a datelor: Apache Spark, Apache Hadoop Tools
- Învățare automată: Numpy, Scipy, Sci-kit
- Framework-uri de nivel înalt pentru DL: PyTorch, Keras, Lasagne
- Framework-uri 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: strat 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 clasificarea
- Imaginilor: LeNet, Rețele VGG, Rețea în Rețea, 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 într-un caz comun de clasificare (text sau imagine)
- CNN-uri pentru generare: super-rezoluție, segmentare pixel-to-pixel. Prezentarea
- Principalelor strategii de creștere a hărților de caracteristici pentru generarea imaginilor.
Rețele neuronale recurente (RNN).
- Prezentarea RNN-urilor: principii fundamentale și aplicații.
- Funcționarea de bază a RNN-ului: activare ascunsă, propagare inversă în timp, versiune desfășurată.
- Evoluții către Unitățile Recurente cu Poartă (GRUs) ș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 cuvânt / caracter, traducere.
- Aplicații video: prezicerea următoarei imagini generate dintr-o secvență video.
Modele generative: AutoEncoder Variabil (VAE) și Rețele Generative Adversare (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. Definiția și utilizarea spațiului latent. Truc de reparametrizare. Aplicații și limite observate
- Rețele Generative Adversare: Fundamente.
- Arhitectura duală a rețelei (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
- Prin starea și acțiunile posibile
- Utilizarea unei rețele neuronale pentru a aproxima funcția de stare
- Deep Q Learning: 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 date
Antrenarea și optimizarea unei rețele neuronale folosind Theano
- Modelarea rețelei 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 placeholder-e
-
Construirea graficului
- Inferență
- Pierdere
- Antrenare
-
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 documente cu perceptronul
- Limitări ale perceptronului
De la Perceptron la Mașini cu Vectori de Suport
- Nuclee și trucul nucleului
- Clasificare cu marjă maximă și vectori de suport
Rețele neuronale artificiale
- Limite de decizie neliniare
- Rețele neuronale artificiale feedforward și feedback
- Perceptroni multi-strat
- 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 următoarele module (se va oferi o scurtă introducere în funcție de disponibilitatea timpului):
Utilizare avansată a TensorFlow
- Threading ș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 sale.
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