흑백이미지를 준비하고 matplotlib.pyplot에서 plt.imshow로 출력을 해보면 cmap이라는 옵션을 줘야한다 color map이라는 뜻인데 기본값이 viridis라고 한다. 실제로 색이 비슷한걸 보니 그런것 같다 This parameter is ignored if X is RGB(A). 마지막에 이런 문장이 있는데, X가 RGB image면 cmap을 무시한다고 한다 channel 3인 gray image로 줬을 때는 cmap을 안줘도 gray로 잘 나온다
1. 개요 learning rate는 model train 성능을 결정하는 중요한 요소 동일한 learning rate를 사용하여 처음부터 끝까지 학습을 할 수도 있지만, 초반에는 큰 learning rate를 사용하여 빠르게 최적값에 가다가, 후반에는 작은 learning rate를 사용하여 미세조정을 할 수도 있다. 기본적인 원리는 지정한 epoch 스텝마다 learning rate에 gamma를 곱한 값을 새로운 learning rate라 하고 다음 epoch을 돌린다. 2. 기본적인 사용법 Pytorch에서는 다양한 learning rate scheduler를 지원하고 있다. 기본적으로 학습시에 batch마다 optimizer.step()을 하고 나서, batch마다 learning rate를 바..
1. computational graph computational graph라는 것은 pytorch가 최종 변수에 대한 (위 그림에서는 L) forward pass를 통해 계산되는 모든 과정이 graph 형태로 저장되어 있는 것을 의미한다. 위의 그림은 a, b, c, d, L, w1,w2,w3,w4 9개의 변수 값들의 계산 과정이 기록되어 있는 computational graph이다. 위 그림에서 예를 들어 c를 계산할려면 a와 w2의 어떤 연산으로 c가 계산되어진다는 의미다. 이렇게 저장을 해놓으면 chain rule에 의한 backward pass 계산이 쉬워진다. 2. backward forward pass를 통해 변수에 대해 계산을 하면 pytorch에서 알아서 computational ..
1. introduction hyperparameter tuning을 도와주는 open source framework 파이썬을 이용하여 최적화된 hyperparameter를 자동으로 찾아줌 큰 공간을 더욱 빠르고 효과적으로 찾아주는 최신 알고리즘인 bayesian optimization을 사용? hyperparameter search가 특별한 코드 수정없이도 쉽게 병렬화가 가능해서 대규모 탐색도 분산 머신으로 탐색할 수있는 방법을 제공 쉽게 디자인 되어 있어서 상당히 쉽게 사용가능함 2. 기본적인 사용방법 optimize하고 싶은 objective function을 정의함 trial.suggest_uniform, trial.suggest_int 등으로 탐색하고자 하는 값의 범위를 설정함 실제 search..
tqdm은 for문에서 iterable을 순회할때 어느정도 남아있는지 알려주는 대표적인 라이브러리 기본적으로 tqdm(iterable) 형태로 다음과 같이 사용 필요에 따라 dataloader를 순회할때 어느정도 남아있는지 궁금하다면... dataloader는 indexing이 불가능해서 range(len(dataloader)): 형태로는 사용하기 어렵다 그래서 enumerate(dataloader)로 사용하는데 여기서 tqdm을 어떻게 써야하나 tqdm(enumerate(train_dataloader)) 형태로 쓰면... 이렇게 어느 정도 남아있는지 알수가 없음 반대로 enumerate(tqdm(train_dataloader)) 형태로 사용하면 어느정도 남아있는지 보여줌
print는 잘 되는걸 보면 값이 정상인데 프론트로 return할려면 에러가 난다 FastAPI에서 numpy.* 데이터 타입을 지원하지 않기 때문에 에러가 난다 문제가 되는 numpy value에서 *.item()으로 python value로 가져와서 저장하고 그러면 정상적으로 return할 수 있다