Machine Reading Comprehemsion
-기계 독해
-주어진 지문을 이해하고 주어진 질의에 대한 답변을 추론하는 문제
MRC의 종류
1) Extractive Answer Datasets : 질의에 대한 답이 항상 주어진 지문의 segmant (span)으로 존재.
ex) SQuAD, KorQuAD, NewsQA, Natural Questions, ...
2) Descriptive/Narrative Answer Datasets : 답이 지문 내에 없고 질의를 보고 생성된 문장의 형태
ex) MS MARCO, Narrative QA, ...
3) Multiple-choice Datasets : 질의에 대한 답을 여러 개의 답 중 하나를 고르는 형태 (객관식)
ex) MCTest, RACE, ARC, ...
Challenges in MRC
-단어들의 구성이 유사하지는 않지만 동일한 의미의 문장을 이해해야 한다.
-대답이 불가능한 질문들의 존재. 즉, 지문 속에 답이 없는 질문
-여러 개의 문서에서 질의에 대한 정보를 찾아 취합해야만 답을 찾을 수 있음.
MRC의 평가 방법
1) Exact Math : 예측한 답과 실제값이 정확히 일치하는 샘플의 비율 (정확도)
2) F1 Score : 예측한 답과 실제값 사이의 token overlap을 F1으로 계산
3) ROUGE-L : 예측한 값과 실제값 사이의 overlap recall
4) BLEU : 예측한 답과 실제값 사이의 precision (ex) BLUE-n : uniform n-gram weight
Unicode
-전 세계의 모든 문자를 일관되게 표현하고 다룰 수 있도록 만들어진 문자셋
-문자 하나에 숫자 하나를 매핑한다.
인코딩 & UTF-8
-인코딩이란 문자를 컴퓨터에서 저장 및 처리할 수 있도록 이진수로 바꾸는 작업
-UTF-8은 현재 가장 많이 사용되는 인코딩 방식으로, 문자 타입에 따라 다른 길이의 바이트를 할당한다.
-Python3부터 string 타입은 유니코드 표준을 사용한다.
-ord 함수 사용시 문자를 유니코드로 사용할 수 있고, chr은 유니코드를 문자로 변환한다.
-한국어는 한자 다음으로 유니코드에서 많은 코드를 차지한다. (완성형과 조합형 모두 존재해서)
토크나이징
-텍스트를 토큰 단위로 나누는 것.
-단어, 형태소, subword 등 여러 토큰 기준이 사용된다.
-Subword 토크나이징은 자주 쓰이는 글자 조합은 한 단위로 취급하고, 자주 쓰이지 않는 조합은 subword로 쪼갠다.
-BPE (Byte Pair Encoding) : 데이터 압축용으로 제안된 알고리즘.
-NLP에서 토크나이징용으로 활잘하게 사용된다.
-가장 자주 나오는 글자 단위 바이그람을 다른 글자로 치환하고, 치환된 글자를 저장하는 방식을 반복
ex) aaabdaaabac => ZabdZabac (Z=aa) => ZYdZYac (Y=ab) => XdXac (X=ZY)
KorQuAD
-LG CNS가 AI 언어지능 연구를 위해 공개한 질의응답/기계독해 한국어 데이터셋
-인공지능이 한국어 질문에 대한 답변을 하도록 필요한 학습 데이터셋
-1,550개의 위키피디아 문서에 대하여 10,649 건의 하위 문서들과 크라우드 소싱을 통해 제작한
63,952개의 질의응답 쌍으로 구성된다.
-누구나 데이터를 내려받고 모델을 제출하여 리더보드 평가가 가능하다.
-V1, V2가 있으며 2.0은 보다 긴 분량의 문서를 포함하여 표나 리스트도 포함된 HTML 형태
HuggingFace datasets
-허깅페이스에서 만든 데이터셋은 자연어처리에 사용되는 대부분의 데이터셋과 평가 지표를 접근하고
공유할 수 있게끔 만든 라이브러리.
-Numpy, Pandas, PyTorch, Tensorflow2와 호환됨
-접근가능한 모든 데이터셋이 memory-mapped, cached 되어있어 데이터를 로드하면서 생기는 메모리 공간 부족이나
전처리 과정 반복의 번거로움을 피할 수 있다.
-KorQuAD는 squad_kor_v1, squad_kor_v2 로 로그 가능.
'BOOSTCAMP AI TECH > PStage' 카테고리의 다른 글
03-03. Object Detection (0) | 2021.05.10 |
---|---|
03-01. Object Detection / Segmentation (0) | 2021.04.26 |
02-02. Tabular (0) | 2021.04.24 |
02-01. KLUE (0) | 2021.04.24 |
01. Computer Vision (0) | 2021.04.24 |