Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

피드포워드 신경망(Feed-Forward Neural Network)이란? 개념부터 학습 원리까지

피드포워드 신경망의 기본 개념

피드포워드 신경망(Feed-Forward Neural Network)은 인공신경망 중 가장 기본적이고 널리 사용되는 구조로, 신호가 입력층에서 출력층으로 한 방향으로만 전달되는 특징을 가집니다. 즉, 출력값이 다시 이전 층으로 되돌아가는 피드백이나 순환 구조(loop)가 존재하지 않으며, 특정 층의 출력이 같은 층에 영향을 주지 않습니다.

이러한 단방향 구조 덕분에 피드포워드 신경망은 비교적 단순하면서도 입력과 출력 사이의 관계를 효과적으로 학습할 수 있으며, 패턴 인식(pattern recognition) 분야에서 널리 활용됩니다. 이러한 정보 처리 방식은 하향식(top-down) 또는 상향식(bottom-up) 구조로 표현될 수 있습니다.

은닉층(Hidden Layer)의 역할과 구조

입력층과 출력층 사이에는 하나 이상의 은닉층이 위치합니다. 은닉층의 각 유닛(unit)은 일반적으로 입력층의 모든 유닛과 완전 연결(fully connected)되어 있습니다.

표준 유닛으로 구성된 경우, 은닉층의 각 유닛은 다음 과정을 통해 출력을 계산합니다.

1. 각 입력값에 해당하는 가중치(weight)를 곱합니다.
2. 곱해진 값들을 모두 더합니다(summation).
3. 합산된 값에 활성화 함수(transfer function)를 적용하여 최종 출력을 산출합니다.

신경망은 여러 개의 은닉층을 가질 수 있지만, 일반적으로 하나의 은닉층만으로도 충분한 성능을 낼 수 있습니다. 다만 은닉층의 폭(유닛 수)이 넓어질수록, 신경망이 복잡한 패턴을 식별하고 학습할 수 있는 용량(capacity)은 그만큼 커집니다.

출력층(Output Layer)의 구성

신경망의 가장 오른쪽 끝에 위치하는 층이 바로 출력층입니다. 출력층은 신경망의 최종 결과를 산출하는 역할을 하며, 은닉층의 모든 유닛과 완전 연결되어 있습니다.

신경망이 단일 값을 예측하는 용도로 사용될 때는 출력층에 유닛이 하나만 존재하는 것이 일반적입니다. 예를 들어 주택 가격 예측이나 온도 예측처럼 하나의 연속적인 값이 필요한 경우가 여기에 해당합니다.

다중 출력 유닛의 활용 예시

그러나 문제의 성격에 따라 출력층이 둘 이상의 유닛을 가져야 하는 경우도 있습니다. 대표적인 예로 백화점 체인점의 고객 행동 예측을 들 수 있습니다. 어떤 백화점 체인이 고객이 여성 의류, 가구, 엔터테인먼트 등 여러 부문에서 상품을 구매할 확률을 예측하고자 한다면, 각 부문별로 하나씩의 출력 유닛이 필요합니다. 이렇게 얻은 데이터를 활용하면 매장은 프로모션 계획을 세우거나 타깃 다이렉트 메일을 효율적으로 발송할 수 있습니다.

역전파(Backpropagation) 알고리즘을 통한 학습

다층 피드포워드 신경망의 학습은 역전파(backpropagation) 알고리즘을 통해 수행됩니다. 학습 과정은 다음과 같이 진행됩니다.

1. 각 학습 샘플(training sample)에서 계산된 속성값들이 입력값으로 제공됩니다.
2. 입력값은 입력층(input layer)의 유닛들에 공급됩니다.
3. 입력층 유닛들의 가중 출력은 동시에 두 번째 층, 즉 은닉층(hidden layer)의 뉴런 유닛들로 전달됩니다.
4. 은닉층의 가중 출력은 또 다른 은닉층의 입력으로 사용될 수 있으며, 이러한 은닉층의 개수는 임의로 정할 수 있지만 실제로는 하나를 사용하는 경우가 많습니다.
5. 마지막 은닉층의 가중 출력은 출력층(output layer) 유닛들의 입력이 되며, 출력층은 해당 샘플에 대한 신경망의 최종 예측값을 산출합니다.

은닉층과 출력층의 유닛들은 생물학적 뉴런을 상징적으로 모방했다는 의미에서 뉴로드(neurode)라고 불리기도 하며, 출력층의 유닛은 출력 유닛(output unit)이라고 지칭합니다.

피드포워드 신경망의 표현력

피드포워드 신경망의 가장 큰 강점은 높은 표현력입니다. 선형 임계 함수(linear threshold function)를 사용하는 은닉 유닛들을 포함한 다층 피드포워드 신경망은 사실상 거의 모든 함수를 근사(approximate)할 수 있습니다. 이는 신경망이 충분한 유닛과 적절한 가중치를 갖추면 입력과 출력 사이의 복잡한 비선형 관계까지 학습할 수 있음을 의미하며, 이것이 피드포워드 신경망이 다양한 머신러닝 문제에서 핵심 도구로 자리 잡은 이유입니다.