Голосующий классификатор
Теперь объединим три модели машинного обучения в одну, чтобы улучшить нашу модель обнаружения мошенничества на основе случайного леса. Вы объедините привычную модель случайного леса с логистической регрессией из предыдущего упражнения и простым деревом решений. Для быстрой оценки результата ансамблевой модели используйте вспомогательную функцию get_model_results().
Это упражнение является частью курса
Обнаружение мошенничества на Python
Инструкции к упражнению
- Импортируйте пакет голосующего классификатора.
- Определите три модели: используйте логистическую регрессию из предыдущего упражнения, случайный лес из прошлых упражнений и дерево решений со сбалансированными весами классов.
- Определите ансамблевую модель, передав в неё три классификатора с соответствующими метками.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import the package
from sklearn.ensemble import ____
# Define the three classifiers to use in the ensemble
clf1 = LogisticRegression(class_weight={0:1, 1:15}, random_state=5)
clf2 = ____(class_weight={0:1, 1:12}, criterion='gini', max_depth=8, max_features='log2',
min_samples_leaf=10, n_estimators=30, n_jobs=-1, random_state=5)
clf3 = DecisionTreeClassifier(random_state=5, class_weight="____")
# Combine the classifiers in the ensemble model
ensemble_model = ____(estimators=[('lr', ____), ('rf', ____), ('dt', ____)], voting='hard')
# Get the results
get_model_results(X_train, y_train, X_test, y_test, ensemble_model)