-
model train(), eval()파이토치&텐서플로우&관련코딩 2020. 12. 13. 15:33
model.train() 하면 drop out과 BN이 적용이 되는데 DROPOUT은 예를 들어 p=0.4라고 하면 40퍼센트를 사용하지 않겠다는 말이다. 마지막 결과에 3/5을 곱하여 가중치를 더 죽인다고 생각. 그래서 훈련 한 뒤에 eval을 쓰면 모든 가중치를 다 살려내므로 정상적인 1의 결과가 나올 수 있다.
BN도 비슷하게 레이어마다의 배치 정규화를 진행 하면서 mean variance를 모아두었다가 eval에서 모아둔 값들을 평균계산해서 적용.
'파이토치&텐서플로우&관련코딩' 카테고리의 다른 글
loss.backward(retain_graph=True)의 필요성 & GAN 학습할때 (0) 2021.01.05 파이토치 비전에서의 shape 의미 (0) 2021.01.05 resnet 레이어 custom으로 변경하기 (0) 2020.12.30 RNN (0) 2020.11.27 RNN 차원 계산 (0) 2020.11.12