KR20220114495A - 탐색, 검색 및 순위화를 위한 상호작용 계층 신경망 - Google Patents

탐색, 검색 및 순위화를 위한 상호작용 계층 신경망 Download PDF

Info

Publication number
KR20220114495A
KR20220114495A KR1020220015257A KR20220015257A KR20220114495A KR 20220114495 A KR20220114495 A KR 20220114495A KR 1020220015257 A KR1020220015257 A KR 1020220015257A KR 20220015257 A KR20220015257 A KR 20220015257A KR 20220114495 A KR20220114495 A KR 20220114495A
Authority
KR
South Korea
Prior art keywords
query
document
token
tokens
embeddings
Prior art date
Application number
KR1020220015257A
Other languages
English (en)
Inventor
제레미 지그 콜터
레오니드 보이초프
Original Assignee
로베르트 보쉬 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20220114495A publication Critical patent/KR20220114495A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • G06N3/0472
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Abstract

언어 시스템은 제어기를 포함한다. 제어기는, 질의 및 문서를 수신하고, 질의를 질의 토큰들의 시퀀스로 토큰화하고 문서를 문서 토큰들의 시퀀스로 토큰화하고, 질의 및 문서 토큰들 각각에 대한 토큰 쌍들의 행렬을 생성하고, 토큰 쌍들의 행렬 내의 각각의 엔트리에 대해, 신경 조건부 변환 확률 망에 의해 생성된 사전 계산된 유사도 스코어를 검색하고 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -, 각각의 질의에 대한 유사도 스코어들 각각의 합의 곱 집계를 통해 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하고, 문서 및 문서의 연관된 순위 스코어를 출력하도록 구성될 수 있다.

Description

