Я создал набор данных H5PY с примерно 2,1 миллионами экземпляров. Проблема в том, что я заполнил все строки, кроме последнего. Я хочу удалить последний ряд, но не уверен, насколько это возможно или безопасно.
Это фрагмент того, как создается набор данных:
shape = (dataset_length, args.batch_size, 2048, 1, 1)
with h5py.File(path, mode='a') as hdf5_file:
array_40 = hdf5_file.create_dataset(
f'{phase}_40x_arrays', shape, maxshape=(None, args.batch_size, 2048, 1, 1)
# either new or checkpointed file exists
# load file and create references to exisitng h5 datasets
with h5py.File(path, mode='r+') as hdf5_file:
array_40 = hdf5_file[f'{phase}_40x_arrays']
for i, (inputs40x, labels) in enumerate(dataloaders_dict):
inputs40x = inputs40x.to(device)
x40 = resnet(inputs40x)
array_40[batch_idx, ...] = x40.cpu()
hdf5_file.flush()
Я не совсем уверен, нужно ли мне копировать все экземпляры в новый набор данных. Я попытался изменить размер, но это не сработало ...
Ура,