MRC(2) : MRC의 이해

SeongGyun Hong·2024년 9월 30일

NaverBoostCamp

목록 보기
2/64

1. MRC란?

Machine Reading Comprehension의 약자로 기계 독해란 뜻을 가지고 있다.
Context로 주어지는 지문을 이해하고, 주어진 Query에 답변을 추론해내는 Task이다.

  • 즉, Context를 기반으로 사용자의 Query에 올바른 답변을 해내는 작업 (인공지능 스피커, 구글 검색시스템 등에서 사용됨)

2. MRC Dataset의 종류

  • Extractive Answer 데이터셋
    Query에 대한 답이 항상 Context 안에 segment 또는 span 형태로 존재하는 것으로 모델은 위 Context 안에서 Query에 적합한 답을 찾아 뱉어낸다.
    - Cloze Tests 데이터셋 (CNN/Daily Mail, CBT)
    위 경우 일반적인 질문을 던진다기 보다 빈칸을 두고 이에 들어갈 단어를 알아맞추는 형식으로 진행된다.
    엄밀한 의미에서의 Question Answering은 아니다.
    - Span Extraction 데이터셋(SQuAD, KorQuAD, NewsQA 등)
    위 데이터셋의 경우 실제 Question Answering 형식으로 구성되어 있는데 이는 Query에 합합 정답이 Context 내에 주어져 있다는 가정으로 진행된다.

  • Descriptive/Narrative Answer 데이터셋 (MS MARCO, Narrative QA)
    답이 context 안에 그대로 있는 거시 아니라, Query에 따라 서 자율 형식(free-form)의 문장 형태로 출력됨.

  • Multiple-choice 데이터셋 (MCTest, RACE, ARC)
    최근 본질적인 의미에서의 QA와 다르다 판단되어 학습용도로 잘 쓰이지 않지만, Query에 대한 답을 여러개의 answer candidates 중 하나로 고르는 형식의 데이터셋도 있다.

2.1 MRC 데이터셋

MRC Task는 주어진 질의에 답변을 하는 방식이지만, 이를 응용하면 현재 바로 context에 주어진 답이 없더라도 web에서 research를 통해 답변을 생성할 수도 있기에 많은 연구와 함께 데이터셋이 만들어 지고 있다.

3. MRC Task에서 어려운 점

  • 단어들의 구성이 다름에도 문장의 의미를 동일하게 이해해야 하는 경우 (DuoRC 데이터셋)
  • 물건, 사람 등의 존재를 지칭하는 지칭대명사를 사용하는 경우 이것이 무엇을 지칭하는지 판단해야 하는 경우 (QuoRef 데이터셋)
  • 지문이 주어졌을 때 해당 지문에 Query에 따른 답변이 없는 경우 (SQuAD 2.0 데이터셋)
  • Multi-hop reasoning
    어떠한 지문에 대한 답변을 주기 위해서는 다양한 문서들에서 해당 답변에 필요한 사실을 찾아내고 그것을 취합해야지만 답을 찾을 수 있는 경우가 있음 (HotpotQA, QAngaroo 데이터셋)

4. MRC 평가 방법


  • Exact Match
  • F1 Score

위 두가지 MRC 평가 기법은 Extractive answer 또는 Multiple choice answer와 같이 답변이 지문 내 존재하는 경우 또는 주어진 choice 안에서 답변을 고르는 경우에 많이 쓰임

  • Exact Match (Accuracy)
    (Number of correct samples)/(Number of whole samples)
    일치하면 1점 일치하지 않으면 0점... 가혹하다 !
  • F1 Score
    혼동행렬을 활용하여 F-1 score을 계산

EM score가 0이더라도 F-1 score가 높다면 좀 만 더 다음어서 평가해봐라. 음절 몇개 차이로 0이 된 경우임.


다만 앞서 말한 EM score 또는 F-1 score의 경우 Descriptive/Narrative Answer을 평가하기에 쓰이기가 쉽지 않다. 왜냐하면 위 Task의 경우 작성되는 Answer 가 Free-form의 형식이기 때문이다.
그렇다면 F-1 Score의 경우에는 그래도 그나마 적용가능하지 않나 싶을 수 있는데, F-1 Score의 경우 문맥적 완성도는 잘 파악하지 못 한 채 단어만의 overlap만 보기 때문에 위 평가 방법 또한 불완전하다.
따라서 그래서 실제로는 Descriptive/Narrative Answer의 경우 다음과 같은 평가 방법을 쓴다.

  • ROUGE-L (루즈 엘)
    주로 자동 요약의 품질을 평가하는데 사용 된다.
    생성된 요약문과 참조 요약문 사이의 유사성을 측정하며, ROUGE는 여러 변형이 있지만, 일반적으로 재현율(recall)을 중심으로 평가한다.
    높은 ROUGE 점수는 생성된 요약문이 참조 요약문과 얼마나 많은 부분이 일치하는지를 타나낸다.

  • BLEU-n (Bilingual Evaluation Understudy)
    주로 기계 번역의 품질을 평가하는데 사용된다
    번역된 문장과 참조 문장 사이의 n-gram 정밀도(precision)을 측정한다
    높은 BLEU 점수는 번역된 문장이 참조 문장과 얼마나 유사한지를 나타낸다.

profile
헤매는 만큼 자기 땅이다.

0개의 댓글