Lesson 17: Deep Learning Foundations to Stable Diffusion

  Рет қаралды 8,336

Jeremy Howard

Jeremy Howard

Күн бұрын

(All lesson resources are available at course.fast.ai.) In this lesson, we discuss the importance of weight initialization in neural networks and explore various techniques to improve training. We start by introducing changes to the miniai library and demonstrate the use of HooksCallback and ActivationStats for better visualization. We then dive into the importance of having zero mean and unit standard deviation in neural networks and introduce the Glorot (Xavier) initialization.
We also cover variance, standard deviation, and covariance, and their significance in understanding relationships between data points. We create a novel Generalized ReLU activation function and discuss the Layer-wise Sequential Unit Variance (LSUV) technique for initializing any neural network. We explore normalization techniques, such as Layer Normalization and Batch Normalization, and briefly mention other normalization methods like Instance Norm and Group Norm.
Finally, we experiment with different batch sizes, learning rates, and optimizers like Accelerated SGD, RMSProp, and Adam to improve performance.
0:00:00 - Changes to previous lesson
0:07:50 - Trying to get 90% accuracy on Fashion-MNIST
0:11:58 - Jupyter notebooks and GPU memory
0:14:59 - Autoencoder or Classifier
0:16:05 - Why do we need a mean of 0 and standard deviation of 1?
0:21:21 - What exactly do we mean by variance?
0:25:56 - Covariance
0:29:33 - Xavier Glorot initialization
0:35:27 - ReLU and Kaiming He initialization
0:36:52 - Applying an init function
0:38:59 - Learning rate finder and MomentumLearner
0:40:10 - What’s happening is in each stride-2 convolution?
0:42:32 - Normalizing input matrix
0:46:09 - 85% accuracy
0:47:30 - Using with_transform to modify input data
0:48:18 - ReLU and 0 mean
0:52:06 - Changing the activation function
0:55:09 - 87% accuracy and nice looking training graphs
0:57:16 - “All You Need Is a Good Init”: Layer-wise Sequential Unit Variance
1:03:55 - Batch Normalization, Intro
1:06:39 - Layer Normalization
1:15:47 - Batch Normalization
1:23:28 - Batch Norm, Layer Norm, Instance Norm and Group Norm
1:26:11 - Putting all together: Towards 90%
1:28:42 - Accelerated SGD
1:33:32 - Regularization
1:37:37 - Momentum
1:45:32 - Batch size
1:46:37 - RMSProp
1:51:27 - Adam: RMSProp plus Momentum
Timestamps and transcript thanks to fmussari

Пікірлер: 10
@matveyshishov
@matveyshishov Жыл бұрын
Jeremy came from some different world. Where people care. About looking under the hood and rewriting ReLU. About making sure nobody is left behind and very high quality education is free. thank you SO much, Jeremy, for being awesome!
@aarontube
@aarontube Жыл бұрын
With less than two thousand views this video is a hidden gem.
@marsgrins
@marsgrins 3 ай бұрын
This is my favorite lecture in part 2 so far. This stuff feels like magic.
@jasminebhanushali8835
@jasminebhanushali8835 5 ай бұрын
This video is truly amazing, thank you so much for building this course and the great explanations!
@coolarun3150
@coolarun3150 Жыл бұрын
awesome!!!
@satirthapaulshyam7769
@satirthapaulshyam7769 9 ай бұрын
57:40 initializing any neural network with any activation func can be done by lsuv
@satirthapaulshyam7769
@satirthapaulshyam7769 9 ай бұрын
47:40 normalizing input in transformi
@satirthapaulshyam7769
@satirthapaulshyam7769 9 ай бұрын
1:28:00 making the model fine tuned
@satirthapaulshyam7769
@satirthapaulshyam7769 9 ай бұрын
Training a fully cnn model, weight scaling by glorotxavier init(1/√n), kaiming he init 1/√(2n), simple batch normalization, still our model is not having std dev of 1 and mean of 0, Soln: leaky relu( relu is incompatible as it threshold all value under 0 to 0 so the mean will never be 0), init methods that dont fiddling around weights what we have done so far these methods basicallly changes the act values (LSUV, batch normalization, layer norm) until they have 0 and 1 mean and std also on the same time they tweak the weights and biases as we have seen in lsuv the weights are divided and biases minused and then again act values mean and stds are checked again do it in a loop, finally improved the accuracy.
@satirthapaulshyam7769
@satirthapaulshyam7769 9 ай бұрын
Leaky relu u can have a max value so that u r notgetting large values in neuron
Lesson 18: Deep Learning Foundations to Stable Diffusion
2:05:57
Jeremy Howard
Рет қаралды 8 М.
Stable Diffusion in Code (AI Image Generation) - Computerphile
16:56
Computerphile
Рет қаралды 287 М.
1❤️
00:17
Nonomen ノノメン
Рет қаралды 12 МЛН
Неприятная Встреча На Мосту - Полярная звезда #shorts
00:59
Полярная звезда - Kuzey Yıldızı
Рет қаралды 7 МЛН
The End of Finetuning - with Jeremy Howard of Fast.ai
1:24:48
Latent Space
Рет қаралды 18 М.
Miika Aittala: Elucidating the Design Space of Diffusion-Based Generative Models
52:46
Finnish Center for Artificial Intelligence FCAI
Рет қаралды 9 М.
Lesson 15: Deep Learning Foundations to Stable Diffusion
1:37:18
Jeremy Howard
Рет қаралды 11 М.
Diffusion models explained in 4-difficulty levels
7:08
AssemblyAI
Рет қаралды 117 М.
Lesson 16: Deep Learning Foundations to Stable Diffusion
1:25:39
Jeremy Howard
Рет қаралды 9 М.
Lesson 11 2022: Deep Learning Foundations to Stable Diffusion
1:48:17
Jeremy Howard
Рет қаралды 21 М.
Diffusion models from scratch in PyTorch
30:54
DeepFindr
Рет қаралды 234 М.
Anomaly detection with TensorFlow | Workshop
45:29
TensorFlow
Рет қаралды 104 М.