Dynamic Routing Between Capsules

🏷️ "#논문" "#제프리힌턴"

Dynamic Routing Between Capsules (2017)

Sabour, S., Frosst, N., & Hinton, G. E. (2017). Dynamic routing between capsules. In Advances in Neural Information Processing Systems (NIPS 2017).

배경

2017년, CNN이 절대 강자였지만 Hinton은 CNN의 풀링이 부분 간 공간적 관계를 버린다고 지적해왔습니다. NIPS 2017에서 발표된 이 논문은 Hinton이 수십 년간 구상해온 캡슐 네트워크를 처음 구현한 것입니다.

저자 소개

Sara Sabour는 이란 출신 토론토대 박사과정으로 이후 Google Brain에서 활동했습니다. Nicholas Frosst는 이후 Hinton과 함께 Cohere를 공동 설립했습니다. Geoffrey Hinton은 1980년대부터 파스 트리의 신경망 표현을 고민해왔으며 이 논문은 그 결실입니다.

요약

CNN은 이미지 인식에서 뛰어나지만 한 가지 근본적 한계가 있습니다. 이미지 내 객체의 공간 계층 관계를 무시한다는 점입니다. 눈, 코, 입이 어디에 있든 얼굴로 인식하는 현상이 그 예입니다.

이 논문은 "캡슐(capsule)"이라는 새로운 신경망 단위를 제안합니다. 각 캡슐은 특정 객체나 부분의 존재 확률(활성화 벡터의 크기)과 그 특성(벡터의 방향)을 동시에 인코딩합니다. 동적 라우팅 알고리즘을 통해 하위 캡슐의 예측이 상위 캡슐의 출력과 일치할 때만 연결을 강화합니다. 이는 부분-전체 관계의 구조적 이해를 가능하게 합니다.

MNIST 중첩 자릿수 인식에서 CNN을 능가했으며, 이는 구조적 정보가 얼마나 중요한지 시사합니다.

논문 상세

배경: CNN의 한계

CNN의 컨볼루션과 풀링은 병진 불변성(translation invariance)은 잘 처리하지만, 회전이나 크기 변화는 데이터 증강으로만 학습합니다. 더 근본적으로는, CNN이 특징의 공간적 계층 관계(얼굴 안에 눈, 코, 입이 배치되는 방식)를 구조적으로 모델링하지 않습니다.

방법론: 캡슐과 동적 라우팅

캡슐은 뉴런 그룹입니다. 활성화 벡터 \(\mathbf{u}_i\)는 존재 확률(벡터 크기)과 특성(벡터 방향)을 동시에 나타냅니다.

\[\mathbf{v}_j = \text{squash}(\mathbf{s}_j) = \frac{\|\mathbf{s}_j\|^2}{1 + \|\mathbf{s}_j\|^2} \frac{\mathbf{s}_j}{\|\mathbf{s}_j\|}\]

하위 캡슐 \(i\)는 변환 행렬 \(\mathbf{W}_{ij}\)를 통해 상위 캡슐 \(j\)에 대한 예측 벡터를 생성합니다.

\[\hat{\mathbf{u}}_{j|i} = \mathbf{W}_{ij} \mathbf{u}_i\]

동적 라우팅은 반복적으로 결합 계수(coupling coefficients) \(c_{ij}\)를 업데이트합니다. 예측이 실제 출력과 유사할수록(스칼라곱이 클수록) 계수가 증가합니다.

\[c_{ij} = \frac{\exp(b_{ij})}{\sum_k \exp(b_{ik})}\]

\[\mathbf{s}_j = \sum_i c_{ij} \hat{\mathbf{u}}_{j|i}\]

\(b_{ij}\)는 훈련 중 경쟁 메커니즘으로 업데이트됩니다. 이를 3-4회 반복하면 수렴합니다.

결과

MNIST에서: - 캡슐 네트워크: 0.25% 오류율 - CNN (7-layer, 추가 인식 작업): 0.39% 오류율 - 중첩 자릿수 인식 (겹쳐진 두 숫자): CNN 79.4% 정확도, 캡슐: 92.3%

중첩 데이터에서 큰 격차가 나는 것은 캡슐 네트워크가 공간 구조를 학습했음을 시사합니다.

생각

잘한 점: - 신경망의 기본 단위(뉴런 → 캡슐)를 재정의하는 개념적 도약입니다 - 구조적 이해를 유도하는 라우팅 메커니즘의 우아함이 돋보입니다 - 작은 데이터셋(MNIST)에서 원리 검증에 충분합니다

한계: - 계산량이 많습니다. 동적 라우팅의 반복은 순전파 시간을 증가시킵니다. - 복잡한 이미지(ImageNet)에서는 초기 성과가 CNN에 미치지 못했습니다. 이후 연구(Matrix Capsules, EM routing)에도 불구하고 캡슐 네트워크는 주류가 되지 못했습니다. - 캡슐 내부의 벡터가 실제로 어떤 특성을 학습하는지 해석이 어렵습니다. 가시성(interpretability)이 낮습니다.

의의: 신경망이 기하학적 구조를 어떻게 인코딩할 수 있을지에 대한 중요한 질문을 제시했습니다. 캡슐 네트워크 자체는 생각만큼 성공하지 못했지만, "부분-전체 관계 모델링"이라는 아이디어는 이후 주의 메커니즘(attention)과 그래프 신경망 연구에 영향을 미쳤습니다. 또한 벡터 인코딩이라는 개념은 최근 확산 모델과 잠재변수 학습에서 재조명받고 있습니다.

후속 연구 링크

이 논문의 한계는 Hinton의 이후 연구에서 다루어졌습니다: - 대규모 데이터에서의 한계How to represent part-whole hierarchies in a neural network: GLOM에서 캡슐의 아이디어를 벡터 "섬" 개념으로 발전시켜 더 유연한 부분-전체 표현을 제안했습니다