Tensor에 NaN (Not a Number) 또는 Inf (Infinity) 값이 포함되어 있는지 확인하는법!
1. torch.isnan()와 torch.isinf() 함수 사용하기: 이 함수들은 각각 Tensor 내의 값이 NaN이나 Inf인지를 검사하여 같은 크기의 boolean Tensor로 반환한다.
2. torch.any() 함수와 결합하기: torch.isnan() 또는 torch.isinf()의 결과에 torch.any() 함수를 적용하면 Tensor 전체에 걸쳐 적어도 하나의 NaN이나 Inf 값이 있는지 여부를 알 수 있다.
import torch
# 예제 Tensor 생성
x = torch.tensor([1.0, 2.0, float('nan'), float('inf'), 5.0])
# NaN 체크
has_nan = torch.isnan(x).any()
print(f"Tensor has NaN: {has_nan}")
# Inf 체크
has_inf = torch.isinf(x).any()
print(f"Tensor has Inf: {has_inf}")
VSCode에서 디버깅한다고 생각하면 그냥 DEBUG CONSOLE에
# x라는 텐서 체크시
# NaN 체크
torch.isnan(x).any()
# Inf 체크
torch.isinf(x).any()
입력해서 확인해보자
'기타 정보' 카테고리의 다른 글
[VSCode] vscode ssh 비밀번호 없이 쓰는법 (포트 지정 포함) (0) | 2024.03.28 |
---|---|
[tmux] 간단 사용법 정리 (1) | 2023.09.21 |
[VS Code] Mac에서 VS Code 완전 삭제 (0) | 2023.04.10 |
[Tensorboard] 서버 텐서보드 로컬 피시로 보기 (0) | 2023.03.16 |
[JetBrains Gateway] JetBrains IDE ssh 연결 및 사용 (Easy) (0) | 2023.03.03 |
댓글