Bird
Raised Fist0
Intro to Computingfundamentals~20 mins

Training data and models in Intro to Computing - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Training Data and Models Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What is the main purpose of training data in machine learning?

Imagine you want to teach a computer to recognize pictures of cats. What role does the training data play in this process?

AIt provides examples for the model to learn patterns from.
BIt tests how well the model performs on new data.
CIt stores the final predictions made by the model.
DIt cleans and prepares the data before training.
Attempts:
2 left
💡 Hint

Think about what the model needs to see to learn.

🔍 Analysis
intermediate
2:00remaining
What is the output of this Python code simulating model training?

Consider this simple code that simulates training a model by counting how many times a value appears in training data.

Intro to Computing
training_data = ['cat', 'dog', 'cat', 'bird', 'dog', 'cat']
model = {}
for item in training_data:
    model[item] = model.get(item, 0) + 1
print(model)
ASyntaxError
B{'cat': 3, 'dog': 2, 'bird': 1}
C{'cat': 3, 'dog': 3, 'bird': 1}
D{'cat': 2, 'dog': 2, 'bird': 1}
Attempts:
2 left
💡 Hint

Count how many times each animal appears in the list.

❓ data_output
advanced
2:00remaining
What is the shape of the training data matrix after preprocessing?

You have 1000 images, each resized to 28x28 pixels and converted to grayscale. The images are stored as a NumPy array for training.

What will be the shape of the training data array?

A(1000, 28, 28)
B(28, 28, 1000)
C(1000, 784)
D(784, 1000)
Attempts:
2 left
💡 Hint

Think about flattening each 28x28 image into a single row vector.

❓ visualization
advanced
2:00remaining
Which plot best shows model performance over training epochs?

You trained a model for 10 epochs and recorded accuracy after each epoch. Which plot type best visualizes this change over time?

ALine plot showing accuracy on the y-axis and epochs on the x-axis.
BBar chart showing accuracy for each class.
CScatter plot of accuracy vs. number of training samples.
DPie chart showing percentage of correct predictions.
Attempts:
2 left
💡 Hint

Think about how to show change over a sequence of steps.

🔍 Analysis
expert
2:00remaining
What error does this code raise when training a model with mismatched data?

Look at this code snippet where features and labels have different lengths.

Intro to Computing
features = [[1, 2], [3, 4], [5, 6]]
labels = [0, 1]
from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(features, labels)
ANo error, model trains successfully
BTypeError: unsupported operand type(s) for +: 'int' and 'list'
CIndexError: list index out of range
DValueError: Found input variables with inconsistent numbers of samples
Attempts:
2 left
💡 Hint

Check if the number of feature rows matches the number of labels.

Practice

(1/5)
1. What is the main purpose of training data in machine learning?
easy
A. To teach the model patterns and relationships in data
B. To test the model's accuracy after training
C. To store the final predictions of the model
D. To clean and prepare data for analysis

Solution

  1. Step 1: Understand the role of training data

    Training data is used to show the model examples so it can learn patterns.
  2. Step 2: Differentiate training from testing

    Testing data checks model accuracy, but training data teaches the model.
  3. Final Answer:

    To teach the model patterns and relationships in data -> Option A
  4. Quick Check:

    Training data = Teach model [OK]
Hint: Training data is what the model learns from [OK]
Common Mistakes:
  • Confusing training data with testing data
  • Thinking training data stores predictions
  • Assuming training data is for cleaning only
2. Which of the following is the correct way to split data into training and testing sets in Python using scikit-learn?
easy
A. test_train_split(data, size=0.2)
B. train_test_split(data, test_size=0.2)
C. train_test(data, split=0.2)
D. split_train_test(data, 0.2)

Solution

  1. Step 1: Recall the scikit-learn function name

    The correct function to split data is train_test_split.
  2. Step 2: Check the parameter syntax

    The parameter test_size=0.2 correctly sets 20% data for testing.
  3. Final Answer:

    train_test_split(data, test_size=0.2) -> Option B
  4. Quick Check:

    Correct function and parameter = train_test_split(data, test_size=0.2) [OK]
Hint: Remember scikit-learn's function is train_test_split [OK]
Common Mistakes:
  • Using wrong function names
  • Mixing parameter names
  • Incorrect order of arguments
3. Given the following Python code, what will be the output?
from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1], [2], [3], [4]])
y = np.array([2, 4, 6, 8])
model = LinearRegression()
model.fit(X, y)
pred = model.predict([[5]])
print(round(pred[0], 1))
medium
A. 9.0
B. 12.0
C. 8.0
D. 10.0

Solution

  1. Step 1: Understand the training data relationship

    X values are 1 to 4, y values are double X (2,4,6,8), so model learns y = 2 * X.
  2. Step 2: Predict for X=5 using the model

    Prediction = 2 * 5 = 10.0, rounding to 1 decimal is 10.0.
  3. Final Answer:

    10.0 -> Option D
  4. Quick Check:

    Prediction for 5 = 10.0 [OK]
Hint: Model learns y=2x, predict for 5 gives 10 [OK]
Common Mistakes:
  • Ignoring rounding in output
  • Misunderstanding model relationship
  • Using wrong input shape for predict
4. Identify the error in this code snippet for training a model:
from sklearn.linear_model import LogisticRegression
X_train = [[0, 1], [1, 0]]
y_train = [0, 1]
model = LogisticRegression()
model.fit(y_train, X_train)
medium
A. The order of arguments in model.fit() is reversed
B. LogisticRegression cannot be used with this data
C. X_train should be a numpy array, not a list
D. y_train should contain strings, not integers

Solution

  1. Step 1: Check the model.fit() argument order

    fit() expects features first (X_train), then labels (y_train).
  2. Step 2: Identify the mistake in the code

    Code passes y_train first, then X_train, which is incorrect and causes error.
  3. Final Answer:

    The order of arguments in model.fit() is reversed -> Option A
  4. Quick Check:

    fit(X_train, y_train) correct order [OK]
Hint: fit() needs features first, labels second [OK]
Common Mistakes:
  • Swapping X and y in fit()
  • Assuming data type causes error here
  • Thinking LogisticRegression needs string labels
5. You have a dataset with 1000 samples and 10 features. You want to train a model but avoid overfitting. Which approach helps most during training?
hard
A. Use all data for training without splitting
B. Train only on the first 100 samples
C. Split data into training and validation sets
D. Ignore feature scaling and train directly

Solution

  1. Step 1: Understand overfitting and validation

    Overfitting happens when model learns training data too well and fails on new data.
  2. Step 2: Use validation set to check model generalization

    Splitting data into training and validation helps detect and reduce overfitting.
  3. Final Answer:

    Split data into training and validation sets -> Option C
  4. Quick Check:

    Validation split prevents overfitting [OK]
Hint: Validation set helps check model generalization [OK]
Common Mistakes:
  • Training on all data hides overfitting
  • Using too few samples reduces learning
  • Ignoring feature scaling can hurt model
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard