- 2025년 1월 24일 오전 11:04
- 조회수: 326
REFERENCES
INFORMATION
- 2025년 1월 24일
- 오전 12시 ~
- 온라인 비디오 시청 (YouTube)
온라인 비디오 시청 (YouTube)

TOPIC
On-Line Video
OVERVIEW
청취자 후기

이번 세미나는 대조학습 기반의 information retrieval 모델에 대해 소개하고 있다. Information retrieval은 '검색'과 같은 의미로 보면 된다. 질문을 입력하면 그에 알맞은 적절한 정보를 가져오는 문제이다. 기존에는 질문의 키워드와 정보의 키워드 간의 매칭되는 비율을 가지고 통계 기반의 유사도를 구하는 방식(sparse retrieval)이 주를 이루었다면 최근에 딥러닝이 발전하면서 나온 BERT 모델이 이 분야 주요 방법론(dense retrieval)으로 자리 매김을 하였다. BERT를 information retrieval을 잘 수행하기 위해서 학습할 때 대조학습 모델링을 주로 사용한다. 대조학습은 특징 공간 상에서 positive pair 간에는 가까워지도록, negative samples과는 멀어지도록 학습을 한다. 따라서 이 분야에서는 사용자의 질문과 그에 적절한 정보를 positive pair로 맞추어서 대조학습을 수행한다. 그렇기 때문에 BERT로부터 나온 질문과 정보의 특징벡터의 내적이 클 수록 질문에 연관된 정보라고 본다. Contriever는 이 때 대조학습 중 MoCo 모델링을 활용한 경우이다. PAIR는 정보 간의 유사도 또한 학습에 고려한 경우이다. 이는 질문-정보(postivie pair)의 유사도가 정보 간(negative samples)의 유사도보다 커지도록 한다. ReContriever는 Contriever를 개선한 방법론으로 MoCo를 수행하면서 발생할 수 있는 false positive로부터의 영향을 완화하기 위한 방법을 제시하였다. Contriever 학습 과정 중에는 주어진 문서를 여러 개의 문단으로 잘라서 positive samples를 만들게 되는데 이 때 일부 관련 없는 문장이 섞일 수도 있게 된다. 따라서 노이즈가 섞인 positive sample의 경우 학습 가중치를 낮추어서 모델을 업데이트하는 방식이다.
최근에 해당 분야를 연구할 일이 있었는데 기존에 공부했던 대조학습을 다양하게 시도해볼 수 있어서 재밌게 진행하였다. 한편 거대언어모델에 많이 사용되고 있는 RAG 프레임워크의 핵심 요소이기도 해서 관심 있는 사람은 꼭 알아두고 가면 좋을 분야라고도 생각한다. 유익한 세미나를 준비해준 이정민 연구원에게 감사의 말을 전한다.

재훈이형과 정민이등이 수행하는 삼성전자 종기원 프로젝트에서 어느날 RAG를 주제로 연구를 수행한다고 들었었다. 처음에는 NLP 쪽 연구는 이제 나랑 크게 상관없다라는 마인드로 별 생각 없이 지냈는데 어느 순간부터 모두가 RAG에 대해 열광하고 ChatGPT도 외부 데이터베이스에서 웹 검색을 한 후 사용자에게 맞는 정보에 기반한 답을 하는 걸 보고 아 이건 빨리 RAG 공부해야겠다는 생각이 들었다. 이후 정민이가 작년에 올린 세미나부터 차분히 다시 복습하고 이번 세미나를 시청하였다. 지난 세미나에서는 Question Answering을 위한 RAG 기술 그리고 Retriever와 Generator가 서로 맞물려 있어 Autoregressive하게 한번에 학습되는 RETRO 시리즈에 대해 소개하였다면, 이번 세미나는 다시 돌아가서 RAG의 앞단인 Retriever 모델을 Unsupervised하게 학습하는 방식을 소개한다.
Contriever - Contrastive Learning을 아는 사람이라면 누구나 한번쯤 생각해봤을만한 Method다. QA를 위한 Paired Dataset이 없고, Unlabeled Corpus가 많은 상황에서 Query와 가장 Cosine Similarity가 높은 Passage를 찾고자 하는 모델이다. Positive는 동일 Document의 서로 다른 문장들, Negative는 서로 다른 Document 내의 서로 다른 문장들로 정의하였다. 2가지 variant가 존재하는데, 가장 간편한건 MoCo 기반으로 학습한거라고 한다.
PAIR - 기존에 Query를 기준으로 Positive/Negative 간의 거리만 조절한 것이 Query-Centric이라고 한다면, Passage를 기준으로도 Negative Passage와의 거리를 멀게 하는 Passage-Centric Loss도 추가하였다. Contriever와 달리 질문과 문서가 따로 있는 상황이며, positive와 negative의 정의를 위해 Teacher Model을 활용해 Pseudo-Labeling을 한다고 한다.
ReContriever - Single Positive만 가질 시, positive들이 부정확할 수도 있다는 점을 지적하여, 동일 문서의 다른 문장들을 positive로 하는 multi-positive 방법을 제안한다. 이 때, 각 positive sample이 미치는 가중치는 query와 각각의 positive sample에 대한 cosine similarity로 정의한다.
RAG 쪽을 최근에 관심 가지고 보게 되었는데 굉장히 재밌는 것 같다. 다만 질문/문서/답 데이터의 존재 유무에 따라 positive/negative의 정의가 달라지고, 특히 contrastive learning 방법론들은 이러한 정의에 성능이 좌우되기 때문에, 문제 상황에 따라 적합한 방법론이 무엇인지 올바르게 판단할 필요가 있다. 세미나를 준비하느라 고생한 정민이에게 감사의 말을 전한다.