一个编码器,七个头:使用掩码损失训练统一安全分类器的经验 [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
相似文章
基于传感器有效性掩码的掩码深度建模:在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。
编码器足够吗?LLM对抗评估中编码器与解码器安全评判器的系统比较
本文系统比较了微调的编码器分类器(ModernBERT系列)与基于解码器的安全评判器在LLM对抗评估中的表现,发现编码器可以在不显著损失性能的情况下,提供一种成本和延迟更低的替代方案。
@maximelabonne:像2020年那样训练编码器!
Liquid AI 对其 LFM2.5-Encoder 模型(230M 和 350M)进行了微调,使其能够在单次前向传播中执行多标签分类,无需解码循环或解析。这展示了在 NLP 任务中进行高效标签评分的潜力。