基于sentence-transformers库在msmarco数据集上训练的交叉编码器模型,用于文本重排序和语义搜索
下载量 28
发布时间 : 4/6/2025
模型介绍
内容详情
替代品
模型简介
该模型计算文本对的分数,可用于文本重排序和语义搜索任务。它是在199万条训练样本上使用二元交叉熵损失函数训练得到的。
模型特点
高性能重排序
在NanoMSMARCO_R100数据集上达到0.7008的NDCG@10分数,表现优异
大规模训练
使用199万条训练样本进行训练,具有强大的语义理解能力
长文本支持
最大支持8192个标记的序列长度,适合处理长文本
模型能力
文本对评分
语义搜索
搜索结果重排序
使用案例
信息检索
搜索引擎结果重排序
对搜索引擎返回的结果进行重新排序,提升相关性
在MSMARCO数据集上NDCG@10达到0.7008
问答系统
答案相关性排序
对候选答案进行相关性排序,选择最佳答案
在NanoNQ_R100数据集上NDCG@10达到0.6888
语言:
- 英文 标签:
- 句子转换器
- 交叉编码器
- 训练生成
- 数据集大小:1990000
- 损失函数:二元交叉熵损失 数据集:
- sentence-transformers/msmarco 流水线标签: 文本排序 库名称: sentence-transformers 评估指标:
- 平均精度(map)
- 前10命中率(mrr@10)
- 前10归一化折损累积增益(ndcg@10) 模型索引:
- 名称: CrossEncoder
结果:
- 任务:
类型: 交叉编码器重排序
名称: 交叉编码器重排序
数据集:
名称: NanoMSMARCO R100
类型: NanoMSMARCO_R100
指标:
- 类型: map 值: 0.6439 名称: 平均精度
- 类型: mrr@10 值: 0.6382 名称: 前10命中率
- 类型: ndcg@10 值: 0.7008 名称: 前10归一化折损累积增益
- 任务:
类型: 交叉编码器重排序
名称: 交叉编码器重排序
数据集:
名称: NanoNFCorpus R100
类型: NanoNFCorpus_R100
指标:
- 类型: map 值: 0.3324 名称: 平均精度
- 类型: mrr@10 值: 0.5372 名称: 前10命中率
- 类型: ndcg@10 值: 0.3732 名称: 前10归一化折损累积增益
- 任务:
类型: 交叉编码器重排序
名称: 交叉编码器重排序
数据集:
名称: NanoNQ R100
类型: NanoNQ_R100
指标:
- 类型: map 值: 0.6174 名称: 平均精度
- 类型: mrr@10 值: 0.6412 名称: 前10命中率
- 类型: ndcg@10 值: 0.6888 名称: 前10归一化折损累积增益
- 任务:
类型: 交叉编码器Nano BEIR
名称: 交叉编码器Nano BEIR
数据集:
名称: NanoBEIR R100均值
类型: NanoBEIR_R100_mean
指标:
- 类型: map 值: 0.5312 名称: 平均精度
- 类型: mrr@10 值: 0.6055 名称: 前10命中率
- 类型: ndcg@10 值: 0.5876 名称: 前10归一化折损累积增益
- 任务:
类型: 交叉编码器重排序
名称: 交叉编码器重排序
数据集:
名称: NanoMSMARCO R100
类型: NanoMSMARCO_R100
指标:
CrossEncoder
这是一个基于sentence-transformers库在msmarco数据集上训练的交叉编码器模型。它计算文本对的分数,可用于文本重排序和语义搜索。
模型详情
模型描述
- 模型类型: 交叉编码器
- 最大序列长度: 8192个标记
- 输出标签数量: 1个标签
- 训练数据集:
- 语言: 英文
模型来源
- 文档: Sentence Transformers文档
- 文档: 交叉编码器文档
- 仓库: GitHub上的Sentence Transformers
- Hugging Face: Hugging Face上的交叉编码器
使用方式
直接使用(Sentence Transformers)
首先安装Sentence Transformers库:
pip install -U sentence-transformers
然后可以加载此模型并运行推理。
from sentence_transformers import CrossEncoder
# 从🤗 Hub下载
model = CrossEncoder("skfrost19/reranker-gte-multilingual-base-msmarco-bce-ep-2")
# 获取文本对的分数
pairs = [
['颞下颌关节紊乱患者可能有哪些症状', '颞下颌关节紊乱患者有一长串症状,包括慢性疼痛(https://youtu.be/SvMaJb8o2RI),其中许多与帕金森病(PD)症状相同。'],
['什么是热保护器', '英雄一词源自希腊语á¼¥Ï\x81Ï\x89Ï\x82(hÄ\x93rÅ\x8ds),意为英雄、战士,特指像赫拉克勒斯这样具有神裔血统或后来被授予神誉的人。字面意思是保护者或防御者。'],
['使命召唤二战销量多少', '使命召唤3。使命召唤3是一款二战第一人称射击游戏,也是使命召唤系列的第三部作品。2006年11月7日发行,由Treyarch开发,是使命召唤系列首部非Infinity Ward开发的主要作品,也是首部未在PC平台发布的游戏。登陆PlayStation 2、PlayStation 3、Wii、Xbox和Xbox 360平台。'],
['冰箱冷藏室理想温度是多少', '冰箱保持略高于水冰点的温度。易腐食品储存的最佳温度范围是3至5°C(37至41°F)。制造商通常为冷藏室和冷冻室设置任意数字(例如1到9,从最暖到最冷),但一般来说冷藏室3至5°C(37至41°F)、冷冻室-18°C(0°F)最为理想。'],
['什么是GSM报警系统', '当你第一次听说GSM报警系统时,脑海中可能会有这些疑问。GSM报警系统是通过GSM(全球移动通信系统)网络运行、无需电话线的报警系统。此外,当窃贼进入场所切断电话线时,GSM报警器不受影响仍能正常工作,因为它不需要固定电话线。因此这种安全报警器非常适合没有固定电话线或难以安装的地方。'],
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)
# 或根据与单个文本的相似性排序不同文本
ranks = model.rank(
'颞下颌关节紊乱患者可能有哪些症状',
[
'颞下颌关节紊乱患者有一长串症状,包括慢性疼痛(https://youtu.be/SvMaJb8o2RI),其中许多与帕金森病(PD)症状相同。',
'英雄一词源自希腊语á¼¥Ï\x81Ï\x89Ï\x82(hÄ\x93rÅ\x8ds),意为英雄、战士,特指像赫拉克勒斯这样具有神裔血统或后来被授予神誉的人。字面意思是保护者或防御者。',
'使命召唤3。使命召唤3是一款二战第一人称射击游戏,也是使命召唤系列的第三部作品。2006年11月7日发行,由Treyarch开发,是使命召唤系列首部非Infinity Ward开发的主要作品,也是首部未在PC平台发布的游戏。登陆PlayStation 2、PlayStation 3、Wii、Xbox和Xbox 360平台。',
'冰箱保持略高于水冰点的温度。易腐食品储存的最佳温度范围是3至5°C(37至41°F)。制造商通常为冷藏室和冷冻室设置任意数字(例如1到9,从最暖到最冷),但一般来说冷藏室3至5°C(37至41°F)、冷冻室-18°C(0°F)最为理想。',
'当你第一次听说GSM报警系统时,脑海中可能会有这些疑问。GSM报警系统是通过GSM(全球移动通信系统)网络运行、无需电话线的报警系统。此外,当窃贼进入场所切断电话线时,GSM报警器不受影响仍能正常工作,因为它不需要固定电话线。因此这种安全报警器非常适合没有固定电话线或难以安装的地方。',
]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]
评估
指标
交叉编码器重排序
- 数据集:
NanoMSMARCO_R100
、NanoNFCorpus_R100
和NanoNQ_R100
- 使用
CrossEncoderRerankingEvaluator
评估,参数如下:{ "at_k": 10, "always_rerank_positives": true }
指标 | NanoMSMARCO_R100 | NanoNFCorpus_R100 | NanoNQ_R100 |
---|---|---|---|
平均精度 | 0.6439 (+0.1543) | 0.3324 (+0.0714) | 0.6174 (+0.1978) |
前10命中率 | 0.6382 (+0.1607) | 0.5372 (+0.0374) | 0.6412 (+0.2145) |
前10归一化折损累积增益 | 0.7008 (+0.1604) | 0.3732 (+0.0482) | 0.6888 (+0.1881) |
交叉编码器Nano BEIR
- 数据集:
NanoBEIR_R100_mean
- 使用
CrossEncoderNanoBEIREvaluator
评估,参数如下:{ "dataset_names": [ "msmarco", "nfcorpus", "nq" ], "rerank_k": 100, "at_k": 10, "always_rerank_positives": true }
指标 | 值 |
---|---|
平均精度 | 0.5312 (+0.1412) |
前10命中率 | 0.6055 (+0.1375) |
前10归一化折损累积增益 | 0.5876 (+0.1322) |
训练详情
训练数据集
msmarco
- 数据集: msmarco 版本 9e329ed
- 大小: 1,990,000个训练样本
- 列:
query
,passage
, 和score
- 基于前1000个样本的近似统计:
查询 段落 分数 类型 字符串 字符串 浮点数 详情 - 最小: 11字符
- 平均: 34.61字符
- 最大: 124字符
- 最小: 82字符
- 平均: 357.43字符
- 最大: 1034字符
- 最小: 0.0
- 平均: 0.49
- 最大: 1.0
- 样本:
查询 段落 分数 尾骨疼痛的原因是什么
尾骨损伤会导致尾骨区域疼痛不适(称为尾骨痛)。这些损伤可能导致尾骨挫伤、脱位或骨折。虽然愈合可能较慢,但大多数尾骨损伤可通过谨慎治疗得到控制。大多数尾骨损伤由尾骨区域的外伤引起。1 最常见的尾骨损伤原因是坐姿跌落至尾骨,通常是在坚硬表面上。2 直接打击尾骨,如接触性运动中发生的,也可能损伤尾骨。
1.0
躯干侧屈涉及哪些肌肉
与腹外斜肌相同,但不同于腹外斜肌,它们在完全发育时不可见。功能:1 支撑腹壁,辅助强制呼吸,帮助增加腹内压,并与另一侧肌肉共同外展和旋转躯干。2 单侧收缩单独使躯干向该侧侧屈并向对侧旋转躯干。
0.0
制动马力定义
当刹车灯不亮时,首先要检查的是第三刹车灯。如果它也不工作,可能是刹车灯开关、坏掉的保险丝或未插接的线束问题。拉起刹车踏板,如果灯熄灭,可能是开关未对齐或踏板位置错误。最后可能是电线短路。拔掉刹车灯开关,如果灯仍亮着,就是短路问题。
0.0
- 损失函数:
BinaryCrossEntropyLoss
参数如下:{ "activation_fn": "torch.nn.modules.linear.Identity", "pos_weight": null }
评估数据集
msmarco
- 数据集: msmarco 版本 9e329ed
- 大小: 10,000个评估样本
- 列:
query
,passage
, 和score
- 基于前1000个样本的近似统计:
查询 段落 分数 类型 字符串 字符串 浮点数 详情 - 最小: 9字符
- 平均: 33.72字符
- 最大: 193字符
- 最小: 55字符
- 平均: 353.35字符
- 最大: 895字符
- 最小: 0.0
- 平均: 0.5
- 最大: 1.0
- 样本:
查询 段落 分数 颞下颌关节紊乱患者可能有哪些症状
颞下颌关节紊乱患者有一长串症状,包括慢性疼痛(https://youtu.be/SvMaJb8o2RI),其中许多与帕金森病(PD)症状相同。
1.0
什么是热保护器
英雄一词源自希腊语á¼¥Ï\x81Ï\x89Ï\x82(hÄ\x93rÅ\x8ds),意为英雄、战士,特指像赫拉克勒斯这样具有神裔血统或后来被授予神誉的人。字面意思是保护者或防御者。
0.0
使命召唤二战销量多少
使命召唤3。使命召唤3是一款二战第一人称射击游戏,也是使命召唤系列的第三部作品。2006年11月7日发行,由Treyarch开发,是使命召唤系列首部非Infinity Ward开发的主要作品,也是首部未在PC平台发布的游戏。登陆PlayStation 2、PlayStation 3、Wii、Xbox和Xbox 360平台。
0.0
- 损失函数:
BinaryCrossEntropyLoss
参数如下:{ "activation_fn": "torch.nn.modules.linear.Identity", "pos_weight": null }
训练超参数
非默认超参数
eval_strategy
: 按步骤per_device_train_batch_size
: 156per_device_eval_batch_size
: 156learning_rate
: 2e-05num_train_epochs
: 2warmup_ratio
: 0.1seed
: 12bf16
: 是dataloader_num_workers
: 4load_best_model_at_end
: 是
训练日志
周期 | 步骤 | 训练损失 | 验证损失 | NanoMSMARCO_R100_ndcg@10 | NanoNFCorpus_R100_ndcg@10 | NanoNQ_R100_ndcg@10 | NanoBEIR_R100_mean_ndcg@10 |
---|---|---|---|---|---|---|---|
-1 | -1 | - | - | 0.6561 (+0.1157) | 0.3777 (+0.0527) | 0.6548 (+0.1541) | 0.5629 (+0.1075) |
0.0001 | 1 | 0.1089 | - | - | - | - | - |
0.3136 | 4000 | 0.1258 | - | - | - | - | - |
0.6271 | 8000 | 0.1185 | - | - | - | - | - |
0.7839 | 10000 | - | 0.1177 | 0.7008 (+0.1604) | 0.3732 (+0.0482) | 0.6888 (+0.1881) | 0.5876 (+0.1322) |
0.9407 | 12000 | 0.1231 | - | - | - | - | - |
-1 | -1 | - | - | 0.7008 (+0.1604) | 0.3732 (+0.0482) | 0.6888 (+0.1881) | 0.5876 (+0.1322) |
- 加粗行表示保存的检查点。
框架版本
- Python: 3.11.5
- Sentence Transformers: 4.0.1
- Transformers: 4.50.3
- PyTorch: 2.6.0+cu124
- Accelerate: 1.6.0
- Datasets: 3.5.0
- Tokenizers: 0.21.1
引用
BibTeX
Sentence Transformers
@inproceedings{reimers-2019-sentence-bert,
title = "Sentence-BERT: 使用孪生BERT网络的句子嵌入",
author = "Reimers, Nils and Gurevych, Iryna",
booktitle = "2019年自然语言处理实证方法会议论文集",
month = "11",
year = "2019",
publisher = "计算语言学协会",
url = "https://arxiv.org/abs/1908.10084",
}
Jina Embeddings V3
Jina Embeddings V3 是一个多语言句子嵌入模型,支持超过100种语言,专注于句子相似度和特征提取任务。
文本嵌入
Transformers

支持多种语言
J
jinaai
3.7M
911
Ms Marco MiniLM L6 V2
Apache-2.0
基于MS Marco段落排序任务训练的交叉编码器模型,用于信息检索中的查询-段落相关性评分
文本嵌入
英语
M
cross-encoder
2.5M
86
Opensearch Neural Sparse Encoding Doc V2 Distill
Apache-2.0
基于蒸馏技术的稀疏检索模型,专为OpenSearch优化,支持免推理文档编码,在搜索相关性和效率上优于V1版本
文本嵌入
Transformers

英语
O
opensearch-project
1.8M
7
Sapbert From PubMedBERT Fulltext
Apache-2.0
基于PubMedBERT的生物医学实体表征模型,通过自对齐预训练优化语义关系捕捉
文本嵌入
英语
S
cambridgeltl
1.7M
49
Gte Large
MIT
GTE-Large 是一个强大的句子转换器模型,专注于句子相似度和文本嵌入任务,在多个基准测试中表现出色。
文本嵌入
英语
G
thenlper
1.5M
278
Gte Base En V1.5
Apache-2.0
GTE-base-en-v1.5 是一个英文句子转换器模型,专注于句子相似度任务,在多个文本嵌入基准测试中表现优异。
文本嵌入
Transformers

支持多种语言
G
Alibaba-NLP
1.5M
63
Gte Multilingual Base
Apache-2.0
GTE Multilingual Base 是一个多语言的句子嵌入模型,支持超过50种语言,适用于句子相似度计算等任务。
文本嵌入
Transformers

支持多种语言
G
Alibaba-NLP
1.2M
246
Polybert
polyBERT是一个化学语言模型,旨在实现完全由机器驱动的超快聚合物信息学。
文本嵌入
Transformers

P
kuelumbus
1.0M
5
Bert Base Turkish Cased Mean Nli Stsb Tr
Apache-2.0
基于土耳其语BERT的句子嵌入模型,专为语义相似度任务优化
文本嵌入
Transformers

其他
B
emrecan
1.0M
40
GIST Small Embedding V0
MIT
基于BAAI/bge-small-en-v1.5模型微调的文本嵌入模型,通过MEDI数据集与MTEB分类任务数据集训练,优化了检索任务的查询编码能力。
文本嵌入
Safetensors
英语
G
avsolatorio
945.68k
29
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers

支持多种语言
L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers

英语
C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统
中文
R
uer
2,694
98
AIbase是一个专注于MCP服务的平台,为AI开发者提供高质量的模型上下文协议服务,助力AI应用开发。
简体中文