(4강) Passage Retrieval - Sparse Embedding
Introduction to Passage Retrieval
Passage Retrieval이란, 질문에 맞는 문서를 찾는 과정을 의미한다. MRC Task와 이 과정을 결합하면, Open-domain Question Answering의 Task를 수행할 수 있다.
Passage Embedding and Sparse Embedding
Retrieval의 한 방법으로서, Passage를 Vector공간에 Embedding하고, 유사도 계산 등을 수행하는 방법이 있다.
위와 같은 공간을 구성하는 방법으로, 고차원이고 Sparse한 형태의 Embedding을 사용할 수 있다. Bag-of-Words의 개념으로, Word의 출현 여부를 Vector형태로 표현하는 것이다.
이 형태에서는 각 차원과 Vocab은 비례한다. Bi-gram으로만 구성해도 지수적으로 차원의 수가 증가하기 때문에, 일반적으로는 Bi-gram까지를 활용해 차원을 구성한다.
Sparse Embedding의 장단점은 다음과 같다.
TF-IDF
TF-IDF는 Sparse Embedding의 방법 중 한가지로, 단어의 등장 빈도와 각 단어의 정보량을 포함하는 형태를 의미한다.
TF-IDF의 개념을 확장한 것이 BM25이며, 이는 현재까지도 매우 유용하게 사용되고 있다.
Reference
Pyserini BM25 MSmarco documnet retrieval 코드
Project
오늘의 목표 및 진척상황
- Baseline Code의 Prepare Dataset 함수 이해
- 음절 단위 Tokenizing 구현
직면했던 문제와 학습한 내용
- Baseline Code의 Prepare Dataset 함수 이해
Baseline 기준으로 Tokenizing이 수행되는 함수로, 내가 변경하고자 하는 Code를 이해하고자 했다. Tokenizer의 어떤 속성이 언제 어떻게 활용되는지를 체크해가며 확인해봤다. Prepare 함수로 만들어진 Feature가 Model을 거쳐서, 후처리 함수에도 들어가는 것을 확인했고, 이때에도 Tokenizer의 각종 속성이 쓰이는 것을 확인했다. 이 과정을 일일히 구현하려고 하니, 기운이 빠졌다.
- 음절 단위 Tokenizing 구현
어려운 작업일 것이라 생각하지 못했는데, 생각보다 엄청 헤매고 있다. 단순히 반복하면서 Tokenizing하면 될 것이라 생각했는데, 각종 속성까지 구현하려고 하니 너무 어렵게만 느껴진다. 아예 Train Code를 새로 짜는게 빠르겠다는 생각이 든다.
추가로 진행 할 사항
- 음절 단위 Tokenizing 구현
'네이버 부스트캠프 AI Tech' 카테고리의 다른 글
[P3] Day 66 (21.05.03) (0) | 2021.06.26 |
---|---|
[P3] Day 65 (21.04.30) (0) | 2021.06.26 |
[P3] Day 63 (21.04.28) (0) | 2021.06.26 |
[P3] Day 62 (21.04.27) (0) | 2021.06.26 |
[P3] Day 61 (21.04.26) (0) | 2021.06.26 |
Uploaded by Notion2Tistory v1.1.0