본문 바로가기

반응형

pytorch error

(4)
[error] RuntimeError: CUDA error: no kernel image is available for execution on the device 결론부터 말하면 GPU와 PC환경설정간 호환이 안된다는 뜻이다. 해결 방법은 아래에 흐름대로 적어놓도록 하겠다. 제목과 같은 에러메세지가 떴다. 지금 상황은 RTX3090으로 바꾸고 nvidia-driver, cuda, cudnn, anaconda, pytorch 설치 후 처음으로 러닝을 돌리는데 위와 같은 에러가 뜬 상황이다. 그 중 의도를 알 수 있는 메세지를 스샷했다. 대충 보니 파이토치 버전이 맞지 않는다는 의미인것 같았다. 일단 내 실험환경은 다음과 같다. NVIDIA-DRIVER : 460.39 CUDA : 11.2 CUDNN : 8.1.1 pytorch : 1.8.0 근데 의문인 것은 연구실 다른 분들 중에 CUDA 11.2, CUDNN 8.1.1 로 학습중인 분도 계셨고 NVIDIA-DRI..
[Error] IndexError: invalid index of a 0-dim tensor. Use `tensor.item()` in Python or `tensor.item<T>()` in C++ to convert a 0-dim tensor to a number IndexError로 다음과 같은 에러가 발생했다. 깃허브에 있는 예전 코드를 가져올 때 발생할 수 있는 에러인데 pyTorch의 버전이 0.5 보다 크면 발생할 수 있다고 한다. 이 에러는 단순히 0 차원 텐서가 유효하지 않기 때문에 발생하는 에러다. data[0] --> data 로 바꿔주면 해결된다. 주석처럼 돼있는걸 주석 아래줄로 바꾸면 된다. 참고 사이트 : github.com/NVIDIA/flownet2-pytorch/issues/113
[Error] TypeError: conv2d(): argument 'input' (position 1) must be Tensor, not NoneType TypeError: conv2d(): argument 'input' (position 1) must be Tensor, not NoneType 원인 : nn.Conv2d()에 input type으로 Tensor type이 들어가야 하는데 NoneType이 들어가고 있다는 말이다. 왜 NoneType이 들어가고 있는지 코드에서 확인해보아야 한다. self.layer2의 정의를 살펴보니 ResidualBlock 클래스의 내부를 보아야 했다. ResidualBlock class의 forward이다. 문제를 확인할 수 있겠는가? forward()의 return 을 설정해두지 않아서 NoneType 에러가 발생한 것이다. 해결법 : forward()에 return을 달아두자...
[Error 기록] RuntimeError: Found 0 files in subfolders of: 자세한 에러 : RuntimeError: Found 0 files in subfolders of: /home/jsh/PycharmProjects/Torch_Exam/data/taco_and_burrito/train/ Supported extensions are: .jpg,.jpeg,.png,.ppm,.bmp,.pgm,.tif,.tiff,.webp 해당 경로(/home/jsh/PycharmProjects/Torch_Exam/data/taco_and_burrito/train/)의 폴더가 비어있었기 때문에 에러가 났었다. 비어있던 이유는 train_imgs = ImageFolder(myPath+"/train", transform=transforms.Compose([ transforms.RandomCrop(22..

반응형