Настройка весов в ансамбле VotingClassifier
Вы уже убедились, что VotingClassifier позволяет повысить эффективность обнаружения мошенничества, объединяя сильные стороны нескольких моделей. Теперь попробуем настроить веса, которые мы присваиваем этим моделям. Увеличивая или уменьшая веса, вы управляете тем, насколько сильное влияние оказывает каждая конкретная модель по сравнению с остальными. Это особенно удобно, когда одна из моделей показывает стабильно лучшие результаты, но вы всё же хотите использовать аспекты других моделей для дальнейшего улучшения качества.
В этом упражнении данные уже разделены на обучающую и тестовую выборки. Классификаторы clf1, clf2 и clf3 определены так же, как и прежде: логистическая регрессия, модель случайного леса и дерево решений соответственно.
Это упражнение является частью курса
Обнаружение мошенничества на Python
Инструкции к упражнению
- Определите ансамблевую модель, в которой вес второго классификатора (
clf2) в 4 раза превышает вес каждого из остальных. - Обучите модель на обучающей и тестовой выборках и получите предсказания
predictedиз ансамблевой модели. - Выведите метрики качества — соответствующий код уже готов к запуску.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define the ensemble model
ensemble_model = ____(estimators=[('lr', clf1), ('rf', clf2), ('gnb', clf3)], voting='soft', weights=[____, ____, ____], flatten_transform=True)
# Get results
get_model_results(X_train, y_train, X_test, y_test, ensemble_model)