- BCELoss()
使用BCELoss()时,网络的输出必须要做sigmoid,这时与不做sigmoid直接使用BCEWithLogistLoss()效果一致,否则跑几代就会报错:
import os
os.environ['CUDA_LAUNCH_BLOCKING'] = '1' # 定位正确错误位置
真正错误的地方:
要么使用BCEWithLogistLoss(),要么使用sigmoid+BCELoss()
参考:https://blog.csdn.net/weixin_43590796/article/details/115714248
- CrossEntropyLoss()