Overfitting happens when a model learns the training data too well, including noise and details that don't apply to new data. This makes it perform poorly on unseen data.
Click to reveal answer
beginner
Why do we need to evaluate a model on data it hasn't seen before?
Evaluating on new data shows if the model can generalize well. It helps us check if the model learned useful patterns or just memorized the training data.
Click to reveal answer
intermediate
What is the role of a validation set in preventing overfitting?
A validation set is separate data used during training to tune the model. It helps detect overfitting early by showing if the model's performance drops on unseen data.
Click to reveal answer
intermediate
How does cross-validation help in proper evaluation?
Cross-validation splits data into parts and trains multiple models on different parts. This gives a better estimate of how the model will perform on new data, reducing overfitting risk.
Click to reveal answer
beginner
What happens if you only check model accuracy on training data?
You might think the model is perfect, but it could just be memorizing. This hides overfitting and leads to poor results on real-world data.
Click to reveal answer
What does overfitting mean?
AModel performs poorly on both training and new data
BModel performs well on new data but poorly on training data
CModel performs perfectly on all data
DModel performs well on training but poorly on new data
✗ Incorrect
Overfitting means the model fits training data too closely and fails to generalize to new data.
Why use a validation set?
ATo test the model on unseen data during training
BTo increase training speed
CTo add more features
DTo reduce model size
✗ Incorrect
Validation sets help check model performance on data not used for training, detecting overfitting.
What is cross-validation?
ASplitting data into parts to train and test multiple times
BTraining on all data without splitting
CUsing only training data for evaluation
DIgnoring validation data
✗ Incorrect
Cross-validation divides data to better estimate model performance and avoid overfitting.
What risk do you face if you evaluate only on training data?
AModel generalizes better
BOverfitting goes unnoticed
CModel size increases
DModel runs faster
✗ Incorrect
Evaluating only on training data hides overfitting because the model may just memorize it.
Proper evaluation helps to:
AIgnore new data
BMake the model more complex
CDetect if the model generalizes well
DTrain faster
✗ Incorrect
Proper evaluation shows if the model works well on new data, preventing overfitting.
Explain in your own words why evaluating a model on new data helps prevent overfitting.
Think about how a model might behave if it only memorizes training examples.
You got /3 concepts.
Describe how cross-validation works and why it is useful for proper model evaluation.
Imagine testing your model several times on different parts of data.
You got /4 concepts.
Practice
(1/5)
1. Why is it important to evaluate a machine learning model on data it has never seen before?
easy
A. To check if the model can make good predictions on new data
B. To make the training process faster
C. To increase the size of the training data
D. To reduce the number of features in the data
Solution
Step 1: Understand model evaluation purpose
Evaluating on unseen data tests if the model generalizes beyond training examples.
Step 2: Identify the goal of evaluation
The goal is to ensure the model predicts well on new, real-world data, not just memorized training data.
Final Answer:
To check if the model can make good predictions on new data -> Option A
Quick Check:
Evaluation on new data = Check generalization [OK]
Hint: Test on new data to check real-world performance [OK]
Common Mistakes:
Thinking evaluation speeds up training
Confusing evaluation with feature selection
Believing evaluation increases training data size
2. Which of the following is the correct way to split data for proper model evaluation?
easy
A. Split data into training and testing sets
B. Use only testing data for training
C. Use all data for training and testing
D. Train on test data and evaluate on training data
Solution
Step 1: Recall data splitting best practice
Proper evaluation requires separating data into training and testing sets to avoid bias.
Step 2: Identify correct splitting method
Splitting data into training and testing sets ensures the model is evaluated on unseen data.
Final Answer:
Split data into training and testing sets -> Option A
Quick Check:
Data split = Training + Testing [OK]
Hint: Always keep test data separate from training data [OK]
Common Mistakes:
Training and testing on the same data
Using test data for training
Not splitting data at all
3. Consider this Python code snippet for evaluating a model:
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
X = [[1], [2], [3], [4], [5], [6]]
y = [0, 0, 0, 1, 1, 1]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)
model = LogisticRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(round(accuracy, 2))
What will be the printed accuracy?
medium
A. 0.0
B. 0.67
C. 0.5
D. 1.0
Solution
Step 1: Understand data split and model training
Data is split with 33% test size, so test set has 2 samples. Model trains on 4 samples.
Step 2: Predict and calculate accuracy
With logistic regression on this split and data, the model predicts 1 out of 2 test samples correctly, giving accuracy 0.5.
Final Answer:
0.5 -> Option C
Quick Check:
Correct predictions / total test samples = 0.5 [OK]
Hint: Check test set size and prediction correctness [OK]
Common Mistakes:
Assuming accuracy is always less than 1
Ignoring test set size
Confusing train and test data
4. You trained a model and got 100% accuracy on training data but only 50% on test data. What is the most likely problem?
medium
A. The training data is too small
B. The model is underfitting the training data
C. The test data is too easy
D. The model is overfitting the training data
Solution
Step 1: Analyze accuracy difference
Perfect training accuracy but low test accuracy suggests the model memorized training data but fails on new data.
Step 2: Identify overfitting
This behavior is classic overfitting, where the model fits training data too closely and does not generalize.
Final Answer:
The model is overfitting the training data -> Option D
Quick Check:
High train accuracy + low test accuracy = Overfitting [OK]
Hint: Big train-test accuracy gap means overfitting [OK]
Common Mistakes:
Confusing overfitting with underfitting
Blaming test data difficulty
Ignoring accuracy differences
5. You have a dataset with 1000 samples. You want to prevent overfitting and get a reliable estimate of model performance. Which evaluation strategy is best?
hard
A. Split data once into 90% train and 10% test
B. Use 5-fold cross-validation to train and evaluate
C. Train on all data and report training accuracy
D. Evaluate only on training data with early stopping
Solution
Step 1: Understand evaluation strategies
Training on all data or evaluating only on training data risks overfitting and unreliable performance estimates.
Step 2: Compare splitting vs cross-validation
Single split may give biased results depending on the split. 5-fold cross-validation averages results over 5 splits, reducing bias and variance.
Step 3: Choose best method for reliable evaluation
5-fold cross-validation is best to prevent overfitting and get trustworthy performance estimates on limited data.
Final Answer:
Use 5-fold cross-validation to train and evaluate -> Option B
Quick Check:
Cross-validation = Reliable evaluation [OK]
Hint: Use cross-validation for reliable performance estimates [OK]
Common Mistakes:
Using training accuracy as performance
Relying on a single train-test split
Ignoring overfitting risks
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.