У меня есть массив (123, 3072), и мне нужно разделить его на 5 приблизительно одинаковых сгибов (приблизительно, потому что 123 нельзя разделить на 5, например), чтобы выполнить 5-кратную перекрестную проверку,scikit-Learn не допускается.Я попытался получить 2 ndarrays размера (3, 25, 3072) и (2, 24, 3072).Теперь мне нужно объединить их, но каждая функция, которую я пробую, поднимает это:
ValueError: all the input array dimensions except for the concatenation
axis must match exactly
Возможно ли их объединить?
Это мой код:
num_folds = 5
mod = binary_train_X.shape[0] % num_folds
first_records = (binary_train_X.shape[0] - mod) // num_folds + 1
last_records = first_records - 1
first_part = binary_train_X[:mod * first_records].reshape([mod, first_records, -1])
second_part = binary_train_X[mod * first_records:].reshape([num_folds - mod, last_records, -1])
folds_X = np.concatenate((first_part, second_part))
Или, может быть, есть другой способ разделить его на 5 частей (сгибы)?