ssertion `input_val >= zero && input_val <= one` failed. RuntimeError: CUDA error: device-side asser

这个错误有几个尝试的方向:

  1. 强行将输出限制在(0, 1)之间
    out = out.clamp(0, 1)
  2. 输出可能有 nan 值, 将其置为零
    out[out!=out] = 0
  3. 如果用的是binary cross entropy, 用nn.BCEWithLogitsLoss() 代替 nn.BCELoss()
  4. 当然也有可能是脏数据的问题

参考:
https://stackoverflow.com/questions/66456541/runtimeerror-cuda-error-device-side-assert-triggered-on-loss-function

你可能感兴趣的:(pytorch,机器学习深度学习)