Practice
1. What is the time complexity of performing K-Fold cross-validation on a dataset with n samples and k folds?
easy
Solution
Step 1: Analyze K-Fold process
Each fold requires training on (k-1)/k of the data and testing on 1/k.Step 2: Eliminate wrong options
O(n) ignores the k factor. O(n^2) and D overestimate complexity.Final Answer:
Option C -> Option CQuick Check:
K-Fold complexity is O(kn). [OK]
Hint: K-Fold complexity is O(kn). [OK]
Common Mistakes:
2.
import numpy as np
def dcg_at_k(r, k):
r = np.asfarray(r)[:k]
if r.size:
return np.sum(r / np.log2(np.arange(2, r.size + 2)))
return 0.0
relevance_scores = [3, 2, 3, 0, 1, 2]
k = 3
print(dcg_at_k(relevance_scores, k))What does this code output?easy
Solution
Step 1: Understand DCG Calculation
The DCG is calculated as the sum of relevance scores divided by log base 2 of their positions.Step 2: Calculate for k=3
For k=3, the scores are [3, 2, 3]. The calculation is 3/1 + 2/log2(3) + 3/log2(4).Final Answer:
Option A -> Option AQuick Check:
DCG uses log2 positions. [OK]
Hint: DCG uses log2 positions. [OK]
Common Mistakes:
3. You implemented stratified K-Fold cross-validation but notice class imbalance in some folds. What is the most likely cause?
medium
Solution
Step 1: Identify stratification issue
Stratification ensures class distribution is preserved in each fold.Step 2: Eliminate wrong options
Incorrect number of splits and D relate to fold count, not class distribution. Data shuffling before splitting affects randomness, not stratification.Final Answer:
Option A -> Option AQuick Check:
Check stratification parameter for class balance. [OK]
Hint: Check stratification parameter for class balance. [OK]
Common Mistakes:
4. How would you modify the K-Means algorithm to handle a dataset with categorical features?
medium
Solution
Step 1: Handle categorical features
One-hot encoding converts categorical features into a numerical format suitable for K-Means.Step 2: Eliminate wrong options
Use Euclidean distance for all features. is incorrect because Euclidean distance isn't suitable for categorical data. Ignore categorical features during clustering. is incorrect as it loses information. Use a different clustering algorithm like DBSCAN. suggests a different algorithm, not a modification.Final Answer:
Option D -> Option DQuick Check:
Use one-hot encoding for categorical data. [OK]
Hint: Use one-hot encoding for categorical data. [OK]
Common Mistakes:
5. How can you optimize the NDCG calculation for large datasets?
hard
Solution
Step 1: Identify Bottlenecks
Calculating log values repeatedly can be computationally expensive.Step 2: Optimize Calculation
Precomputing log values for positions reduces redundant calculations.Final Answer:
Option C -> Option CQuick Check:
Precompute logs for efficiency. [OK]
Hint: Precompute logs for efficiency. [OK]
Common Mistakes:
