728x90
반응형
import numpy as np
def dropout_layer(X, prob):
assert 0 <= prob <= 1
if prob == 1:
return np.zeros_like(X)
if prob == 0:
return X
mask = np.random.uniform(0, 1, X.shape) > prob
return mask.astype(np.float32) * X / (1.0 - prob)
드롭아웃 레이어는 데이터를 이용한 학습과정에서 오버피팅을 억제하는 방법 중 하나이며, 뉴런의 연결을 임의로 제거하는 방법이다. 학습상황에서만 사용가능하며, 테스트 과정에서는 사용이 불가능하다.
반응형