본문 바로가기

분류 전체보기68

Dense Passage Retrieval for Open-Domain Question Answering 배경 Open-Domain Question Answering QA 문제는 질문에 대한 답을 내는 과제입니다. 일반적으로 질문이 주어지면, 정답이 포함된 passage를 보고 거기서 정답을 찾아내는 방식을 사용합니다. Open-Domain Question Answering은 좀 더 어려운 과제로, 정답이 포함된 passage를 제시해주지 않습니다. 모델이 직접 정답과 관련된 passage를 찾아서 정답을 내야 합니다. Open-Domain 예시로 KorQuAD를 살펴보겠습니다. KorQuAD는 10만여개의 wikipedia 문서와 약 5만개의 질문-답변 쌍으로 이루어진 데이터셋입니다. 이 과제를 해결하는 방법은, 1) wikipedia 문서들 중에서 질문과 관련 있는 문서를 찾은 뒤(retrieval), .. 2023. 3. 30.
SimCSE: Simple Contrastive Learning of Sentence Embeddings Sentence BERT에 이어서 SimCSE를 살펴보겠습니다. SimCSE는 Sentence BERT의 업그레이드 버전이라고 볼 수 있습니다. SimCSE는 아래와 같은 점들을 기여합니다. 1. contrastive learning을 unsupervise 방식으로 수행하는 방법을 제시 2. 더 효율적인 방식의 supervised learning. 3. Supervised learning에서 hard-negative의 적용. 하나씩 알아가 보도록 하겠습니다. 1. Contrastive Learning Contrastive learning이란 서로 연관 있는 임베딩끼리는 가깝게, 연관 없는 임베딩끼리는 멀도록 매핑하는 학습방법을 뜻합니다. SBERT에서는 NLI 데이터셋을 이용해 'entailment' 라.. 2023. 3. 22.
Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks 1. 개요 Semantic textual similarity(STS)는 두 문장 사이의 유사도를 측정하는 NLP task입니다. 이 task 역시 BERT를 사용했을 때의 성능이 훨씬 좋았죠. BERT는 STS task를 두 문장을 한 번에 입력받은 뒤에 두 문장의 관계를 분류하는 식으로 해결합니다. 그러나 이런 방식은 실용적으로 활용되기에 너무 비효율적입니다. 논문에 따르면 원하는 문장과 가장 유사한 문장을 10,000개의 문장 중에서 찾으려고 한다면 $n(n-1)/2=49,995,000$번의 연산이 필요합니다. 이를 V100 GPU를 사용해 수행하고자 하면, 65시간이 걸린다고 합니다. 이 정도 시간이 걸린다면 검색 추천이나 알고리즘 등에 사용하기는 어렵겠죠. Sentence-BERT(이하 SBERT.. 2023. 3. 20.
ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators ELECTRA 모델에 대해 알아 보겠습니다. ELECTRA는 Pre-training 방식의 일종으로 기존의 BERT에서 좀 더 개선된 pre-training 방식을 제시합니다. 한국어로 사전 학습된 모델도 존재합니다.(KoELECTRA, KcELECTRA) BERT에서 어떤 점들이 개선되었을까요? 1. 개요 본 논문에서 지적하는 것은, BERT가 비효율적인 학습 방법이라는 것입니다. BERT의 학습 방식은 MLM pre-training 이죠. 문장의 15%만을 masking하여 그 부분의 단어를 올바르게 예측하는 방식이었습니다. 다르게 말하면 아무리 긴 문장이 들어와도, 모델은 그 문장 중 15%의 단어만을 학습하는 것입니다. ELECTRA는 문장의 일부가 아니라 전체를 모두 학습하는 방법입니다. 2. .. 2023. 3. 14.
RoBERTa: A Robustly Optimized BERT Pretraining Approach NLP 관련 대회에서 사용하기 위해 여러가지 사전학습된 한국어 언어 모델을 실험하다 보면, 어떤 모델의 성능이 특히 잘 나오는 것을 볼 수 있습니다... 그 이름은 'klue/roberta-large'. 우선 모델의 크기가 다른 사전학습 모델들에 비해 크다는 것 하나만으로도 다른 모델들보다 몇 점 높은 점수가 나오는데요, 여기서 roberta는 뭘까요? 이번 논문으로 알아보겠습니다. 1. 개요 BERT가 발표된 이후로 BERT보다 좋은 성능을 뽑기 위해 여러가지 방법이 제시되어 왔었다고 합니다. 그러나 그런 방법들이 어느 측면에서 BERT보다 나은 성능을 가져온건지와 관련한 연구는 수행이 어렵습니다. 대량의 텍스트로 거대한 모델을 사전학습 시키는 과정 자체가 굉장히 오래 걸리는 작업이고, 그래서 여러가지.. 2023. 3. 12.
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding GPT에 이어 BERT도 리뷰해 보도록 하겠습니다. 1. 개요 GPT를 통해 라벨이 존재하지 않는 대량의 텍스트로 사전 학습을 진행하는 것이 실제로 큰 도움이 된다는 것을 알 수 있었습니다. 비지도 학습을 통해 언어의 정보를 학습시키는 방법은 크게 2가지 분류로 나눌 수 있습니다. 1. feature-base : 미리 학습된 고정된 언어 임베딩 정보를 여러가지 NLP task에 적용하는 방식입니다. 대표적으로 ELMo가 여기에 속합니다. 2. fine-tuning : GPT와 같이 사전학습된 파라미터를 사용해 최소한의 모델 변형으로 fine-tuning을 하여 task에 적용하는 방식입니다. 그러나 이 2가지 방식 모두 문장을 순서대로 학습한다는 한계를 갖는다고 합니다. 예를 들어 GPT는 앞부터 뒤로 .. 2023. 3. 4.