반응형

Python 378

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

파이썬 조건문 사용법 : if elif else 차이, 한 줄, 조건 여러 개 예제

파이썬 if~elif~else문 문법 정리 안녕하세요. 이번 글에서는 파이썬에서 사용되는 조건문인 if문에 대하여 if elif else 간의 용법 차이와 실행할 코드가 한 줄일 때, 그리고 여러 개의 조건이 중첩된 케이스의 예제를 중심으로 사용되는 경우의 수를 총망라해보도록 하겠습니다. 파이썬 if문 기본 사용법 파이썬의 if문은 if 조건 :(콜론)의 세트로 사용하는 것이 기본적인 용법입니다. 콜론이 생략되면 오류가 발생하며, if 문 내부에서 실행될 코드 부분은 들여쓰기로 구분합니다. ### 조건이 만족되는 경우 ### a = 6 if a > 5: print('a가 5보다 큽니다!') print('안녕하세요!') print('hello!') # 출력 결과 a가 5보다 큽니다! 안녕하세요! hello..

파이썬에서 파이(원주율, pi)를 나타내는 방법 : math.pi, np.pi, scipy.pi

파이썬 원주율(파이) 값 표현 : math.pi, np.pi, scipy.pi 비교 파이썬에서 비교적 정교한 파이(원주율) 값을 저장하고 있는 math, numpy 및 scipy 라이브러리의 pi 속성에 대해서 살펴보겠습니다. math.pi, np.pi, scipy.pi 원주율 저장 값 비교 세가지 패키지에 저장된 파이 값들을 각각 math.pi와 np.pi 그리고 scipy.pi를 통하여 불러오고, 각각 소수점 55자리까지 출력하여 보았습니다. import math import numpy as np import scipy print(math.pi) # 3.141592653589793 print("%.55f"%math.pi) # 3.1415926535897931159979634685441851615905..

[Numpy] np.unique 사용법 정리 : 고유한 값들만 모아서 반환

파이썬 넘파이 unique 함수 예제 이번 글에서는 파이썬의 넘파이 라이브러리 내에서 배열 내의 distinct 원소들만을 모은 결과를 반환해주는 np.unique 함수의 사용법에 대해서 살펴보겠습니다. 참고로, 이 글은 numpy의 unique 함수 설명 공식 document 내용을 기반으로 작성되었습니다. np.unique 기본 사용 방법 unique 내에 배열(리스트, numpy array 등) 자료만 input으로 넣어주면 사용이 완료됩니다. 고유한 원소들을 모은 뒤, 1차원 shape으로 변환하고 정렬을 진행한 결과를 반환합니다. 문자열이 포함된 경우, 전부 문자열로 변환된 결과가 나타나게 되며 이 때, 정수형 3과 문자열 '3'은 같은 값으로 취급됩니다. import numpy as np np..

Python/Numpy 2022.03.24

파이썬에서 제곱, 제곱근을 나타내는 방법 정리(**, math, numpy 이용)

파이썬 제곱과 제곱근 구하기 예제 파이썬에서 m의 n제곱 형태를 구할 수 있는 방법들을 파이썬 기본 연산자인 **을 이용하는 경우와 math, numpy 라이브러리를 사용한 경우로 나누어 총망라해보는 시간을 가져보도록 하겠습니다. 제곱, 제곱근 표현 방법 1 : 기본 연산자 ** 파이썬에서 m의 n제곱을 표현하는 가장 간단한 방법은 기본으로 제공되는 산술 연산자 중 하나인 **를 사용하여 m ** n 형태로 작성하는 것입니다. n에 자연수가 포함된 가장 기본적인 예시는 아래와 같습니다. 4 ** 2 # 16 3 ** 5 # 243 1.5 ** 3 # 3.375 0.1 ** 4 # 0.00010000000000000002(부동 소수점 오차) n 자리에 0.5 혹은 1/2을 넣으면 제곱근을 나타낼 수 있으며..

파이썬 zip 함수 사용법, for문에서 변수 여러개 순회 예제

