Прежде всего, функция roc_auc_score
ожидает входные аргументы с одинаковой формой.
sklearn.metrics.roc_auc_score(y_true, y_score, average=’macro’, sample_weight=None)
Note: this implementation is restricted to the binary classification task or multilabel classification task in label indicator format.
y_true : array, shape = [n_samples] or [n_samples, n_classes]
True binary labels in binary label indicators.
y_score : array, shape = [n_samples] or [n_samples, n_classes]
Target scores, can either be probability estimates of the positive class, confidence values, or non-thresholded measure of decisions (as returned by “decision_function” on some classifiers).
Теперь входными данными являются истинные и прогнозируемые оценки, НЕданные обучения и метки, которые вы используете в примере, который вы опубликовали. Более подробно,
model.fit(X_important_train, y_train)
model.score(X_important_train, y_train)
# this is wrong here
roc_auc_score(X_important_train, y_train)
Вы должны сделать что-то вроде:
y_pred = model.predict(X_test_data)
roc_auc_score(y_true, y_pred)