Kursplan
Del 1 – Djupinlärning och DNN-koncept
Introduktion till AI, maskininlärning & djupinlärning
- Historia, grundläggande koncept och vanliga tillämpningar av artificiell intelligens bortom fantasibilderna om området
- Samhällsinlärning: att aggregera kunskap delad av många virtuella agenter
- Genetiska algoritmer: att utveckla en population av virtuella agenter genom selektion
- Maskininlärning: definition.
- Typen av uppgifter: övervakad inlärning, oövervakad inlärning, inlärning genom förstärkning
- Typen av handlingar: klassificering, regression, klusteranalys, täthetsuppskattning, dimensionalityreduktion
- Exempel på maskininlärningsalgoritmer: Linjär regression, Naive Bayes, Random Forest
- Maskininlärning kontra djupinlärning: problem där maskininlärning fortfarande är state of the art (t.ex. Random Forests & XGBoost)
Grundläggande koncept för ett neuralt nätverk (Tillämpning: multilager-perceptron)
- Uppfräschning av matematiska grunder.
- Definition av ett nätverk av neuron: klassisk arkitektur, aktivering och
- Viktläggning av tidigare aktiveringar, djup i ett nätverk
- Definition av inlärning i ett neuralt nätverk: kostfunktioner, backpropagation, stokastisk gradientmetod, maximal sannolikhet.
- Modellering av ett neuralt nätverk: modellering av indata och utdata baserat på problemtyp (regression, klassificering...). Dimensionsfläcken.
- Skillnaden mellan data med flera egenskaper och signal. Val av kostfunktion baserat på datan.
- Approximering av en funktion med ett neuralt nätverk: presentation och exempel
- Approximering av en fördelning med ett neuralt nätverk: presentation och exempel
- Dataaumentering: hur man balanserar en dataset
- Generalisering av resultaten från ett neuralt nätverk.
- Initiering och regularisering av ett neuralt nätverk: L1 / L2 regularisering, Batch Normalization
- Optimerings- och konvergensalgoritmer
Standardverktyg för ML / DL
En enkel presentation med fördelar, nackdelar, position i ekosystemet och användning är planerad.
- Verktyg för datahantering: Apache Spark, Apache Hadoop Verktyg
- Maskininlärning: Numpy, Scipy, Sci-kit
- Högnivåramverk för DL: PyTorch, Keras, Lasagne
- Lågnivåramverk för DL: Theano, Torch, Caffe, Tensorflow
Konvolutionella neurala nätverk (CNN).
- Presentation av CNN: grundläggande principer och tillämpningar
- Grundläggande funktion hos en CNN: konvolutionslager, användning av en kernel,
- Padding & stride, generering av kartor, poolingslager. Extensioner 1D, 2D och 3D.
- Presentation av olika CNN-arkitekturer som inneburit state of the art i klassificering
- Bilder: LeNet, VGG Networks, Network in Network, Inception, Resnet. Presentation av innovationer som tillförts av varje arkitektur och deras bredare tillämpningar (Konvolution 1x1 eller residuala kopplingar)
- Användning av en attention-modell.
- Tillämpning på ett vanligt klassificeringsfall (text eller bild)
- CNN för generering: superupplösning, pixel-till-pixel segmentering. Presentation av
- Huvudsakliga strategier för att öka antalet kartor för bildgenerering.
Rekurrenta neurala nätverk (RNN).
- Presentation av RNN: grundläggande principer och tillämpningar.
- Grundläggande funktion hos RNN: dold aktivering, backpropagation genom tid, Unfolded version.
- Utveckling mot Gated Recurrent Units (GRU) och LSTM (Long Short Term Memory).
- Presentation av olika tillstånd och utvecklingar som tillförts av dessa arkitekturer
- Konvergens- och försvinnande gradientproblem
- Klassiska arkitekturer: Prediktion av en tidsserie, klassificering ...
- RNN Encoder Decoder-arkitektur. Användning av en attention-modell.
- NLP-tillämpningar: ord- / teckenkodning, översättning.
- Videotillämpningar: prediktion av den nästa genererade bilden i en videosekvens.
Generativa modeller: Variational AutoEncoder (VAE) och Generative Adversarial Networks (GAN).
- Presentation av generativa modeller, koppling till CNN
- Auto-encoder: reduktion av dimensioner och begränsad generering
- Variational Auto-encoder: generativ modell och approximation av fördelningen av en given. Definition och användning av latentrum. Reparametriseringstrick. Tillämpningar och observerade begränsningar
- Generative Adversarial Networks: Grundläggande principer.
- Dubbel nätverksarkitektur (Generator och diskriminator) med växling av inlärning, tillgängliga kostfunktioner.
- Konvergens av en GAN och svårigheter som uppkommer.
- Förbättrad konvergens: Wasserstein GAN, Began. Earth Moving Distance.
- Tillämpningar för bild- eller fotogenerering, textgenerering, superupplösning.
Djup inlärning genom förstärkning.
- Presentation av inlärning genom förstärkning: styrning av en agent i en definierad miljö
- Genom ett tillstånd och möjliga åtgärder
- Användning av ett neuralt nätverk för att approximera tillstånds funktionen
- Deep Q Learning: upplevelsereplay, och tillämpning på styrning av ett TV-spel.
- Optimering av inlärningspolicy. On-policy && off-policy. Actor critic-arkitektur. A3C.
- Tillämpningar: styrning av ett enskilt TV-spel eller ett digitalt system.
Del 2 – Theano för djupinlärning
Theano-baser
- Introduktion
- Installation och konfiguration
TheanoFunctions
- indata, utdata, uppdateringar, givna
Träning och optimering av ett neuralt nätverk med Theano
- Modellering av neurala nätverk
- Logistisk regression
- Dolda lager
- Träna ett nätverk
- Beräkning och klassificering
- Optimering
- Log Loss
Testa modellen
Del 3 – DNN med Tensorflow
TensorFlow-baser
- Skapande, initiering, lagring och återställning av TensorFlow-variabler
- Matning, läsning och förhandsladdning av TensorFlow-data
- Hur man använder TensorFlows infrastruktur för att träna modeller i stor skala
- Visualisering och utvärdering av modeller med TensorBoard
TensorFlow-mekanik
- Förbered datan
- Hämta
- Inmatning och Placeholders
-
Bygg Graferna
- Inferens
- Förlust
- Träning
-
Träna modellen
- Grafen
- Sessionen
- Träningsloop
-
Utvärdera modellen
- Bygg Eval-grafen
- Eval-utdata
Perceptron
- Aktiveringsfunktioner
- Perceptron-inlärningsalgoritmen
- Binär klassificering med perceptron
- Dokumentklassificering med perceptron
- Begränsningar hos perceptron
Från Perceptron till Support Vector Machines
- Kärnor och kärntekniken
- Klassificering med maximal marginal och stödvektorer
Artificiella neurala nätverk
- Icke-linjära gränser
- Framåt och återkopplande artificiella neurala nätverk
- Multilager-perceptrons
- Minimera kostfunktionen
- Framåtpropagtion
- Bakåtpropagtion
- Förbättringar i hur neurala nätverk lär sig
Konvolutionella neurala nätverk
- Mål
- Modellarkitektur
- Principer
- Kodstruktur
- Starta och träna modellen
- Utvärdera en modell
Grundläggande introduktioner ska ges till följande moduler (En kort introduktion kommer att lämnas beroende på tillgänglig tid):
Tensorflow - Avancerad användning
- Trådar och köer
- Distribuerad TensorFlow
- Att skriva dokumentation och dela din modell
- Anpassa dataläsare
- Hantera TensorFlow-modellfiler
TensorFlow Serving
- Introduktion
- Grundläggande Serving-tutorial
- Avancerad Serving-tutorial
- Serving Inception-modell tutorial
Krav
Bakgrund inom fysik, matematik och programmering. Erfarenhet av bildbehandling.
Deltagarna bör ha förkunskaper i maskininlärning och ha arbetat med Python-programmering och bibliotek.
Vittnesmål (2)
Träningen var välorganiserad och noggrant planerad, och jag kom ut ur den med systematisk kunskap och en god översikt av de ämnen vi behandlade.
Magdalena - Samsung Electronics Polska Sp. z o.o.
Kurs - Deep Learning with TensorFlow 2
Maskintolkat
Jag tyckte verkligen om avslutningen där vi fick testa CHAT GPT. Rummet var dock inte optimerat för detta - istället för en stor bordskonkurrens hade ett par mindre bord hjälpt till att dela upp oss i små grupper och klura ut idéer.
Nola - Laramie County Community College
Kurs - Artificial Intelligence (AI) Overview
Maskintolkat