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)
Att hjälpa dem som aldrig har använt AI att uppnå bättre precision genom upprepade anpassningar av prompts, samt uppmuntra erfarna användare att utforska olika strategier för att använda tekniken.
Matthew Gay - Tarsus Pharmaceuticals
Kurs - Artificial Intelligence (AI) Overview
Maskintolkat
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