Прогнозирование рейтинга приложения
Изучив набор данных приложений Google в предыдущем упражнении, давайте построим модель, которая предсказывает рейтинг приложения на основе набора его признаков.
Для этого вы воспользуетесь DecisionTreeRegressor из библиотеки scikit-learn. Деревья решений лежат в основе многих ансамблевых моделей, поэтому освежить знания о принципах их работы будет полезно на протяжении всего курса.
В качестве метрики оценки мы будем использовать MAE (среднюю абсолютную ошибку). Эта метрика легко интерпретируется: она показывает среднее абсолютное отклонение предсказанных рейтингов от фактических.
Все необходимые модули уже импортированы. Признаки и целевая переменная доступны в переменных X и y соответственно.
Это упражнение является частью курса
Ансамблевые методы в Python
Инструкции к упражнению
- Используйте
train_test_split(), чтобы разбитьXиyна обучающую и тестовую выборки. Задайте размер тестовой выборки равным 20%, то есть0.2. - Создайте экземпляр
DecisionTreeRegressor()с именемreg_dtи следующими гиперпараметрами:min_samples_leaf = 3иmin_samples_split = 9. - Обучите регрессор на обучающей выборке с помощью
.fit(). - Получите предсказания для тестовой выборки с помощью
.predict().
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Split into train (80%) and test (20%) sets
X_train, X_test, y_train, y_test = ____(____, ____, ____, random_state=42)
# Instantiate the regressor
reg_dt = ____(____, ____, random_state=500)
# Fit to the training set
____
# Evaluate the performance of the model on the test set
y_pred = ____
print('MAE: {:.3f}'.format(mean_absolute_error(y_test, y_pred)))