Prevendo mortes em GoT
Embora a variável alvo não tenha valores ausentes, outras features têm. Como o foco do curso não é limpeza e pré-processamento de dados, nós já fizemos o seguinte pré-processamento para você:
- Substituímos valores NA por
0. - Substituímos valores negativos de idade por
0. - Substituímos valores NA de idade pela média.
Agora, vamos construir um modelo de ensemble usando a técnica de média (averaging). Os seguintes modelos individuais já foram construídos:
- Regressão Logística (
clf_lr). - Árvore de Decisão (
clf_dt). - Support Vector Machine (
clf_svm).
Como o alvo é binário, todos esses modelos podem ter bom desempenho individual.
Seu objetivo é combiná-los usando média. Lembre-se do vídeo: isso é o mesmo que uma abordagem de votação soft, então você ainda deve usar VotingClassifier().
Este exercício faz parte do curso
Métodos de Ensemble em Python
Instruções do exercício
- Configure a lista de tuplas
(string, estimator). Use'lr'paraclf_lr,'dt'paraclf_dte'svm'paraclf_svm. - Construa um classificador por média chamado
clf_avg. Lembre-se de especificar um argumento para o parâmetrovoting.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Build the individual models
clf_lr = LogisticRegression(class_weight='balanced')
clf_dt = DecisionTreeClassifier(min_samples_leaf=3, min_samples_split=9, random_state=500)
clf_svm = SVC(probability=True, class_weight='balanced', random_state=500)
# List of (string, estimator) tuples
estimators = ____
# Build and fit an averaging classifier
clf_avg = ____
clf_avg.fit(X_train, y_train)
# Evaluate model performance
acc_avg = accuracy_score(y_test, clf_avg.predict(X_test))
print('Accuracy: {:.2f}'.format(acc_avg))