활성화 함수: ReLU의 역할

40 P
QUESTION 03 #361
신경망에 비선형성을 부여하여 복잡한 학습을 가능하게 하는 ReLU 함수를 구현해 보세요.
main.py
def relu(x):
    # 0보다 작으면 0을, 0보다 크면 x를 그대로 반환
    return (0, )

print(f"입력이 5일 때: {relu(5)}")
print(f"입력이 -3일 때: {relu(-3)}")
실행 결과 예시
max, x
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

⚡ 왜 활성화 함수가 필요한가요?

단순히 숫자만 계속 곱하고 더하면, 층을 아무리 높게 쌓아도 결국 하나의 큰 일차함수에 불과하게 됩니다.

  • ReLU의 마법: 특정 수치 이하의 신호는 "무시"하고, 그 이상의 신호만 "전달"함으로써 복잡한 논리 구조를 형성하게 합니다.
  • 비선형성: 이를 통해 신경망은 단순한 직선이 아닌, 복잡하게 꺾인 곡선 형태의 판단 기준을 가질 수 있게 됩니다.