0
0
TensorFlowml~20 mins

Keras as TensorFlow's high-level API - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Keras Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Model Choice
intermediate
2:00remaining
Choosing the correct Keras model for image classification
You want to build a simple image classifier using Keras in TensorFlow. Which model type is best suited for this task?
ASequential model with Conv2D and Dense layers
BFunctional API model with only Dense layers
CSequential model with only LSTM layers
DFunctional API model with Embedding layers only
Attempts:
2 left
💡 Hint
Think about the type of data images are and which layers process spatial information.
Predict Output
intermediate
2:00remaining
Output shape of a Keras Conv2D layer
What is the output shape of this Keras layer when input shape is (32, 32, 3)?
TensorFlow
from tensorflow.keras.layers import Conv2D
layer = Conv2D(filters=16, kernel_size=3, strides=1, padding='valid')
output_shape = layer.compute_output_shape((None, 32, 32, 3))
print(output_shape)
A(None, 32, 32, 16)
B(None, 31, 31, 16)
C(None, 30, 30, 16)
D(None, 30, 30, 3)
Attempts:
2 left
💡 Hint
Padding='valid' means no padding, so output size shrinks by kernel_size - 1.
Hyperparameter
advanced
2:00remaining
Choosing the right optimizer for faster convergence
You train a Keras model but it learns very slowly. Which optimizer change is most likely to speed up training without losing stability?
ASwitch from Adam to SGD optimizer
BSwitch from SGD to Adam optimizer
CSwitch from RMSprop to SGD optimizer with momentum=0
DSwitch from Adam to RMSprop with learning rate 10 times smaller
Attempts:
2 left
💡 Hint
Adam adapts learning rates per parameter and often converges faster than vanilla SGD.
Metrics
advanced
2:00remaining
Interpreting Keras model accuracy during training
After training a Keras classification model, the training accuracy is 95% but validation accuracy is 70%. What does this indicate?
AThe model is overfitting the training data
BThe model is underfitting the training data
CThe model has perfect generalization
DThe validation data is corrupted
Attempts:
2 left
💡 Hint
High training accuracy but much lower validation accuracy usually means the model memorizes training data.
🔧 Debug
expert
3:00remaining
Identifying the cause of a Keras model training error
You run this Keras code and get a ValueError: 'Input 0 of layer dense_1 is incompatible with the layer: expected axis -1 of input shape to have value 64 but received input with shape (None, 32)'. What is the most likely cause?
TensorFlow
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Flatten
model = Sequential([
  Flatten(input_shape=(8,8)),
  Dense(64, activation='relu'),
  Dense(10, activation='softmax')
])
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
model.fit(x_train, y_train, epochs=5)
AThe input_shape in Flatten is incorrect; it should be (64,) instead of (8,8)
BThe Dense layer expects input with last dimension 64, but Flatten outputs (None, 64), so the error is in the Dense layer
CThe model is missing an input layer, causing shape mismatch
DThe Flatten layer output shape is (None, 64), but Dense expects input with last dimension 64, so input data shape is wrong
Attempts:
2 left
💡 Hint
Flatten converts (8,8) to 64 features. The error says input to Dense has shape (None, 32), which is unexpected.