PyTorch: nn.Dropout
nn.Dropout
Overfitting을 해결할 수 있는 방법 중 하나로,
일부 파라미터를 학습에 반영하지 않음으로써 모델을 일반화하는 방법
Train시에는 Dropout을 적용해야 하지만 Validation, Test 시에는 적용하면 안됨
사용법
torch.nn.Dropout(p=0.5, inplace=False)
p
: drop_prob, 노드를 얼만큼 활용 안 할지 (요소가 0이 될 확률, Default: 0.5)
inplace
: true로 설정하면 제자리에서 작업 수행 (Default: False)
Dropout을 사용시 주의할 점
model.train()
과 model.eval()
을 꼭 선언해야 모델의 정확도를 높일 수 있다!
# Example
model.train() # 학습에서는 드롭아웃을 사용 (dropout=True)
for epoch in range(1, 10):
# Example
with torch.no_grad():
model.eval() # 검증에서는 드롭아웃 사용x (dropout=False)
Author And Source
이 문제에 관하여(PyTorch: nn.Dropout), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@danbibibi/PyTorch-nn.Dropout저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)