Open-domain Question Answering(ODQA)와 MRC는 질문에 대한 답 또는 Context가 주어지느냐 주어지지 않느냐에 큰 차이가 있다.
ODQA는 기본적으로 context가 따로 주어지지 않은 채 방대한 양의 정보들을 Web 등에서 Search하여 해당 정보를 기반으로 대답을 제공한다.
TF-IDF, BM25와 같은 경우에는 별도의 학습이 없으나, Dense Embedding의 경우에는 학습이 가능하다.
SQuAD와 같은 MRC 데이터셋으로 학습 하며 학습데이터 추가를 위하여 Distant supervision을 활용한다.
Distant Supervison이란?
대규모 데이터셋에서 레이블을 자동으로 생성하는 방법을 의미한다. 일반적으로 사람이 모든 레이블 데이터를 라벨링하는 것은 비효율적이기에, 기존 레이블 된 데이터나 외부 지식을 기반으로 활용하여 자동으로 레이블을 생성하는 방식을 사용한다. 일종의 데이터 증강 !
- 예를들어, 지식 그래프에서 "Albert Einstein"과 "Nobel Prize"가 "수상자"라는 관계에 있다고 가정하면, 위키피디아 문서에서 이 두 엔티티가 함께 언급된 문장들을 자동으로 수집하여 "수상자"관계로 레이블링 하고
이렇게 생성된 레이블을 활용해 모델을 학습하면 대규모 레이블 데이터를 빠르게 확보할 수 있어서 모델 성능 개선에 도움이 된다.
하나의 문서에 대하여 크게 Article에서 시작해 Paragraph로 쪼개고, 다시 이걸 Sentence로 쪼갤 수 있다.
위키피디아의 경우에는 Article에서 Sentence로 갈수록
5.08 > 29.5 > 75.9milion으로 증가한다.
경우의 수에 따른 Top-K 설정 문제이다.
만약 앞서서 Article로 Passage 단위를 정했다면 Paragraph를 Passage 단위로 설정했을 때 보다 더 적게 k를 설정할 수 있을 것이고, Sentence를 Passage단위로 설정한다면, k는 Article의 경우보다는 많게 설정되어야 할 것이다.
다만, 무조건 적으로 많은 K가 좋은 것은 아니다. 일종의 Noise로 작용할 수 있기 떄문
즉, 각각의 K개의 Passage에서 최상의 answer span 5개가 나오고, 그 5개 중에서 가장 높은 점수의 answer span이 다시 최종 답변으로 선정되는 형식이다.
그래서 나온 것이 바로 Multi-Passage Trianing
answer span을 최종적으로 선정할 때에
해당 점수만 고려하는 것이 아니라, Retriever 모델에서 추출된 Top-K 에해당하는 K개의 문서 각각의 Retrieval score를 Reader 모델에 전달해준다.
즉, Reader에 Retrieval score 정보를 넘겨줘서 판단에 도움을 주는 것.