Un primer intento con bagging
Ya has visto lo que ocurre en una sola iteración de un ensamble de bagging. ¡Ahora vamos a crear un modelo de bagging personalizado!
Se han preparado dos funciones para ti:
def build_decision_tree(X_train, y_train, random_state=None):
# Toma una muestra con reemplazo,
# construye un árbol de decisión "débil",
# y lo ajusta al conjunto de entrenamiento
def predict_voting(classifiers, X_test):
# Realiza las predicciones individuales
# y luego las combina usando "Voting"
Técnicamente, la función build_decision_tree() es lo que hiciste en el ejercicio anterior. Aquí, construirás varios de estos árboles y luego los combinarás. ¡Veamos si este ensamble de modelos "débiles" mejora el rendimiento!
Este ejercicio forma parte del curso
Ensemble Methods in Python
Instrucciones del ejercicio
- Construye los modelos individuales llamando a
build_decision_tree(), pasando el conjunto de entrenamiento y el índiceicomo random state. - Predice las etiquetas del conjunto de prueba usando
predict_voting(), con la lista de clasificadoresclf_listy las características de entrada de prueba.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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)))