캡슐 네트워크 사용하기
캡슐 넷(CapsNet)은 컴퓨터 비전의 기존의 합성곱 신경망을 대체하는 네트워크의 제공을 목표로 하는 새로운 클래스의 신경망입니다. CapsNet은 아직 실제 응용 프로그램에서는 사용되지 않지만, 유망한 연구 주제입니다. 이 예는 MNIST 분류 작업에서 훈련된 최초의 캡슐 네트워크를 보여주고, 이것이 계산하는 캡슐 벡터의 특성을 살펴봅니다.
훈련된 CapsNet 모델을 Wolfram Neural Net Repository에서 얻습니다.
CapsNet은 순수한 분류자가 아닙니다. 이는 자동 인코더이며, 따라서 입력 데이터를 재구성할 수 있습니다.
각 클래스에 대해 최종 점수를 갖는 스칼라 뉴런 대신에, CapsNet은 캡슐 벡터를 제공하며, 해당 점수를 노름으로 부호화합니다. 스칼라의 경우 외에 검출된 예의 특징에 대한 정보도 특징 벡터와 같은 방법으로 캡슐 벡터의 방향으로 부호화됩니다. 네트워크의 "Pick" 블록에서 노름이 최장 길이 16캡슐 벡터를 추출합니다.
"Reconstruct" 블록은 정칙화로서 동작하는 캡슐 벡터에 포함된 정보에서 입력 이미지를 재구축하도록 훈련됩니다. 성공적인 재구축은 캡슐 벡터가 방향에 따라 검출된 특정 예의 특징을 부호화하는 것을 증명합니다. 재구축자를 확보합니다.
먼저 확보한 캡슐 벡터를 재구축자에 공급합니다.
캡슐 벡터에 의해 펼쳐진 공간은 기존의 자동 인코더와 변이형 자동 인코더의 잠재적 공간을 떠올리게 하는 특징을 가지고 있습니다. 캡슐 벡터를 바꾸어 실험해봅니다. 캡슐 벡터를 바꾸면 두께와 같은 특징이 변형되거나 예 자체가 다른 클래스로 완전히 변환되기도 합니다.
다양한 숫자의 캡슐 벡터를 보간합니다.