논문리뷰

VQA : 논문리뷰 : Deep Compositional Question Answering with Neural Module Networks

AI바라기 2024. 10. 12. 13:30

Abstract 

 

Visual question answering은 본질적으로 구성적입니다. "개가 어디 있니?"와 같은 질문은 "개의 색깔은 무엇이니?" 또는 "고양이는 어디 있니?"와 같은 질문과 하위 구조를 공유합니다.

 

더보기

이게 무슨말이냐면 단순하게 이미지를 보고 질문에 답하는게 아니라 질문의 의미를 구성 요소별로 분석하고 그 요소들을 조합해서 답을 찾아내야하기 때문입니다.

 

"개의 색깔은 무엇이니?"

라는 질문에서 개의 위치를 찾아야하고 색깔정보를 추가로 파악해야하기 때문입니다.

 

본 논문에서는 deep networks의 표현 능력과 질문의 구성적 언어 구조를 동시에 활용하는 것을 목표로 합니다.

neural module networks를 구성하고 학습하는 절차를 설명하는데, 이는 question answering을 위한 deep networks에 공동으로 훈련된 neural “modules"의 집합을 구성합니다.

 

더보기

위에서 말한것 처럼 compositinal 하게 질문을 분석하고 답을 해야하기 때문에 각각의 모듈이 필요해서 그것을 각각 수행하겠다는 의미입니다.

 

접근 방식은 질문을 언어적 하위 구조로 분해하고 이러한 구조를 사용하여 모듈식 네트워크(개 인식, 색상 분류 등을 위한 재사용 가능한 구성 요소 포함)를 동적으로 인스턴스화합니다. 결과적으로 생성된 복합 네트워크는 jointly trained됩니다.

두 가지 까다로운 visual question answering 데이터 세트에서 우리의 접근 방식을 평가하여 VQA 자연 이미지 데이터 세트와 추상적 모양에 대한 복잡한 질문의 새로운 데이터 세트 모두에서 state-of-the-art 결과를 달성했습니다.

 

 

 

 

Introduction

 

 

그림 1: 제안된 모델의 개략적인 표현 - 음영 처리된 회색 영역은 본 논문에서 소개된 종류의 neural module network입니다.

우리의 접근 방식은 natural language parser를 사용하여 재사용 가능한 모듈들로 구성된 deep network를 동적으로 배치합니다. visual question answering task의 경우, 추가적인 sequence model이 문장 컨텍스트를 제공하고 상식을 학습합니다.

 

 

 

본 논문에서는 neural module networks (NMNs)에 기반한 visual question answering 접근 방식을 설명합니다. 우리는 jointly-trained된 neural "modules"의 집합을 사용하여 이미지에 대한 자연어 질문에 답변하며, 이러한 모듈들은 언어적 구조에 따라 deep networks로 동적으로 구성됩니다.

 

구체적으로, 이미지와 관련 질문 (예: 개가 어디 있니?)이 주어지면, 우리는 그에 해당하는 답변 (예: 소파 위, 또는 단순히 소파)을 예측하고자 합니다 (그림 1).

 

visual QA task는 인간-로봇 상호 작용, 검색 및 접근성에 중요한 응용 프로그램을 가지고 있으며, 최근 많은 연구 관심의 주제였습니다. 이 task는 visual scene과 자연어 모두에 대한 정교한 이해를 요구합니다.

 

최근 성공적인 접근 방식은 질문을 단어 모음으로 표현하거나 recurrent neural network를 사용하여 질문을 인코딩하고 인코딩된 질문과 이미지에 대해 간단한 classifier를 훈련합니다. 이러한 monolithic 접근 방식과는 대조적으로, 텍스트 QA 및 이미지 QA를 위한 또 다른 연구 라인은 semantic parser를 사용하여 질문을 논리적 표현으로 분해합니다. 이러한 논리적 표현은 직접 제공되거나 이미지에서 추출될 수 있는 세계의 순수한 논리적 표현에 대해 평가됩니다.

 

본 논문에서는 두 가지 연구 라인에서 아이디어를 얻어 neural networks의 표현력과 semantics에 대한 symbolic 접근 방식이 제공하는 유연한 구성 구조를 통합하는 기술을 제시합니다. 모든 질문에 답하기 위해 monolithic network 구조에 의존하는 대신, 우리의 접근 방식은 특수화되고 jointly-learned된 모듈들의 집합에서 즉석에서 network를 조립합니다 (그림 1). logic을 사용하여 진리값을 추론하는 대신, 우리는 visual features와 attention의 영역에 완전히 머무릅니다.

 

 

 

우리의 접근 방식은 먼저 semantic parser를 사용하여 각 질문을 분석하고, 이 분석을 사용하여 질문에 답하는 데 필요한 기본적인 계산 단위(attention, classification 등)와 모듈 간의 관계를 결정합니다.

 

그림 1에서 우리는 먼저 개에 초점을 맞춘 attention을 생성하고, 그 출력을 위치 분류기로 전달합니다. 기본 구조에 따라 모듈 간에 전달되는 이러한 메시지는 raw image features, attention 또는 classification 결정일 수 있습니다.

 

