一个编码器,七个头:使用掩码损失训练统一安全分类器的经验 [P]
摘要
他们发布了一个统一的多头安全分类器(mmBERT-small编码器,七个头),使用掩码损失处理缺失任务标签,在七个任务上取得了高F1分数,同时还发布了量化的ONNX INT8变体。权重和指标已公开。
过去几个月,我们将七个独立的序列分类器整合为一个多头模型,可以说是我们的巅峰模型。现在权重已公开,我想分享哪些方法有效以及哪些地方让我们感到惊讶。设置:共享的mmBERT-small编码器,带有七个任务头,即二进制注入(BCE)、文档分类(7类)、工具类型(14类)、工具操作(6类)、工具数据流标签(3× BCE,多标签)、意图路由(5类)和威胁类型(7类)。需要注意的部分是:我们的训练行只携带了部分任务的标签,因此缺失的任务标签被完全从损失中屏蔽掉。我们最终编写了一个自测程序,断言缺失任务的梯度绝对为零,这发现了两个细微的bug,我建议任何做类似屏蔽的人采用这种方法。大约5k条合成/真实的多任务行有助于各头共同训练;测试集保持100%真实数据。每个头在保留集上的结果:注入F1 0.962,文档0.980,工具类型0.957,工具操作0.945,工具标签0.958,路由0.916,威胁0.952。量化:统一模型和专用的单任务变体都发布了量化边缘构建版本(ONNX INT8 + INT4嵌入,从96 MB开始),并在仓库中提供了对等的基准测试,最差情况下头部损失0.012(相对于FP32)。与七个专用模型相比是否值得?我们发布了两种变体,您可以自行判断,专用模型在大多数任务上得分略高,但统一模型只需进行一次编码器前向传播,而非最多七次。我们的薄弱点:路由,得分为0.916。意图类别在语义上有重叠("编写代码分析我的数据"——这是代码还是分析?),我怀疑这种歧义确实存在于数据中。如果您有除了重新标注之外的想法,请告知我 :) 权重和每个头的指标:https://huggingface.co/patronus-studio
相似文章
我的冻结编码器决策头每标签读取3个令牌:修复选项预算将banking77从67.5%提升至76.0% [P]
作者将LLM的决策蒸馏到冻结的ModernBERT编码器上的小型头部中,通过修复选项预算,将banking77任务的准确率从67.5%提升至76.0%,并提供了关于令牌读取和教师一致性的见解。
基于传感器有效性掩码的掩码深度建模:在8个掩码/稀疏深度基准测试中的7个上取得最佳RMSE,以及受控编码器初始化研究[R]
本文提出了基于传感器有效性掩码的掩码深度建模,在8个掩码/稀疏深度基准测试中的7个上取得了最佳RMSE,并进行了受控编码器初始化研究。
LingBot-Vision: 基于掩码边界建模的自监督预训练 (在1.1B参数下NYUv2线性探测RMSE为0.296,对比DINOv3-7B的0.309,在ImageNet上稍逊一筹);提供四种尺寸的权重[R]
LingBot-Vision引入了掩码边界建模用于自监督预训练,在1.1B参数下NYUv2线性探测上达到0.296 RMSE,而DINOv3-7B为0.309,虽然在ImageNet上表现稍逊;已发布四种尺寸的权重。
将表示与重构分离实现可扩展文本编码器
CrossBERT将表示学习与令牌重构解耦,实现更高的掩码比例和更好的样本效率,在MTEB和GLUE基准测试上超越BERT。
结论:编码一次,多次决策
这篇论文介绍了 Verdict-MQ,这是一款拥有 3.95 亿参数的开放编码器,只需对输入的状态编码一次,即可通过结构化注意力掩码回答多个关于该输入的类型化问题。在类型化决策任务中,它在校准度和准确率方面优于拥有 4.21 亿参数的 Laya 交叉编码器,但代价是在 RACE 和 BoolQ 上的性能有所下降。