탐색, 검색 및 순위화를 위한 상호작용 계층 신경망{INTERACTION LAYER NEURAL NETWORK FOR SEARCH, RETRIEVAL, AND RANKING}
본 출원은 일반적으로 다단계 검색 시스템들에서의 신경망들의 이용에 관한 것이다. 더 구체적으로, 본 출원은 정보 검색 시스템들에서의 문서들의 검색 및 문서들의 순위화에 이용되는 신경망의 상호작용 계층에서의 개선들에 관한 것이다.
언어학은 언어의 과학적 연구이고, 언어에 영향을 주는 사회적, 문화적, 역사적, 및 정치적 인자들의 분석뿐만 아니라, 언어 형태, 언어 의미, 및 컨텍스트에서의 언어의 분석을 수반한다. 인터넷 탐색 시스템들과 같은 정보 검색 시스템들은 정보가 사용자 제출 질의들을 통해 탐색가능하게 되도록 수백만 개의 웹 페이지들을 인덱싱하는 대규모 스케일에서 동작한다. 이러한 탐색 시스템의 목표는 사용자의 질의에 관련된 이러한 문서들을 신속하게 식별하고 관련 탐색 결과들을 반환하는 것이다. 전형적인 텍스트 검색 시스템은 학습된 모델을 이용하여 추가로 재순위화될 수 있는 후보들의 초기 리스트를 생성하기 위해 간단한 용어/토큰-매칭 기술들에 의존한다. 따라서, 검색 성능은 어휘 갭 문제(vocabulary gap problem)로 알려져 있는, 질의와 문서 용어들 간의 불일치에 의해 악영향을 받는다. 이십년 전에, IBM 모델 1이라고 하는 어휘 변환 모델(lexical translation model)의 도움으로, 어휘 갭을 감소시키고, 따라서 검색 유효성을 개선하는 것을 버거(Berger) 및 래퍼티(Lafferty)가 제안하였다. IBM 모델 1은 질의들로서 질문들을 이용하여 영어 질문-답변(QA) 아카이브들에서 답변들을 찾는데 뿐만 아니라 언어간 검색에 적용될 때 강력한 성능을 갖는다. 이전 작업에서 모델 1은 질의 용어들과 관련 문서들에서의 용어들 간의 유용한 연관성들을 찾는 작업을 단순화하는 유사한 길이들의 질문-문서 쌍들에 대해 훈련된다. 또한, 이러한 모델들은 비-파라미터 모델을 생성하는 전통적인 기대-최대화(expectation-maximization)(EM) 알고리즘의 변형을 주로 이용하여 변환 작업에서 훈련되었다.
언어 시스템은 제어기를 포함한다. 제어기는, 질의 및 문서들을 수신하고, 질의를 질의 토큰들의 시퀀스로 토큰화하고 문서들 각각을 문서 토큰들의 시퀀스로 토큰화하고, 질의 토큰들을 질의 임베딩들(query embeddings)로 변환하고 문서 토큰들을 문서 임베딩들로 변환하고, 질의 및 문서 임베딩들 각각에 대한 임베딩 쌍들의 행렬을 생성하고, 임베딩 쌍들의 행렬 내의 각각의 엔트리에 대한 신경 조건부 변환 확률 망(neural conditional translation probability network)을 통해, 유사도 스코어를 계산하고 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -, 각각의 질의에 대한 유사도 스코어들의 합의 곱(product-of-sum) 집계를 통해 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하고, 문서들의 순위 스코어에 따라 문서들을 순서화하고, 문서 및 문서의 연관된 순위 스코어를 출력하도록 구성될 수 있다.
언어 시스템은 제어기를 포함한다. 제어기는, 질의 및 문서를 수신하고, 질의를 질의 토큰들의 시퀀스로 토큰화하고 문서를 문서 토큰들의 시퀀스로 토큰화하고, 질의 및 문서 토큰들 각각에 대한 토큰 쌍들의 행렬을 생성하고, 토큰 쌍들의 행렬 내의 각각의 엔트리에 대해, 신경 조건부 변환 확률 망에 의해 생성된 사전 계산된 유사도 스코어를 검색하고 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -, 각각의 질의에 대한 유사도 스코어들 각각의 합의 곱 집계를 통해 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하고, 문서 및 문서의 연관된 순위 스코어를 출력하도록 구성될 수 있다.
비일시적 컴퓨터 판독가능한 매체는, 컴퓨팅 디바이스의 프로세서에 의해 실행될 때, 컴퓨팅 디바이스로 하여금 동작들을 수행하게 하는, 신경 조건부 변환 확률 망 순위화를 위한 명령어들을 포함한다. 이러한 동작들은, 질의 및 문서들을 수신하는 것, 질의를 질의 토큰들의 시퀀스로 토큰화하고 각각의 문서에 대해, 문서들을 문서 토큰들의 시퀀스로 토큰화하는 것, 질의 토큰들을 질의 임베딩들로 변환하고 문서 토큰들을 문서 임베딩들로 변환하는 것, 질의 및 문서 임베딩들 각각에 대한 임베딩 쌍들의 행렬을 생성하는 것, 임베딩 쌍들의 행렬 내의 각각의 엔트리에 대한 신경 조건부 변환 확률 망을 통해, 유사도 스코어를 계산하는 것 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -, 각각의 질의에 대한 유사도 스코어들 각각의 합의 곱 집계를 통해 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하는 것, 및 문서들의 순위 스코어에 따라 문서들의 순서를 출력하는 것을 포함한다.
도 1은 탐색/검색 시스템의 블록도이다.
도 2는 종래 기술의 순위화 신경망의 흐름도이다.
도 3은 신경 조건부 변환 확률들의 망 및 합의 곱 집계를 갖는 순위화 신경망의 흐름도이다.
도 4는 컨텍스트 독립적 토큰 임베딩 망이 이용되는 신경 조건부 변환 확률들의 망 희소화 프로세스의 흐름도이다.
도 5는 전자 컴퓨팅 시스템의 블록도이다.
필요에 따라, 본 발명의 상세한 실시예들이 본 명세서에 개시되지만, 개시된 실시예들은 단지 다양하고 대안적인 형태들로 구현될 수 있는 본 발명의 예시일 뿐이라는 것을 이해해야 한다. 도면들은 반드시 축척에 맞는 것은 아니며, 일부 특징들은 특정 구성요소들의 상세들을 도시하기 위해 과장되거나 최소화될 수 있다. 따라서, 본 명세서에 개시된 특정의 구조적 및 기능적 상세들은 제한적인 것으로 해석되어서는 안 되고, 단지 본 발명을 다양하게 이용하기 위해 관련 기술분야의 통상의 기술자에게 교시하기 위한 대표적인 기초로서 해석되어야 한다.
용어 "실질적으로"는 개시된 또는 청구된 실시예들을 설명하기 위해 본 명세서에서 사용될 수 있다. 용어 "실질적으로"는 본 개시내용에 개시되거나 청구된 값 또는 상대적 특성을 수정할 수 있다. 이러한 경우들에서, "실질적으로"는 수정하는 값 또는 상대적 특성이 그 값 또는 상대적 특성의 ±0%, 0.1%, 0.5%, 1%, 2%, 3%, 4%, 5% 또는 10% 이내인 것을 의미할 수 있다.
먼저, 영어 텍스트 검색을 위한 어휘 변환 모델(예를 들어, IBM 모델 1), 특히 종단간(end-to-end) 훈련되는 그 신경 변형들의 유용성을 고려한다. 그 후, 컨텍스트-없는(context-free) 또는 컨텍스트화된 방식으로 생성된 질의/문서 임베딩들의 시퀀스에 적용되는 상호작용 계층으로서 IBM 모델 1의 신경 변형을 이용한다. 신경 순위화 시스템을 설계하기 위한 이러한 새로운 접근법은 중대한 유효성, 효율성, 및 해석가능성에 대한 이점들을 갖는다. 구체적으로, 본 개시내용은 BERT(Bidirectional Encoder Representations from Transformers) 기반 컨텍스트화된 임베딩들 위에 신경 모델 1 계층을 추가하는 것이 (1) 정확도 및/또는 효율을 감소시키지 않고; (2) 기존의 BERT 모델들의 최대 시퀀스 길이에 대한 제한을 극복할 수 있다는 것을 예시한다. 어휘(즉, 컨텍스트-없는) 신경 모델 1은 BERT 기반 순위화 모델보다 덜 효과적이지만, (고가의 인덱스-시간 전처리 없이) 제어기, 프로세서, CPU, GPU, 또는 다른 계산 또는 논리 회로 상에서 효율적으로 실행될 수 있다.
전형적인 텍스트 검색 시스템은 학습된 모델을 이용하여 추가로 재순위화될 수 있는 후보들의 초기 리스트를 생성하기 위해 간단한 용어-매칭 기술들에 의존한다. 따라서, 검색 성능은 어휘 갭 문제로 알려져 있는, 질의와 문서 용어들 간의 불일치에 의해 악영향을 받는다. 이십년 전에, IBM 모델 1(모델 1이라고도 함)이라고 하는 어휘 변환 모델의 도움으로, 어휘 갭을 감소시키고, 따라서 검색 유효성을 개선하기 위한 방법이 제안되었다. 모델 1은 질의들로서 질문들을 이용하여 영어 질문-답변(QA) 아카이브들에서 답변들을 찾는데 뿐만 아니라 언어간 검색에 적용될 때 강력한 성능을 갖는다. 그러나, 모델 1을 훈련시키는 것은 이전에 공개적으로 이용가능하지 않았던 큰 질의 세트들을 요구하기 때문에, 부분적으로, 현실적인 단일 언어(monolingual)의 영어 질의들에 대한 그 유효성에 대해서는 거의 알려지지 않았다.
모델 1은 질의 용어들과 관련 문서들에서의 용어들 간의 유용한 연관성들을 찾는 작업을 단순화하는 유사한 길이들의 질문-문서 쌍들에 대해 훈련될 수 있다. 그러나, 질의들이 대응하는 관련 문서들보다 실질적으로, 예를 들어, 두 자릿수 더 짧은 경우에 모델 1을 훈련시키는 것을 고려한다. 또한, 이러한 모델들은 비-파라미터 모델을 생성하는 전통적인 기대-최대화(EM) 알고리즘의 변형을 주로 이용하여 변환 작업에서 훈련되었다.
본 개시내용은 신경망으로 조건부 변환 확률들을 파라미터화하고 변환보다는 순위화 작업에서 모델을 종단간 학습시킴으로써 더 나은 옵션을 제시한다.
수십만 개의 실제 사용자 질의들을 갖는 2개의 최근의 MS MARCO 컬렉션에 대해 어휘 변환 모델들로 추가의 조사가 수행되었다. 구체적으로는, 해석가능한 신경 모델 1 계층이 토큰 임베딩 신경망의 출력에 적용되는 신규한 부류의 순위화 모델들을 고려한다. 이 계층은 질의와 문서 BERT 단어 단편들 간에 모든 쌍별 유사도들 T(q|d)를 생성하고, 이들은 임의의 학습된 가중치들 없이 간단한 합의 곱 공식을 통해 결합된다:
Figure pat00001
여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고,
Figure pat00002
는 질의 토큰 q의 조건부 변환 확률(문서 토큰 d와 정렬되는 확률)이고,
Figure pat00003
는 순위 스코어(문서가 주어진 경우 질의의 조건부 확률로서 해석됨)이고,
Figure pat00004
는 토큰 d가 문서 D에 있는 것의 발생 확률의 최대 가능성 추정치이다.
순위 스코어
Figure pat00005
는 개별 질의 단어 단편들에 대한 스코어들의 곱이고, 이는 가장 큰 기여도들을 갖는 단어 단편들을 정확히 찾아내는 것을 용이하게 한다. 마찬가지로, 모든 질의 단어 단편에 대해, 그 스코어에 대한 가장 높은 기여도들을 갖는 문서 단어 단편들을 식별하는 것이 가능하다. 이것은 개시된 모델을 이전 작업과 비교하여 보다 해석가능하게 한다.
결과적인 복합 망(토큰 임베딩들을 포함함)은 순위화 목표를 이용하여 종단간 학습된다. 2개의 시나리오, 즉 BERT에 의해 생성된 컨텍스트화된 토큰 임베딩들 및 컨텍스트 독립적 토큰 임베딩들을 고려한다. 본 개시내용에 제시된 접근법은 일반적이고 다른 임베딩 망들에도 적용될 수 있다는 점에 유의한다.
이 작업의 발견들은 다음과 같이 요약될 수 있다:
첫째, BERT 위에 해석가능한 신경 모델 1 계층을 추가하는 것은 쉽게 해석가능하지 않은 바닐라 BERT 랭커(vanilla BERT ranker)에 비해 정확도 및 효율성에서의 손실을 사실상 수반하지 않는다. 사실, 긴 문서들의 경우, BERT 기반 해석가능한 신경 모델 1은 절단된 문서들에 적용되는 기준치 모델들을 능가할 수 있고, 따라서 기존의 사전 훈련된 변환기 모델들의 최대 시퀀스 길이에 대한 제한을 극복할 수 있다.
비-파라미터 모델 1과 BM25 스코어들의 융합은 기준치 융합 모델들을 능가할 수 있지만, 그 이득은 매우 작다(
Figure pat00006
3%). 그런 점에서, 컨텍스트-없는 신경 모델 1은 그 비-파라미터 변형보다 실질적으로 더 효과적일 수 있다.
컨텍스트-없는 모델 1은 희소화되고, 비-파라미터 포맷으로 내보내지고, GPU 상에서 BERT 기반 랭커를 실행하는 것에 비해 103배보다 더 빠르게 CPU 상에서 실행될 수 있다. 따라서, 이것은 doc2query와 같은 고가의 인덱스-시간 사전 계산 접근법들 없이 후보 생성 단계를 개선할 수 있다.
텍스트 검색에서의 통계적 변환 방법들의 이용은 질의들로서 질문들을 이용하여 QA 아카이브들에서 답변들을 찾아내는데 성공적으로 적용되었다. 그런 점에서, 이 모델은 사용자-제공 답변들과 쌍을 이루는 질문들의 큰 단일 언어 컬렉션에 대해, 즉 병렬 단일 언어 코퍼스에 대해 훈련된다. 모델 1은 또한 언어간 검색에 유용하였다.
모델 1은 렉셈들(또는 토큰들)의 컨텍스트 독립적 변환 확률들이 병렬 코퍼스로부터의 기대 최대화(EM) 알고리즘을 이용하여 학습되는 비-파라미터 변환 모델이다. 비-파라미터 통계적 학습 모델들의 성능을 개선하기 위한 일반적인 접근법은 신경망들을 이용하여 각각의 확률들을 파라미터화하는 것에 있다. 언어 처리에서의 이러한 아이디어의 초기의 성공적인 구현은 음성 인식을 위한 하이브리드 HMM DNN/RNN(Hidden Markov Models Deep Neural Network/Recurrent Neural Network) 시스템들이었다. 보다 구체적으로, 본 개시내용은 신경 모델 1을 LSTM-CRF(Long short-term memory-conditional random field) 및 CEDR(Contextualized Embeddings for Document Ranking) 아키텍처들에 기반하는 질의 문서 가능성들을 계산하는 최종 망 계층으로서 이용한다.
언어간 검색을 위한 컨텍스트 의존적 어휘 신경 변환 모델을 고려한다. 이 접근법은 어휘 변환 작업에서 이중 언어(bilingual) 병렬 코퍼스로부터의 컨텍스트 의존적 변환 확률들을 이용하였다. 문서가 주어지면, 각각의 토큰들과 함께 가장 높은 변환 확률들이 미리 사전에 계산되고 인덱스에 저장된다. 유사한 길이들의 정렬된 문장들에 대해 모델을 훈련시킬 필요가 있을 것이다. 그러나, 단일 언어 검색의 경우, 본 개시내용은 질의들이 훨씬 더 긴 관련 문서들과만 쌍을 이루기 때문에 이러한 미세 훈련 데이터를 갖지 않는다.
신경 순위화 모델들은 최근에 인기있는 주제였다. 그러나, BERT 이전의 초기 접근법들의 성공은 논란의 여지가 있었다. 이러한 상황은, 특히 변환기 모델들의 도입 및 BERT의 릴리스 후에, 자체 감독 방식으로 사전 훈련된 큰 신경 모델들의 채택으로 바뀌었다. BERT 기반 모델들은 모든 다른 접근법들을 극적으로 능가한다고 생각된다. BERT 및 그 변형들은 또한 MS MARCO 리더보드를 지배하였다.
변환기들 전에, LSTM들(Long short-term memory) 및 다른 순환 신경망들은 시퀀스 데이터의 분류 및 변환을 위한 주요 접근법이었다. 변환기들은 시퀀스 길이에 대한 고유의 제한을 갖지 않는다. 그러나, 최근에 제안된 변환기 모델은 각각의 시퀀스 위치가 이전 계층 내의 모든 위치들에 주의할 수 있는 주의 메커니즘을 이용한다. 자기 주의 복잡도가 시퀀스 길이에 대해 2차이기 때문에, 변환기 모델들(BERT 포함)은 제한된 길이 입력들만을 지원한다. 이 제약을 완화하기 위한 다수의 제안들이 있으며, 예를 들어, 컨포머-커널 순위화 모델(Conformer-kernel ranking model)은 소위 분리가능한 주의를 이용한다. 이 연구 라인은 이 작업에 상보적이다.
기존의 사전 훈련된 모델들로 더 긴 문서들을 처리하기 위해, 시스템은 문서들을 수개의 청크들로 분할하고, 각각의 청크를 개별적으로 처리하고, 예를 들어, 최대 또는 가중된 예측 스코어를 계산함으로써 결과들을 집계해야 할 것이다. 이러한 모델들은 전체 문서들에 대해 종단간 훈련될 수 없다. 또한, 훈련 절차는 관련 문서 내의 각각의 청크가 또한 관련성이 있다고 가정해야 하며, 이는 항상 정확하지는 않다. 간단한 집계 접근법들을 개선하기 위해, 3개의 더 간단한 모델, 즉 KNRM(Kernel-based Neural Ranking Model), PACRR(PACRR: Position-Aware Neural IR Model for Relevance Matching), 및 DRMM(Deep Relevance Matching Model)을 이용한 수개의 문서 청크들의 결합된 출력이 도입되었다. 그러나, 집계자 모델들 중 어느 것도 해석가능하지 않다.
통계적 모델들의 해석 및 설명은 바쁜 연구 영역이 되었다. 그러나, 대다수의 접근법들은 별개의 설명 모델을 훈련하거나 핵심/주의 맵들을 이용하는 것에 의존한다. 이것은 문제가 되는데, 그 이유는 관련 없는 모델들에 의해 제공되는 설명들은 검증하고 신뢰하기가 어렵기 때문이다. 또한, 핵심 및 주의 맵들은 어떤 데이터 부분들이 모델에 의해 처리되고 있는지를 드러내지만, 그 모델이 이들을 처리하는 방법은 드러내지 않는다. 신뢰할 수 없는 사후 설명들을 구성하는 대신에, 한 가지 방법은 그 계산이 설계에 의해 투명한 망들을 옹호한다. 완전히 투명한 망이 실현가능하지 않을 때, 마지막-계층 해석가능성의 이점이 여전히 있다. 텍스트 검색에서, 컨텍스트화된 임베딩들에 걸쳐 소프트-매치 카운트들을 계산하기 위해 커널 기반 공식의 이용을 고려한다. 질의-문서 토큰들의 각각의 쌍이 상이한 임계치들에 대응하는 수개의 소프트-매치 값들을 생성하기 때문에, 설명가능한 방식으로 이들 값들을 집계하는 것이 문제가 된다. 이 접근법은 모델 결정들에 대한 통찰들을 제공하지만, 집계 공식은 매우 복잡해진다. 이것은 본질적으로 제1 계층 이후에 비선형(로그) 활성화 함수를 갖는 2-계층 신경망이다. 대조적으로, 해석가능한 모델 1 계층의 이용은 질의 및 문서 부분단어 토큰의 각각의 쌍에 대해 단일 유사도 스코어를 생성한다. 이들 스코어들은 어떠한 학습된 가중치들도 갖지 않는 간단한 합들의 곱 공식을 이용하여 결합된다(수학식 1 참조).
어떤 계산을 인덱스 시간으로 연기함으로써 질의 시간 순위화를 가속화하는 방법들은 2개의 그룹으로 나누어질 수 있다. 제1 그룹은 질의 시간에 신속하게 결합될 수 있는 부분적으로 구분된 표현들의 생성을 포함한다. 이들 접근법들은 성능 저하를 거의 또는 전혀 수반하지 않는다. 제2 그룹의 방법들은 내적을 계산함으로써 비교될 수 있는 독립적인 질의 및 문서 표현들을 생성 또는 향상시킨다. 밀집 또는 희소한 표현들은 고가의 인덱싱 처리 및 유효성에서의 일부 손실을 감수하더라도 제1 단계 검색을 개선하는 것으로 보여졌다.
희소 표현들 중에서, DeepCT(Deep Contextualized Term Weighting)는 문서 및 질의 용어들 둘 다에 대한 중요도 가중치들을 생성하기 위해 BERT를 이용하고, doc2query는 가장 가능성 있는 질의 용어들로 문서들을 보강하도록 학습하는 반면, Epic 모델은 문서 확장을 용어 재가중과 결합시킨다. 이러한 모델들은 바닐라 BERT 랭커보다 덜 효과적이고, 비용이 많이 드는 인덱스-시간 처리를 필요로 한다. 용어 확장 및 재가중 모델들에 의해 생성되는 데이터의 희소성으로 인해, 이는 제1 검색 단계의 성능을 개선시키기 위해 전통적인 반전 파일에 저장될 수 있다. 모델의 확장 및 재가중 결정들을 설명하는 것은 어렵지만, 제1 검색 단계가 보통 BM25와 같은 투명한 순위화 공식을 이용하기 때문에, 어느 용어 매치들이 질의-문서 스코어들에 가장 많이 기여하는지를 결정하는 것은 상당히 쉬울 수 있다. 이것은 확장 및 재가중 모델들을 부분적으로 해석가능하게 만든다.
토큰 임베딩, 바닐라 BERT, 및 CEDR을 살펴보면, 입력 텍스트가 토큰들이라고 하는 텍스트들의 작은 청크들로 분할된다고 가정한다. 이 프로세스는 토큰화라고 한다. 토큰은 완전한 영어 단어, 단어 단편, 또는 렉심(lexeme)(렘마(lemma))일 수 있다. 문서 d의 길이는 토큰들의 수로 측정되고 |d|로 표시된다. 신경망들이 텍스트 데이터에 대해 직접 동작할 수 없기 때문에, 토큰들의 시퀀스 t 1 t 2 ...t n 은 먼저 임베딩 부분망에 의해 d차원 벡터들의 시퀀스들 w 1 w 2 ...w n 으로 변환된다. 이러한 벡터들은 또한 임베딩들이라고 지칭된다. 처음에, 임베딩 부분망들은 컨텍스트 독립적이었고, 즉, 각각의 토큰은 항상 동일한 벡터에 매핑되었다. 컨텍스트 의존적, 즉, 컨텍스트화된 임베딩들이 자체 감독 방식으로 큰 코퍼스 상에 사전 훈련된 다중-계층 양방향 LSTM을 생성하는 우월성이 최근에 입증되었다. 이들은 사전 훈련된 대형 변환기들에 의해 곧 추월되었다.
본 개시내용은 2가지 유형의 임베딩, 즉 바닐라 컨텍스트-없는 임베딩들 및 BERT 기반 컨텍스트화된 임베딩들을 포함한다. BERT 아키텍처와 관련하여, 고려할 몇 가지 중요한 것은 다음과 같다:
컨텍스트화된 토큰 임베딩들은 마지막-계층 은닉 상태들의 값들이고;
BERT는 완전한 단어들보다는 단어 단편들에 대해 동작하고;
어휘는 30K에 가까운 토큰들을 가지며, 2개의 특수 심볼 [CLS](집계자) 및 [SEP](분리자)를 포함하고;
[CLS]는 항상 모든 토큰 시퀀스에 프리펜딩되고, 그 임베딩은 분류 및 순위화 작업들을 위한 시퀀스 표현으로서 이용된다.
"바닐라" BERT 랭커는 [CLS] 벡터를 스칼라로 변환하는 예측 헤드로서 단일의 완전히 연결된 계층을 이용한다. 이는 다음과 같은 토큰들의 시퀀스, 즉 [CLS] q [SEP] d [SEP]에 기반하여 예측을 하고, 여기서 q는 질의이고, d = t 1 t 2 ...t n 은 문서이다. 긴 문서들 및 질의들은 토큰들의 전체 수가 512를 초과하지 않도록 절단될 필요가 있다. 이 제한을 극복하기 위해, 다음과 같은 접근법을 고려한다:
더 긴 문서들 d를 수 개의 청크들로 분할하고, 즉 d = d 1 d 2 ...d m 이고;
m개의 토큰 시퀀스들 [CLS] q [SEP] d i [SEP]를 생성하고;
각각의 시퀀스를 BERT로 처리하여 [CLS]뿐만 아니라 정규 토큰들에 대한 컨텍스트화된 임베딩들을 생성한다.
이것의 결과는 m개의 [CLS]-벡터들 cls i n개의 컨텍스트화된 벡터들 w 1 w 2 ...w n 이고, 이는 각각의 문서 토큰 t i 에 대해 하나씩이다. 이러한 컨텍스트화된 벡터들을 결합하기 위한 몇몇 접근법들이 있다.
한 가지 접근법은 평균 [CLS] 토큰:
Figure pat00007
에 대한 예측을 통해 바닐라 BERT 랭커를 확장하는 것이다.
두 번째 접근법은 다음의 신경 아키텍처들: KNRM, PACRR, 및 DRMM에서 컨텍스트-없는 임베딩들의 직접 대체로서 컨텍스트화된 임베딩들을 이용하는 것이다.
CEDR 아키텍처를 도입한 세 번째 접근법에서, [CLS] 토큰/벡터는 모델-특정 방식으로 KNRM, PACCR, 및 DRMM에 추가로 통합되어, 성능을 더욱 증대시킨다.
비-파라미터 및 신경 모델 1은 0이 아닌 가중치들을 관련되지만 상이한 용어들(예를 들어, 동의어들)에 할당하는 소프트-매칭 함수를 학습하는 목적을 갖는 변환 문제로서 검색을 재구성하기 위한 제안을 포함한다. 이를 위해, 용어 독립적이고 컨텍스트-없는 모델인 간단한 모델 1을 이용하는 것을 고려한다.
P(D|q)는 문서 D가 질의 q에 관련될 확률을 나타낸다고 하자.
베이스(Bayes) 규칙을 이용하여, P(D|q)는 P(D|q) ∝ P(q|D)p(D)로서 재작성하는 것이 편리하다. 또한, 문서 발생 확률 p(D)에 대한 균일한 전제(uniform prior)를 가정하면, 관련성 확률은 P(q|D)에 비례하며, 이는 차례로 문서-대-질의 변환으로서 계산될 수 있다.
T(q|d)는 질의 토큰 q가 문서 토큰 d의 변환일 확률이고, P(d|D)는 토큰 d가 문서 D에 의해 "생성"될 확률이라고 하자. 그 후, 질의 Q가 문서 D의 변환일 확률은 다음과 같이 개별 질의 용어 가능성들의 곱으로서 계산될 수 있다:
Figure pat00008
모델 1을 효과적으로 만드는 것은 비-파라미터 및 신경 변형들 간에 매우 상이한 다수의 기술을 필요로 한다. 비-파라미터 모델 1의 경우, 질의 용어 q의 가능성인 P(q|D)는 파라미터 λ를 이용하여 컬렉션 확률 P(q|C)와 선형으로 결합된다:
Figure pat00009
컬렉션 확률 P(q|C) 및 문서내 용어 확률 P(d|D) 둘 다는 최대 가능성 추정치들, 즉 정규화된 발생 빈도들이다. 어휘외 용어 q의 경우, P(q|C)는 작은 수(예를 들어, 10-9)로 설정된다. 변환 확률들 T(q|d)는 MGIZA에서 구현되는 EM 알고리즘을 이용하여 계산된다. MGIZA는 스퓨리어스 삽입들(즉, 빈 단어로부터의 변환)을 모델링하지만, 이것은 폐기될 수 있다. 다음으로, 모델 1 유효성을 개선하기 위해 몇 개의 추가적인 척도들을 고려한다:
병렬 코퍼스는 문서들 및 구절들(passages)을, 그 길이가 질의 길이들에 필적하는 작은 연속 청크들로 분할함으로써 생성되고;
조건부 변환 확률들 T(q|d)는 대칭화된 코퍼스로부터 학습되고;
경험적으로 발견된 임계치 약 10-3 미만의 모든 변환 확률들 T(q|a)를 폐기하고 최대 106개의 가장 빈번한 토큰을 유지하고;
자체 변환 확률인 T(t|t)를 경험적으로 발견된 포지티브 값 및 리스케일 확률들 T(t 0 |t)로 설정하여
Figure pat00010
이 되게 한다.
신경 변환 모델의 경우에, 변환 및 컬렉션 확률들을 평활화하지 않는 보다 간단한 수학식 1을 고려한다. 변환 확률 T(q|d)는 간단한 신경망에 의해 계산되고, 그 입력은 토큰들 qd의 컨텍스트-없는 또는 컨텍스트화된 임베딩들이다. 컨텍스트-없는 임베딩들의 경우, P(d|D)는 문서 내의 용어 d의 발생들의 수를 |D|로 나눈 것과 같다. 그렇지만, 토큰 임베딩들의 컨텍스트화는 본질적으로 비-반복적인 토큰들을 생성한다. 따라서, BERT 기반 임베딩들에 대해 P(d|D) = 1/ | D |를 설정한다.
Figure pat00011
여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이며, embedq(q)는 질의 토큰의 임베딩(벡터)이고, embedd(d i )는 문서 토큰 d i 의 임베딩(벡터)이고, T는 조건부 변환 확률이고, P(Q|D)는 순위 스코어이며, 이는 문서 D가 주어진 경우 질의 Q의 조건부 확률로서 해석된다.
마찬가지로, 컨텍스트화된 임베딩 설정에서,
Figure pat00012
여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이며, embedq(q,d i )는 질의 토큰의 컨텍스트화된 임베딩이고, embedd(q,d i )는 문서 토큰 d i 의 컨텍스트화된 임베딩이며, T는 조건부 변환이고, P는 순위 스코어이다.
컨텍스트-없는 신경 모델 1은 희소화되고 비-파라미터 포맷으로 내보내질 수 있으며, 이는 CPU 상에서의 극도로 효율적인 실행을 허용한다는 점에 유의한다. 이것은 모든 쌍들의 어휘 토큰들에 대해 T(t 1 |t 2 )를 사전 계산하고 임계치보다 작은 모든 값들을 폐기함으로써 행해진다.
또한, 간단하고 효율적인 신경망에 의해 수학식 3에서 T(q|d)를 계산한다. 망들은 토큰들 qd의 컨텍스트-없는 또는 컨텍스트화된 임베딩들을 "소비"하고 범위 [0,1] 내의 값을 생성한다. 컨텍스트-없는 모델의 양호한 수렴에 대해 중대한 자체 변환 확률을 통합하기 위해, T(t|t) = p self 로 설정하고 모든 다른 확률들에 1-p self 를 곱한다. 그러나, 조건부 확률들을 스케일링하여
Figure pat00013
을 보장하는 것은 실용적이지 않았다. 따라서, T(t 1 |t 2 )는 유사도 함수이지만, 진정한 확률 분포는 아니다.
작은 자체 변환 확률 p self = 0.05를 이용하면 컨텍스트-없는 모델의 수렴이 크게 향상됨을 알 수 있다. 그런 점에서, 임의의 토큰 t 2 에 대해
Figure pat00014
이도록 하는 조건부 확률들의 적절한 스케일링은 컨텍스트-없는 임베딩들에 대해 효율적이지 않고 심지어는 (동일한 토큰의 임베딩 벡터가 상이한 컨텍스트들 사이에서 변하기 때문에) 컨텍스트화된 임베딩들에 대해 무의미하다. 따라서, 조건부 확률들을 정규화하지 않고, 신경망 T(t 1 |t 2 )의 출력을 범위 [0,1] 내에 있도록 제약한다. 또한, T(t|t) = p self 로 설정하고 모든 다른 확률들에 1-p self 를 곱한다.
T(t 1 |t 2 )에 대한 신경 파라미터화를 설계하기 위한 몇몇 접근법들이 고려되었다. 질의 및 문서 토큰들의 임베딩들을 각각 나타내기 위해 embed q (t 1 ) 및 embed d (t 2 )를 이용하는 것을 고려한다. 아마도, 가장 간단한 접근법은 질의들 및 문서들에 대한 임베딩들의 개별 세트들을 학습하고 스케일링된 코사인 유사도로서 확률을 계산하는 것이고, T(t 1|t 2) = 0.5{cos(embed q (t 1),embed d (t 2))+ 1}이다. 그러나, 이 신경망은 충분히 표현적이지 않고, 결과적인 컨텍스트-없는 모델 1은 EM을 통해 학습된 비-파라미터 모델 1보다 열등하다.
양호한 성능에 대한 핵심 구성요소는 그 하다마르 곱과의 임베딩들의 연접임을 알 수 있으며, 이것은 다음 계층들이 더 나은 상호작용 피처들을 발견하는 것을 돕는다고 생각된다. 그런 다음, RELU들과 시그모이드가 이어지는 하나 이상의 완전히 연결된 선형 계층을 거친다:
Figure pat00015
여기서, P q , P d , 및 F i 는 완전히 연결된 선형 투영 계층들이고; [x, y]는 벡터 연접이고; layer-norm은 계층 정규화이다.
Figure pat00016
는 벡터들 xy의 하다마르 곱이다.
<표 1>
Figure pat00017
데이터 세트들: MS MARCO 컬렉션들로 실험할 때, 이는 구절 및 문서 검색 작업들을 위한 데이터를 포함한다. 각각의 MS MARCO 컬렉션은 많은 수의 실제 사용자 질의들을 갖는다(표 1 참조). 이와 관련하여 MS MARCO에 필적하는 다른 컬렉션들은 없다. 질의들의 큰 세트는 검색 엔진 Bing의 로그로부터 샘플링된다. 그런 점에서, 데이터 세트 생성자들은 모든 질의들이 짧은 텍스트 스니펫을 이용하여 답변될 수 있다는 것을 보장하였다. 이러한 질의들은 단지 (질의당 하나의 관련 구절에 대해) 희소하게 판단된다. 희소 판단들은 이진수이고, 관련 문서들은 등급 1을 갖고, 모든 다른 문서들은 등급 0을 갖는다.
희소 판단들을 갖는 큰 질의 세트들에 부가하여, TREC 2019/2020 심층 학습 트랙들로부터의 2개의 평가 세트가 이용되었다. 이러한 질의 세트들은 아주 작지만, 문서 및 구절 검색 작업에 대해 NIST 평가자들에 의해 개별적으로 철저히 판단되었다. TREC NIST 판단들은 0(비-관련)부터 3(완벽하게 관련)까지의 범위에 있다.
공개적으로 이용가능한 훈련 및 검증 세트들은 다음의 서브세트들, 즉 선형 융합 모델을 훈련하기 위한 작은 훈련 세트(훈련/융합), 신경 모델들 및 비-파라미터 모델 1을 훈련하기 위한 큰 세트(훈련/모델링), 개발 세트(개발), 및 최대 3K개의 질의들을 포함하는 테스트 세트(테스트)로 랜덤하게 분할되었다. 상세한 데이터 세트 통계치들이 표 1에 요약된다. 훈련 서브세트들은 원래의 훈련 세트로부터 획득된 반면, 새로운 개발 및 테스트 세트들은 원래의 개발 세트로부터 획득되었다는 점에 유의한다.
다음으로, 텍스트로부터 토큰들 및 렘마들(렉심들)을 추출하기 위해 Spacy 2.2.3을 이용하여 컬렉션들을 처리하였다. 자주 발생하는 토큰들 및 렘마들은 "n't" 및 "'ll"과 같은 소수의 축약형들을 포함하도록 확장된, 인드리(Indri)의 불용어들의 리스트를 이용하여 필터링되었다. 렘마들은 루센(Lucene) 7.6을 이용하여 인덱싱되었다. 부분단어 토큰들, 즉 BERT 단어 단편들은 허깅페이스 변환기 라이브러리(HuggingFace Transformers library)를 이용하여 생성되었다. 불용어 리스트는 BERT 단어 단편들에 적용되지 않았다.
기본 셋업: 6-코어(12 스레드) i7-6800K 3.4 Ghz CPU, 125 GB의 메모리, 및 4개의 GeForce GTX 1080 TI GPU가 장착된 리눅스 서버에 대한 실험이다. 이것은 자바(Java)에서 구현되는 텍스트 검색 프레임워크 FlexNeuART를 이용하였다. BM25 스코어러를 갖는 루센 7.6을 이용하여 후보들의 초기 리스트를 생성하였고, 이는 전통적인 또는 신경 리랭커들을 이용하여 추가로 재순위화될 수 있다. 비-파라미터 모델 1을 포함하는 전통적인 리랭커들은 자바에서도 구현된다. 이들은 멀티-스레드 모드(12 스레드)에서 실행되고 CPU를 완전히 이용한다. 신경 랭커들은 PyTorch 1.4 및 Apache Thrift를 이용하여 구현된다. 신경 랭커는 독립형 단일-스레드 서버로서 동작한다.
순위화 속도는 하나의 문서/구절마다, 레이턴시보다는 전체 CPU/GPU 처리량으로서 측정된다. 순위화 정확도는 TREC 조직자들에 의해 제공된 표준 유틸리티 trec_eval을 이용하여 측정된다. 통계적 유의성은 임계치가 0.05인 양측 t-테스트를 이용하여 계산된다.
모든 순위화 모델들은 조율된 BM25 스코어러에 의해 생성된 후보 리스트에 적용된다. BERT 기반 모델들은 최고 BM25 스코어들을 갖는 100개의 엔트리를 재순위화하고, 후보들의 더 큰 풀을 이용하는 것은 효율성 및 정확도 모두를 저하시킨다. 신경 컨텍스트-없는 모델 1을 포함하는 모든 다른 모델들은 1000개의 엔트리를 재순위화하고, 후보들의 수를 더 증가시키는 것은 정확도를 향상시키지 않는다.
훈련 모델들: 신경 모델들은 쌍별 마진 손실을 이용하여 훈련된다. 훈련 쌍들은 루센에 의해 반환된 상위-500개의 후보의 세트로부터 선택된 20개의 네거티브 예와 알려진 관련 문서들을 결합함으로써 획득된다. 각각의 에포크에서, 질의당 하나의 포지티브 및 하나의 네거티브 예를 랜덤하게 샘플링한다. BERT 기반 모델들은 먼저 마스킹된 언어 모델링 및 다음 문장 예측 목표를 이용하여 대상 코퍼스 사전 훈련을 거친다. 그 후, 하나의 에포크의 순위화 작업을 위해 이들을 훈련시킨다. 경사 누적을 통해 시뮬레이션된 배치 크기 16을 이용한다. 컨텍스트-없는 모델 1은 배치 크기 32를 이용하여 32개의 에포크에 대한 스크래치로부터 훈련된다. 비-파라미터 모델 1은 MGIZA를 이용하여 5개의 에포크에 대해 훈련된다. 에포크들의 수를 더 증가시키는 것은 결과들을 실질적으로 개선하지 않는다.
작은 가중치 감쇠(10-7), 및 학습 레이트가 기본 학습 레이트에 도달할 때까지 단계들의 10-20%에 대해 0으로부터 선형적으로 성장하는 웜업 스케줄을 이용한다. 최적화기는 AdamW를 포함한다. BERT 기반 모델들에 대해, 완전히 연결된 예측 헤드(2·10-4)에 대해 그리고 주 변환기 계층들(2·10-5)에 대해 상이한 기본 레이트들을 이용한다. 컨텍스트-없는 모델 1에 대해, 기본 레이트는 3·10-3이고, 이는 각각의 에포크 후에 0.9만큼 감쇠된다. 이는 모든 파라미터들에 대해 동일하다. 훈련된 신경 모델 1은 모든 쌍별 변환 확률들을 사전 계산하고 10-4보다 작은 확률들을 폐기함으로써 비-파라미터 포맷으로 내보내진다. 내보내기는 3분 걸리고, 내보내진 모델은 비-파라미터 모델 1과 동일한 자바 코드를 이용하여 실행된다.
각각의 신경 모델 및 희소화된 모델 1은 5개의 시드(0 내지 4)에 대해 훈련되고 평가된다. 이를 위해, 각각의 질의 및 시드에 대한 값 및 평균 질의-특정 값들을 계산한다. 모든 하이퍼-파라미터들은 개발 세트에 대해 조율된다.
컨텍스트-없는 모델 1 랭커들은 자체적으로 강하지 않기 때문에, 융합 모드에서 이들을 평가한다. 먼저, 모델 1은 훈련/모델링에 대해 훈련된다. 그 후, 모델의 스코어를 BM25 스코어들과 선형적으로 결합한다. 최적의 가중치들은 RankLib로부터의 좌표 상승 알고리즘을 이용하여 훈련/융합 서브세트에 대해 계산된다. 이러한 선형 융합의 유효성을 개선하기 위해, 모델 1 로그-스코어들의 이용은 질의 토큰들의 수에 의해 정규화된다. 차례로, BM25 스코어들은 질의-용어 IDF 값들의 합에 의해 정규화된다. 또한, 상이한 토큰화 접근법들에 대해 BM25 스코어들의 융합을 이용하며, 이는 또한 훈련/융합에 대해 RankLib를 통해 훈련된다.
모델 개요: 몇 개의 모델들(표 2 참조)을 비교한다. 먼저, 분류 정리된(lemmatized) 텍스트, 이하 BM25(lemm)에 대해 계산된 BM25 스코어들을 이용한다. 둘째, 컨텍스트-없는 모델 1의 몇 개의 변형들을 평가한다. 비-파라미터 모델 1은 원래의 토큰들 및 BERT 단어 단편들 둘 다에 대해 훈련되었고, 각각의 모델들은 Model1(tok) 및 Model1(b/tok)로서 표시된다. NN-Model1로서 표시된 신경 컨텍스트-없는 모델 1은 BERT 단어 단편들에만 이용되었다. 이 모델은 희소화되었고, CPU 상에서 효율적으로 실행되는 비-파라미터 포맷으로 내보내졌다. NN-Model1-exp로서 이를 표시한다. 컨텍스트-없는 모델 1 랭커들이 자체적으로 강하지 않고, 따라서 그 스코어들을 BM25(lemm)와 결합함으로써 융합 모드에서 이들을 평가한다는 점에 유의한다.
결정적으로, 모든 컨텍스트-없는 모델들은 자체 변환 확률을 통해 또는 토큰 컬렉션 확률과의 명시적 평활화를 통해 정확한 용어-매칭 신호를 통합한다(수학식 2 참조). 따라서, 이들 모델들은 BM25와 비교될 뿐만 아니라, 원래의 토큰들 또는 BERT 단어 단편들에 대한 BM25 스코어들을 통합하는 융합 모델과 비교되어야 한다. 이들 모델들을 각각 BM25(lemm)+BM25(tok) 및 BM25(lemm)+BM25(b/tok)로서 나타낸다.
컨텍스트화된 모델 1은 BERT에 의해 생성된 컨텍스트화된 임베딩들에 신경 모델 1 계층을 적용한다. 이 모델을 BERT-Model1로서 나타낸다. 기존의 사전 훈련된 변환기 모델들의 제한으로 인해, 긴 문서들은 청크들로 분할될 필요가 있고, 청크들 각각은 처리, 즉 개별적으로 컨텍스트화된다. 이것은 BERT-Model1(전체), BERT-바닐라(전체), 및 BERT-CEDR 모델들에서 행해진다. 다른 접근법은 절단된 문서 텍스트에 대한 예측들을 행하는 것이다. 이것은 BERT-Model1(짧은) 및 BERT-바닐라(짧은)에서 행해진다. 구절 검색 작업에서, 모든 구절들이 짧고, 절단 또는 청크가 필요하지 않다. BERT 기반 모델들의 경우, 기본, 즉 12-계층 변환기 모델을 이용하는데, 그 이유는 이것이 24-계층 BERT-large보다 더 실용적이고 MS MARCO 데이터에 대해 BERT-large와 동등하게 수행되기 때문이다.
양측 t-테스트를 이용한 몇몇 가설들이 테스트되었다:
<표 2>
Figure pat00018
표 2는 평가 결과들을 예시하고, b/tok는 BERT 단어 단편들을 나타내고, lemm은 텍스트 렘마들을 나타내며, tok는 원래의 토큰들을 나타낸다. NN-Model1 및 NN-Model1-exp는 CPU 상에서 실행되는 컨텍스트-없는 신경 모델 1 및 그 내보내진 변형이다. 양쪽 모두는 b/tok만을 이용한다. 통계적 유의성은 * 및 #로 표시된다.
컨텍스트-없는 신경 모델 1은 각각의 융합 기준치들과 동일하며, 예를 들어, BM25(lemm)+Model1(tok)은 BM25(lemm)+BM25(tok)와 비교되고;
BERT-Model1(전체)은 기준치 BERT-바닐라(짧은)와 동일하고;
BERT-CEDR 모델들은 기준치 BERT-바닐라(짧은)와 동일하고;
BERT-바닐라(전체)는 기준치 BERT-바닐라(짧은)와 동일하고;
BERT-Model1(전체)은 기준치 BERT-Model1(짧은)과 동일하다.
이러한 테스트들의 주요 목적은 (신경 모델 1을 포함하는) 특수 집계 계층들이 절단된 문서들에 대해 실행되는 모델들에 비해 더 정확할 수 있는지를 평가하는 것이다. 표 2에서, 통계적 유의성은 특수 심볼에 의해 표시되고, 마지막 2개의 가설은 #을 이용하고, 모든 다른 가설들은 *를 이용한다.
결과들의 논의이다. 이러한 결과들은 표 2에 요약된다. 먼저 테스트 세트들에 비해 TREC 2019/2020 세트들에 대한 결과들에서 일관성이 더 적다는 점에 유의한다. 그런 점에서, TREC 2019/2020에 대해 (테스트 시의) 일부 통계적으로 유의미한 차이들이 "사라진다". TREC 2019/2020 질의 세트들은 매우 작고, (테스트에 비해) 스퓨리어스 결과들을 획득할 가능성이 더 크다. 또한, 융합 모델 BM25(lemm)+Model1(b/tok)은 기준치 모델 BM25(lemm)+BM25(b/tok)보다 더 나쁘거나, 그 차이가 유의미하지 않다. BM25(lemm)+Model1(tok)은 각각의 기준치보다 대부분 더 양호하지만, 그 이득은 매우 작다. 대조적으로, BERT 단어 단편들에 대한 BM25 스코어들과의 신경 모델 1의 융합은 모든 질의 세트들에 대해 더 정확하다. 테스트 세트들에 대해, 이는 BM25(lemm)보다 15-17% 더 양호하다. 이러한 차이들은 테스트 세트들뿐만 아니라, 구절 검색 작업에 대한 TREC 2019/2020 테스트 세트들에 대해서도 유의미하다. 신경 모델 1의 희소화는 정확도에서의 현저한 저하를 초래하지 않는다. 그런 점에서, CPU에서 실행되는 희소화된 모델은 GPU 상에서 실행되는 BERT 기반 랭커들보다 103배 넘게 더 빠르다. 모델 1 스코어들의 큰 후보 세트들의 계산이 추가로 개선될 수 있다. 따라서, BM25(lemm)+NN-Model1-exp는 제1 검색 단계에서 유용할 수 있다.
마지막으로, BERT 기반 신경 모델 1의 정확도를 BERT-CEDR 및 BERT-바닐라 모델들과 비교한다. (문서 검색 작업에 대한) 테스트 세트에 대해 BERT-바닐라(짧은)를 BERT-Model1(짧은)과 비교하고 BERT-바닐라(긴)를 BERT-Model1(긴)과 비교하는 것으로부터, 신경 모델 1 계층은 사실상 어떠한 효율 또는 정확도 손실을 수반하지 않는 것으로 보여질 수 있다. 그런 점에서, 테스트 세트들에 대해, 완전한 문서들에 대해 동작하는 BERT-Model1(전체)은 BERT-Model1(짧은) 및 BERT-바닐라(짧은) 둘 다에 비해 약 1% 더 정확하다. 그러나, 후자의 차이는 통계적으로 유의미하지 않다. 그런 점에서, BERT-CEDR-PACRR에 대해서도 마찬가지이며, 이는 또한 BERT-바닐라보다 1% 더 우수하다. 이것은 평균화된 [CLS] 임베딩들에 대한 예측들을 행하는, 바닐라 BERT 랭커의 "전체" 변형에 대해 BERT-CEDR-PACRR이 BERT-CEDR-PACRR과 비교된 BERT-바닐라보다 더 우수하다는 것을 보여주는 결과들을 무효화하지는 않는다. 그러나, 본 발명자들의 실험들에서, 이 모델은 절단된 텍스트에 대해 동작하는 더 간단한 BERT-바닐라(짧은) 모델보다 (4.2%만큼) 현저히 더 나쁘고, 그 차이는 통계적으로 유의미하다. 집계 계층들의 유효성에 대한 더 결정적인 증거를 획득하는 것은 문서들 및 구절들의 관련성이 절단된 문서로부터 예측하기 더 어려운 상이한 데이터 세트를 요구하는 것으로 여겨진다.
어휘 변환 모델들과의 실험들에서, 특히, 신경 모델 1과 토큰 임베딩 망(컨텍스트화된 것과 컨텍스트-없는 것 둘 다)을 결합하였다. 후자는 효율성 및 해석가능성에 대한 이점들을 갖는다는 것이 발견되었다. 그리고, 신경 모델 1은 고가의 인덱스-시간 사전 계산 없이 CPU 상에서 효율적으로(GPU 상의 BERT보다 103배 더 빠르게) 실행될 수 있는 "비-신경" 포맷으로 희소화되고 내보내질 수 있는 유일한 신경 모델이다. 이 접근법의 유효성은 예를 들어, 조건부 변환 확률들의 더 나은 파라미터화를 설계함으로써 추가로 개선될 수 있다. 해석가능한 신경 모델 1 계층은 또한 긴 문서들의 효과적인 순위화에 유용할 수 있지만, 결론적인 실험들은 MS MARCO와 상이한 특성들을 갖는 데이터 세트들을 필요로 한다. 비-파라미터 모델 1은 질의들 및 문서들이 매우 상이한 길이들을 가질 때에도 EM을 통해 훈련될 수 있지만, 컨텍스트-없는 신경 모델 1을 훈련하고 이를 비-파라미터 포맷으로 내보내는 것에 의해 훨씬 더 나은 결과들이 획득되었다는 것을 알 수 있다.
본 개시내용은 검색 결과들을 순위화하기 위해 특수 신경망 계층, 즉 어휘 변환 모델(예를 들어, IBM 모델 1)을 이용하기 위한 메커니즘을 제시한다. 질의 및 문서는 먼저 컨텍스트-없는 또는 컨텍스트 신경망(예를 들어, BERT)을 이용하여 인코딩된다. 그 결과, 질의 및 문서 토큰들은 벡터들의 시퀀스들에 의해 표현된다. 그 후, 특수 어휘 신경 변환 계층은 이러한 벡터들을 입수하고 질의-용어 확률과 유사한 유사도 스코어의 행렬을 생성한다. 이러한 스코어들은 그 후 간단한 합의 곱 공식을 이용하여 해석가능한 방식으로 결합된다. 컨텍스트화된 망이 이용될 때, 효율적인 실행은 종종 그래픽 처리 유닛(GPU) 또는 텐서 처리 유닛(TPU)과 같은 특수 가속기를 필요로 한다. 그러나, 컨텍스트-없는 인코딩 망의 경우, 메커니즘은 질의-문서 토큰 확률 행렬의 사전 계산 및 희소화에 의존한다. 이것은 더 낮은 성능 시스템, 프로세서, 또는 제어기 상에서 효율적인 실행을 허용한다.
전형적인 텍스트 검색 시스템은 학습된 모델을 이용하여 추가로 재순위화될 수 있는, 후보들의 초기 리스트를 생성하기 위해 간단한 용어/토큰-매칭 기술들에 의존한다. 따라서, 검색 성능은 어휘 갭 문제로 알려진, 질의와 문서 용어들 간의 불일치에 의해 악영향을 받는다. 어휘 갭을 감소시키고 검색 유효성을 개선하기 위해, IBM 모델 1로 불리는 어휘 변환 모델이 도입되었다. IBM 모델 1은 질의들로서 질문들을 이용하여 영어 질문-답변(QA) 아카이브들에서 답변들을 찾는데 뿐만 아니라 언어간 검색에 적용될 때 강력한 성능을 갖는다. 모델 1은 질의 용어들과 관련 문서들에서의 용어들 간의 유용한 연관성들을 찾는 작업을 단순화하는 실질적으로 유사한 길이들의 질문-문서 쌍들에 대해 훈련된다. 이러한 모델들은 비-파라미터 모델을 생성하는 전통적인 기대-최대화(EM) 알고리즘의 변형을 주로 이용하여 변환 작업에서 훈련되었다. 본 개시내용의 핵심 단계는 신경망으로 조건부 변환 확률들을 파라미터화하고 변환보다는 순위화 작업에서 모델을 종단간 학습시키는 것을 포함한다.
이하에서는, 포괄적인 것이 아니고 또한 본 개시내용의 범위를 제한하려는 의도가 아니라, 본 개시내용 전체에 걸쳐 더 상세히 논의되는 개념들의 기본적인 설명을 제시하기 위한 개념들을 간략화된 형태로 설명한다.
본 개시내용은 공중 및 사설 망들(예를 들어, 월드 와이드 웹)을 통한 모바일 및 데스크톱 검색들을 포함하지만 이들로 제한되지 않는 다양한 도메인들에 이용될 수 있는 다단계 검색 시스템을 제공한다. 이러한 시스템에서, 문서들은 점점 더 복잡하고 정확한 순위화 구성요소들을 이용하여 유망하지 않은 후보 문서들을 폐기하는 일련의 "펀넬(funnel)"을 통해 흐른다. 질의 및 문서 둘 다는 토큰들의 시퀀스에 의해 표현될 수 있는 텍스트 조각들이다. 토큰들은 완전한 단어들, 렉심들(렘마들), 단어 단편들, 또는 다단어 구들일 수 있다. 텍스트 조각을 토큰들로 분할하는 것이 토큰화(tokenization) 또는 토큰화하기(tokenizing)라고 불린다.
검색 시스템에서, 신경 순위화 모델은 관련성 스코어들의 추정치들을 생성하기 위해 질의들 및 문서들에 적용될 수 있다. 이러한 모델들은 더 복잡하고 고가이며, 따라서, 이들은 검색 파이프라인들의 나중 단계들에서 이용된다. 신경 순위화 모델들로 계산되는 이러한 추정치들은 매우 정확할 수 있지만 해석하기 어렵다. 본 개시내용은, 효율성 및 유효성 이점들과 함께, BERT와 같은 최신의 신경망들에 적용될 수 있는 해석가능한 신경망 계층, 신경 어휘 변환 모델(예를 들어, IBM 모델 1)을 제시한다.
특히, 컨텍스트 독립적 어휘 변환 모델은 (질의 및 문서 토큰들의 모든 쌍들에 대해서와 같이) 완전히 사전 계산되고, 희소화되며, 더 낮은 성능의 시스템, 프로세서, 또는 제어기(예컨대, GPU 및 TPU와 같은 고가의 가속기들을 필요로 하지 않는 CPU) 상에서 효율적으로 실행될 수 있다. 이러한 모델이 최종 순위화에 이용되기에는 열등한 정확도를 갖지만, 이는 여전히 보다 이른 단계 검색을 향상시킬 수 있다.
도 1은 탐색 검색 시스템(100)의 블록도이다. 이것은 간략화된 설명이고 모든 구현 상세들을 포함하지 않는다. 탐색 검색 시스템(100)은 다양한 매체들(예를 들어, RAM, 자기, 광학, 및 솔리드 스테이트 저장 디바이스들)을 이용하여, 다양한 포맷들(예를 들어, 텍스트, rtf(rich text format), 마이크로소프트 워드(Microsoft Word), PDF 등)로 저장될 수 있는 문서들의 컬렉션(102)에 간단히 액세스하도록 의도된다. 이것은 또한 상이한 형태들로 조직화될 수 있고, 파일 시스템에의 파일들로서, 하이퍼링크된 문서들의 컬렉션으로서, 또는 관계형 데이터베이스 표 내의 내부 필드들로서 저장될 수 있다. 컬렉션은 전체적으로 또는 부분적으로 처리될 수 있다. 특히, 문서 발견 엔진(104)(예를 들어, 웹 크롤러(Web Crawler) 또는 데이터베이스 질의 애플리케이션)은 인덱스에 포함될 가치가 있는 문서들을 발견하는데 먼저 이용된다. 텍스트 처리 엔진(106)은 문서 포맷들을 인식하고, 이들에 (전형적으로) 고유 식별자들을 할당하고, 텍스트 데이터를 추출한다. 문서들은 그 후 (1) 그 식별자를 이용하여 문서 텍스트의 빠른 검색을 허용하는 직접(또는 포워드) 인덱스(110) 및 (2) 하나 이상의 토큰을 포함하는 문서들의 빠른 검색을 허용하는 역(또는 반전) 인덱스(108)에 저장된다.
사용자가 사용자 디바이스(예컨대, 데스크톱, 랩톱, 스마트폰 등)(112)를 이용하여 질의(즉, 인덱싱된 문서들을 찾기 위한 탐색 요청)를 제출할 때, 사용자는 다단계 검색 파이프라인을 이용한다. 이미지가 키보드 및 디스플레이를 보여주더라도, 사용자 디바이스(112)에의 입력은 터치 스크린, 키보드, 마이크로폰, 카메라, 스캐너, 이미지 파일, 또는 다른 파일 또는 입력 디바이스를 포함할 수 있다. 또한, 사용자 디바이스(112)에의 출력은 디스플레이, 프로젝터, 스피커, 또는 파일 또는 다른 출력 디바이스(200)를 포함할 수 있다. 제1 단계는 비교적 큰 후보 문서 세트(116)를 페치하는 경량 질의 엔진(114)을 이용한다. 이를 위해, 이것은 간단한 토큰/용어 매칭 기술들에 의존하고 이전에 생성된 역 인덱스(108)를 이용한다. 후속 단계들은 원래의 후보 세트를 정밀화하기 위해 0개 이상의 비-신경 경량 순위화 구성요소(118)를 이용한다. 이러한 리랭커들은 상당히 효율적일 수 있고, 이들은 CPU 상에서 실행되며, 즉 GPU 또는 TPU와 같은 고가의 가속기들의 신경망의 이용을 필요로 하지 않는다. 그리고, 신경망 랭커들(120)이 전형적으로 계산상 고가이기 때문에, 이들은 검색 파이프라인의 마지막 단계들에서만 이용된다.
도 2는 순위화 신경망(200)의 흐름도이다. 질의 Q(202) 및 문서 D(204)의 쌍에 관련성 스코어를 할당하는 문제를 고려한다. 질의(202) 및 문서(204) 둘 다는 토큰들의 시퀀스에 의해 표현될 수 있는 텍스트 조각들이다. 토큰들은 완전한 단어들, 렉심들(렘마들), 단어 단편들, 또는 다단어 구들일 수 있다. 질의 토큰들은 q(가능하게는 인덱스를 가짐)로 표시되고, 문서 토큰들은 d(가능하게는 인덱스를 가짐)로 표시된다. 문서 D의 길이는 토큰들의 수로 측정되고 |D|로 표시된다.
신경망들이 텍스트 데이터에 대해 직접 동작할 수 없기 때문에, 토큰들의 시퀀스 t 1 t 2 ... t n 은 먼저 하나 이상의 구성요소로 이루어지는 임베딩 신경망에 의해 d차원 임베딩 벡터들의 시퀀스들 w 1 w 2 ... w n 으로 변환된다.
전형적으로, 이러한 망은 먼저 질의 토큰들에 대한 컨텍스트 독립적 임베딩들(206) 및 문서 토큰들에 대한 컨텍스트 독립적 임베딩들(208)을 생성한다. 동일한 질의(또는 문서 토큰)에 대한 컨텍스트 독립적 임베딩들은 그 위치 및 주변 토큰들에 관계없이 항상 동일하다. 그러나, 이들은 질의들과 문서들 간에 상이할 수 있다.
컨텍스트 독립적 임베딩들(206 및 208)을 생성한 후에, 변환기 모델(예를 들어, BERT)과 같은 임의적인 신경망(210)은 컨텍스트화된 질의 토큰 임베딩들(212) 및 컨텍스트화된 문서 토큰 임베딩(216)을 생성한다. 이들 임베딩들은 컨텍스트에 의존하고, 동일한 컨텍스트들에서 정확한 토큰들을 갖지 않는 한 결코 동일하지 않다.
컨텍스트화된 토큰 임베딩들에 부가하여, 망(210)은 문서들의 보다 큰 부분들을 나타내는 하나 이상의 (풀링) 임베딩(214)을 생성할 수 있다. 예를 들어, 512개의 토큰의 모든 시퀀스에 대해, BERT는 전체 시퀀스를 나타내는 소위 클래스 토큰 [CLS]에 대한 임베딩 벡터를 생성한다.
임의적인 컨텍스트화 망(210)이 이용되지 않을 때, 212는 206과 동일하고, 216은 208과 동일하다.
마지막으로, 임베딩들(212, 214 및 216)(또는 임의적인 신경 컨텍스트화 계층들(210)이 이용가능하지 않은 순간의 임베딩들(206 및 208))은 상호작용 신경망에 공급되고, 이는 최종 질의-문서 순위 스코어(220)를 생성한다. 상호작용 신경망(218)은 다중-계층 상호작용 신경망(218)일 수 있다.
훈련: 신경망을 훈련하기 위한 하나의 접근법은 주어진 질의에 각각 관련되고 관련되지 않은 포지티브 및 네거티브 문서들의 쌍들(또는 리스트들)을 컴파일링하고, 관련 문서들에 대한 순위 스코어들을 관련되지 않은 문서들에 대한 스코어들보다 높게 시행하는 것을 수반한다. 이것은 손실 함수라고 불리는 특수 비교 함수에 스코어들(또는 그 차이들)을 공급하고, 다양한 최적화 접근법들을 이용하여 손실을 최소화함으로써 행해진다. 손실 함수는 관련되지 않은 문서가 관련된 문서보다 높게 순위화될 때 높도록 의도된다.
본 개시내용에 제시된 핵심 양태는, 병렬 코퍼스를 이용하여, 변환 작업에서 신경 어휘 변환 모델들을 훈련하는 시스템들과는 달리, 이 방법은 시스템들이 단일 언어 순위화 작업들에서 모델들을 훈련하는 것을 허용한다는 것이다. 병렬 코퍼스는 상이한 언어들의 쌍을 이룬 짧은 문서들(주로 단일 문장 문서들)의 세트이다.
특수 신경망 계층: 도 3은 질의(302) 및 문서(304)를 수신하고, 컨텍스트 독립적 임베딩들(306 및 308)을 생성하는 신경 랭커 아키텍처(300)의 흐름도이며, 이러한 임베딩들은 컨텍스트화 신경망(310)을 통해 임의적으로 전달된다. 임베딩들(312 및 314)은 이후 집계 구성요소들(316 및 318)에 의해 처리되어 최종 순위 스코어(320)를 생성한다.
본 개시내용에 제시된 다른 핵심 양태는 도 2의 상호작용 계층(218)을 부분적으로 해석가능한 집계 구성요소들(316 및 318)로 대체하는 것이다.
먼저, 신경망(316)은 질의 및 문서 토큰들의 모든 쌍들에 대한 확률-유사 변환 스코어들 T(q|d)를 생성한다. 이하에서 설명되는 바와 같이, T(q|d)는 신경망을 통해 계산된다. 이어서, 이러한 값들은 모든 개별 토큰들의 스코어들을 곱하는 간단한 합의 곱 공식(318)을 이용하여 결합된다:
Figure pat00019
수학식 5에서, P(d|D)는 문서 임베딩이 문서에 의해 "생성"될 확률을 나타낸다. 컨텍스트 독립적 임베딩들의 경우, 이는 최대 가능성 추정치, 즉 용어 발생의 정규화된 빈도수이다. 컨텍스트화된 임베딩들의 경우, 이는 1/|D|로 설정된다.
신경망을 이용한 어휘 변환 확률들 T(q|d)의 계산으로 돌아간다. 본 개시내용의 다른 핵심 단계는 신경망으로 조건부 변환 확률들을 파라미터화하는 것을 포함한다. 이는 다음과 같이 진행된다:
먼저, 시스템은 질의 및 문서를 토큰화한다.
다음으로, 시스템은 도 3의 임베딩 망을 이용하여 질의 토큰들(w q 로 표시됨)에 대한 임베딩들(312) 및 문서 토큰들(w d 로 표시됨)에 대한 임베딩들(314)을 생성한다. 이 접근법은 컨텍스트-없는 및 컨텍스트화된 임베딩 신경망들 둘 다에서 작동한다.
마지막으로, 질의 및 문서 토큰들에 대한 임베딩들을 이용하여, 시스템은 피드포워드 신경망을 이용하여 변환 확률들 T(q | d) 를 계산한다. 이를 행하기 위한 복수의 방식들이 있다. 일 구현에서, 시스템은 다음과 같이 진행된다:
1.
Figure pat00020
이다.
2.
Figure pat00021
이다.
3.
Figure pat00022
이다.
4. F i , P d , P q 는 완전히 연결된 계층들이다.
5. σ(x)는 시그모이드 활성화 함수이다.
6. tanh(x)는 tanh 활성화 함수이다.
7. layer-norm은 계층 정규화이다.
8. [x, y]는 벡터 연접을 나타낸다.
9.
Figure pat00023
는 벡터들 간의 하다마르 곱을 나타낸다.
이것은 단계들(406 및 408)에서 계산된 토큰 임베딩들에 기반하여 문서 토큰들이 주어진 경우 질의 토큰들의 조건부 변환 확률들을 신경 조건부 변환 확률들의 망을 통해 계산하는 방법이다.
이제 질의-문서 토큰 확률 행렬의 사전 계산 및 희소화(신경 내보내기)를 고려한다. 도 3의 순위화 시스템이 신경 어휘 변환 계층을 컨텍스트화된 임베딩들과 결합할 때, 본 개시내용에서 설명된 바와 같이, 전체 시스템은 최신의 성능을 갖는다. 그러나, 이는 또한 계산 비용이 많이 들 수 있다. 컨텍스트-없는 임베딩들을 이용하면, 성능의 상당한 저하로 이어진다. 그러나, 결과적인 모델은 (1) 희소화되고 사전 계산되며, (2) 간단한 TF*IDF 모델들(예를 들어, BM25)과 결합되고 CPU 상에서 효율적으로 실행되어 도 1의 초기 단계 순위화 구성요소(118)를 개선할 수 있다.
도 4는 컨텍스트 독립적 토큰 임베딩 망이 이용되는 모델 사전 계산 및 희소화(400)의 흐름도이다. 먼저, 프로세서 또는 제어기는 질의(402)와 문서 토큰들(404)의 모든 빈번한 조합들에 대해 임베딩들(406 및 408)을 생성한다. 그 후, 제어기 또는 프로세서는 모든 가능한 쌍별 변환 확률들/스코어들을 계산하기 위해 컨텍스트 독립적 모델 T(q|d)(예를 들어, 신경망을 이용하는 어휘 변환 확률들의 계산)를 이용한다.
단계(410)에서, 프로세서 또는 제어기는 신경 조건부 변환 확률들의 망을 통해, 단계들(406 및 408)에서 계산된 토큰 임베딩들에 기반하여 문서 토큰들이 주어진 경우 질의 토큰들의 조건부 변환 확률들을 계산한다.
단계(410)의 계산의 결과는 단계(412)에서 저장될 수 있는 밀집 질의-문서 토큰 변환 확률 행렬이다. 예를 들어, 단계(412)에서, GPU로부터의 단계(410)의 출력은 CPU 메모리에 저장된다.
희소화 단계(416)는 경험적으로 선택된 임계치 미만의 모든 스코어들을 폐기한다. 본 개시내용에서 설명되는 바와 같이, 이것은 CPU 상에서 수학식 (1)을 효율적으로 계산하는 것을 허용한다. 임계치의 예는 하나의 토큰이 다른 토큰에 대한 매치인 1000분의 1(0.1% 또는 0.001), 0.2%, 0.5%, 0.75%, 1% 또는 2%의 확률을 포함한다. 그 결과는 희소 질의-문서 토큰 변환 확률 행렬(418)이다.
예시적인 머신 아키텍처 및 머신 판독가능한 매체이다. 도 5는 시스템들을 구현하거나 본 명세서에 개시된 방법들을 실행하기에 적합한 전자 컴퓨팅 시스템의 블록도이다. 도 5의 머신은 위의 개념들의 구현에 적합한 독립형 디바이스로서 도시되어 있다. 전술한 서버 양태들의 경우, 데이터 센터, 클라우드 아키텍처의 일부 등에서 동작하는 복수의 이러한 머신이 이용될 수 있다. 서버 양태들에서, 예시된 기능들 및 디바이스들 모두가 이용되는 것은 아니다. 예를 들어, 사용자가 서버 및/또는 클라우드 아키텍처들과 상호작용하는데 이용하는 시스템, 디바이스 등은 스크린, 터치 스크린 입력 등을 가질 수 있는 반면, 서버들은 흔히 스크린들, 터치 스크린들, 카메라들 등을 갖지 않고 통상적으로 적절한 입력 및 출력 양태들을 갖는 접속된 시스템들을 통해 사용자들과 상호작용한다. 따라서, 이하의 아키텍처는 복수의 유형의 디바이스 및 머신을 포괄하는 것으로 간주되어야 하고, 그 폼 팩터 및 목적에 따라 임의의 특정한 디바이스 또는 머신에는 다양한 양태들이 존재하거나 존재하지 않을 수 있다(예를 들어, 서버들에는 카메라들이 거의 없는 반면, 웨어러블들은 자기 디스크들을 거의 포함하지 않는다). 그러나, 도 5의 예시적인 설명은, 관련 기술분야의 통상의 기술자가, 이용된 특정한 디바이스, 머신 등에 대한 예시된 실시예의 적절한 수정과 함께, 하드웨어 및 소프트웨어의 적절한 조합으로 전술한 실시예들을 어떻게 구현할지를 결정하는 것을 허용하기에 적합하다.
단일 머신만이 예시되어 있지만, "머신"이라는 용어는 또한 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행하기 위해 명령어들의 세트(또는 복수의 세트)를 개별적으로 또는 공동으로 실행하는 머신들의 임의의 컬렉션을 포함하는 것으로 간주되어야 한다.
머신(500)의 예는, 적어도 하나의 프로세서(502)(예를 들어, 제어기, 마이크로제어기, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 텐서 처리 유닛(TPU), 진보된 처리 유닛(APU), 또는 이들의 조합들), 하나 이상의 메모리, 예컨대 주 메모리(504), 정적 메모리(506), 또는 링크(508)를 통해 서로 통신하는 다른 유형들의 메모리를 포함한다. 링크(508)는 버스 또는 다른 유형의 접속 채널일 수 있다. 머신(500)은, 임의의 유형의 디스플레이를 포함하는 그래픽 디스플레이 유닛(510) 등의 추가의 임의적인 양태들을 포함할 수 있다. 머신(500)은 또한, 영숫자 입력 디바이스(512)(예를 들어, 키보드, 터치 스크린 등), 사용자 인터페이스(UI) 네비게이션 디바이스(514)(예를 들어, 마우스, 트랙볼, 터치 디바이스 등), 저장 유닛(516)(예를 들어, 디스크 드라이브 또는 다른 저장 디바이스(들)), 신호 생성 디바이스(518)(예를 들어, 스피커), 센서(들)(521)(예를 들어, 전역 위치확인 센서, 가속도계(들), 마이크로폰(들), 카메라(들) 등), 출력 제어기(528)(예를 들어, 범용 직렬 버스(USB), 근거리 통신(NFC), 적외선(IR), 직렬/병렬 버스 등의 하나 이상의 다른 디바이스와 접속 및/또는 통신하기 위한 유선 또는 무선 접속), 및 하나 이상의 망(526)에 접속하거나 그리고/또는 이를 통해 통신하기 위한 망 인터페이스 디바이스(520)(예를 들어, 유선 및/또는 무선) 등의 다른 임의적인 양태들을 포함할 수 있다.
다양한 메모리들(즉, 504, 506 및/또는 프로세서(들)(502)의 메모리) 및/또는 저장 유닛(516)은 본 명세서에 설명된 방법론들 또는 기능들 중 임의의 하나 이상을 구현하거나 이에 의해 이용되는 명령어들 및 데이터 구조들(예를 들어, 소프트웨어)(524)의 하나 이상의 세트를 저장할 수 있다. 이러한 명령어들은, 프로세서(들)(502)에 의해 실행될 때, 다양한 동작들이 개시된 실시예들을 구현하게 한다.
본 명세서에서 사용되는 바와 같이, "머신-저장 매체", "디바이스-저장 매체", "컴퓨터-저장 매체"라는 용어들은 동일한 것을 의미하며, 본 개시내용에서 상호교환가능하게 사용될 수 있다. 이러한 용어들은 실행가능한 명령어들 및/또는 데이터를 저장하는 단일 또는 복수의 저장 디바이스 및/또는 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 지칭한다. 따라서, 이러한 용어들은 솔리드 스테이트 메모리들과 같은 저장 디바이스들, 및 프로세서들의 내부 또는 외부의 메모리를 포함하는 광학 및 자기 매체들을 포함하는 것으로 간주되어야 한다. 머신-저장 매체, 컴퓨터-저장 매체 및/또는 디바이스-저장 매체의 특정 예들은, 예로서, 반도체 메모리 디바이스들, 예를 들어, EPROM(erasable programmable read-only memory), EEPROM(electrically erasable programmable read-only memory), FPGA, 및 플래시 메모리 디바이스들을 포함하는 비휘발성 메모리; 내부 하드 디스크들 및 이동식 디스크들과 같은 자기 디스크들; 광자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함한다. 머신-저장 매체, 컴퓨터-저장 매체, 및 디바이스-저장 매체라는 용어들은 반송파들, 변조된 데이터 신호들, 및 다른 이러한 일시적 매체를 구체적으로 그리고 명백하게 배제하며, 이들 중 적어도 일부는 이하에서 논의되는 "신호 매체"라는 용어 하에 커버된다.
용어들 "머신 판독가능한 매체", "컴퓨터 판독가능한 매체" 및 "디바이스 판독가능한 매체"는 동일한 것을 의미하고, 본 개시내용에서 상호교환가능하게 사용될 수 있다. 이러한 용어들은 머신-저장 매체 및 신호 매체 둘 다를 포함하는 것으로 정의된다. 따라서, 이러한 용어들은 저장 디바이스들/매체들 및 반송파들/변조된 데이터 신호들 둘 다를 포함한다.
본 명세서에 설명된 알고리즘들 및/또는 방법론들을 구현하는 프로그램 코드는 여러 상이한 형태들로 프로그램 제품으로서 개별적으로 또는 집합적으로 분배될 수 있다. 프로그램 코드는 프로세서로 하여금 하나 이상의 실시예의 양태들을 수행하게 하기 위한 컴퓨터 판독가능한 프로그램 명령어들을 갖는 컴퓨터 판독가능한 저장 매체를 이용하여 분배될 수 있다. 본질적으로 비일시적인 컴퓨터 판독가능한 저장 매체는 컴퓨터 판독가능한 명령어들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 및 이동식 및 비이동식 유형의 매체를 포함할 수 있다. 컴퓨터 판독가능한 저장 매체는 RAM, ROM, EPROM(erasable programmable read-only memory), EEPROM(electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 솔리드 스테이트 메모리 기술, 휴대용 CD-ROM(compact disc read-only memory), 또는 다른 광학 저장소, 자기 카세트들, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 디바이스들, 또는 원하는 정보를 저장하는데 이용될 수 있고 컴퓨터에 의해 판독될 수 있는 임의의 다른 매체를 추가로 포함할 수 있다. 컴퓨터 판독가능한 프로그램 명령어들은 컴퓨터 판독가능한 저장 매체로부터 컴퓨터, 다른 유형의 프로그래밍가능한 데이터 처리 장치, 또는 다른 디바이스로 다운로드되거나 망을 통해 외부 컴퓨터 또는 외부 저장 디바이스로 다운로드될 수 있다.
컴퓨터 판독가능한 매체에 저장된 컴퓨터 판독가능한 프로그램 명령어들은 컴퓨터, 다른 유형들의 프로그래밍가능한 데이터 처리 장치, 또는 다른 디바이스들이 특정 방식으로 기능하도록 지시하는데 이용될 수 있으며, 따라서 컴퓨터 판독가능한 매체에 저장된 명령어들은 흐름도들 또는 도면들에서 지정된 기능들, 작용들, 및/또는 동작들을 구현하는 명령어들을 포함하는 제조 물품을 생성한다. 특정 대안 실시예들에서, 흐름도들 및 도면들에서 지정된 기능들, 작용들, 및/또는 동작들은 하나 이상의 실시예에 따라 재순서화되고, 직렬로 처리되고/되거나, 동시에 처리될 수 있다. 또한, 흐름도들 및/또는 도면들 중 임의의 것은 하나 이상의 실시예에 따라 도시된 것들보다 더 많거나 더 적은 노드들 또는 블록들을 포함할 수 있다.
본 발명의 전부가 다양한 실시예들의 설명에 의해 예시되었고, 이들 실시예들이 상당히 상세히 설명되었지만, 본 출원인은 첨부된 청구항들의 범위를 이러한 상세로 한정하거나 임의의 방식으로 제한하려는 의도는 아니다. 추가적인 이점들 및 수정들은 관련 기술분야의 통상의 기술자에게 쉽게 나타날 것이다. 따라서, 본 발명은 그 더 넓은 양태들에서, 도시되고 설명된 특정 상세들, 대표적인 장치 및 방법, 및 예시적인 예들로 제한되지 않는다. 따라서, 본 발명의 일반적인 개념의 사상 또는 범위로부터 벗어나지 않고 이러한 상세들로부터 이탈들이 이루어질 수 있다.

Claims (19)

  1. 언어 시스템으로서,
    제어기를 포함하며, 상기 제어기는,
    질의 및 문서들을 수신하고;
    상기 질의를 질의 토큰들의 시퀀스로 토큰화하고;
    상기 문서들 각각을 문서 토큰들의 시퀀스로 토큰화하고;
    상기 질의 토큰들을 질의 임베딩들(query embeddings)로 변환하고;
    상기 문서 토큰들을 문서 임베딩들로 변환하고;
    상기 질의 및 문서 임베딩들 각각에 대한 임베딩 쌍들의 행렬을 생성하고;
    상기 임베딩 쌍들의 행렬 내의 각각의 엔트리에 대한 신경 조건부 변환 확률 망(neural conditional translation probability network)을 통해, 유사도 스코어를 계산하고 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -;
    각각의 질의에 대한 상기 유사도 스코어들의 합의 곱(product-of-sum) 집계를 통해 상기 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하고;
    상기 문서들의 상기 순위 스코어에 따라 상기 문서들을 순서화하고;
    상기 문서 및 상기 문서의 연관된 순위 스코어를 출력하도록 구성되는, 언어 시스템.
  2. 제1항에 있어서,
    상기 신경망은 단일 언어로(mono-lingually) 훈련된 것인, 언어 시스템.
  3. 제1항에 있어서,
    상기 질의 임베딩들 또는 문서 임베딩들은 변환기 모델을 이용하여 생성되는, 언어 시스템.
  4. 제1항에 있어서,
    상기 합의 곱 집계는 비-컨텍스트화되고,
    Figure pat00024
    로서 표현되며,
    여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고, embed q (q)는 상기 질의 토큰의 질의 임베딩들이고, embed d (d)는 문서 토큰 i의 문서 임베딩들이고, T는 조건부 변환이며, P는 상기 순위 스코어인, 언어 시스템.
  5. 제1항에 있어서,
    상기 합의 곱 집계는 컨텍스트화되고,
    Figure pat00025
    로서 표현되며,
    여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고, embed q (q,d i )는 상기 질의 토큰의 컨텍스트화된 임베딩이고, embed d (q,d i )는 문서 토큰 d i 의 컨텍스트화된 임베딩이고, T는 조건부 변환이며, P는 상기 순위 스코어인, 언어 시스템.
  6. 제1항에 있어서,
    상기 제어기는 1개 초과의 제어기인, 언어 시스템.
  7. 제1항에 있어서,
    상기 질의는 마이크로폰을 통해 입력되는, 언어 시스템.
  8. 제7항에 있어서,
    상기 출력은 스피커를 통해 이루어지는, 언어 시스템.
  9. 언어 시스템으로서,
    제어기를 포함하며, 상기 제어기는,
    질의 및 문서를 수신하고;
    상기 질의를 질의 토큰들의 시퀀스로 토큰화하고;
    상기 문서를 문서 토큰들의 시퀀스로 토큰화하고;
    상기 질의 및 문서 토큰들 각각에 대한 토큰 쌍들의 행렬을 생성하고;
    상기 토큰 쌍들의 행렬 내의 각각의 엔트리에 대해, 신경 조건부 변환 확률 망에 의해 생성된 사전 계산된 유사도 스코어를 검색하고 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -;
    각각의 질의에 대한 상기 유사도 스코어들 각각의 합의 곱 집계를 통해 상기 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하고;
    상기 문서 및 상기 문서의 연관된 순위 스코어를 출력하도록 구성되는, 언어 시스템.
  10. 제9항에 있어서,
    상기 합의 곱 집계는
    Figure pat00026
    이며,
    여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고,
    Figure pat00027
    는 질의 토큰 q가 문서 토큰 d와 정렬되는 사전 계산된 조건부 변환 확률이고,
    Figure pat00028
    는 상기 순위 스코어이며,
    Figure pat00029
    는 토큰 d가 문서 D에 있는 것의 발생 확률의 최대 가능성 추정치인, 언어 시스템.
  11. 제9항에 있어서,
    상기 신경망은 단일 언어로 훈련되는, 언어 시스템.
  12. 제9항에 있어서,
    상기 신경 조건부 변환 확률 망은 질의 토큰들 또는 문서 토큰들에 대한 컨텍스트 독립적 임베딩들을 이용하는, 언어 시스템.
  13. 제12항에 있어서,
    상기 신경 조건부 변환 확률 망에 의해 생성된 밀집 질의-문서 토큰 변환 확률 행렬은 임계치 미만의 확률들의 폐기를 통해 희소화되는, 언어 시스템.
  14. 제12항에 있어서,
    상기 질의는 마이크로폰을 통해 입력되고, 상기 출력은 스피커를 통해 이루어지는, 언어 시스템.
  15. 비일시적 컴퓨터 판독가능한 매체로서,
    컴퓨팅 디바이스의 프로세서에 의해 실행될 때, 상기 컴퓨팅 디바이스로 하여금 동작들을 수행하게 하는, 신경 조건부 변환 확률 망 순위화를 위한 명령어들을 포함하고, 상기 동작들은,
    질의 및 문서들을 수신하는 것;
    상기 질의를 질의 토큰들의 시퀀스로 토큰화하는 것;
    각각의 문서에 대해, 상기 문서들을 문서 토큰들의 시퀀스로 토큰화하는 것;
    상기 질의 토큰들을 질의 임베딩들로 변환하는 것;
    상기 문서 토큰들을 문서 임베딩들로 변환하는 것;
    상기 질의 및 문서 임베딩들 각각에 대한 임베딩 쌍들의 행렬을 생성하는 것;
    상기 임베딩 쌍들의 행렬 내의 각각의 엔트리에 대한 신경 조건부 변환 확률 망을 통해, 유사도 스코어를 계산하는 것 - 신경망은 쌍을 이룬 질의들 및 각각의 관련 문서들의 코퍼스를 이용하여 순위화 작업에서 훈련되었음 -;
    각각의 질의에 대한 상기 유사도 스코어들 각각의 합의 곱 집계를 통해 상기 각각의 질의에 대해 각각의 문서에 대한 순위 스코어를 생성하는 것; 및
    상기 문서들의 상기 순위 스코어에 따라 상기 문서들의 순서를 출력하는 것
    을 포함하는, 비일시적 컴퓨터 판독가능한 매체.
  16. 제15항에 있어서,
    상기 신경 조건부 변환 확률 망은 단일 언어로 훈련된 것인, 비일시적 컴퓨터 판독가능한 매체.
  17. 제15항에 있어서,
    상기 질의 임베딩들 또는 문서 임베딩들은 변환기 모델을 이용하여 생성되는, 비일시적 컴퓨터 판독가능한 매체.
  18. 제15항에 있어서,
    상기 합의 곱 집계는 비-컨텍스트화되고,
    Figure pat00030
    로서 표현되며,
    여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고, embed q (q)는 상기 질의 토큰의 질의 임베딩들이고, embed d (d)는 문서 토큰 d i 의 문서 임베딩들이고, T는 조건부 변환이며, P는 상기 순위 스코어인, 비일시적 컴퓨터 판독가능한 매체.
  19. 제15항에 있어서,
    상기 합의 곱 집계는 컨텍스트화되고,
    Figure pat00031
    로서 표현되며,
    여기서, Q는 질의이고, D는 문서이고, q는 질의 토큰이고, d는 문서 토큰이고, embed q (q,d i )는 상기 질의 토큰의 컨텍스트화된 임베딩이고, embed d (q,d i )는 문서 토큰 d i 의 컨텍스트화된 임베딩이고, T는 조건부 변환이며, P는 상기 순위 스코어인, 비일시적 컴퓨터 판독가능한 매체.
KR1020220015257A 2021-02-08 2022-02-07 탐색, 검색 및 순위화를 위한 상호작용 계층 신경망 KR20220114495A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/169,931 2021-02-08
US17/169,931 US20220253447A1 (en) 2021-02-08 2021-02-08 Interaction layer neural network for search, retrieval, and ranking

Publications (1)

Publication Number Publication Date
KR20220114495A true KR20220114495A (ko) 2022-08-17

Family

ID=82493313

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220015257A KR20220114495A (ko) 2021-02-08 2022-02-07 탐색, 검색 및 순위화를 위한 상호작용 계층 신경망

Country Status (4)

Country Link
US (1) US20220253447A1 (ko)
KR (1) KR20220114495A (ko)
CN (1) CN114911892A (ko)
DE (1) DE102022201222A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230069763A (ko) * 2021-11-12 2023-05-19 서울대학교산학협력단 신경망 네트워크의 셀프 어텐션 연산을 가속하는 장치
US20230153542A1 (en) * 2021-11-15 2023-05-18 Salesforce.Com, Inc. Systems and methods for cross-lingual transfer in natural language processing
US20240126993A1 (en) * 2022-10-05 2024-04-18 Microsoft Technology Licensing, Llc Transformer-based text encoder for passage retrieval
US11861320B1 (en) 2023-02-27 2024-01-02 Casetext, Inc. Text reduction and analysis interface to a text generation modeling system
US11860914B1 (en) 2023-02-27 2024-01-02 Casetext, Inc. Natural language database generation and query system
US11861321B1 (en) 2023-06-29 2024-01-02 Casetext, Inc. Systems and methods for structure discovery and structure-based analysis in natural language processing models

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8401841B2 (en) * 2006-08-31 2013-03-19 Orcatec Llc Retrieval of documents using language models
WO2016103409A1 (ja) * 2014-12-25 2016-06-30 株式会社日立製作所 検索システム
CN104731777B (zh) * 2015-03-31 2019-02-01 网易有道信息技术(北京)有限公司 一种译文评价方法及装置
US11481560B2 (en) * 2017-12-01 2022-10-25 Nippon Telegraph And Telephone Corporation Information processing device, information processing method, and program
US11544259B2 (en) * 2018-11-29 2023-01-03 Koninklijke Philips N.V. CRF-based span prediction for fine machine learning comprehension
CN110059324B (zh) * 2019-04-26 2022-12-13 广州大学 基于依存信息监督的神经网络机器翻译方法及装置

Also Published As

Publication number Publication date
US20220253447A1 (en) 2022-08-11
CN114911892A (zh) 2022-08-16
DE102022201222A1 (de) 2022-08-11

Similar Documents

Publication Publication Date Title
Koroteev BERT: a review of applications in natural language processing and understanding
Yuan et al. One size does not fit all: Generating and evaluating variable number of keyphrases
US10614106B2 (en) Automated tool for question generation
Jung Semantic vector learning for natural language understanding
Dalvi et al. Understanding and improving morphological learning in the neural machine translation decoder
KR20220114495A (ko) 탐색, 검색 및 순위화를 위한 상호작용 계층 신경망
Yih et al. Semantic parsing for single-relation question answering
CN113239700A (zh) 改进bert的文本语义匹配设备、系统、方法及存储介质
CN111414481A (zh) 基于拼音和bert嵌入的中文语义匹配方法
Guo et al. MS-pointer network: abstractive text summary based on multi-head self-attention
CN114298055B (zh) 基于多级语义匹配的检索方法、装置、计算机设备和存储介质
Liu et al. A hybrid neural network BERT-cap based on pre-trained language model and capsule network for user intent classification
Jung et al. Learning to embed semantic correspondence for natural language understanding
Liu et al. Latent attribute based hierarchical decoder for neural machine translation
CN110781666A (zh) 基于生成式对抗网络的自然语言处理文本建模
CN111581365B (zh) 一种谓词抽取方法
Seilsepour et al. Self-supervised sentiment classification based on semantic similarity measures and contextual embedding using metaheuristic optimizer
Dereje et al. Sentence Level Amharic Word Sense Disambiguation
Bulfamante Generative enterprise search with extensible knowledge base using AI
Singh et al. Deep Learning based Abstractive Summarization for English Language
Liang et al. Named Entity Recognition Method Based on BERT-whitening and Dynamic Fusion Model
Feng et al. Geometric relationship between word and context representations
CN111767388B (zh) 一种候选池生成方法
Cakaloglu et al. MRNN: A multi-resolution neural network with duplex attention for document retrieval in the context of question answering
Guo et al. Long-form text matching with word vector clustering and graph convolution