Practice
1. What is the time complexity of generating a sinusoidal positional encoding matrix of size
position x d_model?easy
Solution
Step 1: Analyze the operations
The code iterates over each position and each dimension, performing constant-time operations.Step 2: Eliminate wrong options
O(position^2) is incorrect because the complexity is not quadratic in position. O(d_model^2) is incorrect because the complexity is not quadratic in d_model. O(1) is incorrect because the complexity is not constant.Final Answer:
Option C -> Option CQuick Check:
Iterate over position and dimension. [OK]
Hint: Iterate over position and dimension. [OK]
Common Mistakes:
2. In a pipeline that includes flipping, cropping, and normalizing images, where should normalization be applied for best results?
medium
Solution
Step 1: Understand the impact of operations
Normalization should be the last step to ensure consistent scaling.Step 2: Evaluate each option
Applying normalization last ensures it accounts for all transformations.Final Answer:
Option D -> Option DQuick Check:
Normalize last for consistent scaling. [OK]
Hint: Normalize last for consistent scaling. [OK]
Common Mistakes:
3.
import numpy as np
class DropoutLayer:
def __init__(self, dropout_rate):
self.dropout_rate = dropout_rate
def forward(self, inputs, training=True):
if training:
self.mask = np.random.binomial(1, 1 - self.dropout_rate, size=inputs.shape)
return inputs * self.mask
else:
return inputs * (1 - self.dropout_rate)
inputs = np.array([1.0, 2.0, 3.0])
dropout_layer = DropoutLayer(0.5)
output = dropout_layer.forward(inputs, training=True)
print(output)Why might this implementation produce unexpected results during training?medium
Solution
Step 1: Identify Training Mode Requirements
During training, the mask must be saved for backpropagation to correctly compute gradients.Step 2: Eliminate Wrong Options
The dropout rate is too high. is about hyperparameter tuning, not implementation. The mask is not applied correctly. is incorrect as the mask is applied correctly. The inputs are not scaled during training. is irrelevant during training.Final Answer:
Option C -> Option CQuick Check:
Mask must be saved for backpropagation. [OK]
Hint: Mask must be saved for backpropagation. [OK]
Common Mistakes:
4. A Gaussian Naive Bayes model is giving poor performance on a dataset. Which of the following is the most likely cause?
medium
Solution
Step 1: Identify Gaussian Naive Bayes assumptions
Gaussian Naive Bayes assumes that features are normally distributed.Step 2: Evaluate each option
The features are not normally distributed. is correct because non-normal distribution violates the model's assumptions. The model has too many parameters. is incorrect as GaussianNB is simple. The dataset is too small. is less likely as small datasets affect all models. The features are highly correlated. is incorrect as GaussianNB can handle correlated features.Final Answer:
Option B -> Option BQuick Check:
GaussianNB assumes normal distribution. [OK]
Hint: GaussianNB assumes normal distribution. [OK]
Common Mistakes:
5. How can you optimize a decision tree implementation to handle large datasets more efficiently?
hard
Solution
Step 1: Consider parallel processing
Parallel processing can significantly speed up tree construction on large datasets.Step 2: Eliminate wrong options
Complex criteria (A) slow down; increasing depth (C) can overfit; single-threaded (D) is less efficient.Final Answer:
Option A -> Option AQuick Check:
Large data? Use parallel processing [OK]
Hint: Large data? Use parallel processing [OK]
Common Mistakes:
