EmpezarEmpieza gratis

Un modelo de bagging más complejo

Después de explorar los datos de semiconductores, vamos a construir un clasificador de bagging para predecir la etiqueta 'Pass/Fail' dadas las variables de entrada.

El conjunto de datos preprocesado está disponible en tu espacio de trabajo como uci_secom, y ya tienes creados los conjuntos de entrenamiento y prueba.

Como el objetivo presenta un gran desbalance de clases, usa una regresión logística "balanced" como estimador base.

También reduciremos el tiempo de cómputo de LogisticRegression con el parámetro solver='liblinear', que es un optimizador más rápido que el predeterminado.

Este ejercicio forma parte del curso

Ensemble Methods in Python

Ver curso

Instrucciones del ejercicio

  • Instancia una regresión logística para usarla como clasificador base con los parámetros: class_weight='balanced', solver='liblinear' y random_state=42.
  • Construye un clasificador de bagging usando la regresión logística como estimador base, especificando el número máximo de características como 10 e incluyendo el cálculo del out-of-bag score.
  • Imprime el out-of-bag score para compararlo con la accuracy.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Build a balanced logistic regression
clf_lr = ____

# Build and fit a bagging classifier
clf_bag = ____(____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)

# Evaluate the accuracy on the test set and show the out-of-bag score
pred = clf_bag.predict(X_test)
print('Accuracy:  {:.2f}'.format(accuracy_score(y_test, pred)))
print('OOB-Score: {:.2f}'.format(____))

# Print the confusion matrix
print(confusion_matrix(y_test, pred))
Editar y ejecutar código