반응형

디버깅 11

[R] "파일 이름, 디렉터리 이름 또는 볼륨 레이블 구문이 잘못되었습니다" 해결 방법

개요 윈도우에서 R을 이용한 프로그래밍 도중 아래와 같은 경고 메시지가 등장하며 실행이 제대로되지 않는 문제가 있었습니다. Warning message: In normalizePath(path.expand(path), winslash, mustWork) : path[1]="C:/Users/???/Documents": 파일 이름, 디렉터리 이름 또는 볼륨 레이블 구문이 잘못되었습니다 원인 제 PC의 사용자 폴더 이름에 한글이 포함되어있었는데, 한글 디렉토리에 오류를 발생시키는 R Studio의 특성에 따라 라이브러리 호출 시 해당 폴더에 접근하는 과정에서 발생하는 오류인 것으로 추측되었습니다. 따라서, 한글이 포함되지 않은 디렉토리로 라이브러리를 저장해서 접근하도록 만들어줘야 합니다. 해결법 C:/Prog..

R 2022.09.13

RuntimeError: The expanded size of the tensor (1002) must match the existing size (512) at non-singleton dimension 1. Target sizes: [8, 1002]. Tensor sizes: [1, 512] 해결

Transformers token size error debugging transformers 모듈로 모델 학습 과정 중 너무 긴 토큰 사이즈로 인해 발생가능한 에러를 고치는 방법에 대하여 간략하게 다루어보도록 하겠습니다. 오류 원인 trainer로 bert 모델을 학습하는 과정 도중 학습이 잘 진행되다가 중간에 특정 데이터에 도달했을 때, 다음과 같은 오류 메시지가 발생하였습니다. (batch size = 8이었으며, batch 내 문제가 되는 데이터가 포함된 것으로 보입니다.) trainer.train() # RuntimeError: The expanded size of the tensor (1002) must match the existing size (512) at non-singleton dim..

Python/Debugging 2022.08.26

ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() 해결법

if문 넘파이 배열 비교 연산자 ValueError 디버깅 비교문에서 numpy array 등 자료형에 대한 ==, != 연산 적용 시 등장할 수 있는 "ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()" 오류에 대하여 원인과 해결 방안을 다루어보도록 하겠습니다. (참고 : 판다스 시리즈 등 자료형에서도 비슷한 종류의 오류 발생이 가능합니다.) 에러 원인 아래는 두 넘파이 배열이 같은지를 if문 내에서 비교하려는 예시입니다. import numpy as np a = np.array([1, 2, 3, 4]) b = np.array([1, 2, 3, 4]) if a == b..

Python/Debugging 2022.07.14

파이참(Pycharm) 디버깅 모드 사용 방법 정리(변수 값, 오류 체크)

파이참 디버거 사용법 Pycharm에서 프로그래밍 중 디버깅 모드(디버거)를 사용하는 방법에 대하여 변수의 값과 오류를 확인하는 예시를 중심으로 간단하게 정리해보도록 하겠습니다. 기본 사용법 : 원하는 코드 위치에서 변수 값 확인 먼저, 파이참 디버거로 특정 코드 줄에서의 변수 값을 체크하는 방법을 살펴보겠습니다. 예시로 아래와 같은 간단한 코드로 구성된 main.py 파일이 있다고 가정해 보겠습니다. 변수 값을 알기를 원하는 코드 위치의 줄 번호 부분(붉은색 동그라미 부분)을 클릭하게 되면, 아래와 같이 동그라미 표시가 등장하게 됩니다. 이후, 오른쪽 위에서 벌레 모양의 아이콘을 클릭해주시거나, 혹은 메뉴바에서 Run 메뉴 > Debug 항목을 눌러주시면 디버거 실행이 완료됩니다. 디버깅 모드 실행 뒤..

Python/Utils 2022.07.05

파이토치 RuntimeError: grad can be implicitly created only for scalar outputs 해결법

Pytorch loss.backward() 과정 에러 디버깅 파이토치에서 모델 학습 과정 내 backporpagation을 시도하는 도중, RuntimeError: grad can be implicitly created only for scalar outputs 라는 오류 메시지가 출력되었습니다. loss.backward() # 여기서 오류 발생 오류 원인 loss.backward() 과정은 기본적으로 1개의 스칼라 데이터에 대한 역전파를 수행합니다. 그러나, loss 변수 내에는 배치 내 데이터 각각에 대한 손실 함수 점수들이 벡터 형태로 저장된 점을 확인했습니다.(아래는 3개의 데이터에 대한 loss 점수 예시입니다.) print(loss) # tensor([1.5054, 1.3475, 1.0413]..