파이썬 zip 함수 원리와 순회 변수 2개 이상의 for문 구현 안녕하세요. 이번 시간에는 변수 여러개의 순서쌍을 튜플 형태로 묶을 수 있는 zip 함수의 사용 방법과 zip을 기반으로 2개 이상의 변수를 for문에서 순회하는 예제를 살펴보겠습니다. zip 함수의 원리와 기본 사용법 zip 함수의 원리는 길이가 같은 두개 이상의 자료형에 대하여 동일한 위치의 자료끼리 튜플 형태로 묶어주는 역할을 수행합니다. 기본적인 사용법은 zip(x, y, z, ...) 처럼 원하는 자료들을 순서대로 인자로 넣어주시면 됩니다. 예를 들면, 아래의 예시에서 x = [1, 2, 3] y = ['a', 'b', 'c'] z = ['가', '나', '다'] 와 같이 길이가 3으로 동일한 3개의 리스트 자료가 있다고 할 때, ..

[Numpy] 파이썬 제곱 함수 np.power 사용법 정리

파이썬 넘파이 power 함수 사용 방법 예제 모음 안녕하세요. 이번 글에서는 제곱 연산을 수행하는 파이썬 넘파이의 np.power 함수의 기능을 케이스별 예제를 중심으로 자세하게 설명해보도록 하겠습니다. 참고로, 이 글은 numpy.power 공식 설명 document의 내용을 기반으로 작성되었습니다. np.power(number, number) : 단일 숫자의 제곱 형태 단일 숫자에만 적용하는 가장 기본적인 넘파이 power 함수의 사용 형태로 np.power(m, n)의 형태로 작성하며, m ** n의 연산 수행 결과와 거의 동일하게 나타납니다. m, n 위치에는 정수와 실수가 모두 input으로 들어올 수는 있으나, n이 음수인 경우에는 m 또는 n 중 하나는 반드시 실수 형태이어야만 합니다. i..

Python/Numpy 2022.03.23

파이썬 f-string을 이용한 기본 예제와 소수점 지정 출력 방법 정리

파이썬 f string 사용법, 소수점 포맷팅 방법 안녕하세요. 이번 글에서는 f-string을 이용한 문자열 포맷팅의 기본 방법과 소수점 출력 형식을 지정하는 방법에 관한 예제를 살펴보겠습니다. f-string 기본 사용법 f string 포맷팅은 f + 따옴표로 시작하며, 따옴표로 마무리되는 형식으로 사용합니다. 문자열 내 {}에 원하는 변수를 넣어 바로 출력이 가능하며, 리스트, 딕셔너리 등 자료형도 그대로 출력이 가능하다는 장점이 있습니다. day = '수' hour = 5 minute = 30 print(f'오늘은 {day}요일이며, 현재 시각은 {hour}시 {minute}분 입니다.') # 오늘은 수요일이며, 현재 시각은 5시 30분 입니다. list_ex = [1, 2, 3] dict_ex..

Transformers 모델 병렬화(Model Parallelism) 간단하게 하는 방법

Transformers T5, GPT2 등 Model Parallelism Transformers 라이브러리 내 T5, GPT-2 등 파라미터 사이즈가 큰 일부 모델에 대하여 모델 파라미터 병렬처리를 간단하게 할 수 있는 parallelize 함수와 device map의 사용 방법에 대해서 다루어보도록 하겠습니다. 이 글은 HuggingFace의 공식 document 내용을 바탕으로 작성되었습니다. T5 모델 병렬처리 예시 Transformers에서 제공하는 T5 모델 크기의 attention module의 개수에 따라 아래처럼 device마다 할당할 module의 번호를 지정해주시면 됩니다. t5-small은 6개, t5-base는 12개, t5-large, t5-3b 및 t5-11b는 24개의 att..

Python/NLP Code 2022.03.21

ModuleNotFoundError: No module named 'fused_layer_norm_cuda' 해결법

transformers apex 연동 오류 디버깅 transformers 라이브러리의 T5 모델을 불러오는 과정에서 아래와 같은 에러가 발생하였습니다. import transformers model = transformers.T5ForConditionalGeneration.from_pretrained("t5-base") Warning 메시지 : 'fused_weight_gradient_mlp_cuda' module not found. gradient accumulation fusion with weight gradient computation disabled. Error 메시지 : ModuleNotFoundError: No module named 'fused_layer_norm_cuda' 오류 원인 T5..

Python/Debugging 2022.03.21
반응형