각 모듈은 입력 및 출력 유형에 의해 결정됩니다. 다양한 종류의 모듈이 서로 다른 색상으로 표시됩니다. attention 모듈(예: 개)은 녹색으로 표시되는 반면 labeling 모듈(예: 어디)은 파란색으로 표시됩니다. 중요한 것은 NMN의 모든 모듈은 독립적이고 구성 가능하다는 것입니다. 이를 통해 각 문제 인스턴스에 대해 계산이 다를 수 있으며 훈련 중에 관찰되지 않을 수도 있습니다. NMN 외부에서 최종 답변은 recurrent network (LSTM)을 사용하여 질문을 읽습니다. 이는 상식과 데이터 세트 편향을 모델링하는 데 중요한 것으로 나타났습니다.

 

우리는 두 가지 visual question answering task에서 우리의 접근 방식을 평가합니다. 최근에 출시된 VQA 데이터 세트에서 우리는 기존 접근 방식과 비슷하거나 더 나은 결과를 얻었으며, 특히 구성 구조를 가진 질문(예: 객체를 찾고 그 속성 중 하나를 설명해야 함)에서 우리의 접근 방식이 이전 작업보다 성능이 뛰어남을 보여줍니다. 그러나 두 데이터 세트의 많은 질문이 매우 간단하고 구성이나 추론이 거의 필요하지 않다는 것이 밝혀졌습니다. 더 어려운 질문을 처리하는 우리 접근 방식의 능력을 테스트하기 위해 공간 관계, 집합 이론적 추론, 모양 및 속성 인식을 포함하는 복잡한 질문과 쌍을 이루는 합성 이미지의 새로운 데이터 세트를 소개합니다. 이 데이터 세트에서 우리는 경쟁 접근 방식보다 최대 25%의 절대 정확도만큼 뛰어난 성능을 보입니다.

 

이 논문에서 고려된 모든 응용 프로그램은 visual question answering과 관련이 있지만 일반 architecture는 잠재적으로 더 광범위하게 유용하며 visual referring expression resolution 또는 자연어 텍스트에 대한 질문 답변에 더 일반적으로 적용될 수 있습니다.

 

우리의 contribution을 요약하면 다음과 같습니다. 먼저 이기종의 jointly-trained된 neural 모듈을 deep network에 개별적으로 구성하기 위한 일반 architecture인 neural module networks를 설명합니다. 다음으로, 특히 visual QA task의 경우 semantic parser의 출력을 기반으로 NMN을 구성하는 방법을 보여주고 이를 사용하여 확립된 visual question answering task를 성공적으로 완료합니다. 마지막으로 추상적인 모양에 대한 어렵고 구성적인 질문으로 이루어진 새로운 데이터 세트를 소개하고 우리 모델이 다시 이전 접근 방식보다 성능이 뛰어남을 보여줍니다. 우리는 출판 시 이 데이터 세트와 이 논문에 설명된 모든 시스템에 대한 코드를 공개할 것입니다.

 

 

 

 

 

옛날 논문이라 요약본 올립니다.

더보기

 

  • 연구 목적:
    • 연구 목적은 자연어 질문의 구성을 분석하여 해당 질문에 적합한 신경 모듈 네트워크(NMN)를 동적으로 구성하여 시각적 질문 응답(VQA)을 처리하는 방법을 제안하는 것입니다.
  • 학계 및 산업계 기여:
    • 학문적 기여: 신경 모듈 네트워크의 개념을 도입하여 컴퓨터 비전 및 자연어 처리의 상호작용을 강화한 점입니다. 또한, 기존 연구들과 비교해 더욱 복합적인 질문 구조를 효율적으로 처리할 수 있음을 보여주었습니다.
    • 산업적 기여: 이 접근 방식은 인간-로봇 상호작용, 검색, 접근성 분야에서 응용될 가능성이 큽니다. 특히 시각적 질문 응답을 개선함으로써 이러한 응용 분야에서의 효율성을 크게 향상시킬 수 있습니다.
  • 방법론:
    • 신경 모듈 네트워크(NMN): 자연어 질문의 구조를 파싱하여 질문에 맞는 모듈형 신경망을 동적으로 구성.
    • 시맨틱 파서 사용: 자연어 질문을 시맨틱 파서를 사용하여 구성 요소로 분해한 후 각 구성 요소에 적합한 모듈을 조립.
    • 결합된 모듈 학습: 모듈들은 독립적으로 학습되지만, 최종 목표를 위해 함께 학습되는 구조.
    • 데이터셋 평가: VQA 및 새로운 추상적 형태의 질문 데이터셋에 대해 성능을 평가하고, 기존 방법들과 비교해 우수한 성능을 보임.
  • 독창성:
    • 신경 모듈 네트워크의 도입: 기존의 단일 신경망 대신 동적으로 구성되는 모듈형 네트워크 사용.
    • 시맨틱 파서 기반 네트워크 구성: 자연어 구조를 이용해 모듈을 동적으로 할당하는 새로운 방법론 제시.
  • 연구의 한계:
    • 네트워크 구조의 복잡성: 질문에 따라 네트워크 구조가 너무 복잡해질 수 있어, 일부 질문에서 성능 저하를 초래할 가능성.
    • 구문 분석의 한계: 자연어 구문 분석 오류가 성능에 영향을 미칠 수 있음.

 

 

 

논문에서 명시한 한계점:

  1. 시맨틱 파서의 의존성:
    • 이 연구는 자연어 질문을 분석하여 모듈형 네트워크를 동적으로 구성하기 위해 시맨틱 파서(semantic parser)에 크게 의존합니다. 그러나 시맨틱 파서가 자연어를 완벽히 분석하지 못할 경우, 잘못된 네트워크 구성이 이루어질 수 있습니다. 이는 질문이 복잡해질수록 문제가 더 두드러질 수 있으며, 구문 분석 오류로 인해 잘못된 모듈이 선택되거나 질문의 의미를 오해하는 경우가 발생할 수 있습니다.
      • 예시로 들면, "이 사람들은 아마도 일하는 날일까요?"라는 질문이 "be(people, likely)"로 잘못 파싱되어 핵심적인 의미가 누락되고, "is(people, work)"처럼 정확하게 해석되지 않는 경우입니다.
      • 이러한 문제는 질문이 복잡하거나 추상적인 경우 더 빈번하게 발생하며, 결과적으로 성능 저하로 이어질 수 있습니다.
  2. 모듈형 네트워크의 구조 복잡성:
    • 각 질문에 맞춰서 개별적으로 모듈을 구성하기 때문에, 질문의 구조가 복잡해질수록 네트워크 구조가 매우 복잡해질 수 있습니다. 이러한 복잡성은 학습 효율을 떨어뜨리고, 때로는 모델의 일반화 성능에 악영향을 미칠 수 있습니다. 특히 복잡한 모듈은 훈련 중 관찰되지 않은 질문 유형에서 더 큰 성능 저하를 일으킬 수 있습니다.
      • 예를 들어, 많은 모듈을 필요로 하는 질문은 훈련 데이터에서 유사한 질문을 보지 못했다면 적절히 답변하지 못할 수 있습니다.
  3. 훈련 데이터 의존성 및 일반화 문제:
    • 이 모델은 훈련된 데이터에 따라 성능이 좌우되며, 훈련되지 않은 유형의 질문에 대한 일반화가 어려울 수 있습니다. 특히 네트워크 모듈이 질문 유형에 따라 매우 다르게 구성되기 때문에, 훈련 데이터에서 다루지 않은 질문이나 새로운 유형의 질문에는 적절한 성능을 발휘하지 못할 수 있습니다.
      • 실험에서 크기가 6인 모듈로 훈련하지 않은 경우에도 성능이 유지되었다고 언급되었지만, 이는 비교적 단순한 구조에 대한 일반화일 수 있으며, 복잡한 시나리오에서는 한계가 있을 수 있습니다.
  4. VQA 데이터셋에서의 성능 저하:
    • 논문에서는 VQA 데이터셋의 yes/no 유형의 질문에서 성능 저하가 발생한 것을 지적하고 있습니다. 이는 모델이 이진 결정을 다루는 데 있어서 과적합(overfitting) 문제를 겪었기 때문으로, 예/아니오 형식의 간단한 질문에 대한 처리 능력이 다른 유형의 질문보다 부족할 수 있음을 의미합니다.

논문에서 직접 언급하지 않은 잠재적 한계점:

  1. 컴퓨팅 비용 및 자원 소모:
    • 질문마다 동적으로 네트워크를 구성하고 이를 훈련 및 실행하는 과정은 컴퓨팅 자원이 많이 소모됩니다. 이는 특히 실시간 처리나 대규모 데이터셋에서 성능이 저하될 가능성이 큽니다. 또한 각 질문마다 네트워크가 새로 구성되기 때문에, 추론 속도가 느려질 수 있으며 이는 산업적 응용에서 실용성을 저하시킬 수 있습니다.
  2. 공간적, 속성 기반 정보 처리의 한계:
    • 이 모델은 공간적 관계나 속성에 대한 질문을 처리하는 능력에 초점을 두고 있지만, 실제 응용에서는 이러한 관계가 더 복잡할 수 있습니다. 예를 들어, 질문이 단순히 "어디에 있는가?"가 아니라 "왼쪽 상단에 있는 빨간 물체가 무엇인가?"와 같이 더 복합적인 질문일 경우, 모델의 구성 방식에 따라 제한적인 성능을 보일 수 있습니다.
  3. 모듈 간의 정보 전달 문제:
    • 모듈들이 서로 독립적으로 학습되지만, 최종적으로는 네트워크가 하나로 합쳐져야 하기 때문에 모듈 간의 정보 전달이 원활하지 않으면 성능이 저하될 수 있습니다. 즉, 개별 모듈이 잘 학습되더라도 상호 간의 연결이나 정보 통합이 제대로 이루어지지 않으면 기대한 성능을 내지 못할 가능성이 있습니다.