Capsule Networks (CapsNet)
캡슐 네트워크 (CapsNets)와 이것이 CNN의 한계를 해결하는 방식을 살펴보세요. 동적 라우팅과 공간 계층 구조를 알아보고 CapsNets와 YOLO26을 비교해보세요.
캡슐 네트워크는 일반적으로 CapsNets로 줄여 부르며, 기존 신경망의 특정 한계를 극복하도록 설계된 딥러닝 분야의 고급 아키텍처입니다. Geoffrey Hinton과 그의 연구팀이 도입한 CapsNets는 표준 모델보다 인간 뇌의 생물학적 신경 조직을 더욱 유사하게 모방하고자 합니다. 특징 감지에는 뛰어나지만 다운샘플링으로 인해 공간적 관계를 잃는 경우가 많은 일반적인 합성곱 신경망 (CNN)과 달리, 캡슐 네트워크는 뉴런을 "캡슐"이라는 그룹으로 구성합니다. 이러한 캡슐은 객체가 존재할 확률뿐만 아니라 방향, 크기, 질감과 같은 구체적인 속성도 인코딩하여 시각 데이터 내 계층적 공간 관계를 효과적으로 보존합니다.
기존 CNN의 한계#
CapsNets의 혁신을 이해하려면 표준 컴퓨터 비전 모델이 작동하는 방식을 살펴보는 것이 도움이 됩니다. 기존 CNN은 특징 추출 레이어 다음에 특히 최대 풀링 레이어를 사용하여 계산량을 줄이고 이동 불변성을 확보합니다. 이는 CNN이 이미지에서 "고양이"가 어디에 있든 식별할 수 있다는 의미입니다.
그러나 이 과정에서는 정확한 위치 데이터가 손실되는 경우가 많아 "피카소 문제"가 발생합니다. 즉, 필요한 특징이 모두 존재하기만 하면 입이 이마에 있어도 CNN이 얼굴을 올바르게 분류할 수 있습니다. CapsNets는 풀링 레이어를 제거하고 객체의 공간적 계층 구조를 반영하는 프로세스로 대체하여 이 문제를 해결합니다.
캡슐 네트워크의 작동 방식#
이 아키텍처의 핵심 구성 요소는 스칼라 값이 아닌 벡터를 출력하는 중첩된 뉴런 집합인 캡슐입니다. 벡터 수학에서 벡터는 크기와 방향을 모두 가집니다. CapsNet에서는 다음과 같습니다.
- 크기 (길이): 현재 입력에 특정 개체가 존재할 확률을 나타냅니다.
- 방향 (방위): 객체의 자세 추정, 스케일, 회전과 같은 인스턴스화 매개변수를 인코딩합니다.
하위 레이어의 캡슐(에지와 같은 단순한 형태 감지)은 상위 레이어의 캡슐(눈이나 타이어와 같은 복잡한 객체 감지)의 출력을 예측합니다. 이러한 통신은 "동적 라우팅" 또는 "합의에 의한 라우팅"이라는 알고리즘으로 관리됩니다. 하위 수준 캡슐의 예측이 상위 수준 캡슐의 상태와 일치하면 두 캡슐 간 연결이 강화됩니다. 이를 통해 네트워크는 CNN에 회전과 스케일을 학습시키는 데 일반적으로 필요한 대규모 데이터 증강 없이도 다양한 3D 관점에서 객체를 인식할 수 있습니다.
주요 차이점: CapsNets와 CNN 비교#
두 아키텍처 모두 컴퓨터 비전 (CV)의 핵심 요소이지만, 시각 데이터를 처리하고 표현하는 방식에는 차이가 있습니다.
- 스칼라와 벡터: CNN 뉴런은 스칼라 출력을 사용하여 특징의 존재를 나타냅니다. CapsNets는 벡터를 사용하여 존재 여부(길이)와 자세 매개변수(방향)를 인코딩합니다.
- 라우팅과 풀링: CNN은 풀링을 사용하여 데이터를 다운샘플링하므로 위치 세부 정보가 손실되는 경우가 많습니다. CapsNets는 동적 라우팅을 사용하여 공간 데이터를 보존하므로 정밀한 객체 추적이 필요한 작업에 매우 효과적입니다.
- 데이터 효율성: 캡슐은 3D 관점과 아핀 변환을 암묵적으로 이해하므로, 객체의 가능한 모든 회전을 학습하기 위해 많은 예제가 필요할 수 있는 CNN에 비해 더 적은 학습 데이터로 일반화할 수 있는 경우가 많습니다.
실제 적용 사례#
CapsNets는 YOLO26과 같은 최적화된 모델보다 계산 비용이 높은 경우가 많지만, 특수한 분야에서는 뚜렷한 이점을 제공합니다.
-
의료 영상 분석: 의료 분야에서는 이상 징후의 정확한 방향과 형태가 중요합니다. 연구자들은 CapsNets를 뇌종양 세분화에 적용해 왔으며, 이 작업에서는 표준 CNN이 평활화할 수 있는 미세한 공간적 계층 구조를 바탕으로 종양과 주변 조직을 구분해야 합니다. 관련 연구는 의료 영상의 캡슐 네트워크에서 살펴볼 수 있습니다.
-
겹치는 숫자 인식: CapsNets는 숫자가 겹치는 상황에서 특히 MNIST 데이터 세트에 대해 최첨단 결과를 달성했습니다. 네트워크가 각 숫자의 "자세"를 추적하므로, 겹쳐 있는 두 숫자(예: '5' 위에 있는 '3')를 하나의 혼동된 특징 맵으로 합치는 대신 서로 다른 객체로 분리할 수 있습니다.
실용적 맥락 및 구현#
캡슐 네트워크는 주로 분류 아키텍처입니다. 이론적으로 견고하지만, 최신 산업 애플리케이션에서는 실시간 성능을 위해 고속 CNN 또는 Transformer를 선호하는 경우가 많습니다. 그러나 MNIST와 같이 CapsNets에 사용되는 분류 벤치마크를 이해하는 것은 유용합니다.
다음 예제에서는 ultralytics 패키지를 사용하여 MNIST 데이터 세트에서 최신 YOLO 분류 모델을 학습하는 방법을 보여 줍니다. 이는 캡슐 네트워크를 검증하는 데 사용되는 주요 벤치마크 작업과 유사합니다.
from ultralytics import YOLO
# Load a YOLO26 classification model (optimized for speed and accuracy)
model = YOLO("yolo26n-cls.pt")
# Train the model on the MNIST dataset
# This dataset helps evaluate how well a model learns handwritten digit features
results = model.train(data="mnist", epochs=5, imgsz=32)
# Run inference on a sample image
# The model predicts the digit class (0-9)
predict = model("https://docs.ultralytics.com/datasets/classify/mnist")캡슐과 비전 AI의 미래#
캡슐 네트워크의 원리는 AI 안전성 및 해석 가능성 연구에 계속 영향을 미치고 있습니다. 캡슐은 부분과 전체의 관계를 명시적으로 모델링함으로써 딥 신경망의 "블랙박스" 특성에 대한 "글래스박스" 대안을 제공하여 의사 결정을 더욱 설명 가능하게 합니다. 향후 개발에서는 캡슐의 공간적 견고성과 YOLO11 또는 최신 YOLO26과 같은 아키텍처의 추론 속도를 결합하여 3D 객체 감지 및 로보틱스 성능을 향상하고자 합니다. 연구자들은 합의 알고리즘의 계산 비용을 더욱 줄이기 위해 EM 라우팅을 사용하는 매트릭스 캡슐도 연구하고 있습니다.
데이터 세트를 관리하고 모델을 효율적으로 학습하려는 개발자를 위해 Ultralytics Platform은 데이터를 어노테이션하고, 클라우드에서 학습하며, 복잡한 비전 작업에 필요한 정확도와 CNN의 속도 사이에서 균형을 이루는 모델을 배포할 수 있는 통합 환경을 제공합니다.









