AdaBoostClassifier: идеальные метрики с test_size = 0,25, но ошибка несогласованных выборок для других значенийPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 AdaBoostClassifier: идеальные метрики с test_size = 0,25, но ошибка несогласованных выборок для других значений

Сообщение Anonymous »

Я использую AdaBoostClassifier со слабым обучающимся (

Код: Выделить всё

DecisionTreeClassifier
) для классификации набора данных. Набор данных содержит 7857 образцов:

Код: Выделить всё

X.shape
# Output: (7857, 5)

y.shape
# Output: (7857,)
Вот код для разделения набора данных и обучения модели:

Код: Выделить всё

X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.25, random_state=28
)

weak_learner = DecisionTreeClassifier(max_depth=1)

adb = AdaBoostClassifier(estimator=weak_learner, n_estimators=50, random_state=42)
adb_model = adb.fit(X_train, y_train)

y_pred = adb_model.predict(X_test)
print(classification_report(y_test, y_pred))
Когда я запускаю этот код с test_size=0.25, выходные данные для показателей классификации составляют 100 % для всех категорий:

Код: Выделить всё

              precision    recall  f1-score   support

Cheap       1.00      1.00      1.00       496
Expensive       1.00      1.00      1.00       506
Reasonable       1.00      1.00      1.00       963

accuracy                           1.00      1965
macro avg       1.00      1.00      1.00      1965
weighted avg       1.00      1.00      1.00      1965
Это не может быть правдой, поскольку мои точки данных не являются полностью разделимыми. (Я проверил с помощью графика)
Однако, когда я меняю test_size на любое другое значение (например, 0,3, 0,2), я получите следующую ошибку:

Код: Выделить всё

ValueError: Found input variables with inconsistent numbers of samples
Что я проверил:
  • Убедилось, что X и y имеют одинаковое количество образцов.
  • Подтверждено, что в X или y нет пропущенных значений.
Вопросы:
  • Почему test_size=0.25 дает идеальные метрики, а test_size – другие приводят к ошибке?
  • Как исправить эту проблему и использовать разные значения test_size?


Подробнее здесь: https://stackoverflow.com/questions/793 ... ent-sample
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»