[python] 코딩테스트를 위한 파이썬 문법 정리
·
💻 Programming/코딩 테스트
1. deque - 선입선출 큐 from collections import deque deq = deque() deq.append(1) deq.appendleft(2) deq.pop() deq.popleft() deque.append(item): item을 데크의 오른쪽 끝에 삽입 deque.appendleft(item): item을 데크의 왼쪽 끝에 삽입 deque.pop(): 데크의 오른쪽 끝 엘리먼트를 가져오는 동시에 데크에서 삭제한다. deque.popleft(): 데크의 왼쪽 끝 엘리먼트를 가져오는 동시에 데크에서 삭제한다. deque.remove(item): item을 데크에서 찾아 삭제한다. deque.rotate(num): 데크를 num만큼 회전한다(양수면 오른쪽, 음수면 왼쪽). 2. C..
[pytorch] 모델의 일부 레이어 웨이트 업데이트 막기 | model freezing (모델 프리징)
·
💻 Programming/AI & ML
PyTorch에서 모델 일부분의 학습을막기 위해서는 해당 부분의 매개변수에 대해 requires_grad 속성을 False로 설정하면 된다. 이를 통해 그 매개변수에 대한 gradient가 계산되지 않아 웨이트가 업데이트되지 않는다. 기본적으로 model.named_parameters() 메서드를 사용하여 name과 param을 추출하고 원하는 name의 레이어만 requires_grad를 변경할 수 있다. 모델 프리징 예시 - Resnet 예시 import torch import torch.nn as nn import torchvision.models as models # ResNet-50 모델 불러오기 (pre-trained) resnet50 = models.resnet50(pretrained=Tr..