Как передать X_train + X_eval в метод подбора CV случайного поиска - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь передать набор [X_train, X_val] в X из random_search.fit() и то же самое в y с помощью:
random_search.fit(X=[X_train, X_val], y=[y_train, y_val])

Но при обучении происходит ошибка ниже отображается:

ValueError: Значение истинности массива с более чем одним элементом является неоднозначным. Используйте a.any () или a.all ()
Во время обработки вышеуказанного исключения произошло другое исключение:
TypeError: невозможно инициализировать DMatrix из списка

Я уже пытался использовать group метод поля подгонки, но я получил другую ошибку. Есть ли способ пройти поезд / тест и его оценки для метода подбора случайного поиска? Я не могу понять, как это сделать.

1 Ответ

2 голосов
/ 19 апреля 2020

Возможно, я не правильно понял, но если вы хотите использовать RandomizedSearchCV в обучающих и проверочных примерах, соединенных вместе, и использовать CV во всей этой выборке, я предлагаю использовать np.concatenate вместо понимания списка следующим образом:

# taking examples for your X_train, X_val, y_train and y_val
import numpy as np
X_train = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
X_val = np.array([[1, 2, 3], [4, 5, 6]])
y_train = np.array([10, 11, 12])
y_val = np.array([13, 14])

data = np.concatenate((X_train, X_val), axis=0)
target = np.concatenate((y_train, y_val))

И вы можете передать data и target в метод подгонки.

...