파이토치에서 'RuntimeError: Boolean value of Tensor with more than one value is ambiguous' 에러 해결 방법
에러
손실함수인 nn.MESLoss()
를 사용했을 때 다음과 같은 에러가 발생했다.
RuntimeError Traceback (most recent call last)
<ipython-input-75-8c6e9ea829d4> in <module>
----> 1 nn.MSELoss(y_pred, y)
2 frames
/usr/local/lib/python3.8/dist-packages/torch/nn/_reduction.py in legacy_get_string(size_average, reduce, emit_warning)
33 reduce = True
34
---> 35 if size_average and reduce:
36 ret = 'mean'
37 elif reduce:
RuntimeError: Boolean value of Tensor with more than one value is ambiguous
해결1
코드를 다음과 같이 수정하면 해결된다.
nn.MSELoss(y_pred, y)
$\to$ nn.MSELoss()(y_pred, y)
환경
- Colab
- Version: Python 3.8.10, PyTorch1.13.1+cu116