не могу сделать из набора данных DataLoader

У меня есть массив numpy


> data[0]

array([array([[255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       ...,
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255],
       [255, 255, 255, ..., 255, 255, 255]], dtype=uint8),
       62390], dtype=object)

И мне нужно сделать DataLoader из этих данных Но когда я пытаюсь

my_dataloader = DataLoader(data, batch_size= 64, shuffle= True, num_workers= 4)

У меня ошибка: default_collate: пакет должен содержать тензоры, массивы numpy, числа, словари или списки; найденный объект .

Но я не могу изменить dtype. Как мне это сделать?


person Ivan Dobryaev    schedule 23.12.2020    source источник
comment
Дубликат In-place type conversion of a NumPy array не имеет значения. Пока вы показываете только data[0], очевидно, что data - это массив объектов dtype, возможно, 2d. Массивы элементов также могут различаться по форме. data[0,0].astype(float) должен работать, создавая новый массив из внутреннего uint8. Проверьте форму data и всех его массивов элементов.   -  person hpaulj    schedule 23.12.2020