Pytorch dataloader报错 RuntimeError: stack expects each tensor to be equal size, but got [4] at entry 0 and [5] at entry 1
参考 https://blog.csdn.net/dong_liuqi/article/details/109823874
这种情况下,你还能发现batch_size为1时是不会报错的,
batch_size为大于1会报错,报错的原因是同一batch中的entries的维数不一样
例如, batch = [[2,3,5, 1], [3,4,5,2,3]]
解决方案:
补齐,补成相同长度
# 把所有向量的长度都补为max_length multi = np.pad(multi, (0, max_length-multi.shape[0]), 'constant', constant_values=(0, 0))
注意是在Dataset class的__get__item()方法中补齐
个性签名:时间会解决一切