Bird
Raised Fist0
ML Pythonml~20 mins

Linear regression with scikit-learn in ML Python - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Linear Regression Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of Linear Regression Model Training
What is the printed output of the following code snippet after training a linear regression model?
ML Python
from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])
model = LinearRegression()
model.fit(X, y)
print(round(model.coef_[0], 2), round(model.intercept_, 2))
A1.0 0.0
B1.0 1.0
C2.0 1.0
D2.0 0.0
Attempts:
2 left
💡 Hint
Think about the relationship between X and y in the data.
❓ Model Choice
intermediate
1:30remaining
Choosing the Correct Model for Linear Regression
Which scikit-learn class should you use to perform a simple linear regression on a dataset?
Asklearn.cluster.KMeans
Bsklearn.tree.DecisionTreeClassifier
Csklearn.linear_model.LinearRegression
Dsklearn.neural_network.MLPClassifier
Attempts:
2 left
💡 Hint
Linear regression predicts continuous values, not categories.
❓ Hyperparameter
advanced
2:00remaining
Effect of fit_intercept Parameter in LinearRegression
What is the effect of setting fit_intercept=False when creating a LinearRegression model in scikit-learn?
AThe model will not calculate an intercept term and will force the line through the origin.
BThe model will use L1 regularization to reduce overfitting.
CThe model will automatically normalize the input features before fitting.
DThe model will fit a polynomial regression instead of linear.
Attempts:
2 left
💡 Hint
Consider what happens if the intercept is not included in a line equation.
❓ Metrics
advanced
1:30remaining
Interpreting R² Score for Linear Regression
After training a linear regression model, you calculate the R² score on test data and get 0.85. What does this value mean?
AThe model explains 85% of the variance in the target variable on the test data.
BThe model has 85% accuracy in classifying the test samples.
CThe model's predictions are 85% similar to the training data.
DThe model has an 85% chance of making a correct prediction.
Attempts:
2 left
💡 Hint
R² measures how well the model fits the data, not classification accuracy.
🔧 Debug
expert
2:30remaining
Debugging Unexpected Model Coefficients
You train a LinearRegression model on a dataset but get very large coefficient values that don't make sense. Which of the following is the most likely cause?
AThe target variable contains categorical data instead of numeric values.
BThe input features were not scaled or normalized, causing instability in coefficient values.
CThe LinearRegression class does not support multiple features.
DThe model was trained with fit_intercept=True, which always causes large coefficients.
Attempts:
2 left
💡 Hint
Think about how feature scale affects linear regression coefficients.

Practice

(1/5)
1. What is the main goal of linear regression in machine learning?
easy
A. To find a line that predicts a continuous value from input data
B. To classify data into categories
C. To cluster data points into groups
D. To reduce the number of features in data

Solution

  1. Step 1: Understand the purpose of linear regression

    Linear regression aims to model the relationship between input variables and a continuous output by fitting a line.
  2. Step 2: Compare with other tasks

    Classification assigns categories, clustering groups data, and feature reduction simplifies data, which are different tasks.
  3. Final Answer:

    To find a line that predicts a continuous value from input data -> Option A
  4. Quick Check:

    Linear regression predicts continuous values [OK]
Hint: Linear regression predicts continuous numbers, not categories [OK]
Common Mistakes:
  • Confusing regression with classification
  • Thinking linear regression clusters data
  • Believing it reduces features
2. Which of the following is the correct way to import the LinearRegression class from scikit-learn?
easy
A. from sklearn.linear_model import LinearRegression
B. import LinearRegression from sklearn.linear_model
C. from sklearn import LinearRegression
D. import linear_model.LinearRegression

Solution

  1. Step 1: Recall correct Python import syntax

    Python imports classes using 'from module import ClassName' syntax.
  2. Step 2: Match with scikit-learn structure

    LinearRegression is inside sklearn.linear_model, so correct import is from sklearn.linear_model import LinearRegression.
  3. Final Answer:

    from sklearn.linear_model import LinearRegression -> Option A
  4. Quick Check:

    Correct import syntax = from sklearn.linear_model import LinearRegression [OK]
Hint: Use 'from sklearn.linear_model import LinearRegression' [OK]
Common Mistakes:
  • Using wrong import order
  • Trying to import directly from sklearn
  • Using incorrect module names
3. What will be the output of the following code snippet?
from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])
model = LinearRegression()
model.fit(X, y)
print(round(model.coef_[0], 1))
medium
A. 0.5
B. 2.0
C. 10.0
D. 1.0

Solution

  1. Step 1: Understand the data relationship

    X values are 1 to 5, y values are exactly double X (2,4,6,8,10), so slope should be 2.
  2. Step 2: Check model coefficient

    LinearRegression fits y = coef * X + intercept. coef_ will be close to 2.0 here.
  3. Final Answer:

    2.0 -> Option B
  4. Quick Check:

    Slope of y=2x is 2.0 [OK]
Hint: Slope equals change in y over change in x [OK]
Common Mistakes:
  • Confusing coefficient with intercept
  • Not rounding output
  • Assuming coefficient is 1 or 10
4. Identify the error in this code that tries to train a linear regression model:
from sklearn.linear_model import LinearRegression
X = [[1], [2], [3]]
y = [2, 4, 6]
model = LinearRegression()
model.fit(X, y)
print(model.predict([4]))
medium
A. Passing a list instead of numpy array to fit
B. LinearRegression class is not instantiated correctly
C. Missing import for numpy
D. Predict input shape is incorrect, should be 2D array

Solution

  1. Step 1: Check input shapes for fit and predict

    fit accepts list of lists for X, so no error there. But predict expects 2D array, [4] is 1D.
  2. Step 2: Fix predict input shape

    Predict should get [[4]] (2D) not [4] (1D) to avoid shape error.
  3. Final Answer:

    Predict input shape is incorrect, should be 2D array -> Option D
  4. Quick Check:

    Predict input must be 2D array [OK]
Hint: Always pass 2D array to predict, e.g., [[value]] [OK]
Common Mistakes:
  • Passing 1D array to predict
  • Assuming fit needs numpy arrays
  • Wrong class instantiation
5. You trained a linear regression model with scikit-learn and got an R² score of 0.85 on test data. What does this score mean?
hard
A. The model has 85% chance to predict correctly
B. The model's predictions are 85% accurate
C. The model explains 85% of the variance in the target variable
D. The model's error rate is 15% on test data

Solution

  1. Step 1: Understand R² score meaning

    R² (coefficient of determination) measures how well the model explains variance in the target.
  2. Step 2: Interpret 0.85 R²

    A score of 0.85 means 85% of the variance in the target is explained by the model.
  3. Final Answer:

    The model explains 85% of the variance in the target variable -> Option C
  4. Quick Check:

    R² = variance explained, not accuracy or error rate [OK]
Hint: R² shows variance explained, not accuracy percentage [OK]
Common Mistakes:
  • Confusing R² with accuracy
  • Thinking R² is probability
  • Assuming R² is error rate
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