train-sentence-transformers - evaluators_sentence_transformer

发布时间:2026/10/3 23:00:59

train-sentence-transformers - evaluators_sentence_transformer 评估器双编码器所有双编码器评估器都位于sentence_transformers.sentence_transformer.evaluation中。选择合适的评估器任务评估器检索nDCG、MRR、Recall——快速默认NanoBEIREvaluator在自有语料库 / qrels 上检索InformationRetrievalEvaluatorSTS / 连续相似度EmbeddingSimilarityEvaluator二分类BinaryClassificationEvaluator三元组准确率TripletEvaluator重排来自检索候选RerankingEvaluator与教师模型的 MSE蒸馏MSEEvaluator、MSEEvaluatorFromDataFrame释义挖掘ParaphraseMiningEvaluator翻译跨语言对齐TranslationEvaluator标签准确率训练期间的分类LabelAccuracyEvaluator将多个评估器包装在SequentialEvaluator中以便一起跟踪fromsentence_transformers.sentence_transformer.evaluationimportSequentialEvaluator evaluatorSequentialEvaluator([evaluator1,evaluator2,evaluator3])三大评估器NanoBEIREvaluator检索BEIR 的小型快速子集。在中端 GPU 上典型运行时间 1 分钟。检索训练的默认选择。fromsentence_transformers.sentence_transformer.evaluationimportNanoBEIREvaluator evaluatorNanoBEIREvaluator(dataset_names[msmarco,nfcorpus,nq],# 默认全部 13 个 NanoBEIR 数据集batch_size128,show_progress_barFalse,)默认数据集列表覆盖 13 个任务训练期间选择子集以加快速度。metric_for_best_model的输出键eval_NanoBEIR_mean_cosine_ndcg10双编码器默认 余弦相似度。EmbeddingSimilarityEvaluatorSTS 风格计算模型余弦相似度与金标准标签之间的 Pearson/Spearman 相关性。fromsentence_transformers.sentence_transformer.evaluationimportEmbeddingSimilarityEvaluatorfromsentence_transformers.util.similarityimportSimilarityFunction evaluatorEmbeddingSimilarityEvaluator(sentences1stsb[sentence1],sentences2stsb[sentence2],scoresstsb[score],main_similaritySimilarityFunction.COSINE,namests-dev,)main_similarity可以是COSINE、DOT_PRODUCT、EUCLIDEAN、MANHATTAN。name用于输出键eval_sts-dev_spearman_cosine、eval_sts-dev_pearson_cosine等。InformationRetrievalEvaluator完整检索当你拥有自己的语料库 查询 qrels不是 NanoBEIR 任务之一时使用。fromsentence_transformers.sentence_transformer.evaluationimportInformationRetrievalEvaluator evaluatorInformationRetrievalEvaluator(queries{qid:query_textforqid,query_textin...},corpus{doc_id:doc_textfordoc_id,doc_textin...},relevant_docs{qid:{doc_id,...}forqidin...},# qid - 相关 doc_id 的集合namemy-retrieval,mrr_at_k[10],ndcg_at_k[10],accuracy_at_k[1,5,10],precision_recall_at_k[1,5,10],map_at_k[100],show_progress_barFalse,batch_size64,)输出键eval_{name}_cosine_ndcg10、eval_{name}_cosine_mrr10等。对大型语料库很重——每次评估都会编码整个语料库。不要每 100 步就运行它。训练期间使用NanoBEIREvaluator进行频繁评估将完整的 IR 评估保留给里程碑 / 训练后。其他双编码器评估器BinaryClassificationEvaluator用于带标签的成对分类例如重复检测、二分类蕴含。报告准确率、F1、精确率/召回率、AP。支持所有距离度量——为每个度量找到最佳阈值。TripletEvaluator用于(anchor, positive, negative)三元组。报告正例比负例更接近锚点的三元组比例。RerankingEvaluator用于自定义重排数据集你为每个查询提供候选评估器计算 MAP 和 MRR。适合衡量留出集上的检索质量。MSEEvaluator/MSEEvaluatorFromDataFrame用于蒸馏设置。比较学生嵌入与教师嵌入或教师分数报告 MSE。ParaphraseMiningEvaluator用于释义挖掘任务。给定带标签的释义对语料库计算挖掘质量各阈值下的 F1。TranslationEvaluator用于跨语言 /make_multilingual风格对齐检查。衡量学生是否跨语言对齐句子。LabelAccuracyEvaluator用于SoftmaxLoss训练的分类头。报告留出数据上的准确率。编写metric_for_best_model模式feval_{evaluator.primary_metric}。构造后检查print(evaluator.primary_metric)。常见值eval_NanoBEIR_mean_cosine_ndcg10—NanoBEIREvaluatoreval_sts-dev_spearman_cosine—EmbeddingSimilarityEvaluator(namests-dev)eval_{name}_cosine_ndcg10—InformationRetrievalEvaluator(name...)多维评估Matryoshka对于 Matryoshka 训练的模型在每个目标维度上评估per_dim_evaluators[EmbeddingSimilarityEvaluator(sentences1...,sentences2...,scores...,main_similaritySimilarityFunction.COSINE,namefsts-dev-{dim},truncate_dimdim,)fordimin[768,512,256,128,64]]evaluatorSequentialEvaluator(per_dim_evaluators,main_score_functionlambdascores:scores[0])第一个评估器的分数驱动load_best_model_at_end。陷阱训练前务必先运行一次evaluator(model)—— 预训练基线。如果训练后增量很小说明损失/数据/基座有问题。不要使用大型语料库10 万文档的InformationRetrievalEvaluator以频繁的eval_steps运行——训练期间使用NanoBEIREvaluator将完整的 IR 评估留到训练结束时。greater_is_betterTrue是默认值适合 nDCG / MRR / 准确率。
延伸阅读

更多相关文章

2026/10/3 22:55:59

Arnis 完整指南:如何用真实地图三步生成 Minecraft 城市

Arnis 完整指南:如何用真实地图三步生成 Minecraft 城市 【免费下载链接】arnis Generate any location from the real world in Minecraft with a high level of detail. 项目地址: https://gitcode.com/GitHub_Trending/ar/arnis Arnis 是一款开源的 Minec…

2026/10/3 22:55:59

二维dp问题

二维dp问题不同路径不同路径||珠宝的最高价值下降路径最小和最小路径和地下城游戏不同路径 题目解析:从起始位置到Finish位置,有多少种路径,每次只可以向下/向右走一格 1.状态表示:dp[i][j]表示到(i,j)位置路径数 2.状态转移方程&…

2026/10/4 0:01:02

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/4 0:01:02

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/3 23:56:01

从零搭建AI工程:从模型接入到Agent编排的完整实践指南

1. 项目概述:当你说“从零开始做AI工程”的时候,到底在说什么“ai-engineering-from-scratch”这个标题,我第一眼看到的时候其实挺感慨的。市面上讲“从零开始学AI”的文章多到泛滥,但绝大多数要么是教你怎么装个库跑个demo&#…

2026/10/3 23:56:01

Carsim与Simulink联合仿真的车辆换道轨迹规划与跟踪

提起自动驾驶、智能网联汽车方向的课题,只要是涉及车辆运动控制的,几乎绕不开 Carsim 和 MATLAB/Simulink 这对黄金搭档。我之前做过一套基于 Carsim 与 Simulink 联合仿真的车辆换道轨迹规划与轨迹跟踪模型,跑了两个月,踩了不少坑…

2026/10/3 23:56:01

鸿业市政道路软件避坑指南:版本匹配、横断面与土方计算常见问题

简介:针对鸿业市政道路软件用户的常见问题解答文档,内容覆盖软件运行、土方、平面、纵断、横断、交叉口设计及其他模块,面向市政道路设计人员与相关专业学生,帮助解决菜单加载失败、土方计算异常、图面显示错乱等高频问题。压缩包…

2026/10/3 23:56:01

超级多智能体架构实战:DeepAgents编排、MCP工具接入与A2A通信

1. 从单体到集群:为什么我们需要超级多智能体1.1 一个真实的需求场景去年下半年我接手了一个企业内部知识助手的项目,需求听起来不复杂:帮员工查制度文档、走审批流程、生成周报。一开始我用的是单体 Agent 方案,一个模型加一堆工…

2026/10/4 0:01:02

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/4 0:01:02

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/4 0:01:02

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/4 0:01:02

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