California Housing Model Evaluation Practice Problem
This data science coding problem helps you practice Evaluation Metrics for Regression, california housing model evaluation, and implementation skills. Read the problem statement, write your solution, and strengthen your understanding of Evaluation Metrics for Regression.
- Problem ID: 136
- Problem key: 136-california-housing-model-evaluation
- URL: https://datacrack.app/solve/136-california-housing-model-evaluation
- Difficulty: medium
- Topic: Evaluation Metrics for Regression
- Module: Introduction to Machine Learning
Problem Statement
## 🧩 California Housing Model Evaluation
### 🎯 Goal
Put everything together! You will train a model on the **California Housing** dataset and use your evaluation skills to judge its performance using multiple metrics.
---
### 💻 Task Description
To ensure you evaluate correctly, follow these steps inside your function:
1. **Fetch Dataset**: Use `fetch_california_housing` from `sklearn.datasets`.
2. **Modeling**: Train a `LinearRegression` model on the **entire** California Housing dataset.
3. **Predictions**: Use the model to predict prices for the provided `X_test`.
4. **Summary**: Return a dictionary of metrics (`mae`, `mse`, `rmse`, `r2`) computed between the provided `y_test` and your predictions.
5. Round each metric to 6 decimal places.
---
### 📥 Input / 📤 Output
**Input**
- `X_test` (`list[list[float]]`): Features for a subset of houses.
- `y_test` (`list[float]`): True house prices for the same subset.
**Output**
- `dict`: A dictionary containing `"mae"`, `"mse"`, `"rmse"`, and `"r2"`, each rounded to 6 decimal places.
---
### 🧩 Starter Code
```python
import numpy as np
from sklearn.datasets import fetch_california_housing
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score
def evaluate_housing_model(X_test, y_test):
"""
Train a Linear Regression model on California Housing data and return a performance summary.
"""
# 1. Load data
# 2. Train model
# 3. Predict
# 4. Compute metrics and return dict
pass
```
---
Starter Code
import numpy as np
from sklearn.datasets import fetch_california_housing
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score
def evaluate_housing_model(X_test, y_test):
"""
Train a Linear Regression model on California Housing data and return a performance summary.
"""
# 1. Load data
# 2. Train model
# 3. Predict
# 4. Compute metrics and return dict
pass