14.5 완전 연결층(Fully Connected Layer)의 역할

14.5 완전 연결층(Fully Connected Layer)의 역할

완전 연결층(Fully Connected Layer, FC layer)은 입력의 모든 단위가 출력의 모든 단위와 가중치로 연결된 층이다. 완전 연결층은 전통적 다층 퍼셉트론의 기본 구성 요소로서, 합성곱 신경망에서는 합성곱과 풀링에 의하여 추출된 특징을 최종 출력으로 변환하는 역할을 수행한다. 이 절에서는 완전 연결층의 학술적 정의, 합성곱 신경망에서의 역할, 매개 변수 수, 학술적 한계, 대안적 구조를 학습 순서에 따라 기술한다.

1. 학술적 정의

완전 연결층은 입력 벡터 \mathbf{x} \in \mathbb{R}^{d_{\text{in}}}에 대하여 가중치 행렬 W \in \mathbb{R}^{d_{\text{out}} \times d_{\text{in}}}과 편향 벡터 \mathbf{b} \in \mathbb{R}^{d_{\text{out}}}을 적용하여 출력 벡터 \mathbf{y} \in \mathbb{R}^{d_{\text{out}}}을 산출한다.

\mathbf{y} = W \mathbf{x} + \mathbf{b}

이 출력에 활성화 함수가 적용되어 다음 층의 입력이 된다. 완전 연결층의 학술적 의미는 입력의 모든 차원이 출력의 모든 차원에 영향을 미친다는 점이다.

14.5.2 합성곱 신경망에서의 역할

합성곱 신경망에서 완전 연결층은 일반적으로 다음의 역할을 수행한다.

  • 특징 벡터의 변환: 합성곱과 풀링에 의하여 추출된 특징 벡터를 과제에 적합한 형태로 변환
  • 클래스 점수의 산출: 분류 과제에서 클래스에 대응하는 점수를 산출
  • 회귀 출력의 산출: 회귀 과제에서 연속적 출력을 산출
  • 비선형 결합: 활성화 함수와 결합되어 특징의 비선형 결합을 학습

전형적인 합성곱 신경망은 합성곱과 풀링의 반복으로 구성된 특징 추출부와 완전 연결층으로 구성된 분류부로 분할된다.

14.5.3 평탄화

완전 연결층의 입력은 일반적으로 1차원 벡터이므로, 합성곱과 풀링의 출력인 다차원 텐서를 평탄화(flatten)해야 한다. 평탄화는 텐서의 모든 원소를 단일 벡터로 재배열하는 절차이다. 입력 텐서가 X \in \mathbb{R}^{C \times H \times W}인 경우 평탄화 후의 벡터의 차원은 C \cdot H \cdot W이다.

14.5.4 매개 변수 수

완전 연결층의 매개 변수 수는 다음과 같이 계산된다.

\#\text{params} = d_{\text{out}} \cdot d_{\text{in}} + d_{\text{out}}

여기서 마지막 항은 편향에 해당한다. 합성곱 신경망에서는 합성곱층과 풀링층이 입력의 공간 차원을 점진적으로 축소한 후 평탄화가 수행되지만, 그래도 평탄화된 벡터의 차원이 매우 크면 완전 연결층의 매개 변수 수가 크게 증가한다.

예를 들어 평탄화된 벡터의 차원이 4096이고 출력 차원이 1000인 경우 매개 변수 수는 약 4 \cdot 10^{6}이며, 이는 합성곱층의 매개 변수 수에 비하여 매우 크다.

2. 학술적 한계

완전 연결층은 다음의 학술적 한계를 가진다.

  • 매개 변수의 과다: 평탄화된 벡터의 차원이 큰 경우 매개 변수 수가 크게 증가한다.
  • 공간 정보의 손실: 평탄화는 입력의 공간적 구조를 명시적으로 잃는다.
  • 입력 크기의 고정: 완전 연결층은 사전에 정의된 입력 차원을 요구하므로, 입력 영상의 크기가 고정되어야 한다.
  • 과적합 위험: 매개 변수 수가 많으면 과적합의 위험이 증가한다.

3. 대안적 구조

완전 연결층의 학술적 한계를 완화하기 위하여 다음의 대안적 구조가 학술적으로 제안되어 왔다.

3.1 전역 평균 풀링

Lin, Chen, Yan의 Network in Network (2014)에서 학술적으로 도입된 전역 평균 풀링은 합성곱 출력의 각 채널에 대하여 공간 차원 전체의 평균을 계산하여 채널 수와 동일한 차원의 벡터를 산출한다. 이 벡터는 완전 연결층 없이 직접 출력층으로 입력되거나, 매우 작은 완전 연결층으로 변환된다. GoogLeNet과 ResNet 등 학술적으로 알려진 후속 합성곱 신경망은 전역 평균 풀링을 채택하여 매개 변수 수를 학술적으로 감소시켰다.

3.2 1×1 합성곱

1×1 합성곱은 채널 수를 변환하는 선형 결합으로 작용하며, 완전 연결층의 일부 기능을 합성곱의 형태로 표현한다. 이 학술적 변형은 입력의 공간 정보를 보존하면서 채널 변환을 가능하게 한다.

3.3 완전 합성곱 신경망

완전 합성곱 신경망(Fully Convolutional Network, FCN)은 모든 층이 합성곱으로 구성된 신경망이다. Long, Shelhamer, Darrell의 Fully Convolutional Networks for Semantic Segmentation (2015)은 완전 연결층을 1×1 합성곱으로 대체하여 입력 크기에 무관한 의미 분할을 학술적으로 가능하게 하였다.

4. 학술적 의의

완전 연결층은 다음의 학술적 의의를 가진다.

  • 특징의 비선형 결합과 최종 출력의 산출
  • 분류, 회귀, 임베딩 등 다양한 과제의 출력 형태로의 변환
  • 전통적 다층 퍼셉트론과의 학술적 연결

다만 매개 변수 수와 공간 정보의 학술적 한계로 인하여, 현대 합성곱 신경망에서는 전역 평균 풀링과 1×1 합성곱과의 결합을 통하여 완전 연결층의 사용이 점차 감소하여 왔다.

5. 출처 및 버전 정보

  • LeCun, Y., Bottou, L., Bengio, Y., Haffner, P., Gradient-based learning applied to document recognition, Proceedings of the IEEE, 1998
  • Krizhevsky, A., Sutskever, I., Hinton, G. E., ImageNet Classification with Deep Convolutional Neural Networks, Advances in Neural Information Processing Systems, 2012
  • Lin, M., Chen, Q., Yan, S., Network in Network, International Conference on Learning Representations, 2014
  • Long, J., Shelhamer, E., Darrell, T., Fully Convolutional Networks for Semantic Segmentation, IEEE Conference on Computer Vision and Pattern Recognition, 2015
  • Goodfellow, I., Bengio, Y., Courville, A., Deep Learning, MIT Press, 2016