ComeçarComece de graça

Uma primeira tentativa com bagging

Você viu o que acontece em uma única iteração de um ensemble de bagging. Agora, vamos construir um modelo de bagging personalizado!

Duas funções já foram preparadas para você:

def build_decision_tree(X_train, y_train, random_state=None):
    # Toma uma amostra com reposição,
    # constrói uma árvore de decisão "fraca",
    # e ajusta ao conjunto de treino

def predict_voting(classifiers, X_test):
    # Faz as previsões individuais 
    # e depois combina usando "Voting"

Tecnicamente, a função build_decision_tree() é o que você fez no exercício anterior. Aqui, você vai construir várias dessas árvores e depois combiná-las. Vamos ver se esse ensemble de modelos "fracos" melhora o desempenho!

Este exercício faz parte do curso

Métodos de Ensemble em Python

Ver curso

Instruções do exercício

  • Construa os modelos individuais chamando build_decision_tree(), passando o conjunto de treino e o índice i como random state.
  • Faça a predição dos rótulos do conjunto de teste usando predict_voting(), com a lista de classificadores clf_list e as features de entrada de teste.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Build the list of individual models
clf_list = []
for i in range(21):
	weak_dt = ____
	clf_list.append(weak_dt)

# Predict on the test set
pred = ____

# Print the F1 score
print('F1 score: {:.3f}'.format(f1_score(y_test, pred)))
Editar e executar o código