* 간단 요약
- Multi-Type Multi-Span Network (
MTMSN
) 제안-
span, count, negation, arithmetic expression 등 다양한 answer type을 지원하는 multi-type answer predictor와
one or multiple text span을 동적으로 생성하는 multi-span extraction method 를 결합한 MRC model
-
arithmetic expression reranking mechanism
제안- expression candidates의 순위를 매김으로서 prediction을 추가적으로 confirm 하기 위함
1. Introduction
- DROP은 아래와 같은 이유로 challenging함
- 질문에 대한 답변에는 숫자, 날짜 또는 텍스트 문자열과 같은 다양한 유형이 포함되므로, 올바른 답을 찾기 위해서는 다양한 종류의 예측 전략이 필요함
- 답변을 텍스트 범위로 제한하는 대신, DROP은 답변이 여러 텍스트 문자열의 집합이 될 수 있도록 constraint을 느슨하게 함
- discrete reasoning이 필요한 질문의 경우, system은 context를 보다 포괄적으로 이해하고 더하기, 계산 또는 정렬과 같은 수치 연산을 수행할 수 있어야 함
→ 기존 방식을 적용하면, 다음과 같은 문제점 발생
- span extraction, counting, and addition/subtraction 외의 연산은 수행할 수 없음
- 기존 RC model은 single span만을 사용하여 대답함
-
the prediction of each signed number is isolated, and the expression’s context information has not been considered.
(→ 부호를 이해하지 못한다는 건가 ?? )
→ 이를 해결하기 위해 MTMSN(“Multi-Type Multi-Span Network”) 제안
- neural RC를 위해 다양한 type의 질문을 예측하고, 한개 또는 복수의 span으로부터 dynamic하게 answer를 추출함
- series of pre-trained Transformer block으로부터 deep bidirectional context representation를 얻음
- 기존의 prediction strategy 뿐만 아니라 logical negation도 수행
- single span 뿐만 아니라 multi-span extraction method으로 multiple answer도 생성
- The model first predicts the number of answers, and then extracts non-overlapped spans to the specific amount. In this way, the model can learn to dynamically extract one or multiple spans, thus being beneficial for multi-answer cases.
- beam search를 사용하여 expression candidates의 순위를 매기는 arithmetic expression reranking mechanism을 제안
- prediction을 추가로 확인하기 위해 reranking하는 동안 context information를 고려할 수 있음
- BERT-based baseline도 제공 , 성능분석, 오류분석 …
2. Task Description
- task
- passage, question이 주어진 상태에서 discrete reasoning
- goal
- passage를 이해하고, question에 적당한 answer을 predict
- answer이 single span으로만 이루어졌던 SQuAD와 달리, DROP은
- 다양한 유형의 답변 포함(number, date, or span of text)
- single continuous span이 아니라 multiple text strings이 될 수 있음
- A1, A2, A3, A4
3. Our Approach
3.1. BERT-Based Encoder
- BERT를 encoder로 사용
- pre-trained Transformer block을 사용하여 contextualized representation을 work embedding과 mapping함
- 먼저 question, passage를 wordpiece vocab으로 tokenizing
- 이후 [CLS] + tokenized question + [SEP] + tokenized passage + [SEP]으로 input sequence 만듦
- input sequence의 각 토큰에 대한 input representation은 WordPiece embedding, positional embedding 및 segment embedding의 elementwise addition임
(elementwise addition이 뭐징)
- pre-trained Transformer block을 사용하여 contextualized representation을 work embedding과 mapping함
- series of L pre-trained Transformer blocks으로 input embedding을 project함
3.2. Multi-Type Answer Predictor
contextualized representation을 통해 4가지 종류의 대답을 생성할 수 있는 multi-type answer predictor를 설계
(1) span from the text; (2) arithmetic expression; (3) count number; (4) negation on numbers
먼저 주어진 passage-question pair의 유형을 예측한 다음, individual prediction strategies를 적용함
또한, passage-span과 question span을 따로 예측하는 기존 연구와 달리, input sequence에서 directly 하게 span을 추출함
- Answer type prediction
- 마지막 4개의 block에서의 contextual token representation을 answer predictor의 input으로 사용함
- 이때, representation(M2)에서의 [SEP]의 index을 기준으로 Q2,P2나눔
- question, passage의 information을 summarize하는 hQ2, hP2 계산함 (with softmax)
- answer type의 chice를 나타내는 확률 분포 ptype을 계산 (with hQ2, hP2, hCLS)
- 마지막 4개의 block에서의 contextual token representation을 answer predictor의 input으로 사용함
- span
- 전체 sequence에서 start, end position을 예측하기 위해,
- 다른 level의 question representation의 question information을 summarize하는 gQ0, gQ1, gQ2를 계산함
- input sequence의 answer span으로부터 starting, ending indices의 확률 pSTART, pEND을 계산함 (with gQ0, gQ1, gQ2,M0, M1, M2)
- 전체 sequence에서 start, end position을 예측하기 위해,
- arithmetic expression
-
덧셈, 뺄셈을 위해 +,-,0과 같은 부호를 할당함
→ 이를 통해 숫자인 answer를 잘 얻고, 쉽게 evaluate할 수 있음
-
- count
- entity를 count하는 능력을 고려하여 multi-class classfication 문제로 modeling함
- 언급된 모든 숫자 중에서 중요한 정보를 요약하는 벡터 hU를 계산
- counting probability distribution를 계산
- entity를 count하는 능력을 고려하여 multi-class classfication 문제로 modeling함
- negation
- 이전 연구에서 capture하지 못했던 중요한 특성인 logical negation
- 각 숫자에 대해 2way categorical variable로 negation operation 수행여부 표현
- i번째 숫자에 대한 logical negation 확률을 계산함 (piNegation)
- 이전 연구에서 capture하지 못했던 중요한 특성인 logical negation
3.3. Multi-Span Extraction
모델은 multi-span extraction을 위해 answer spans을 명시적으로 predict한 후, specific amount에 도달할 때까지 non-overlapped span을 계속 출력함
- 기존 RC task와 달리, DROP은 multiple text span을 answer로 가지기도 하기 때문
-
즉 기존의 one-span을 multiple-span으로 확장하기 위해 span 수를 직접 예측해서 classification으로 modeling함
→ 특정 양의 non-overlapped span을 추출하기 위해 non-maximum suppression(NMS)를 사용 - vision분야 pruning에서 쓰던 것
-
3.4. Arithmetic Expression Reranking
maximum probability를 갖는 arithmetic expression를 직접 사용하지 않고, prediction을 추가로 확인하기 위해 beam search로 decoding함으로서 여러 expression candidates를 re-ranking함
- 3.2에서와 같이 부호를 추가하여 discrete reasoning expression을 modeling하였음
-
부호는 number-representation, 일부 조잡한 global representation에 의해서만 결정되었으므로 representation자체의 context정보는 고려되지 않았음
→ 잘못된 예측 가능
→ 이를 보완하기 위해 expression’s context로부터 요약된 representation을 사용하여 몇가지 확률높은 expression candidate의 순위를 매김 (with beam search)
- 이러한 reranking을 위해 top-ranked arithmetic expression을 생성하여 network로 다시 전송
- top-ranked arithmetic expression; 숫자와 기호를 모두 고려하여 여러개의 부호 있는 숫자로 구성함
- 이러한 reranking을 위해 top-ranked arithmetic expression을 생성하여 network로 다시 전송
-
3.5. Training and Inference
가능한 모든 annotation에 대한 marginal likelihood를 maximize하기 위해 weakly-supervised signals에서 학습함
(supervised signals; supervised learning에서의 desired output value)
- potential negation을 찾기 위해 언급된 모든 숫자를 검색함
- how? simple rule 적용
- That is, if 100 minus a number is equal to the answer, then a negation occurs on this number. Besides, we only search the addition/subtraction of three numbers at most due to the exponential search space.
- how? simple rule 적용
- 두단계로 학습을 진행
-
모델을 사용하여 숫자에 대한 sign assignment의 확률을 예측
→ arithmetic expressions에 annotation이 생기는 경우, beam search를 실행하여 candidate expression생성 & label지정(맞는지틀린지)
→ candidate expression은 추후 supervising the reranking component에서 사용됨
-
candidate expression (with label)을 포함하여 가능한 모둔 annotation의 확률을 합산할 수 있는 marginal likelihood objective function를 채택
- multi-span component에서 가능한 objective function :
- a distantly-supervised loss that maximizes the probabilities of all matching spans
- a classification loss that maximizes the probability on span amount.
- multi-span component에서 가능한 objective function :
-
4. Experiments
4.1. Implementation Details
- Dataset; Drop
- Model Settings; uncased BERT (base, large)
- Baselines; NAQANet, NABER
4.2. Main Results
- metrics: Exact Match(EM), F1 → 둘다 12~13 향상
4.3. Ablation Study
- component ablation
- the use of addition and subtraction is extremely crucial
- producing multiple spans that are partially matched with ground-truth answers is much easier than generating an exactly-matched set of multiple answers.
- reranking mechanism gives 1.8% gain on both metrics for the large model.
- architecture ablation
- global vector; passage and question vector, last hidden representation (M3)
- span prediction동안의 gating mechanism
- expression component와 negation component간의 parameter sharing없어야 함
4.4. Analysis Discussion
- multi-span category에서 성능 향상
- add/sub, negation에서 성능향상
- reranking mechanism
- logical negation을 수행할 수 있는 새로운 logical negation 때문
- multi-span extraction method로 인한 count, span type 에서의 성능 향상
- span numbe는 8이 최고
- 높으면 prediction상승, recall하락, 낮으면 그 반대
- 1은 single-span scenario임
- beam size = 4이 최고
- M = 2,3이 최고
- 대부분의 expression에서 2~3개의 숫자만 부호 가지기 때문
- annotation statistics
- 더 많은 answer type을 고려할수록 성능 향상
- answer type중에서 span은 절반정도밖에 안됨