728x90
반응형

ReLU 함수

입력이 0을 넘으면 그 입력을 그대로 출력하고, 0 이하면 0을 출력하는 함수.

💡 왜 ReLU 함수를 딥러닝에서 많이 사용할까?
은닉층 뉴런에 입력값이 큰 경우, 시그모이드 함수는 출력이 거의 1에 붙어버려 미분 값(기울기)이 거의 0이 됨 → 학습이 멈춤(기울기 소실)
ReLU 함수는 출력이 그대로 커지고, 미분 값은 항상 1 → 학습이 잘 진행됨

 

수식으로 표현한 ReLU 함수

 

코드와 그래프로 보는 ReLU 함수

넘파이의 maximum 함수를 사용함.

def relu(x):
    return np.maximum(0, x)

x = np.arange(-5.0, 5.0, 0.1)
y = relu(x)
plt.plot(x, y)
plt.ylim(-0.1, 1.1)	# y축 범위 지정
plt.show()

반응형
복사했습니다!