(2강) Extraction-based MRC
Last updated
Last updated
추출 기반으로 기계독해를 푸는 방법에 대해 학습
추출 기반으로 기계독해 문제에 접근한다는 것의 의미
추출 기반 기계독해를 어떻게 풀수 있는지
Futher Reading
질문(Question)의 답변(answer)이 항상 주어진 지문 내에 span 으로 존재하는 케이스
텍스트를 작은 단위 (Token)으로 나누는 것
띄어쓰기 기준, 형태소, subword 등 여러 단위의 토큰 기준이 사용됨
최근엔 Out-Of-Vocabulary(OOV) 문제를 해결해주고 정보학적으로 이점을 가진 Byte Pair Encoding 을 주로 사용함
본강에선 BPE방법론중 하나인 WordPiece Tokenizer를 사용
미국 군대 내 두번째로 높은 직위는 무엇인가
‘미국’, ‘군대’, ‘내’, ‘두번째’, ‘##로’, 높은, ‘직’, ‘##위는’, ’무엇인가’, ‘?’
[CLS]: 문장의 함축적 의미를 담거나 시작을 의미하는 Token
[SEP]: Question과 Context를 구분하는 Token
[PAD]: 문장의 길이를 맞추기 위해 사용하는 의미가 없는 Token
[UNK]: Unknown Token
입력 시퀸스 중에서 attention을 연산할 때 무시할 토큰을 표시
0은 무시, 1은 연산에 포함
보통 [PAD]와 같은 의미가 없는 특수 토큰을 무시하기 위해 사
입력이 2개이상의 시퀸스 일 때 (예: 질문 & 지문), 각각에게 ID를 부여하여 모델이 구분해서 해석하도록 유도
Extraction 모델은 문서내 존재하는 연속된 단어 token이 정답이므로 token(span)의 시작과 끝 위치를 예측하도록 학습한다. 즉, Token Classification문제로 치환한다.
End position이 start position 보다 앞에 있는 경우
예측한 위치가 context를 벗어난 경우 (e.g. question 위치 쪽에 답이 나온 경우)
미리 설정한 max_answer_length
보다 길이가 더 긴 경우
Start/End position prediction 에서 score(logits)가 가장 높은 N개를 각각 찾는다.
불가능한 start/end 조합을 제거한다
가능한 조합들을 score의 합이 큰 순서대로 정렬한다.
score가 가장 큰 조합을 최종 예측으로 선정한다.
Top-k가 필요한 경우 차례대로 내보낸다.