文章目录
- 相关性
- 效率
- 系统
- 预训练
- word embedding
- transformers
- 2. 召回阶段
- 2.1 Sparse Retrieval Models
- 2.2 Dense Retrieval Models。
- 2.3 混合方式
- 3.re-rank阶段
- 4. 其他组件
- 4.1 在query理解上
- 4.2 在doc理解上:
- 未来工作
- 数据集
- 数据集中排行榜
信息检索中的花式预训练综述(Pre-training Methods in Information Retrieval)
Pre-training Methods in Information Retrieval
-
核心:相关性
- 传统检索模型
- Learning to Rank (LTR) 模型
- 神经网络检索模型
-
整体框架:效率问题
-
完整系统:其他
-
预训练模型
- 预训练:学文本表示或交互
- 微调适应下游任务:
- Full fine-tuning:使用下游任务的数据调整所有w
- Partial fine-tuning:freeze部分权重
- Freezing the weights:
相关性
- 传统检索模型
- 精确匹配信号,如BM25
- Learning to Rank (LTR) 模型
- Pointwise:只考虑一个单独的文档,将排序问题视作分类问题或者回归问题。
- Pairwise:考虑成对的文档,通过构造偏序对来优化模型
- Listwise:直接考虑排序整个文档列表中所有的文档,如LambdaMart 模型。
- 神经网络检索模型
- 基于表示:分别给查询和文档学习一个特征表示,然后内积等方式计算两个表示的距离做为相关性得分,如DSSM。
- 使用Transformer-based的模型分别学习文档和查询的表示,然后计算这两个表示的相似度来表示相关性等等。
- 基于交互:刻画文档和查询之间的交互,即先计算一个由相似度组成的交互矩阵,然后从交互矩阵中以不同方式提取出用利于分析相关性的特征
- 可以将文档和查询一起输入到Transformer-based模型上,以输出的[CLS]经过一个前馈网络获取相关度分数。
- 混合:即将以上基于表示的模型和基于交互的模型综合在一起。
- 基于表示:分别给查询和文档学习一个特征表示,然后内积等方式计算两个表示的距离做为相关性得分,如DSSM。
预训练:
- 基于表示:
- 使用Transformer-based的模型分别学习文档和查询的表示,然后计算这两个表示的相似度来表示相关性等等。- 基于交互:
- 可以将文档和查询一起输入到Transformer-based模型上,以输出的[CLS]经过一个前馈网络获取相关度分数。
- 基于交互:
效率
IR系统除了考虑质量(即相关度)以外还需要考虑效率。因此在框架上往往采取多阶段的结构,如上图所示,IR系统在框架上由多个re-rankers组件组成,即通常所说的召回,重排等等。
re-ranker组件数量:n
- Single-stage Retrieval (n=0):即没有多阶段操作,而是直接使用单个retriever返回的列表作为最终结果返回给用户。
- Two-stage Retrieval (n=1):相比于单阶段检索,现有的IR框架会额外使用一个re-ranker来提升排序列表的质量。在这一re-ranker阶段中,通常一会使用一些更精细的特征,如多模态特征,知识图谱特征等。
- Multi-stage Retrieval (n>=2):这种框架采用多个re-ranker,其中不同的re-ranker采用着不同的结构,可以分别利用不同的互补信息
预训练中:平衡效率和质量
- 第一阶段(召回)注重效率:双塔
- 基于BERT的dual-encoder获取文档和查询中融合了上下文的term embeddings
- re-ranking:用Bert获得更细粒度的信息
系统
其他问题:解决各种用户使用过程中容易出现的问题
-
用户所实际使用的查询query可能很短,很模糊,甚至有拼写错误
-
query parser:原始的查询转换成能够反映真实用户意图的查询表示
- 重写rewriting,
- 扩展expansion
-
doc parsser:paser的作用主要是用于处理文档和建立索引
IR系统
- symbolic search system逐渐过渡到neural search system。
- symbolic search system。规则–>倒排索引,精确匹配
- 即通过规则来构建parser来构建倒排索引,过滤文档并给文档排序。
- 优点:可以快速检索,结果具有可解释性,
- 缺点:是只能使用一种语言,且需要很高的维护成本。
- neural search system。语义匹配。
- 它使用文档的低维表示来计算相关性,即向量索引。
- 优点:更鲁棒,更易于扩展(增加文档不需要改变已经建好的索引,只需要新增向量),
- 缺点:可解释性差,同时需要大量的数据用于训练模型。
预训练
预训练的应用可以为不同的系统而定制
- 使用BERT作为backbone来做查询扩充
- 生成query suggestion,
- 预测词权重并替代倒排索引中用到的原始词权重
- 。。。
word embedding
- glove
- word2vec
- Paragraph2vec/ Doc2vec
- for IR改进:基于文档频率的负采样和基于文档长度的正则化( Ai et al. (2016a) and Ai et al. (2016b)
增强性能,具有更好的捕捉语义语法的能力
- 用于改进term-based方法中的加权方案(倒排)
- Zheng and Callan (2015) proposed DeepTR that leverages pre-trained word embeddings learned by the CBOW-based Word2vec.
- 在term加权的方法中,取代TF,以提高性能
- Zheng and Callan (2015) proposed DeepTR that leverages pre-trained word embeddings learned by the CBOW-based Word2vec.
- 用于估计doc和query匹配的等级
- Zamani et al. (2018b) proposed SNRM
- 为doc/query各学习一个稀疏的表达
- 基于词向量,捕捉语义关系
- 为doc/query各学习一个稀疏的表达
- Gysel et al.(2018) proposed the Neural Vector Space Model (NVSM)
- 为IR定制的预训练词向量
- doc/query:从0学习低维表达
- 计算相似度
- Zamani et al. (2018b) proposed SNRM
- query suggestion and document summarization
- Dehghani et al(2017a):word2vec获得输入,再 seq2seq:query生成新query
- Yin and Pei(2015) bulit a CNN-based summarizer, named DivSelect+CNNLM,
- extractive summarization
- CNNLM:预训练的,以捕捉更多内部语义特征
transformers
用以评估doc和query的相关性
- 以表示为中心:(双塔
- DPR:(以表示为中心)用一个基于bert的编码器学习文档的密集嵌入,查询用另一个独立的基于bert的编码器进行编码。然后,将这两个编码器的输出输入一个“相似度”函数,以获得相关性得分。
- 2 encoder
- DPR:(以表示为中心)用一个基于bert的编码器学习文档的密集嵌入,查询用另一个独立的基于bert的编码器进行编码。然后,将这两个编码器的输出输入一个“相似度”函数,以获得相关性得分。
- 以交互为中心(Cross)
- MonoBERT(以交互为中心)将查询和文档的连接作为输入,并将BERT的[CLS]向量输出提供给前馈网络,以获得给定查询和文档的相关性得分。
依据IR的阶段,transformer模型会取舍效率和性能
召回:
- ColBERT(Khattab和Zaharia,2020)使用基于bert的双编码器为查询和文档生成上下文化的术语嵌入,并且与其他基线模型相比,每个查询的执行速度要快两个数量级。
- CEDR(MacAvaney,2019年)利用BERT的上下文化词嵌入( contextualized word
embeddings of BERT来)构建一个相似性矩阵,然后输入现有的以交互为重点的神经排序模型,如DRMM和KNRM。[CLS]矢量也被纳入到CEDR中,以增强模型的信号
系统:“Query parser”, “Doc Parser & Encoder”, and “Retrieval and Rerank”
- BERT-QE (Zheng et al., 2020) leverages BERT as the backbone network to expand queries
- MeshBART (Chen and Lee, 2020) leverages user behavioral patterns such as clicks for generative query suggestion in the “Query Parser” component.
- **DeepCT(**Dai和Callan,2019a)将BERT学习到的上下文嵌入映射到项权值。然后利用预测的项权值替换反向索引中的原始TF字段
- Doc Parser & Encoder
2. 召回阶段
参见【搜索排序】召回综述Semantic Models for the First-Stage Retrieval: A Comprehensive Review
-
Sparse Retrieval Models:通过获得刻画语义的稀疏文档表示并建立倒排索引来提升检索效率。
神经网络+term-based方法 -
Dense Retrieval Models: 通过将输入文本(查询和文档)映射到独立的稠密表示,并使用近似最近邻算法(ANN)来做快速检索。
-
Hybrid Retrieval Models:1+2,同时有稀疏和dense两种表示
2.1 Sparse Retrieval Models
主要通过获得更好的文本表示来提升检索效果,可分为四类,
- term re-weighting(上下文空间的语义替代固定的词权重)
- document expansion(增加语义来扩充文档)
- expansion + re-weighting(结合两者)
- sparse representation learning(在隐空间内学习查询和文档的稀疏表示)。
2.2 Dense Retrieval Models。
dense一般使用双塔结构来学习查询或文档的低维稠密表示,然后再用这些稠密表示构建索引,并通过近似最邻近算法(ANN)在线上执行检索任务。
- single-vector representations (如下图左),每次只使用一个向量表示;
- multi-vector representations (图右),则每次使用多个向量表示。
- 优化方法
- 增强预训练表征能力;
- 设计合适的下游任务来贴合检索;(预训练任务)
- 改进fine-tuning;
- 大规模和更有效率的学习方式。
2.3 混合方式
- sparse retrieval模型使用term,可以精确匹配信号且有解释性。
- dense retrieval方法学习embeddings来编码语义,这种基于soft match信号的可以有更好的泛化性。
因此综合两种模型构建一个混合检索模型可能是个不错的方向,其架构如下图,混合检索模型同时做sparse和dense,然后通过某种merging策略来综合匹配分数。
3.re-rank阶段
搜索:多阶段级联架构
re-ranking:
- Transformers:在很小的文档集合中学习精细的表示
- 判别式模型(a):学习分类器(计算相关性)—Bert
- 基于表示的框架Representation-focused
- 基于交互的框架Interaction-focused
- 问题:
- 长文本
- 速度(模型加速)
- 生成式模型(b):估计真实的相关分布—GPT
- relevance generation(生成相关度标签)
- query generation(由文档生成查询然后完成检索)
- 判别+生成:T5
- 判别式模型(a):学习分类器(计算相关性)—Bert
长文本:
- 段落分数聚合(passage score aggregation)
- 段落表示聚合(passage representation aggregation)
模型加速
- 知识蒸馏
- 动态建模
4. 其他组件
4.1 在query理解上
- query expansion。解决vocabulary mismatch问题或者是用于缓解查询与文档之间语言的差别。可以基于关键词扩充,或者分块扩充。
- query rewriting。主要处理长尾和使句子表达清晰。可以使用现有模型如T5直接生成一个更符合语义的句子,也可以结合历史记录进行语言理解。
- query suggestion。提供给用户很多可选择的下一个查询,从而帮助用户更轻松地完成他们的搜索任务。主要需要结合历史记录来改装现有预训练模型。
- search clarification。主动咨询用户,以在返回结果之前降低不确定性,如对话式检索和对话系统中备受关注。
- personalized search。个性化搜索中一个常见的策略是将用户的历史查询进行编码,来刻画用户的长期兴趣和短期兴趣。
4.2 在doc理解上:
- document summarization。将文档压缩成一段精简的文本,同时保留主要的信息。分为
- extractive summarization:直接选择句子
- abstractive - summarization :生成概括。
- snippet generation。snippets只突出文档中与给定查询相关的部分。
- keyphrase extraction。从文档中抽取关键词,大部分工作通常会将关键词提取任务视作序列标注任务。
未来工作
1新的目标和框架。
2充分利用多资源。特别是多模态、多语言和知识增强。
3端到端的IR。
4新的IR设计系统。从索引中心到模型中心。
数据集
Books
C4
wikipedia
realNews
Amazon
WT10G
GOV2
CWP200T
SogouT
ClueWeb09
ClueWeb12
MS MARCO
• Document-oriented
– First stage retrieval (FSR): Retrieval stage from the full collection.
– Ad-hoc ranking (AR): Ranking a candidate list given a query.
– Session search (SS): Ranking a candidate list given a query and historical interactions.
– Multi-modal ranking (MMR): Given a query, rank the candidate list where each item contains multiple heterogeneous information such as text, picture and html structure.
– Personalized Search (PS): User-specific Ranking.
• Query-oriented
– Query reformulation (QR): Iiteratively modifying a query to improve the quality of search engine results in order to enhance user’s search satisfaction.
– Query suggestion (QS): Providing a suggestion which may be a reformulated query to better represent a user’s search intent.
– Query clarification (QC): Identifying user’s search intent during a session.
• Others
– Document summarization (DS): The process of shortening a document to create a subset (or a summary) that represents the most important information in this document.
– Snippet generation (SG): Query-specific document summarization.
– Keyphrase extraction (KE): It is also known as Keyword Extraction, which aims to automatically extract the most used and most important terms in a document.
数据集中排行榜
- MS MACRO
- DuReader (Machine Reading Comprehension task):
- Robust04 (Document retrieval task):
- CNN/Mail (Documents summarization task):
- Baidu DuIE (Entity extraction task):
- Benchmarking IR (BEIR) (Passage retrieval and document retrieval task):