Оценка модели на обучающей и тестовой выборках
Функция auc_train_test вычисляет AUC модели, которая обучается на выборке train и оценивается на выборке test:
auc_train, auc_test = auc_train_test(variables, target, train, test)
где variables — список названий переменных, используемых в модели.
В этом упражнении вы примените данную функцию и проверите, насколько близки значения AUC на обучающей и тестовой выборках.
Это упражнение является частью курса
Введение в предиктивную аналитику на Python
Инструкции к упражнению
- Таблица
basetableзагружена. Разделите её так, чтобы обучающая выборка содержала 70% данных, и убедитесь, что в обеих выборках одинаковая доля целевых событий. - Рассчитайте AUC на обучающей и тестовой выборках для модели, использующей
"age"и"gender_F"в качестве предикторов, с помощью функцииauc_train_test.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Load the partitioning module
from sklearn.model_selection import train_test_split
# Create DataFrames with variables and target
X = basetable.drop('target', 1)
y = basetable["target"]
# Carry out 70-30 partititioning with stratification
X_train, X_test, y_train, y_test = ____(X, y, test_size = ____, stratify = ____)
# Create the final train and test basetables
train = pd.concat([X_train, y_train], axis=1)
test = pd.concat([X_test, y_test], axis=1)
# Apply the auc_train_test function
auc_train, auc_test = ____([____, ____], ["target"], ____, ____)
print(round(auc_train,2))
print(round(auc_test,2))