Python/Debugging 2022.04.23

파이토치 설치 과정 Solving environment 오류 해결

Case 1 : Anaconda Pytorch 설치 에러 디버깅 파이토치 사이트에서 conda를 이용한 명령어를 통해서 설치하는 도중 아래와 같은 오류가 발생하면서 설치 과정이 더이상 진행되지 못하였습니다. Solving environment: / The environment is inconsistent, please check the package plan carefully The following packages are causing the inconsistency: 오류 원인 cuda 라이브러리를 설치한 뒤에는 해당 환경에서 conda 명령어로 파이토치가 정상 설치됨을 확인하였는데, 이것이 원인으로 추측되기는 하였습니다. 오류 해결법(pip으로 설치) Pytorch 사이트에서 conda가 아닌 pi..

Python/Debugging 2022.04.15

TypeError: 'function' object is not subscriptable 해결

파이썬 object is not subscriptable 오류에 대하여 지난 글에서 [] 괄호와 () 괄호의 역할을 구분하며 [] 괄호를 이용한 인덱싱 대신 () 괄호를 사용한 호출을 진행하면 발생하는 object is not callable 종류의 오류를 살펴보았습니다. TypeError: 'list' object is not callable 원인과 해결법 파이썬 object is not callable 에러 디버깅 리스트 인덱싱 등 과정에서 자주 등장할 수 있는 오류 종류인 '~~ object is not callable' 종류의 오류의 의미와 원인에 대해서 살펴보고 해결 방법을 파헤쳐보도 jimmy-ai.tistory.com 이번 글에서는 반대로 () 괄호로 호출을 해야하는 함수 등 객체에 대하여 ..

Python/Debugging 2022.03.30

TypeError: 'list' object is not callable 원인과 해결법

파이썬 object is not callable 에러 디버깅 리스트 인덱싱 등 과정에서 자주 등장할 수 있는 오류 종류인 '~~ object is not callable' 종류의 오류의 의미와 원인에 대해서 살펴보고 해결 방법을 파헤쳐보도록 하겠습니다. 오류 의미, 원인 이해를 돕기 위하여, 아래와 같은 아주 간단한 리스트와 함수를 생각해보도록 하겠습니다. x = [1, 2, 3] # 리스트 def double(num): # 함수 return num * 2 x[0] # 리스트 인덱싱 double(1) # 함수 호출 리스트에서 자료를 추출하는 인덱싱 과정에서는 [] 모양의 괄호가 사용되고, 함수에 input을 넣어 호출하는 과정에서는 () 모양의 괄호가 사용되는 것을 알 수 있습니다. 그렇다면 만약 인덱싱..

Python/Debugging 2022.03.30

AttributeError: __enter__ 원인과 해결법

파이썬 파일 open 오류 디버깅 파이썬에서 open 메소드를 통하여 파일 입출력을 진행할 때, 아래와 같은 문법 오류로 인하여 AttributeError가 발생할 수 있습니다. with('example.txt', 'r') as f: # open 함수를 정상적으로 사용하지 않은 상황 for line in f: pass --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) in () ----> 1 with('example.txt', 'r') as f: 2 for line in f: 3 pass AttributeError: __enter__..

Python/Debugging 2022.03.28

ValueError: invalid literal for int() with base 10: '' 해결

빈 문자열, 공백 int 변환 오류 디버깅 리스트 내 문자열 숫자 자료들을 정수형으로 변환하려는 도중, 빈 문자열이 포함되어 있어 아래와 같은 오류가 발생하였습니다. list_a = ['', '0', '1', '2', '3', '4', '5'] list_b = list(map(int, list_a)) # int형 변환 시도 --------------------------------------------------------------------------- ValueError Traceback (most recent call last) in () 1 list_a = ['', '0', '1', '2', '3', '4', '5'] 2 ----> 3 list_b = list(map(int, list_a)) #..

Python/Debugging 2022.03.27
반응형