Recipe: How to evaluate XGBoost model with learning curves example 1?
MACHINE LEARNING RECIPES

How to evaluate XGBoost model with learning curves example 1?

This recipe helps you evaluate XGBoost model with learning curves example 1
In [2]:
## How to evaluate XGBoost model with learning curves
## DataSet: skleran.datasets.load_breast_cancer()
def Snippet_188():
    print()
    print(format('Hoe to evaluate XGBoost model with learning curves','*^82'))

    import warnings
    warnings.filterwarnings("ignore")

    # load libraries
    import numpy as np
    from xgboost import XGBClassifier
    import matplotlib.pyplot as plt

    plt.style.use('ggplot')

    from sklearn import datasets
    import matplotlib.pyplot as plt
    from sklearn.model_selection import learning_curve

    # load the datasets
    dataset = datasets.load_breast_cancer()
    X = dataset.data; y = dataset.target

    # Create CV training and test scores for various training set sizes
    train_sizes, train_scores, test_scores = learning_curve(XGBClassifier(),
                                               X, y, cv=10, scoring='accuracy', n_jobs=-1,
                                               # 50 different sizes of the training set
                                               train_sizes=np.linspace(0.01, 1.0, 50))

    # Create means and standard deviations of training set scores
    train_mean = np.mean(train_scores, axis=1)
    train_std = np.std(train_scores, axis=1)

    # Create means and standard deviations of test set scores
    test_mean = np.mean(test_scores, axis=1)
    test_std = np.std(test_scores, axis=1)

    # Draw lines
    plt.subplots(1, figsize=(7,7))
    plt.plot(train_sizes, train_mean, '--', color="#111111",  label="Training score")
    plt.plot(train_sizes, test_mean, color="#111111", label="Cross-validation score")

    # Draw bands
    plt.fill_between(train_sizes, train_mean - train_std, train_mean + train_std, color="#DDDDDD")
    plt.fill_between(train_sizes, test_mean - test_std, test_mean + test_std, color="#DDDDDD")

    # Create plot
    plt.title("Learning Curve")
    plt.xlabel("Training Set Size"), plt.ylabel("Accuracy Score"), plt.legend(loc="best")
    plt.tight_layout(); plt.show()

Snippet_188()
****************Hoe to evaluate XGBoost model with learning curves****************


Stuck at work?
Can't find the recipe you are looking for. Let us know and we will find an expert to create the recipe for you. Click here
Companies using this Recipe