0
0
TensorFlowml~5 mins

Batch normalization in TensorFlow - Cheat Sheet & Quick Revision

Choose your learning style9 modes available
Recall & Review
beginner
What is batch normalization in machine learning?
Batch normalization is a technique to make training faster and more stable by normalizing the inputs of each layer. It adjusts and scales the data so the model learns better.
Click to reveal answer
intermediate
Why do we use batch normalization during training?
We use batch normalization to reduce the problem of internal covariate shift, which means the distribution of inputs to layers changes during training. This helps the model train faster and generalize better.
Click to reveal answer
intermediate
Which two parameters does batch normalization learn during training?
Batch normalization learns two parameters: gamma (scale) and beta (shift). These allow the model to restore the original distribution if needed after normalization.
Click to reveal answer
advanced
How does batch normalization behave differently during training and inference?
During training, batch normalization uses the mean and variance of the current batch. During inference, it uses a moving average of mean and variance collected during training for stable predictions.
Click to reveal answer
beginner
Show a simple TensorFlow code snippet to add batch normalization after a dense layer.
import tensorflow as tf

model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu'),
    tf.keras.layers.BatchNormalization(),
    tf.keras.layers.Dense(10, activation='softmax')
])
Click to reveal answer
What problem does batch normalization mainly address?
AVanishing gradients
BOverfitting
CInternal covariate shift
DData augmentation
Which parameters are learned by batch normalization?
AGamma and beta
BMean and variance
CWeights and biases
DLearning rate and momentum
During inference, batch normalization uses:
ABatch mean and variance
BMoving average of mean and variance
CRandom values
DNo normalization
Where is batch normalization usually applied in a neural network?
AAfter linear layers and before activation
BAfter activation functions
CBefore the input layer
DOnly at the output layer
Which of these is a benefit of batch normalization?
ASlower training
BIncreases model size
CRemoves the need for activation functions
DHelps use higher learning rates
Explain in your own words what batch normalization does and why it helps training.
Think about how changing input data affects learning and how normalization fixes it.
You got /4 concepts.
    Describe how batch normalization behaves differently during training and inference phases.
    Consider what data is available during training vs when the model is used.
    You got /4 concepts.