赞
踩
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation.
问题原因:
pytorch版本导致的,0.3.0版本不会报错,0.4.0就报错;由于后者版本将Variable和Tensor合并为Tensor,但是inplace操作对Tensor不能用,因此报错。
解决方法:
查阅网上资料,可执行方案有以下几点:
inplace=True
改成 inplace=False
;+=
操作进行修改,如下所示:out = out + res # not inplace
out += res # inplace
若网络结构很大,那就需要慢慢调试,加一句out.backward(),观察是否报错,若没有,则之前没错。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。