층 (기계 학습)
정의: 기계 학습에서 "층(Layer)"은 인공 신경망의 기본 구성 요소 중 하나이다. 각 층은 여러 개의 노드(뉴런)로 구성되며, 이 노드들은 이전 층의 출력을 입력으로 받아 가중치와 편향을 적용한 연산을 수행한다. 결과는 활성화 함수를 거쳐 다음 층으로 전달된다. 층들은 순차적으로 연결되어 정보를 처리하고, 최종적으로 출력을 생성한다. 층의 종류와 구조에 따라 신경망의 성능과 특징이 결정된다.
유형:
- 입력층 (Input Layer): 신경망에 입력 데이터를 제공하는 첫 번째 층이다. 각 노드는 입력 데이터의 하나의 특징을 나타낸다.
- 은닉층 (Hidden Layer): 입력층과 출력층 사이에 위치하며, 데이터의 복잡한 패턴을 학습하는 데 중요한 역할을 한다. 대부분의 신경망은 하나 이상의 은닉층을 가지며, 은닉층의 개수와 크기는 모델의 복잡도를 결정한다.
- 출력층 (Output Layer): 신경망의 최종 결과를 출력하는 마지막 층이다. 출력층의 노드 수는 문제의 종류에 따라 달라진다. 예를 들어, 이진 분류 문제에서는 하나의 노드, 다중 분류 문제에서는 여러 개의 노드를 가진다.
기능:
각 층은 특정한 작업을 수행한다. 예를 들어, 초기 층은 입력 데이터의 기본적인 특징을 추출하고, 후기 층은 추출된 특징을 기반으로 더욱 복잡한 패턴을 학습한다. 이러한 계층적 구조는 신경망이 복잡한 문제를 효과적으로 해결할 수 있도록 한다. 각 층에서 적용되는 가중치와 편향은 학습 과정을 통해 조정되며, 이를 통해 신경망은 데이터에 대한 정확한 예측을 수행할 수 있게 된다.
심층 신경망 (Deep Neural Network): 여러 개의 은닉층을 가진 신경망을 심층 신경망이라고 한다. 심층 신경망은 단층 신경망보다 더욱 복잡한 패턴을 학습할 수 있으며, 다양한 분야에서 뛰어난 성능을 보여준다.
관련 용어:
- 노드 (Node), 뉴런 (Neuron)
- 가중치 (Weight)
- 편향 (Bias)
- 활성화 함수 (Activation Function)
- 역전파 (Backpropagation)