这个错误是由于在调用'param.data.copy_()'时,源张量'selected_particles[i].position'的大小与目标张量'param.data'的大小不匹配导致的。具体来说,源张量的大小是(1, 7),而目标张量的大小是(128, 7),所以在第二个维度上它们的大小不匹配。

要解决这个问题,你需要确保源张量和目标张量的大小匹配。如果源张量的大小是(1, 7),那么你需要将它复制到大小为(1, 128, 7)的目标张量中。你可以使用'torch.unsqueeze()'函数来添加一个新的维度,然后使用'torch.repeat()'函数来将源张量复制到目标张量中。具体来说,你可以按照以下方式修改代码:

param.data.copy_(selected_particles[i].position.unsqueeze(0).repeat(128, 1, 1))
Python 错误:RuntimeError: The size of tensor a (128) must match the size of tensor b (7) at non-singleton dimension 1 解决方法

原文地址: https://www.cveoy.top/t/topic/nFNo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录