Вы пытаетесь изменить форму в несовместимую форму. Теперь, что я имею в виду под этим? Посмотрите на этот пример:
a = np.array([[1, 2, 3],
[4, 5, 6],
])
Форма этого массива:
a.shape
>> (2, 3)
Массив a
имеет 2 x 3 = 6
элементов. Давайте попробуем преобразовать его в массив (2, 6)
a.reshape(2, 6)
Это приведет к
>> ValueError: cannot reshape array of size 6 into shape (2,6)
Обратите внимание, что мы пытались превратить массив, содержащий 2 x 3 = 6
элементов, в массив, который будет иметь 2 x 6 = 12
элементов. Но NumPy не может добавить эти дополнительные элементы в исходный массив и придать им желаемую форму. Таким образом, получается ValueError
.
В вашем случае вы пытаетесь превратить массив с 6003
элементами в массив, который будет содержать 6003 x 3072 = 18441216
элементов!