A.I.43 PyTorch 문서) PyTorch Recipes - Zeroing out gradients in PyTorch 파이토치에서 그래디언트를 0으로 설정하기원글 : Zeroing out gradients in PyTorch신경망을 구성할 때, 그래디언트를 0으로 설정하는 것이 좋다.이것은 .backward()가 호출될 때, 그래디언트는 기존값을 덮어쓰지 않고, 버퍼에 계속해서 쌓이기 때문이다.Introduction신경망의 훈련에서, 모델은 경사하강법(gradient descent)을 통해 정확도를 향상시킬 수 있다.경사하강법은 가중치(weight)와 편향(bias)값들을 변경해가면서 오차(또는 손실)값을 최소화하는 과정이다.torch.Tensor는 파이토치의 핵심 클래스로서, 텐서의 속성을 설정할 때, .requires_grad를 True로 지정하면 텐서에 대한 모든 연산이 추적된다.이는 역전파 과정(backward .. 2024. 10. 12. PyTorch 문서) PyTorch Recipes - Saving and loading models across devices in PyTorch 다양한 디바이스에서 모델을 저장하고 불러와 사용하기원글 : Saving and loading models across devices in PyTorch디바이스를 바꿔가면서 여러 모델을 저장하거나 불러와야 할 때가 있다.참고) 여기서 디바이스(device)는 신경망을 훈련하거나 추론할 때, 연산이 일어나는 장치를 말하며, GPU를 사용한 가속연산 여부에 따라 cpu와 cuda로 구분되고 있다.Introduction서로 다른 디바이스 사이에서 모델을 저장하고 불러와 사용하는 과정은 파이토치에서는 비교적 직관적이다.이 글에서는 CPU와 GPU를 바꿔가며 모델의 저장과 로드를 확인한다.Setup구글 코랩 등의 실행환경에서, 이 글에 포함된 GPU 디바이스에서의 코드 실행이 제대로 이뤄지게 하려면,런타임 유형을 .. 2024. 10. 11. PyTorch 문서) PyTorch Recipes - Warmstarting model using parameters from a different model in PyTorch 다른 모델의 매개변수를 사용해, 모델을 초기화하기원글 : Warmstarting model using parameters from a different model in PyTorch전이학습(transfer learning)을 하거나 새롭게 복잡한 모델을 학습할 때, 모델을 처음부터 학습하는 대신(from scratch)기존 모델의 일부 매개변수를 가져오거나,전체 모델을 구성하는 부분 모델을 불러와 사용하는 것은 흔한 일이다.이미 훈련된 매개변수를 활용하는 일은 (비록 매개변수의 일부분만을 사용하게 되더라도)훈련과정을 (완전 처음부터(coldstart)가 아닌) 기존의 훈련과정 위에서(warmstart) 시작할 수 있게 해주며처음부터 학습할 때보다 훨씬 빠르게 모델이 수렴하는 것을 기대할 수 있다.Intr.. 2024. 10. 11. PyTorch 문서) PyTorch Recipes - Saving and loading multiple models in one file using PyTorch 여러 개의 모델을 하나의 파일로 저장해서 활용하기원글 : Saving and Loading multiple models in one file using PyTorch다수의 모델을 하나의 파일로 저장하거나 불러오는 일은 이전에 학습된 모델을 재사용할 때 유용하다.Introduction적대적 생성 신경망(GAN), 시퀀스-투-시퀀스(Sequence-to-Sequence) 모델이나 앙상블모델(ensemble of models)처럼 여러 개의 torch.nn.Modules로 구성된 모델을 저장할 때는,구성 모델 각각의 state_dict와 대응되는 옵티마이저의 state_dict 들을 딕셔너리에 모두 저장해야 한다.훈련을 재개하는데 도움을 줄 수 있는 다른 정보가 있다면, 단순히 딕셔너리에 추가하여서 손쉽게 활.. 2024. 10. 10. 이전 1 2 3 4 5 6 ··· 11 다음