EmpezarEmpieza gratis

Predecir muertes en GoT

Aunque la variable objetivo no tiene valores ausentes, otras características sí los tienen. Como el objetivo del curso no es la limpieza ni el preprocesamiento de datos, ya hemos realizado por ti el siguiente preprocesamiento:

  • Sustituir los valores NA por 0.
  • Sustituir los valores negativos de la edad por 0.
  • Sustituir los valores NA de la edad por la media.

Ahora vamos a construir un modelo en ensamblado usando la técnica de promedio (averaging). Se han creado los siguientes modelos individuales:

  • Regresión logística (clf_lr).
  • Árbol de decisión (clf_dt).
  • Support Vector Machine (clf_svm).

Como la variable objetivo es binaria, es posible que todos estos modelos tengan buen rendimiento individual. Tu objetivo es combinarlos usando promediado. Recuerda del vídeo que esto equivale a un enfoque de votación blanda (soft), así que debes seguir usando VotingClassifier().

Este ejercicio forma parte del curso

Ensemble Methods in Python

Ver curso

Instrucciones del ejercicio

  • Crea la lista de tuplas (string, estimator). Usa 'lr' para clf_lr, 'dt' para clf_dt y 'svm' para clf_svm.
  • Construye un clasificador de promedio llamado clf_avg. Asegúrate de especificar un argumento para el parámetro voting.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# 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))
Editar y ejecutar código