Abstract(요약)
저희는 컴퓨터 비전 시스템이 이미지 안에 있는 핵심적인 부분을 자연어로 localize하고 설명해야 하는 고밀도 캡션 작업을 소개합니다. 고밀도 캡션 작업은 하나의 단어로만 이루어진 묘사를 하는 객체 감지와 예측된 영역 하나가 전체 이미지를 커버하는 이미지 캡션을 일반화합니다. Localization 및 설명 작업을 동시에 해결하기 위해 효율적인 포워드 패스(forward pass)로 하나의 이미지를 처리하고 , external regions proposals가 필요하지 않으며 최적화된 싱글 라운드로 end-to-end 학습이 가능한 FCLN(Fully Convolutional Localization Network) 아키텍처를 다룹니다. 이 아키텍처는 새로운 고밀도 localization 계층인 컨볼루션 네트워크(Convolution Network)와 시퀀스 레이블을 생성하는 순환 신경망(RNN, Recurrent Neural Network) 언어 모델로 구성됩니다. 저희는 94,000개의 이미지와 4,100,000개의 지역 기반 캡션으로 구성된 비주얼 게놈 데이터셋으로 네트워크를 평가합니다. 저희는 생성과 검색 설정 모두 최첨단 접근 방식을 기반한 베이스라인과 속도와 정확도 향상을 관찰합니다.
1. Introduction
이미지의 모든 측면을 쉽게 가리키고 묘사하기 위해 저희의 기술은 시각적 장면과 모든 요소에 대한 강력한 의미론적 이해에 의존합니다. 하지만, 수많은 유망한 애플리케이션이 있음에도 불구하고, 이 기술은 저희의 최첨단 시각적 인식 시스템에 대한 과제로 남아있습니다. 지난 몇 년 동안 이미지에 하나의 레이블을 할당하는 것에 대한 이미지 분류에 상당한 진전이 있었습니다. 더 나아가 연구는 두 개의 수직 방향에 따라 이러한 발전을 추구했습니다 . 첫째는 객체 감지의 빠른 발전은 <이미지의 여러 정확한 영역을 레이블>하고 <효율적으로 탐지>하는 모델을 식별했습니다. 둘째는 이미지 캡션의 최근 발전은 한정된 카테고리 셋에서 레이블 공간의 복잡성을 상당히 풍부한 개념으로 표현할 수 있는 단어의 시퀀스로 확장했습니다.
Label density(가로)축과 label complexity(세로) 축을 따라 좋은 진전이 있었음에도 불구하고, 이 두 방향은 나눠진 상태로 남아 있습니다. 이 작업에서 저희는 이 두 개의 상호 연결된 작업을 하나의 공동 프레임워크로 통합하기 위한 단계를 밟습니다. 먼저 이미지의 여러 영역에 걸쳐 일련의 설명을 예측하기 위해 모델이 필요한 고밀도 캡션 작업[그림 1]을 소개합니다. 따라서 대상 레이블이 하나의 단어로 구성된 경우 객체 감지가 특별한 경우로 복구되고, 모든 이미지가 전체 이미지에 걸쳐 있는 하나의 영역으로 구성된 경우 이미지 캡션이 재구성됩니다.
또한, 저희는 고밀도 캡션 작업을 위한 Fully Convolutional Localization Network(FCLN)를 개발합니다. 저희 모델은 최근 연구에서 Image Captioning이 컨볼루션 신경망(CNN)과 순환 신경망 언어(RNN)로 구성된다는 점을 참고했습니다. 그러나 물체 감지 연구를 바탕으로 저희의 두 번째 핵심 기여는 새로운 고밀도 localization 계층을 도입하는 것입니다. 이 레이어는 완전히 차별화가 가능하고, region-level 학습과 예측을 가능하게 하기 위해 이미지를 처리하는 모든 신경망에 삽입될 수 있습니다. 내부적으로, localization 계층은 이미지에서 관심 영역들의 집합을 예측한 다음, 양선형 보간법을 사용하여 각 영역의 활성화를 원활하게 자릅니다.
저희는 94,000개의 이미지와 4,100,000개의 영역을 포함한 대규모 Visual Genome 데이터셋으로 모델을 평가합니다.
저희의 결과는 이전의 최첨단 기술을 기반으로 한 접근 방식에 비해 성능과 속도가 모두 향상되었음을 보여줍니다. 저희는 고밀도 캡션 작업에 대해 더 나은 발전을 지원할 수 있도록 코드와 데이터를 공개적으로 사용할 수 있도록 합니다.
2. Related Work
저희 연구는 최신 연구인 <객체 감지인 image captioning>과 <이미지에서 특정 영역의 다운스트림 처리를 허용하는 soft spatial attention> 이용합니다.
Object Detection. 저희의 핵심적인 시각적 처리 모듈은 시각적 인식 작업의 강력한 모델로 부상한 CNN(Convolutional Neural Network) 입니다. 고밀도 예측 작업에 이 모델을 처음 적용한 것은 R-CNN이며, 여기서 각 관심 영역은 독립적으로 처리되었습니다. 추가적인 연구는 CNN의 single forward pass만으로 모든 영역을 처리하고 이미지 좌표계 또는 Fully Convolution에서 경계 상자를 직접 예측하여 명백한 위치 불변 설정을 통해 명시적으로 영역 제안하는 방법을 없애는 데 초점을 맞췄습니다. 저희의 접근 방식과 가장 관련이 있는 것은 Ren 등의 연구입니다. 그들은 앵커에서 관심 지역으로 회귀하는 Region Proposal Network(RPN)를 개발합니다. 그들은 4단계 최적화 프로세스를 채택하는 반면, 저희 접근 방식은 학습 파이프라인을 필요로 하지 않습니다. 또한, 저희는 그들의 RoI pooling메커니즘과 차별화 가능한 spatial soft attention 메커니즘으로 대체합니다. 특히, 이러한 변화는 저희가 Region Proposal Network(RPN)를 통해 역전파하고 전체 모델을 공동으로 훈련할 수 있게 합니다.
Image Captioning.
여러 선구적인 접근 방식은 자연어로 이미지를 설명하는 작업을 탐구했습니다. 신경망에 기반한 보다 최신 접근 방식은 자막을 생성하기 위한 핵심 아키텍처 요소로 순환 신경망을 채택했습니다. 이러한 모델은 이전에 언어 모델링에서 강력한 long-term interactions를 학습하는 것으로 알려져 있습니다. Image caption에 대한 최근 몇 가지 접근 방식은 이미지 정보에 따라 조정된 RNN 언어 모델의 조합에 의존하며, soft attention 메커니즘을 사용할 수 있습니다. 저희 연구와 유사하게, Karpathy와 Fei-Fei는 지역에 대한 image caption 모델을 실행하지만, 그들은 한 모델에서 설명을 감지하는 공동 작업을 다루진 않습니다. 저희 모델은 end-to-end이며 각 영역에 대한 예측이 글로벌 이미지 컨텍스트의 함수가 되도록 설계되었으며, 이는 궁극적으로 더 강력한 성능으로 이어집니다. 마지막으로, 고밀도 캡션 작업을 위해 저희가 개발하는 메트릭은 image caption을 위해 개발된 메트릭에서 영감을 받았습니다.
3. Model
Overview. 저희 목표는 관심 영역을 공동으로 localize한 다음 각각을 자연어로 설명하는 아키텍처를 설계하는 것입니다. 주요 과제는 단일 최적화 단계로부터 end-to-end 학습을 지원하는 동시에 효율적이고 효과적인 추론이 가능한 모델을 개발하는 것입니다. 저희가 제안한 아키텍처[그림 2]는 객체 감지, image captioning과 soft spatial attention에 대한 최신 연구인 아키텍처 요소를 활용하여 이러한 설계 제약 조건을 동시에 해결합니다.
섹션 3.1에서는 먼저 모델의 구성 요소를 설명합니다. 그런 다음 섹션 3.2와 3.3에서 손실 함수와 학습 및 추론의 세부 사항을 다룹니다.
3.1. Model Architecture
3.1.1 Convolution Network
저희는 최첨단 성능을 위해 VGG-16 아키텍처를 사용합니다. 3×3 컨볼루션의 13개 레이어와 2×2 최대 풀링의 5개 레이어로 구성됩니다. 최종 풀링 레이어를 제거하므로 3×W×H 형상의 입력 이미지는 $C \times W' \times H' where C=512, W' =\left \lfloor \frac{W}{16}\right \rfloor, and H' = \left \lfloor \frac{H}{16}\right \rfloor$ 형상의 특징 텐서를 생성합니다. 이 네트워크의 출력은 균일하게 샘플링된 이미지 위치 세트에서 이미지의 외관을 인코딩하고, 국소화 계층에 대한 입력을 형성합니다.
3.1.2 Fully Convolutional Localization Layer
Localization Layer는 활성화의 입력 텐서를 수신하고, 관심 있는 공간 영역을 식별하며, 각 영역에서 고정된 크기의 표현을 자연스럽게 추출합니다. 저희의 접근 방식은 고속 R-CNN을 기반으로 하지만, 저희는 그들의 RoI pooling 메커니즘을 양선형 보간법으로 대체하여 모델이 예측 영역의 좌표를 통해 그레이디언트를 역방향으로 전파할 수 있도록 합니다. 이러한 변경은 Bounding Boxes 대신 아핀 또는 변형된 지역 제안을 예측할 수 있는 가능성을 열어주지만, 이러한 확장은 향후 작업에 맡깁니다.
Inputs/Outputs.
localization계층은 크기 C×W0×H0의 활성화 텐서를 받아들입니다. 그런 다음 내부적으로 관심 있는 B영역을 선택하고 이러한 영역에 대한 정보를 제공하는 3개의 출력 텐서를 반환합니다.
1. 지역 좌표: 각 출력 영역에 대한 bounding box좌표를 제공하는 형상 B×4의 행렬.
2. 지역 점수: 길이 B의 벡터에는 각각의 출력 영역에 대한 confidence 점수를 주었습니다. 신뢰도 점수가 높은 지역은 관심 있는 실측 지역에 해당할 가능성이 더 높습니다.
3. 지역 특징: 출력 영역에 대한 특징을 제공하는 B×C×X×Y 모양의 텐서는 C차원 특징의 X×Y 그리드로 표현됩니다.
Convolutional Anchors. 고속 R-CNN과 유사하게, 저희 Convolutional 계층은 번역 불변 앵커 셋에서 오프셋을 회귀시켜 지역 제안을 예측합니다. 특히, 저희는 W’×H’ 입력 특징 그리드의 각 점을 W×H 이미지 평면에 다시 투영하고, 이 투영된 점을 중심으로 서로 다른 종횡비의 k개의 앵커 박스를 고려합니다. 이러한 각 k 앵커 박스에 대해 localization 레이어는 앵커에서 예측된 box 좌표로 회귀하는 신뢰도 점수와 4개의 스칼라를 예측합니다. 이들은 입력 피쳐 맵을 (256개의 필터가 있는 3×3 컨볼루션), (수정된 선형 비선형성 및 5k 필터가 있는 1×1 컨볼루션)으로 통과시켜 계산합니다. 이로 인해 모든 앵커에 대한 점수와 오프셋을 포함하는 5k×W0×H0 모양의 텐서가 생성됩니다.
Box Regression.
저희는 앵커에서 지역 제안으로 회귀하기 위해 Fast-RCNN의 매개 변수화를 채택합니다. 중심$(x_{a}, y_{a})$, 너비 $w_{a}$ 및 높이 $h_{a}$가 있는 앵커 박스가 주어지면, 저희 모델은 표준화된 오프셋과 로그 공간 스케일링 변환을 제공하는 스칼라 $(t_{x}, t_{y}, t_{w}, t_{h})$를 예측하여
이 수식으로부터 출력 영역에 중심(x, y)과 모양(w, h)이 주어집니다. L2 정규화로 인해 박스가 앵커에서 너무 멀리 떠내려가지 않도록 주의하세요.
Box Sampling. k = 12개의 앵커 박스로 W = 720, H = 540 크기의 일반적인 이미지를 처리하면 17,280개의 지역 제안이 발생합니다. 모든 제안에 대해 인식 네트워크와 언어 모델을 운영하는 것은 엄청나게 비쌀 것이기 때문에, 그것들을 서브샘플링할 필요가 있습니다. 학습 과정에서 저희는 Faster R-CNN의 접근 방식을 따르고 최대 B/2 양성 영역과 나머지 음성을 가진 B = 256 상자를 포함하는 미니 배치를 샘플링합니다. 한 영역은 어떤 실측 영역과 최소 0.7의 교차점을 가진다면 양수이고, 각 ground 실측 영역과 최대 실측IoU의 예측 영역은 양수입니다. 모든 ground 실측 영역과 함께 IoU < 0.3인 영역은 음수입니다. 저희의 표본 미니배치는 $B_{P}$$\leq$B/2의 긍정적인 지역과$B_{N}$ = B - $B_{P}$의 부정적인 지역을 가지는데, 긍정적인 지역과 부정적인 지역 각각의 셋으로부터 대체 없이 균일하게 샘플링 됩니다. 학습 과정 때 저희는 B=300으로 설정하고 대부분 confident한 제안을 선택하려고 예측된 제안 confidences를 기반으로 한 greedy non-maximum suppression(NMS)을 서브샘플링으로 사용합니다 . 샘플링된 제안의 좌표와 신뢰도는 각각 B×4와 B형태의 텐서로 수집되며, localization 계층에서 출력됩니다.
Bilinear Interploation. 샘플링 후, 저희는 다양한 크기와 가로 세로 비율의 지역 제안을 남깁니다. Full-Connected Recognition Network(FCRN) 및 RNN 언어 모델과 인터페이스하기 위해서는 각 가변 크기 지역 제안에 대해 고정 크기 특징 표현을 추출해야 합니다. 이 문제를 해결하기 위해 Fast R-CNN은 각 지역 제안이 컨볼루션 기능의 W' × H0 그리드에 투영되고 반올림으로 픽셀 경계에 정렬된 거친 X×Y 그리드로 분할되는 RoI pooling 레이어를 제안합니다. 특징은 각 그리드 셀 내에서 max-pooled되므로 출력 특징의 X×Y 그리드가 생성됩니다. RoI pooling 레이어는 컨볼루션 기능과 지역 제안 좌표의 두 가지 입력의 함수입니다. 그레이디언트는 출력 특징에서 입력 특징으로 역방향 전파가 될 수 있지만 입력 제안 좌표로는 전파되지 않습니다. 이러한 한계를 극복하기 위해, 저희는 RoI pooling레이어를 양선형 보간법으로 대체합니다. 구체적으로, 형상 C×W0×H0의 입력 형상 맵 U와 영역 제안을 고려할 때, 저희는 형상 C×X×Y의 출력 형상 맵 V를 생성하기 위해 U의 형상을 보간합니다. 영역 제안을 U에 투영한 후 Spatial transformer networks를 따르고 실제 값 좌표를 가진 V의 각 요소를 U로 연결하는 형상 X×Y 2의 샘플링 그리드 G를 계산합니다. 만약 $G_{i,j} = (x_{i,j},y_{i,j})$이라면 $V_{c,i,j}$는 $(c,x_{i,j},y_{i,j})$에서 U와 같아야 합니다. 그러나 $x_{i,j},y_{i,j}$는 실제 값이기 때문에 저희는 샘플링 커널 k와 집합으로 컨볼루션합니다. 저희는 커널 k(d) = max(0, 1 - | d|)에 해당하는 양선형 샘플링을 사용합니다. 샘플링 그리드는 제안 좌표의 선형 함수이므로 기울기를 예측 영역 제안 좌표로 역방향으로 전파할 수 있습니다. 샘플링된 모든 영역에 대해 형상을 추출하기 위해 양선형 보간법을 실행하면 B×C×X×Y 모양의 텐서가 제공되어 localization계층에서 최종 출력을 형성합니다.
3.1.3 Recognition Network
인식 네트워크는 localization계층에서 지역 특징을 처리하는 fully-connected neural network입니다. 각 영역의 형상은 벡터로 평평해지고 두 개의 fully-connected 레이어를 통과하며, 각 레이어는 수정된 선형 단위를 사용하고 드롭아웃을 사용하여 정규화됩니다. 각 영역에 대해 D = 4096 차원의 코드가 생성되어 시각적 외관을 압축적으로 인코딩합니다. 모든 양의 영역에 대한 코드는 형상 B×D 행렬로 수집되어 RNN 언어 모델로 전달됩니다. 또한, 저희는 인식 네트워크가 각 제안 지역의 신뢰와 위치를 다듬을 수 있는 기회를 한 번 더 허용합니다. 제안된 각 영역의 최종 스칼라 신뢰도와 영역 제안에 적용될 최종 공간 오프셋을 인코딩하는 4개의 스칼라를 출력합니다. 이 두 출력은 각 영역에 대한 D차원 코드로부터 선형 변환으로 계산됩니다. 최종 box 회귀 분석에서는 섹션 3.1.2와 동일한 매개 변수를 사용합니다.
3.1.4 RNN Language Model
이전 작업에 따라 지역 코드를 사용하여 RNN 언어 모델을 조건화합니다. 구체적으로, 토큰 $s_{1},..., s_{T}$의 훈련 시퀀스가 주어지면, 저희는 RNN T + 2단어 벡터 $x_{-1}, x_{0}, x_{1},..., x_{T}$를 공급합니다. 여기서 x-1 = CNN(I)은 선형 레이어로 인코딩된 지역 코드이고 x0은 특수 시작 토큰에 해당하며, $x_{t}$는 $S_{t}$,t=1,…,T 각각의 토큰을 인코딩합니다. RNN은 (hidden states인 $h_{t}$의 순서)를 계산하고 LSTM회귀 공식을 사용합니다. 벡터 yt는 크기 |V |+1을 가지며, 여기서 V는 토큰 어휘이고, 추가는 특수 END 토큰에 대한 어휘입니다. 벡터 yt의 손실 함수는 평균 교차 엔트로피이며, 여기서 t = 0, ., T - 1의 목표는$s_{t+1}$의 토큰 인덱스이고, t = T의 목표는 END 토큰입니다. 벡터 y-1은 무시됩니다. 저희의 토큰과 숨겨진 레이어는 크기가 512입니다. 학습 시간에 저희는 시각 정보 $x_{-1}$을 RNN에 공급합니다. 각 시간 단계에서 저희는 가장 가능성이 높은 다음 토큰을 샘플링하고 다음 시간 단계에서 RNN에 공급하며, 특수 END 토큰이 샘플링될 때까지 프로세스를 반복합니다.
3.2. Loss function
훈련하는 동안 저희의 ground truth은 긍정적인 상자와 설명으로 구성됩니다. 저희 모델은 localization 계층과 인식 네트워크에서 샘플링된 영역의 위치와 신뢰도를 두 번 예측합니다. 샘플링된 양의 영역과 음의 영역에 대해 훈련된 신뢰도에 대해 이항 로지스틱 손실을 사용합니다. 상자 회귀를 위해 Faster R-CNN과 유사한 변환 좌표 공간에서 smooth L1 손실을 사용합니다. 손실 함수의 다섯 번째 항은 언어 모델의 모든 시간 단계에서 교차 엔트로피 항입니다. 저희는 RNN에서 배치 크기와 시퀀스 길이로 모든 손실 함수를 정규화합니다. 이러한 기여 사이의 가중치의 효과적인 설정을 검색한 결과, 처음 네 가지 기준에 0.1의 가중치를 사용하고 캡션을 위해 1.0의 가중치를 사용하는 것이 합리적인 설정임을 발견했습니다.
3.3. Training and optimization
저희는 단일 최적화 단계에서 전체 모델을 end-to-end 학습합니다. 저희는 ImageNet에서 사전 훈련된 가중치와 표준 편차가 0.01인 가우스에서 다른 모든 가중치로 CNN을 초기화합니다. 저희는 운동량이 0.9인 확률적 경사 하강를 사용하여 컨볼루션 네트워크의 가중치를 학습하고 Adam을 모델의 다른 구성 요소를 훈련시킨다. 저희는 1 × 10-6의 학습률을 사용하고 β1 = 0.9, β2 = 0.99로 설정합니다. 저희는 1세기 이후 CNN의 레이어를 미세 조정하기 시작하며, 효율성을 위해 네트워크의 처음 4개의 컨볼루션 레이어를 미세 조정하지 않습니다. 저희의 훈련 배치는 긴 면이 720픽셀이 되도록 크기가 조정된 단일 이미지로 구성됩니다. NAT 구현에서는 Torch 7 및 stnbhwd을 사용합니다. 하나의 미니배치는 Titan X GPU에서 약 300ms로 실행되며 모델이 수렴하는 데 약 3일의 학습이 필요합니다.
4. Experiments
DataSet. 이미지와 자연어 관련된 기존 데이터 셋은 전체 image caption 또는 image caption의 기본 단어만 영역에 포함하지만 개별 영역 캡션은 제공하지 않습니다. 저희는 Visual Genome(VG) 영역 캡션 데이터셋을 이용하여 실험을 수행합니다. 저희 버전은 94,313개의 이미지와 4,100,413개의 텍스트 조각(이미지당 43.5개)을 포함하고 있으며, 각각 이미지의 한 영역에 기초합니다. 이미지는 MS COCO와 YFCC100M의 교차점에서 가져왔고, 작업자들에게 이미지에 bounding box를 그리고 그것의 내용을 텍스트로 설명하도록 요청하여 Amazon Mechanical Turk에 주석을 수집했습니다. 데이터 셋의 예시적인 캡션에는 "고양이가 횃대에 매달린 장난감을 가지고 논다", "신문이 테이블에 흩어져 있다", "잔에 와인을 따르는 여자", "지브라 갈기", "빨간 빛" 등이 있습니다.
Processing.
저희는 15번 미만으로 나타나는 단어를 특수 <UNK> 토큰으로 축소하여 10,497단어의 어휘를 제공합니다. 저희는 "있습니다..." 또는 "이것이 a인 것 같다"와 같은 참조 문구를 제거합니다. 효율성을 위해 10개 이상의 단어(주석의 7%)가 포함된 모든 주석을 폐기합니다. 또한 이미지당 영역 수의 변동을 줄이기 위해 주석이 20개 미만 또는 50개 이상인 모든 이미지를 폐기합니다. 87,398개의 이미지가 남아 있습니다. 각 5,000개는 밸브/테스트 분할에 할당하고 나머지는 훈련에 할당합니다. 또한 테스트 시간 평가를 위해 여러 참조 캡션이 있는 단일 상자로 크게 겹치는 상자를 병합하여 검증/테스트 이미지에서 실측 자료 영역을 사전 처리합니다. 각 이미지에 대해 중복 상자 수가 가장 많은 상자를 반복적으로 선택하고(임계값이 0.7인 IoU 기준), 이 상자를 여러 참조 캡션이 있는 단일 상자로 병합합니다(평균을 취함). 그런 다음 이 그룹을 제외하고 프로세스를 반복합니다.
4.1. Dense caption
고밀도 캡션 작업에서 모델은 단일 이미지를 수신하고 각각 confidence와 캡션으로 주석이 달린 영역 셋을 생성합니다.
Evaluation metrics.
직관적으로, 저희는 저희 모델이 (물체 감지에서와 같이) 잘 localization된 예측과 (image caption에서와 같이) 정확한 설명을 모두 생성하기를 바랍니다. 객체 감지 및 image caption의 평가 메트릭에서 영감을 받아, 저희는 localization와 언어 정확도 모두에 대한 다양한 임계값에 걸쳐 평균 정밀도(AP)를 측정할 것을 제안합니다. Localization를 위해 저희는 교차점 over Union (IoU) 임계값 .3, .4, .5, .6, .7을 사용합니다. 언어의 경우 METEOR 점수 임계값 0, 0.05, .1, .15, .25, .25를 사용합니다. 저희는 이 메트릭이 낮은 참조 수가 있는 설정에서 인간의 판단과 가장 높은 상관관계가 있는 것으로 밝혀졌기 때문에 METEOR를 채택합니다. 저희는 이러한 임계값의 모든 쌍별 설정에 대한 평균 정밀도를 측정하고 평균 AP를 보고합니다. 지역화 없이 예측된 캡션에서 언어의 정확도를 분리하기 위해 저희는 또한 각 테스트 이미지에 걸친 실측 캡션을 참조 문장 가방으로 병합하고 공간 위치를 고려하지 않고 이러한 참조와 관련하여 예측 캡션을 평가합니다.
Baseline models.
Karpathy와 Fei-Fei에 이어, 저희는 크기가 조정된 개별 영역에서 Image caption 모델(Localization 계층 제외)만 훈련합니다. 저희는 이 접근법을 Region RNN model이라고 부릅니다. 전체 이미지 또는 영역에 대해 훈련된 캡션 간의 차이를 조사하기 위해 저희는 또한 MS COCO(전체 이미지 RNN 모델)의 전체 이미지와 캡션에 대해 동일한 모델을 훈련시킵니다. 학습 과정에서 저희는 지역 제안의 세 가지 출처를 고려합니다. 첫째, 상한을 설정하기 위해 Ground Truth bx(GT)에 대한 모델을 평가합니다. 둘째, Karpathy and Fei-Fei의 (Deep visual-semantic alignments for generating image descriptions)와 유사하게, 저희는 외부 영역 제안 방법을 사용하여 각 학습 이미지에 대해 300개의 상자를 추출합니다. 강력한 성능과 속도 때문에 EdgeBox(EB)를 사용합니다. 마지막으로, EdgeBox는 객체에 대한 높은 리콜을 얻기 위해 조정되었지만, 저희의 지역 데이터는 객체 그룹, 물건 등을 둘러싼 다양한 주석을 포함합니다. 따라서 학습 시간 영역의 세 번째 소스로 Faster R-CNN을 따르고 VG 영역 데이터에 대한 별도의 RPN(Region Proposal Network)을 학습합니다. 이것은 RNN 언어 모델이 없는 경우를 제외하고 저희의 전체 모델을 훈련하는 것에 해당합니다. 마지막 기준선으로 학습 중 지역 제안이 모델에 의해 예측되는 대신 EdgeBox에 고정되는 Fast R-CNN의 접근 방식을 재현합니다. 이 실험의 결과는 표1에서 확인할 수 있습니다. 이제 저희는 주요 취지를 강조하겠습니다.
Discrepancy between region and image level statstics
[표 1]의 처음 두 행을 중심으로, Region RNN 모델은 METEOR에서만 일관되게 더 강력한 결과를 얻으며, 지역과 이미지 수준에 존재하는 언어 통계의 차이를 뒷받침합니다. 이러한 모델은 거의 동일한 이미지에서 학습되었지만, 하나는 전체 image caption에서, 다른 하나는 region caption에서 학습되었습니다. 그러나 언어의 차이에도 불구하고 두 모델은 최종 메트릭에서 비슷한 성능에 도달합니다.
RPN outperforms external region proposals.
모든 경우에 EB 영역 대신 RPN 네트워크를 사용할 때 성능이 향상됩니다. 유일한 예외는 EB 박스에서만 훈련되었던 FCLN 모델입니다. 저희 추측은 이것이 물체를 포함하는 지역보다 더 일반적인 지역에 주석을 다는 사람들의 경향을 반영한다는 것입니다. RPN 네트워크는 원시 데이터로부터 이러한 분포를 학습할 수 있는 반면 EdgeBoxes 방법은 객체에 대한 높은 호출을 위해 설계되었습니다. 특히 이를 통해 저희 모델(FCLN)이 훈련 중 EdgeBox로 제한되는 EB 기준선의 FCLN을 능가할 수 있다는 점에 유의하세요. (5.24 vs 4.88 및 5.39 vs 3.21). 이는 localization-independent언어 점수가 비슷하다는 사실에도 불구하고, 저희 모델이 특히 더 나은 localization로 인해 개선을 달성한다는 것을 시사합니다. 마지막으로, RPN 상자(5.39에서 3.21)에서 평가할 때 EB에 대한 FCLN 모델의 성능이 눈에 띄게 떨어진 것은 EB 상자에 특정 시각적 통계가 있음을 시사하며, RPN 상자에는 FCLN에 대한 샘플이 부족할 가능성이 있음을 시사합니다.
Our model outperforms individual region description
저희의 최종 모델 성능은 RPN 열에 5.39 AP로 나열되어 있습니다. 특히 표1의 이러한 하나의 셀에서는 독립적으로 훈련된 RPN 네트워크의 상자에서 평가된 모델 대신 전체 조인트 모델의 성능을 보고합니다. 지역 모델이 RPN 제안(5.93 vs 4.26)에서 평가되더라도 저희 성능은 지역 RNN 모델보다 상당히 높습니다. 저희는 이 개선을 저희 모델이 학습 영역 외부의 컨텍스트에서 시각적 정보를 활용할 수 있기 때문이라고 봅니다.
Qualititive results.
저희는 [그림 3]에서 고밀도 캡션 모델의 예시를 보여줍니다. 모델은 영역에 대한 풍부한 스니펫 설명을 생성하고 이미지의 캡션을 정확하게 접지합니다. 예를 들어, 코끼리의 몇몇 부분이 올바르게 접지되어 있고 묘사되어 있다는 점에 주목합니다(코끼리의 몸통, 코끼리가 서있다, 그리고 둘 다 코끼리의 다리). 꼬리, 엔진, 노즈 및 창이 올바르게 localization된 비행기의 예에서도 마찬가지입니다. 일반적인 실패 사례에는 반복적인 탐지가 포함됩니다(예: 코끼리는 두 번 서 있는 것으로 설명됨).
Runtime evaluation.
저희 모델은 학습시간이 효율적입니다. 720 x 600 이미지는 240ms로 처리됩니다. 여기에는 CNN 실행, B = 300 지역 제안 계산, 각 지역에 대한 언어 모델에서 샘플링이 포함됩니다. [표 1](오른쪽)은 모델의 테스트 시간 런타임 성능을 EdgeBox에 의존하는 기준과 비교합니다. 지역 RNN은 CNN의 독립적인 전진 패스로 각 지역을 처리하기 때문에 가장 느립니다. 런타임 3170ms로 저희 방법보다 13배 이상 느립니다. EB의 FCLN은 CNN의 single forward pass를 통과 후 모든 지역에 대한 기능을 추출합니다. 런타임은 EdgeBoxes에 의해 지배됩니다. 그리고 그것은 저희 방법보다 약1.5배 느립니다. 저희 방법은 지역 제안을 계산하는 데 88ms가 걸리며, 그 중 거의 80ms가 NMS를 실행하여 지역화 계층의 하위 샘플 지역을 만듭니다. 이 시간은 제안 수를 줄임으로써 대폭 줄일 수 있습니다. 100개 지역 제안을 사용하면 총 실행 시간이 166ms로 줄어듭니다.
4.2. Image Retrieval using Regions and Captions
새로운 묘사를 생성하는 것 이외에도, 저희의 조밀한 캡션 모델은 자연어 쿼리를 사용한 이미지 검색을 지원할 수 있으며 검색된 이미지에서 이러한 쿼리를 현지화할 수 있습니다. 저희는 이미지를 올바르게 검색하고 텍스트 쿼리를 정확하게 localization하는 모델의 능력을 평가합니다. Experiment setup. 저희는 이 실험을 위해 VG 테스트 셋의 1,000개의 무작위 이미지를 사용합니다. 저희는 일부 이미지에서 네 개의 무작위 캡션을 반복적으로 샘플링하여 100개의 테스트 쿼리를 생성한 다음 모델이 각 쿼리에 대한 소스 이미지를 올바르게 검색하기를 기대합니다.
Evaluation.
순위를 평가하기 위해 k$\in${ {1, 5, 10}(k에서 리콜)에 대한 상위 k 위치에 올바른 소스 이미지가 나타나는 쿼리의 비율과 모든 쿼리에 걸쳐 올바른 이미지의 중위 순위를 보고합니다. Localization를 평가하기 위해 각 쿼리 캡션에 대해 캡션이 샘플링된 이미지와 실측 경계 상자를 검사합니다. 저희는 이 실측 자료 상자와 자막에 대한 모델의 예측 접지 사이의 IoU를 계산합니다. 그런 다음 모든 쿼리 캡션에서 이 중첩이 t $\in$ {0.1, 0.3, 0.5}(t에서 리콜)에 대한 임계값 t보다 큰 쿼리 캡션의 비율을 보고합니다.
Models.
저희는 4.1절의 기준 모델과 전체 모델의 순위와 현지화 성능을 비교합니다. MS COCO에 대해 훈련된 전체 이미지 RNN 모델의 경우 전체 이미지에서 각 쿼리 캡션을 생성할 확률을 계산하고 쿼리 캡션의 평균 확률로 테스트 이미지를 순위를 매깁니다. 이것은 캡션을 현지화하지 않기 때문에 저희는 순위 성능만 평가합니다. 전체 이미지 RNN 및 영역 RNN 방법은 각각 전체 MS COCO 이미지와 ground 실측 VG 영역에 대해 훈련됩니다. 두 경우 모두, 각 쿼리 및 테스트 이미지에 대해 EdgeBox를 사용하여 100개의 지역 제안을 생성합니다.
그리고 각 쿼리 캡션 및 지역 제안에 대해 지역에서 쿼리 캡션을 생성할 확률을 계산합니다. 쿼리 캡션은 최대 확률 제안과 정렬되고 이미지는 정렬된 캡션/영역 쌍의 평균 확률로 순위가 매겨집니다. 전체 FCLN 모델의 프로세스는 유사하지만 EdgeBox 제안보다는 현지화 계층의 상위 100개 제안을 사용합니다.
DIscussion.
[그림 4]는 실제 이미지, 해당 이미지를 설명하는 쿼리 문구 및 모델을 사용하여 이러한 쿼리로부터 검색된 이미지의 예를 보여줍니다. 저희 모델은 작은 물체(시계의 손, "빨간 글씨" 로고), 물체 부분(자전거의 검은 시트, "크롬 배기 파이프"), 사람(남자는 젖어 있음) 및 일부 동작(밖에서 테니스를 치는 남자)을 localization 할 수 있습니다. 저희 모델을 기준 방법과 비교하는 정량적 결과는 [표 2]에 나와 있습니다. 전체 이미지 RNN 모델의 상대적으로 낮은 성능(중간 순위 13 vs 9,7,5)은 열차와 테스트 분포 사이의 불일치 통계 때문일 수 있습니다: 모델은 완전히 훈련되었습니다.
그러나 이 실험에서는 영역 수준 캡션을 전체 이미지(전체 이미지 RNN)와 일치시키거나 전체 이미지(EB + 전체 이미지 RNN)가 아닌 이미지 영역을 처리해야 합니다. 지역 RNN 모델은 열차와 테스트 데이터 간의 불일치로 어려움을 겪지 않으며 순위와 현지화 모두에서 전체 이미지 RNN 모델을 능가합니다. 전체 이미지 RNN과 비교하여 중위 순위를 9에서 7로 줄이고 0.5 IoU에서 국소화 호출을 0.053에서 0.108로 개선합니다. 저희의 모델은 모든 메트릭에서 순위와 현지화 모두에서 지역 RNN 기준선을 능가하여 중위 순위를 7에서 5로 더 줄이고 0.5 IoU에서 localization 리콜을 0.108에서 0.153으로 증가시킵니다. 기준선은 개체를 localization하도록 조정된 EdgeBox를 사용하지만 모든 쿼리 구문이 개체를 참조하는 것은 아닙니다. 저희의 모델은 훈련 데이터에서 지역을 제안하는 방법을 배우기 때문에 우수한 결과를 얻습니다.
Open-world Object Detection
위에서 설명한 검색 설정을 사용하여 고밀도 캡션 모델을 사용하여 이미지에서 임의의 텍스트 조각을 localization할 수도 있습니다. 이를 통해 "오픈 월드" 객체 감지가 가능하며, 학습 시 고정된 객체 클래스 셋에 커밋하는 대신 학습 시 자연어를 사용하여 객체 클래스를 지정할 수 있습니다. [그림 5]에는 이 작업에 대한 예제가 나와 있습니다. [그림 5]에서는 여러 구문에 대한 학습 셋의 상위 탐지 항목을 표시합니다. 저희 모델은 동물 부분("기린 머리", "얼룩말 다리")을 감지할 수 있고 일부 물체 속성("빨간색과 흰색 기호", "흰색 테니스화")과 물체 사이의 상호 작용("전화기를 든 손")도 이해할 수 있습니다. "버스의 앞바퀴"라는 문구는 실패 사례입니다: 모델은 버스의 바퀴를 정확하게 식별하지만 앞바퀴와 뒷바퀴를 구별할 수 없습니다.
5. Conclusion
이미지의 영역을 동시에 localization하고 설명하는 모델이 필요한 고밀도 캡션 작업을 도입했습니다. 이 작업을 해결하기 위해 end-to-end 학습과 효율적인 학습 시간 성능을 지원하는 FCLN 아키텍처를 개발했습니다. 저희 FCLN 아키텍처는 이미지 캡션을 위해 개발된 최근 CNN-RNN 모델을 기반으로 하지만 공간적으로 localizaion된 예측을 가능하게 하기 위해 신경망에 삽입될 수 있는 새롭고 차별화 가능한 localizaion 레이어를 포함합니다. 생성 및 검색 설정 모두에서 저희 실험은 이전 작업과 관련된 기준선과 관련하여 모델의 힘과 효율성을 입증하며, 질적인 실험은 시각적으로 만족스러운 결과를 보여줍니다. 향후 연구에서 저희는 직사각형 제안 영역의 가정을 완화하고 학습 가능한 spatial suppression 레이어를 위해 학습 시간 NMS를 제거하고 싶습니다.
'Paper > Deep Learning' 카테고리의 다른 글
합성곱/풀링 계층 구현하기 (0) | 2023.07.12 |
---|---|
Chainer: A Deep Learning Framework for Accelerating theResearch Cycle 리뷰 (0) | 2022.08.30 |