NLP study

[논문리딩] ANCE : Approximate Nearest Neighbor Negative Contrastive Learning for Dense Text Retrieval

2로 접어듦 2023. 8. 22. 00:28

* 현재 내용을 보충 및 수정 중인 포스트입니다.

 

논문의 저자

Lee Xiong, Chenyan Xiong, Ye Li, Kwok-Fung Tang, Jialin Liu, Paul Bennett, Junaid Ahmed, Arnold Overwijk, Microsoft, 2021, ICLR

논문의 하이라이트 및 핵심


1. Dense Retrieval(DR)이 종종 Sparse Retrieval에 비해 성능이 낮게 나오는 이유를 밝혀냈다.

local uninformative negative samples들이 어떠한 영향을 주기 때문이다.

2.ANCE(Approximate nearest neighbor Negative Contrastive Learning)을 도입해서 BERT-base IR 과정에서 100배 효과적인 성과를 달성했다.

관련된 선행 연구


과거의 Open Domain Question Answering 시퀀스

1.관련성 높은 documents를 먼저 retrieve
2.해당 document들을 re-ranking
3.가져온 document들로부터 answer를 찾기 위한 Machine Reading

Dense Retrieval(DR)

1.DR은 문맥적 이해도를 높이면서 BM25의 단점을 극복했으나
2.종종 BM25보다 성능이 안 나오는게 함정
3.이 DR이라는 것이 왜 문제지?

논문이 제시하는 모델 아키텍쳐


기존 Dense Retrieval에서 사용하는 Negative Sampling의 한계 극복

 

아이디어 1 - Convergence of Dense Retrieval Training

결국은, 밑의 두 항을 최소화 해야한다는 의미이다.

이전 논문들에 따르면, Gradient Norm크게하는 Sample이어야 두 항이 작아지게 된다.

아이디어 1 - Diminishing Gradients of Uninformative Negatives

1.positivenegative sample로 계산한 loss0에 수렴하게 되면,
결국 BERT layer 전체의 gradient 또한 0으로 수렴하게 되고,
이는 모델의 convergence 방해하는 게 된다.
2., 모델의 convergencesample이 얼마나 많이 정보를 가지고 있는지에 의존한다고 해석할 수 있는 것이다. (Informative negative sampling의 필요성)

loss 가 작다는 것은 현재 알고 있는 것과 큰 차이가 없다는 것이니까.

아이디어 1 - Inefficacy of Local In-batch Negatives

Informative optimal negative samples 는 전체 Context C에 비해 매우 적다고 가정할 수 있다.
따라서, mini-batch b에서 optimal negative sample을 가지고 있을 확률은 C의 제곱에 반비례하게 되고,
이는 거의 0에 수렴하게 되는데, 결국 이는 in-batch negativeuninformative 하다고 해석할 수 있다.

 

아이디어 2 - Approximate Nearest Neighbor Noise Contrastive Estimation

ANN은 무엇인가?
1.Approximate Nearest Neighbor줄임말로, 여러분은 이미 알고있다!

FAISS는 대표적인 ANN 라이브러리이다. , ANN Nearest Neighbor 탐색하는 데 걸리는 시간을 줄인 하나의 알고리즘.
2.이 논문에서는 FAISS IndexFlatIP Index 사용해서 ANN search 수행한다.
어떻게 Asynchronous 하게 수행하는가?
1.index search 보다, representation을 매번 업데이트 하는 과정이 training the batch 보다 더 expensive.
2.every m batch 마다 체크포인트를 만들어서 업데이트, m-batch마다 ANN hardest negative 새로 가져옴.
 

실험 결과


Rerank 하지 않았을 때의 성능 저하가 제일 적다!
이전까지의 다른 Retrieve 방식보다 좋다!
Gradient Norm에서 큰 차이가 생긴다!

1.기존 sparse method에 비해서 document retrieval 은 성능이 좋고, DPR보다도 성능이 좋다.
2. ranking 하기 전과 후의 성능 비교에서, 큰 차이가 없다(다른 모델들에 비해) , reranker와 가장 유사하게 근접했다고 할 수 있다.
3. 기존 Local in batch negative들이 실제 Bert layer 안에서 어떤 loss 그래프를 그리는지를 보여주면서 uninformative 하다는 수식을 또 한번 증명

 

결론


1. Dense Retrival 과정에서의 Representation LearningConvergence 에 대한 수학적인 분석을 수행하여 local negative과 왜 별 쓸모가 없는지 증명해 .

2. Local Negative SamplingBottleneck을 제거하기 위한 ANCE 방법론을 고안해서 web search, OpenQA, Search Engine에서 효과적인 것을 확인.

 

 

 

여담1. 논문의 전체 페이지는 16쪽이지만, appendix와 reference를 제외하면 8쪽.

여담2. colbert는 related work에서 아주 간단히 언급된다(IR 단계에서 colbert 는 cashing으로 비용을 줄였으나 이 논문은~…)