模型:

cross-encoder/msmarco-MiniLM-L6-en-de-v1

英文

MS MARCO的跨语言Cross-Encoder - 英德

这是一个用于英德跨语言分段重排序的Cross-Encoder模型。它是在 MS Marco Passage Ranking 任务上训练的。

该模型可用于信息检索:请参阅 SBERT.net Retrieve & Re-rank

训练代码在此存储库中可用,请参阅train_script.py。

与SentenceTransformers一起使用

当您安装了 SentenceTransformers 后,可以像这样使用该模型:

from sentence_transformers import CrossEncoder
model = CrossEncoder('model_name', max_length=512)
query = 'How many people live in Berlin?'
docs = ['Berlin has a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.', 'New York City is famous for the Metropolitan Museum of Art.']
pairs = [(query, doc) for doc in docs]
scores = model.predict(pairs)

与Transformers一起使用

使用transformers库,您可以像这样使用模型:

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model = AutoModelForSequenceClassification.from_pretrained('model_name')
tokenizer = AutoTokenizer.from_pretrained('model_name')

features = tokenizer(['How many people live in Berlin?', 'How many people live in Berlin?'], ['Berlin has a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.', 'New York City is famous for the Metropolitan Museum of Art.'],  padding=True, truncation=True, return_tensors="pt")

model.eval()
with torch.no_grad():
    scores = model(**features).logits
    print(scores)

性能

对该模型在三个数据集上进行了评估:

  • TREC-DL19 EN-EN:原始 TREC 2019 Deep Learning Track :给定英文查询和1000个文档(通过BM25词汇搜索检索),根据相关性对文档进行排序。我们计算NDCG@10。BM25的得分为45.46,完美的重排序器的得分为95.47。
  • TREC-DL19 DE-EN:TREC-DL19的英文查询已由德语母语者翻译为德语。我们将德语查询与原始TREC-DL19设置中的英文段落进行排序。我们计算NDCG@10。
  • GermanDPR DE-DE: GermanDPR :该数据集提供来自德语维基百科的德语查询和德语段落。我们使用Elasticsearch将德语维基百科的280万个段落建立索引,并使用BM25词汇搜索检索每个查询的前100个最相关段落。我们计算MRR@10。BM25的得分为35.85,完美的重排序器的得分为76.27。

我们还检查了使用相同评估方法的双编码器的性能:使用余弦相似度使用查询和段落嵌入对BM25词汇搜索检索的文档进行重新排序。双编码器还可以用于端到端语义搜索。

Model-Name TREC-DL19 EN-EN TREC-DL19 DE-EN GermanDPR DE-DE Docs / Sec
BM25 45.46 - 35.85 -
Cross-Encoder Re-Rankers
1237321 72.43 65.53 46.77 1600
1238321 72.94 66.07 49.91 900
1239321 (DE only) - - 53.67 260
12310321 (DE only) - - 53.59 260
Bi-Encoders (re-ranking)
12311321 63.38 58.28 37.88 940
12312321 65.51 58.69 38.32 940
12313321 (DE only) - - 34.31 450
12314321 (DE only) - - 42.55 450

注意:Docs / Sec表示我们可以在V100 GPU上在一秒内重排序的(查询,文档)对数目。