模型库 / cross-encoder/ms-marco-MiniLM-L6-v2

ms-marco-MiniLM-L6-v2

cross-encoder text-ranking sentence-transformers en
cross-encoder/ms-marco-MiniLM-L6-v2
45,928,464
下载量
412
收藏数
79
浏览量
apache-2.0
许可

简介

该模型在MS Marco段落排序任务上进行了训练。

模型卡片

许可协议 apache-2.0
语言
en
框架 sentence-transformers
任务 text-ranking
数据集
msmarco
transformers

模型配置

模型类型 bert
架构 BertForSequenceClassification

模型详情

已翻译

面向 MS Marco 的 Cross-Encoder 模型

该模型基于 MS Marco 段落排序 任务进行训练。

该模型可用于信息检索:给定一个查询,将查询与所有可能的段落(例如通过 ElasticSearch 检索到的段落)进行编码,然后按降序对段落进行排序。更多详情请参见 SBERT.net 检索与重排序。训练代码可在此处获取:SBERT.net 训练 MS Marco

与 SentenceTransformers 配合使用

安装 SentenceTransformers 后,使用起来非常简便。您可以像这样使用预训练模型:

from sentence_transformers import CrossEncoder

model = CrossEncoder('cross-encoder/ms-marco-MiniLM-L6-v2')
scores = model.predict([
    ("How many people live in Berlin?", "Berlin had a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers."),
    ("How many people live in Berlin?", "Berlin is well known for its museums."),
])
print(scores)
# [ 8.607138 -4.320078]

与 Transformers 配合使用

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model = AutoModelForSequenceClassification.from_pretrained('cross-encoder/ms-marco-MiniLM-L6-v2')
tokenizer = AutoTokenizer.from_pretrained('cross-encoder/ms-marco-MiniLM-L6-v2')

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)

性能表现

下表列出了多种预训练的 Cross-Encoder 模型及其在 TREC Deep Learning 2019MS Marco 段落重排序 数据集上的性能表现。

模型名称 NDCG@10 (TREC DL 19) MRR@10 (MS Marco Dev) 文档数/秒
版本 2 模型
cross-encoder/ms-marco-TinyBERT-L2-v2 69.84 32.56 9000
cross-encoder/ms-marco-MiniLM-L2-v2 71.01 34.85 4100
cross-encoder/ms-marco-MiniLM-L4-v2 73.04 37.70 2500
cross-encoder/ms-marco-MiniLM-L6-v2 74.30 39.01 1800
cross-encoder/ms-marco-MiniLM-L12-v2 74.31 39.02 960
版本 1 模型
cross-encoder/ms-marco-TinyBERT-L2 67.43 30.15 9000
cross-encoder/ms-marco-TinyBERT-L4 68.09 34.50 2900
cross-encoder/ms-marco-TinyBERT-L6 69.57 36.13 680
cross-encoder/ms-marco-electra-base 71.99 36.41 340
其他模型
nboost/pt-tinybert-msmarco 63.63 28.80 2900
nboost/pt-bert-base-uncased-msmarco 70.94 34.75 340
nboost/pt-bert-large-msmarco 73.36 36.48 100
Capreolus/electra-base-msmarco 71.23 36.89 340
amberoad/bert-multilingual-passage-reranking-msmarco 68.40 35.54 330
sebastian-hofstaetter/distilbert-cat-margin_mse-T2-msmarco 72.82 37.88 720

注:运行时间基于 V100 GPU 计算得出。

标签

jax onnx openvino bert text-classification en dataset:sentence-transformers/msmarco base_model:cross-encoder/ms-marco-MiniLM-L12-v2

操作


详细信息

厂商
cross-encoder
任务
text-ranking
框架
sentence-transformers
模型类型
bert
许可(HF)
apache-2.0
语言
en