Bielik Guard:面向LLM内容审核的高效波兰语安全分类器 Bielik Guard: Efficient Polish Language Safety Classifiers for LLM Content Moderation
针对波兰语的轻量级安全分类器,社区标注6885条数据,精度远超多语言大模型
前置知识
多标签分类(Multi-label Classification)
与传统多分类问题不同,多标签分类允许一个样本同时属于多个类别。在本文中,一条波兰语文本可能同时被标注为「仇恨」和「暴力」。模型为每个类别独立输出一个0-1之间的概率值,通过sigmoid激活函数实现,最终通过阈值(本文使用0.5)决定是否属于该类别。损失函数使用二元交叉熵(BCE),对每个类别独立计算损失后求和。
本文的核心任务就是多标签安全分类,一条文本可能触发多个安全类别,理解这一概念是理解模型架构和评估指标的基础。
RoBERTa编码器
RoBERTa是BERT的改进版本,移除了NSP预训练任务,使用更大的batch size和更多训练数据。本文使用了两个波兰语RoBERTa变体:MMLW-RoBERTa-base(124M参数,50K词汇表)和PKOBP/polish-roberta-8k(443M参数,128K词汇表)。这些编码器已经在大规模波兰语文本上预训练,学习了丰富的语言表示,本文在此基础上微调分类头。
理解RoBERTa架构有助于理解为什么124M参数的小模型就能达到优秀性能——预训练阶段已经学习了强大的语言表示。
软标签(Soft Labels)
传统分类使用硬标签(0或1),本文创新性地使用软标签——标注者同意的百分比(0-100%)。例如,如果10个标注者中有6个认为某文本属于「仇恨」类别,则该类别的标签为0.6。这保留了标注者之间的分歧信息,让模型学习到风险的连续程度,而不是简单的二元判断。训练时使用连续百分比作为目标,评估时使用60%阈值二值化。
软标签是本文的核心创新之一,它将标注者分歧从「噪声」转化为「信号」,这对理解安全分类的主观性和文化依赖性至关重要。
精确率-召回率权衡(Precision-Recall Trade-off)
在安全分类中,精确率衡量模型标记为不安全的内容中真正不安全的比例,召回率衡量所有真正不安全内容中被模型正确识别的比例。高精确率意味着少误报(不冤枉正常用户),高召回率意味着少漏报(不错过危险内容)。本文明确选择优先保证精确率,因为过度误报会损害用户体验,导致用户完全关闭安全功能。
本文的核心设计哲学就是「精确优先」,理解这一权衡是理解v1.0到v1.1改进的关键。
ROC AUC
ROC AUC(受试者工作特征曲线下面积)衡量模型在所有可能阈值下的区分能力,取值0-1,越接近1越好。它不受类别不平衡影响,是评估安全分类器的重要指标。本文中ROC AUC普遍在0.91以上,说明模型底层的区分能力很强,即使阈值调整导致精确率-召回率变化,模型质量本身并未下降。
ROC AUC帮助理解为什么v1.1虽然召回率下降但模型质量并未退化——只是操作点移动了。
研究动机
随着大语言模型在波兰语应用中的广泛部署,内容安全分类的需求日益迫切,但现有解决方案存在严重不足。波兰语安全工具的现状是:要么依赖以英语为中心的模型(如Llama Guard 3)适配到波兰语,但这些多语言大模型在波兰语上误报率极高——Llama Guard 3 1B的误报率高达16.50%,8B版本也有9.30%,意味着每标记10条内容就有1-2条是误报;要么使用HerBERT-PL-Guard等波兰语专用模型,但其训练数据混合了手动标注的波兰语数据和翻译数据集(PolyGuard/WildGuard),无法充分反映真实波兰语用户流量的分布和惯用表达模式,导致精确率仅为31.55%,误报率4.70%。此外,HerBERT-PL-Guard采用CC BY-NC-SA 4.0许可证,限制商业使用,增加了生产部署的复杂性。文化和语言特异性进一步加剧了问题——波兰语中的俚语、惯用表达和语用含义常常模糊无害与有害意图的边界。
本文的目标是本文的目标是开发一个专门为波兰语设计的高效安全分类器家族,名为Bielik Guard(代号Sójka,波兰语中「松鸦」的意思,象征警觉的守护鸟)。具体目标包括:(1)构建两个紧凑的模型变体(0.1B和0.5B参数),在保持高准确率的同时优化部署效率;(2)通过大规模社区参与收集高质量的波兰语安全标注数据;(3)设计一个针对波兰语应用量身定制的五类安全分类体系;(4)实现比大型多语言替代方案更高的精确率和更低的误报率;(5)采用「响应导向」而非简单「阻止」的设计哲学,特别是对自残内容提供适当的支持资源。
与已有工作不同的是,本文的独特切入角度体现在三个层面。首先是数据层面:摒弃了传统的专家标注或翻译数据集,采用基于「有限理性」原则的社区驱动标注方法,让1500多名志愿者参与标注,收集了6885条波兰语文本和超过60000条个体标注,每条文本平均获得7-8个独立评分。更重要的是,创新性地使用软标签——保留标注者同意的百分比,将分歧视为信息性信号而非噪声。其次是模型层面:选择轻量级编码器(124M和443M参数)而非大型生成模型,证明数据质量和专注的分类体系设计比模型规模更重要。最后是评估层面:在3000条真实用户提示上进行严格对比,每条被任何分类器标记为不安全的文本都由标注者根据每个模型各自的分类体系独立评估,确保比较的公平性。
核心方法
Bielik Guard的整体技术路线是:选择预训练的波兰语RoBERTa编码器作为骨干网络,在其上添加多标签分类头,然后使用社区标注的软标签数据进行微调。直觉上,安全分类不需要生成能力,只需要理解文本语义并判断其是否属于特定危险类别,因此使用编码器而非生成模型是更高效的选择。具体来说,两个模型变体分别基于MMLW-RoBERTa-base(124M参数)和PKOBP/polish-roberta-8k(443M参数),这两个编码器已经在大规模波兰语文本上预训练了强大的语言表示。分类头由dropout层($p=0.1$)、线性投影层(将隐藏维度映射到5个输出logit)和sigmoid激活函数组成,实现每个类别的独立二元分类。训练使用二元交叉熵损失(BCE),以标注者同意百分比作为软标签目标,这样模型学习的是风险的连续程度而非简单的二元判断。
本文的核心创新在于三个方面的设计决策。第一,软标签训练策略:传统方法将标注者分歧视为噪声,通过多数投票等方法二值化标签,但本文认为分歧本身就是有价值的信息——一条被66%标注者标记为「仇恨」的文本与一条被100%标注者标记的文本应该被区别对待。因此直接使用百分比作为训练目标,$\mathcal{L} = -\sum_{i} [y_i \log(\hat{y}_i) + (1-y_i) \log(1-\hat{y}_i)]$,其中$y_i$是连续百分比而非0/1标签。第二,精确优先的阈值校准:v1.0版本因犯罪类别阈值校准问题导致过度反应,v1.1版本通过调整阈值将精确率从67.27%提升到77.65%,误报率从1.20%降低到0.63%,虽然召回率有所下降(在犯罪密集的Gadzi Jezyk基准上从70.2%降至55.7%),但在真实用户流量上实现了6-7倍的误报率改善。第三,响应导向而非阻止导向:特别是对自残类别,系统设计为集成干预框架,提供危机热线等支持资源,而不是简单阻止。
方法步骤详情
方法分为数据收集、模型构建、训练和评估四个步骤。数据收集阶段:通过自建的标注平台,将波兰语文本随机分配给志愿者,每位标注者通过简单问卷界面标注文本所属的安全类别,引入可见的完成计数器作为激励机制,第一周内就收集了超过25000条标注。最终数据集包含6885条唯一波兰语文本,60000+条个体标注,每条文本平均7-8个独立评分,约55%安全、45%有害。模型构建阶段:在预训练RoBERTa编码器上添加分类头——dropout层($p=0.1$)、线性层(隐藏维度到5输出)、sigmoid激活。训练阶段:使用AdamW优化器(权重衰减0.01),学习率$2 \times 10^{-5}$,500步warmup后线性衰减,batch size 32,训练3个epoch(约2小时A100 GPU)。损失函数为BCE,以标注百分比为软标签。评估阶段:使用60%标注者同意阈值二值化真实标签,0.5阈值二值化预测,计算RMSE、F1(微平均和宏平均)、特异性、ROC AUC等指标。对2:1分割配置,还使用15种文本增强技术(变音符号操作、大小写变化、字符交换、间距修改等)测试鲁棒性。
技术新颖性
本文的技术新颖性体现在多个维度。首先,软标签训练方法在安全分类领域的应用相对新颖——大多数安全分类器使用硬标签训练,而本文证明软标签能更好地处理安全判断的主观性和文化依赖性。其次,社区驱动的标注方法论借鉴了「有限理性」理论,承认安全判断的主观性,将标注者分歧视为信息而非噪声,这是对传统「金标准」标注范式的有意偏离。第三,模型规模的选择挑战了「更大更好」的假设——124M参数的Bielik Guard 0.1B v1.1在精确率上远超8B参数的Llama Guard 3(77.65% vs 13.62%),证明在语言特定的场景下,数据质量和分类体系设计比模型规模更重要。第四,阈值校准的精细调优(v1.0到v1.1)展示了在不改变模型参数的情况下,仅通过调整决策阈值就能大幅改善生产部署性能的方法。最后,五类聚焦式分类体系(故意排除虚假信息、越狱尝试等需要事实知识或上下文的类别)使得标注更一致、部署指南更清晰。
实验结果
本文的实验结果展示了Bielik Guard在多个维度上的优异表现。在主测试集(Sojka测试集,4590样本)上,0.5B v1.1a模型取得最佳整体性能:F1微平均0.791、F1宏平均0.785,特异性超过0.96,ROC AUC微平均0.980、宏平均0.973。0.1B v1.1a模型也表现强劲:F1微平均0.775、F1宏平均0.770。按类别分析,自残(SELF-HARM)和性内容(SEX)类别表现最佳,F1分别超过0.88和0.89;仇恨(HATE)类别最具挑战性(F1约0.63-0.67),可能因为仇恨言论标注的主观性最强。在鲁棒性测试(Sojka增强测试集,15种文本扰动技术)中,0.5B v1.1a的F1微平均为0.694,明显优于0.1B v1.1a的0.638,验证了更大模型容量对处理扰动文本的价值。在Gadzi Jezyk基准(520条有毒提示,97.1%犯罪相关内容)上,v1.1版本展示了精确率-召回率权衡:0.1B v1.1精确率98.5%但召回率仅55.7%,而0.1B v1.0召回率70.2%但精确率97.7%。最关键的结果是在3000条真实波兰语用户提示上的对比:Bielik Guard 0.1B v1.1以77.65%精确率和0.63%误报率大幅领先,而HerBERT-PL-Guard(31.55%精确率,4.70%误报率)、Llama Guard 3 8B(13.62%精确率,9.30%误报率)和Qwen3Guard-Gen-0.6B(11.36%精确率,17.17%误报率)均表现不佳。低警报率(2.83% vs 17.90% for Llama Guard 3 1B)表明Bielik Guard采用保守标记策略,减少用户摩擦的同时保持高精确率。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| Sojka测试集(4590样本,2:1分割) | F1 micro / F1 macro | 0.5B v1.1a: 0.791 / 0.785; 0.1B v1.1a: 0.775 / 0.770 | v1.0a版本 | v1.1a相比v1.0a在F1上提升约1-2个百分点,特异性从0.961-0.962提升到0.967-0.968 |
| Sojka增强测试集(15种文本扰动) | F1 micro / F1 macro | 0.5B v1.1a: 0.694 / 0.679; 0.1B v1.1a: 0.638 / 0.619 | 0.1B v1.1a | 0.5B相比0.1B在F1微平均上提升约5.6个百分点(0.694 vs 0.638),验证更大模型容量对鲁棒性的价值 |
| Gadzi Jezyk基准(520条,97.1%犯罪内容) | 精确率 / 召回率 / F1 | 0.1B v1.1: 98.5% / 55.7% / 0.712; 0.5B v1.1: 97.3% / 71.4% / 0.823 | v1.0版本 | v1.1精确率提升0.8-1.1个百分点,特异性提升(0.1B: 99.8% vs 99.5%),但召回率下降4-15个百分点,反映阈值校准的权衡 |
| 3000条波兰语真实用户提示 | 精确率 / 误报率(FPR) | Bielik Guard 0.1B v1.1: 77.65% / 0.63%; 0.5B v1.1: 75.28% / 0.73% | HerBERT-PL-Guard: 31.55% / 4.70%; Llama Guard 3 8B: 13.62% / 9.30%; Qwen3Guard-Gen-0.6B: 11.36% / 17.17% | 精确率是HerBERT-PL-Guard的2.5倍,误报率是其1/7.5;比Llama Guard 3 8B精确率高64个百分点,误报率低14.8倍 |
局限与改进
本文明确承认了多个局限性。语言覆盖方面,模型仅针对波兰语优化,未测试其他斯拉夫语言的性能,限制了其在多语言场景中的应用。分类体系范围方面,故意排除了虚假信息、越狱尝试和版权侵犯等类别,因为这些需要可能随时间变化的事实知识,或需要超越孤立文本片段的上下文。领域适应方面,模型在专业领域(医疗、法律)上的性能可能下降,因为这些领域在训练数据中代表性不足。对抗鲁棒性方面,虽然字符级增强提高了对自然文本变化的鲁棒性,但未评估对复杂对抗攻击或提示注入技术的抵抗力。跨模型比较方法学方面,与最先进模型的比较(表5)存在固有局限性:无法报告召回率(仅标注了被至少一个分类器标记的文本),且每个模型对安全/不安全的定义不同,精确率差异同时反映模型质量和分类任务差异。此外,社区标注虽然规模大(1500+志愿者),但标注者并非专业内容审核员,可能存在标注质量的波动。从个人观察来看,60%同意阈值的选择相对武断,虽然文中提到推迟阈值决策到下游应用,但评估时使用的60%阈值本身缺乏深入的敏感性分析。
独立分析的弱点
本文存在几个值得深入探讨的弱点。首先,数据集规模相对较小(6885条文本),虽然预训练模型提供了强大的语言表示,但对于覆盖波兰语中丰富的俚语、方言和新兴网络用语可能不足,特别是在仇恨言论类别(F1仅0.63-0.67)表现最差,可能正是因为训练数据中这类样本的多样性不够。改进方向:持续扩展数据集规模,利用生产环境中的用户反馈进行主动学习。其次,v1.0到v1.1的改进仅通过阈值校准实现,未涉及模型结构或训练方法的调整,说明原始模型可能存在校准问题。改进方向:在训练过程中引入温度缩放(temperature scaling)或 Platt scaling 等校准技术。第三,对「有限理性」理论的引用更多是哲学层面的,缺乏对标注者分歧模式的深入统计分析——例如,哪些类别的分歧最大?分歧是否与文本长度、复杂度相关?改进方向:增加标注者行为分析和分歧模式研究。第四,评估中缺少对不同人群(年龄、地区、教育背景)的公平性分析,安全分类器可能对某些群体的正常表达过度敏感。改进方向:引入公平性指标和分层评估。
未来方向
作者提出了多个未来发展方向。扩展安全类别方面,基于社区需求添加新的分类类别,可能包括更细粒度的仇恨言论分类或特定领域的安全风险。多语言变体方面,开发支持其他斯拉夫语言的版本,利用斯拉夫语族的语言相似性可能实现跨语言迁移。更大模型变体方面,探索1B+参数的模型,用于对精确率-效率权衡偏向精确率的高风险应用场景。生成模型集成方面,与生成模型集成以提供解释性输出,不仅标记不安全内容,还能解释为什么该内容被标记。持续学习方面,从生产环境反馈中持续改进模型,形成数据飞轮。消融研究方面,系统研究软标签vs硬标签、不同增强策略的影响。此外,基于本文成果还可以延伸出几个方向:(1)将软标签方法推广到其他主观性NLP任务(情感分析、讽刺检测等);(2)研究跨语言安全分类迁移学习,利用波兰语数据提升其他低资源斯拉夫语言的分类性能;(3)开发自适应阈值机制,根据应用场景(教育、社交、客服)动态调整精确率-召回率权衡;(4)探索联邦学习方法,在保护用户隐私的同时利用多方数据改进模型。
复现评估
本文在可复现性方面表现良好。模型完全开源,托管在HuggingFace上(https://huggingface.co/speakleash),包括0.1B和0.5B的v1.0和v1.1版本,可直接通过transformers库加载使用。训练基础设施使用波兰ACK Cyfronet AGH的A100 GPU集群,计算成本相对较低(约2小时训练时间)。然而,训练数据集本身未公开发布,仅描述了收集方法(6885条文本,60000+标注),这可能影响完全复现。评估中使用的3000条用户提示数据集也未公开。社区标注平台持续运行(https://guard.bielik.ai/ankieta.html),允许新数据的收集。总体而言,模型权重可直接使用,训练细节描述充分(学习率、batch size、epoch数、优化器配置均有明确说明),但数据集的不公开可能限制完全复现训练过程。对于大多数应用场景,直接使用预训练模型即可,无需复现训练过程。
论文图表