본문으로 건너뛰기
실습하기

출력층 (Output Layer)

출력층은 신경망이 학습한 결과를 최종적으로 변환하는 층으로, 입력 데이터를 우리가 원하는 형태(예측값)로 바꿔줍니다.

출력층의 형태는 문제의 종류에 따라 다릅니다.

  • 분류(Classification) 문제 : 특정 클래스를 예측해야 하므로, 클래스 개수만큼 뉴런을 배치합니다.

  • 회귀(Regression) 문제 : 특정 숫자를 예측해야 하므로, 뉴런이 하나만 있을 수도 있습니다.

예를 들어 5×5 크기의 흑백 이미지를 0-4까지의 5개 클래스로 분류하는 경우, 출력층의 뉴런 개수는 5개가 됩니다.

이때, 출력층에서는 Softmax 활성화 함수를 사용하여 각 클래스의 확률을 계산합니다.

Softmax를 거치면 모든 값이 0-1 사이가 되고, 전체 합이 1이 됩니다.

가장 높은 확률을 가지는 클래스가 신경망의 최종 예측값이 됩니다.

아래 예시는 출력층에서 변환된 확률 값의 예시입니다.

출력층에서 클래스 확률로 변환된 예시
[
0.05, 0.02, 0.85, 0.03, 0.05
]

각 값은 순서대로 클래스 0, 1, 2, 3, 4에 대한 확률을 나타냅니다.

가장 높은 확률을 가지는 값은 0.85이며, 신경망은 입력으로 주어진 흑백 이미지를 0부터 4까지 숫자 중에 3번째인 2로 분류한 것입니다.

이렇게 출력층에서 얻어진 값은 최종적인 예측 결과로 활용됩니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!