Boostcamp week12 Linking MRC and Retrieval

Dae Hee Lee·2021년 10월 20일
0

BoostCamp_level2_Pstage_MRC

목록 보기
12/15

Linking MRC and Retrieval

기존의 MRC는 문서가 주어지고 해당 문서에서 질문에 대답하는 task였다. 앞서 봤던 Reader들이 여기에 속한다. 그러나 ODQA(Open Domain Qustion Answering) 의 경우 supporting evidence 중에 문서를 검색해서 reader를 진행한다.

: 지문이 따로 주어지지 않고, 방대한 World Knowledge에 기반해서 질의응답
Ex) Modern search engines: 연관문서 뿐만 아니라 질문의 답을 같이 제공

ODQA History

Retriever-Reader Approach

학습 단계

Retriever:
• TF-IDF, BM25 : 학습 없음
• Dense : 학습 있음
Reader
• SQuAD와 같은 MRC 데이터셋으로 학습
• 학습 데이터를 추가하기 위해서 Distant supervision 활용

Distant Supervision

질문-답변만 있는 데이터셋에서 MRC 학습 데이터 만들기로, Supporting Document가 필요하다.

  1. 위키피디아에서 Retriever를 이용해 관련성 높은 문서를 검색
  2. 너무 짧거나 긴 문서,질문의 고유명사를 포함하지 않는 등 부적합한 문서 제거
  3. answer가 exact match로 들어있지 않은 문서 제거
  4. 남은 문서 중에 질문과 (사용 단어 기준) 연관성이 가장 높은 단락을 supporting evidence로 사용함

Inference

• Retriever가 질문과 가장 관련성 높은 K개 문서 출력
• Reader는 K개 문서를 읽고 답변 예측
• Reader가 예측한 답변 중 가장 score가 높은 것을 최종 답으로 사용함

Issues & Recent Approaches

Different granularities of text at indexing time

위키피디아에서 각 Passage의 단위를 문서, 단락, 또는 문장으로 정의할지 정해야 함.
• Article: 5.08 million
• Paragraph: 29.5 million
• Sentence: 75.9 million

Different granularities of text at indexing time

Retriever 단계에서 몇개 (top-k)의 문서를 넘길지 정해야 함 Granularity에 따라 k 가 다를 수 밖에 없음
(e.g. article : k=5, paragraphà : k=29, sentence : k=78)
Linking MRC and Retrieval

Single-passage training vs Multi-passage training

(Single-passage): 현재 우리는 k 개의 passages 들을 reader이 각각 확인하고 특정 answer span에 대한 예측 점수를 나타냄. 그리고 이 중 가장 높은 점수를 가진 answer span 을 고르도록 함
⇒ 이 경우 각 retrieved passages 들에 대한 직접적인 비교라고 볼 수 없음
⇒ 따로 reader 모델이 보는 게 아니라 전체를 한번에 보면 어떨까?

(Multi-passage): retrieved passages 전체를 하나의 passage 로 취급하고, reader 모델이 그 안에서 answer span 하나를 찾도록 함
Cons: 문서가 너무 길어지므로 GPU에 더 많은 메모리를 할당해야함 & 처리해야하는 연산량이 많아짐

Importance of each passage

Retriever 모델에서 추출된 top-k passage들의 retrieval score를 reader 모델에 전달

profile
Today is the day

0개의 댓글