8일 전

자기회귀적 엔터티 검색

Nicola De Cao, Gautier Izacard, Sebastian Riedel, Fabio Petroni
자기회귀적 엔터티 검색
초록

엔티티는 지식을 표현하고 통합하는 데 핵심적인 역할을 한다. 예를 들어, 위키백과와 같은 백과사전은 각 문서당 하나의 엔티티로 구조화되어 있다. 쿼리에 따라 이러한 엔티티를 검색할 수 있는 능력은 엔티티 연결(entity linking) 및 오픈 도메인 질의 응답(open-domain question answering)과 같은 지식 집약형 작업에 있어 기초적인 요소이다. 현재의 접근 방식은 각 엔티티에 대해 하나씩 할당된 원자적 레이블 간의 분류기로 이해할 수 있다. 이러한 방식에서 각 엔티티의 가중치 벡터는 엔티티의 설명과 같은 메타정보를 인코딩하여 생성된 밀집 표현(dense representation)이다. 그러나 이 접근법은 다음과 같은 여러 한계를 가지고 있다: (i) 컨텍스트와 엔티티 간의 유사도는 주로 벡터의 내적(dot product)을 통해 캡처되며, 세밀한 상호작용을 놓칠 수 있다; (ii) 대규모 엔티티 집합을 고려할 경우 밀집 표현을 저장하기 위해 막대한 메모리가 필요하다; (iii) 학습 시 적절한 난이도의 음성 데이터(negative data)를 사전에 하위 샘플링(subsampling)해야 한다. 본 연구에서는, 엔티티의 고유한 이름을 좌에서 우로, 토큰 단위로 자동 회귀적(auto-regressive) 방식으로 생성함으로써 엔티티를 검색하는 최초의 시스템인 GENRE를 제안한다. 이 방식은 이전의 기술적 문제들을 효과적으로 완화한다. 구체적으로: (i) 자동 회귀 구조는 컨텍스트와 엔티티 이름 간의 관계를 직접적으로 모델링하여, 양방향 교차 인코딩(cross-encoding)을 효과적으로 수행한다; (ii) 인코더-디코더 아키텍처의 파라미터 수는 엔티티 수가 아니라 어휘집 크기(vocabulary size)에 따라 결정되므로, 메모리 사용량이 크게 감소한다; (iii) 음성 데이터를 하위 샘플링 없이 소프트맥스 손실(softmax loss)을 계산할 수 있다. 우리는 엔티티 해석, 엔드투엔드 엔티티 연결, 문서 검색 등의 작업에 대해 20개 이상의 데이터셋에서 실험을 수행하였으며, 경쟁 시스템 대비 극히 작은 메모리 사용량으로 새로운 최고 성능 또는 매우 경쟁력 있는 결과를 달성하였다. 마지막으로, 새로운 엔티티를 단지 이름만 지정함으로써 간단히 추가할 수 있음을 보여주었다. 코드와 사전 학습 모델은 https://github.com/facebookresearch/GENRE 에서 확인할 수 있다.