Saltar al contenido

Trazar variables de importancia xgboost Python

Revisamos de forma exhaustivamente cada una de las noticias en nuestra web con la meta de mostrarte siempre la información veraz y certera.

Solución:

Hay un par de puntos:

  1. Para ajustar el modelo, desea utilizar el conjunto de datos de entrenamiento (X_train, y_train), no todo el conjunto de datos (X, y).
  2. Puedes usar el max_num_features parámetro de la plot_importance() función para mostrar solo la parte superior max_num_features características (por ejemplo, 10 principales).

Con las modificaciones anteriores a su código, con algunos datos generados aleatoriamente, el código y la salida son los siguientes:

import numpy as np

# generate some random data for demonstration purpose, use your original dataset here
X = np.random.rand(1000,100)     # 1000 x 100 data
y = np.random.rand(1000).round() # 0, 1 labels

from xgboost import XGBClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
seed=0
test_size=0.30
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=test_size, random_state=seed)
from xgboost import XGBClassifier
model = XGBClassifier()
model.fit(X_train, y_train)
import matplotlib.pylab as plt
from matplotlib import pyplot
from xgboost import plot_importance
plot_importance(model, max_num_features=10) # top 10 most important features
plt.show()

ingrese la descripción de la imagen aquí

Si entiendes que te ha resultado de provecho nuestro artículo, agradeceríamos que lo compartas con más entusiastas de la programación de esta manera contrubuyes a dar difusión a esta información.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *