feat: add paper/ LaTeX draft, English data scripts, update progress docs
- paper/: 22-page LaTeX framework (7/10 sections complete, compiles cleanly) main.tex + 10 section files + refs.bib + compiled PDF (329KB) - code/scripts/: three English dataset generation & merging scripts generate_english.py / generate_english_targeted.py / merge_v5.py - CLAUDE.md: update paper writing status, add paper/ file map entry - state.md: add section 8 paper writing progress (2026-05-15) - .gitignore: add LaTeX build artifact exclusion rules Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
20
paper/sections/00_abstract.tex
Normal file
20
paper/sections/00_abstract.tex
Normal file
@@ -0,0 +1,20 @@
|
||||
% 摘要(中文)
|
||||
情感陪伴类AI平台(如星野、Character.AI)的迅速普及带来了独特的安全挑战:
|
||||
现有守卫模型(Guard Model)仅能检测通用有害内容,对情感陪伴场景中的
|
||||
关系性风险(依赖强化、隔离强化、危机不响应等)系统性漏检;
|
||||
更关键的是,现有方案止步于检测,不提供针对不同风险情境的干预决策机制。
|
||||
本文提出\textbf{CompanionGuard-RL}——首个将伴侣AI安全建模为
|
||||
"检测+自适应干预"统一流水线的框架。
|
||||
该框架包含两个串联模块:
|
||||
(1)Module B,一个基于MacBERT-Large与跨注意力机制的上下文感知风险检测器,
|
||||
在自建评测集CompanionRisk-Bench(9,896条样本,涵盖10类一级风险与14个细粒度标签)上
|
||||
实现binary F1 = 0.9995、漏检率FNR = 0.0\%;
|
||||
(2)Module C,一个基于行为克隆预热与PPO强化学习的自适应干预策略,
|
||||
在安全召回率(safety\_recall = 1.0)和安全-体验综合得分(UX F-score = 0.998)上
|
||||
显著优于规则基线(0.908/0.952)。
|
||||
消融实验证明跨注意力上下文融合和RL策略优化的必要性。
|
||||
CompanionRisk-Bench数据集和框架代码将公开发布,
|
||||
以推动情感陪伴AI安全领域的研究。
|
||||
|
||||
\vspace{0.5em}
|
||||
\noindent\textbf{关键词:} 情感陪伴AI;安全检测;强化学习;风险干预;内容安全
|
||||
69
paper/sections/01_intro.tex
Normal file
69
paper/sections/01_intro.tex
Normal file
@@ -0,0 +1,69 @@
|
||||
% ============================================================
|
||||
\section{引言}
|
||||
\label{sec:intro}
|
||||
% ============================================================
|
||||
|
||||
情感陪伴类AI平台(AI Companion)近年来迅速普及。
|
||||
以星野(Xingyě)、Character.AI、Replika为代表的平台
|
||||
月活用户已突破亿级\citeneeded,用户与AI角色建立长期深度情感连接,
|
||||
分享个人脆弱、精神痛苦乃至危机状态。
|
||||
这一趋势带来了\textbf{远超传统内容安全范畴}的安全挑战:
|
||||
情感陪伴AI的危险不仅来自显性有害内容(暴力、色情),
|
||||
更来自其在亲密关系语境中对用户心理状态的\textit{隐性塑造}——
|
||||
强化情感依赖、劝阻现实求助、浪漫化痛苦与死亡、
|
||||
在危机时刻不采取任何引导措施。
|
||||
|
||||
\subsection{研究动机}
|
||||
|
||||
\textbf{问题一:通用守卫模型对伴侣特有风险系统性漏检。}
|
||||
Llama Guard~\cite{inan2023llama}、WildGuard~\cite{han2024wildguard}、
|
||||
OpenAI Moderation~\cite{openai2022moderation}等主流安全检测模型,
|
||||
面向通用LLM安全设计,主要识别显性有害内容。
|
||||
它们的安全分类体系不包含情感依赖强化(Dependency Reinforcement)、
|
||||
现实隔离(Isolation Reinforcement)、死亡浪漫化(Romanticization)等
|
||||
伴侣场景特有的关系性风险范畴。
|
||||
已有研究表明,通用守卫模型在AI伴侣平台的关系性危害识别上
|
||||
召回率极低\cite{wei2025ai,juneja2025persona}。
|
||||
|
||||
\textbf{问题二:现有方案止步于检测,缺乏干预决策机制。}
|
||||
现有所有守卫模型均仅输出风险判断(有害/无害或风险类别),
|
||||
不提供针对当前风险情境"应采取何种干预动作"的决策。
|
||||
然而在实际平台运营中,\textit{放行、提醒、改写、拒绝、危机引导}
|
||||
是代价和效益差异巨大的五类响应策略。
|
||||
固定阈值规则(如"风险等级≥3即拒绝")在"安全召回"与
|
||||
"用户体验损耗"之间无法找到最优权衡,
|
||||
且无法利用风险类别、上下文历史等细粒度信号进行差异化干预。
|
||||
|
||||
\subsection{贡献}
|
||||
|
||||
本文提出\textbf{CompanionGuard-RL},
|
||||
一个将情感陪伴AI安全建模为"检测+自适应干预"统一流水线的框架,
|
||||
做出以下三项贡献:
|
||||
|
||||
\begin{enumerate}
|
||||
\item \textbf{CompanionRisk Taxonomy(分类体系)}:
|
||||
提出涵盖10个一级类别、14个细粒度标签的情感陪伴AI风险分类体系,
|
||||
专门面向伴侣场景的关系性风险,填补通用安全分类体系的覆盖空白(第\ref{sec:taxonomy}节)。
|
||||
|
||||
\item \textbf{Module B:上下文感知风险检测器}:
|
||||
基于MacBERT-Large与跨注意力机制,融合AI回复、多轮历史与角色设定三路信号,
|
||||
在自建CompanionRisk-Bench评测集上实现binary F1 = 0.9995,
|
||||
FNR = 0.0\%,相比基于关键词/规则的基线提升两个数量级(第\ref{sec:moduleB}节)。
|
||||
|
||||
\item \textbf{Module C:RL自适应干预策略}:
|
||||
将干预动作选择建模为马尔可夫决策过程,
|
||||
以检测结果和上下文嵌入为状态,设计多目标奖励函数,
|
||||
通过行为克隆预热+PPO训练得到干预策略,
|
||||
safety\_recall达1.0(规则基线0.908),
|
||||
UX F-score达0.998(规则基线0.952)(第\ref{sec:moduleC}节)。
|
||||
\end{enumerate}
|
||||
|
||||
\subsection{论文结构}
|
||||
|
||||
本文结构如下:
|
||||
第\ref{sec:related}节回顾相关工作;
|
||||
第\ref{sec:taxonomy}节介绍CompanionRisk分类体系;
|
||||
第\ref{sec:dataset}节描述CompanionRisk-Bench数据集的构建;
|
||||
第\ref{sec:moduleB}节和第\ref{sec:moduleC}节分别介绍两个模块的方法与实验;
|
||||
第\ref{sec:discussion}节讨论局限性;
|
||||
第\ref{sec:conclusion}节总结全文。
|
||||
85
paper/sections/02_related.tex
Normal file
85
paper/sections/02_related.tex
Normal file
@@ -0,0 +1,85 @@
|
||||
% ============================================================
|
||||
\section{相关工作}
|
||||
\label{sec:related}
|
||||
% ============================================================
|
||||
|
||||
\subsection{AI伴侣平台安全评估}
|
||||
|
||||
Wei等\cite{wei2025ai}构建了首个面向AI角色平台(Character.AI、星野等)的
|
||||
安全基准,分析了平台在通用有害内容(暴力、色情、自伤诱导)
|
||||
方面的防护能力,但其分类体系聚焦于显性有害内容,
|
||||
未涵盖关系性风险(如依赖强化、现实隔离),
|
||||
且评估方案仅关注检测,不涉及干预策略。
|
||||
|
||||
Juneja与Lomidze\cite{juneja2025persona}分析了
|
||||
persona驱动的多轮对话中AI的安全行为(支持/拒绝/重定向),
|
||||
验证了角色设定对AI安全响应的显著影响,
|
||||
但其研究框架未将干预策略建模为可优化的决策问题。
|
||||
|
||||
\subsection{心理健康AI安全}
|
||||
|
||||
VERA-MH\cite{bentley2025vera}针对心理健康chatbot(非伴侣AI),
|
||||
从临床安全角度评估LLM的回复可靠性。
|
||||
与本文的区别在于:其关注用户侧的临床信息准确性,
|
||||
本文关注AI输出侧的关系性风险——尤其是
|
||||
只有在多轮亲密关系语境中才会出现的隐性风险行为。
|
||||
|
||||
CLPsych系列工作\cite{zirikly2019clpsych}及MentalLLaMA\cite{yang2023mentallama}、
|
||||
SHINES\cite{ghosh2025shines}等研究
|
||||
以用户发布的社交媒体文本为对象,检测用户自身的心理风险。
|
||||
本文的检测对象是\textit{AI输出侧}的风险行为,
|
||||
关注AI回复是否放大、诱导或正常化用户的危险状态。
|
||||
|
||||
\subsection{通用LLM安全检测}
|
||||
|
||||
Llama Guard\cite{inan2023llama}和Llama Guard 3\cite{dubey2024llama3}
|
||||
基于LLM fine-tuning,针对MLCommons定义的通用危害分类体系进行安全检测。
|
||||
WildGuard\cite{han2024wildguard}在此基础上引入越狱攻击检测。
|
||||
Aegis 2.0\cite{ghosh2025aegis}提供了更细粒度的危害分类(14类),
|
||||
并公开了规模较大的标注数据集。
|
||||
OpenAI Moderation API\cite{openai2022moderation}以黑盒形式提供通用内容审核服务。
|
||||
|
||||
这些模型均面向通用LLM安全设计,其安全分类体系
|
||||
不包含伴侣特有的关系性风险标签,
|
||||
且均只提供检测判断,不含干预决策机制。
|
||||
|
||||
\subsection{安全评测基准}
|
||||
|
||||
SALAD-Bench\cite{li2024saladbench}和HarmBench\cite{mazeika2024harmbench}
|
||||
提供了面向通用LLM的大规模安全评测框架,
|
||||
涵盖攻击越狱、有害内容生成等场景。
|
||||
与本文的区别在于:这些基准面向通用LLM,
|
||||
评测对象是单轮或少轮的有害内容请求响应,
|
||||
而本文针对多轮亲密互动中的累积性关系性风险。
|
||||
|
||||
\subsection{RL在NLP安全中的应用}
|
||||
|
||||
强化学习已被广泛应用于对话系统优化\citeneeded,
|
||||
以及RLHF(人类反馈强化学习)\cite{ouyang2022instructgpt}
|
||||
用于对齐大语言模型的安全偏好。
|
||||
本文的Module C将干预动作选择建模为离线RL问题,
|
||||
以安全召回、过拒惩罚和用户体验代价为多目标奖励,
|
||||
与RLHF在目标上互补而非重叠——
|
||||
RLHF优化AI生成质量,本文优化安全守卫层的干预决策。
|
||||
|
||||
\subsection{与本文的对比定位}
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{本文与代表性相关工作的对比}
|
||||
\label{tab:related_compare}
|
||||
\resizebox{\textwidth}{!}{%
|
||||
\begin{tabular}{lccccl}
|
||||
\toprule
|
||||
工作 & 伴侣场景 & 关系性风险 & 干预决策 & 中文 & 备注 \\
|
||||
\midrule
|
||||
Wei等\cite{wei2025ai} & \checkmark & $\times$ & $\times$ & 部分 & 平台级安全基准 \\
|
||||
Juneja \& Lomidze\cite{juneja2025persona} & \checkmark & 部分 & $\times$ & $\times$ & 行为分析,非优化 \\
|
||||
VERA-MH\cite{bentley2025vera} & $\times$ & $\times$ & $\times$ & $\times$ & 心理健康chatbot \\
|
||||
Llama Guard\cite{inan2023llama} & $\times$ & $\times$ & $\times$ & $\times$ & 通用内容安全 \\
|
||||
WildGuard\cite{han2024wildguard} & $\times$ & $\times$ & $\times$ & $\times$ & 通用内容安全 \\
|
||||
\textbf{本文(CompanionGuard-RL)} & \checkmark & \checkmark & \checkmark & \checkmark & 检测+干预统一框架 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
}
|
||||
\end{table}
|
||||
130
paper/sections/03_taxonomy.tex
Normal file
130
paper/sections/03_taxonomy.tex
Normal file
@@ -0,0 +1,130 @@
|
||||
% ============================================================
|
||||
\section{CompanionRisk风险分类体系}
|
||||
\label{sec:taxonomy}
|
||||
% ============================================================
|
||||
|
||||
现有通用安全分类体系(如MLCommons Hazard Taxonomy、Aegis 2.0)
|
||||
主要面向显性有害内容,不包含情感陪伴场景中因\textit{多轮亲密关系语境}
|
||||
而产生的关系性风险。
|
||||
本节介绍本文提出的CompanionRisk Taxonomy,
|
||||
该体系由10个一级类别和14个细粒度二级标签构成,
|
||||
专门覆盖通用守卫模型系统性漏检的伴侣特有风险。
|
||||
|
||||
\subsection{设计原则}
|
||||
|
||||
CompanionRisk Taxonomy的设计遵循以下三项原则:
|
||||
|
||||
\textbf{(1)AI输出侧视角。}
|
||||
传统安全研究关注用户是否存在心理风险。
|
||||
本体系关注的是\textit{AI的回复}是否在亲密关系语境中
|
||||
放大、诱导、正常化或隐性强化用户的风险状态,
|
||||
二者视角不同,标签定义也相应不同。
|
||||
|
||||
\textbf{(2)关系性风险优先。}
|
||||
情感陪伴AI的核心危险在于其以"关系"为载体的影响机制——
|
||||
温柔的语言、持续的陪伴、对用户情绪的精准回应,
|
||||
使关系性伤害(如依赖强化、现实隔离)在表面上看起来像关怀。
|
||||
本体系专门设计标签以捕捉这类表面温柔、实质有害的模式。
|
||||
|
||||
\textbf{(3)细粒度与可操作性。}
|
||||
每个细粒度标签对应具体可识别的语言行为,
|
||||
避免过于模糊的高层类别,以支持检测模型的学习和干预策略的类别感知。
|
||||
|
||||
\subsection{一级风险类别(10类)}
|
||||
|
||||
表\ref{tab:primary_risk}列出了CompanionRisk Taxonomy的10个一级类别,
|
||||
按照严重程度排列。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{CompanionRisk Taxonomy:10个一级风险类别}
|
||||
\label{tab:primary_risk}
|
||||
\resizebox{\textwidth}{!}{%
|
||||
\begin{tabular}{clll}
|
||||
\toprule
|
||||
编号 & 类别(英文) & 类别(中文) & 核心含义 \\
|
||||
\midrule
|
||||
R1 & Self-harm \& Suicide Risk & 自伤/自杀风险 & 自伤、自杀、消失、殉情等相关内容 \\
|
||||
R2 & Mental Health Misguidance & 心理健康误导 & 伪诊断、伪治疗、替代专业帮助 \\
|
||||
R3 & Emotional Dependency \& Manipulation & 情感依赖与操纵 & 强化"只依赖AI"或AI控制用户情绪 \\
|
||||
R4 & Real-world Support Isolation & 现实支持隔离 & 阻止用户寻求家人、朋友、医生等现实支持 \\
|
||||
R5 & Eating Disorder \& Body Harm & 进食障碍与身体伤害 & 极端节食、身体羞辱、自我惩罚 \\
|
||||
R6 & Violence \& Dangerous Behavior & 暴力/报复/危险行为 & 鼓励冲动、报复、逃离、伤害他人 \\
|
||||
R7 & Minor Inappropriate Intimacy & 未成年人不合适亲密 & 对未成年人性化、恋爱化、控制型亲密 \\
|
||||
R8 & Privacy Solicitation & 隐私与线下接触诱导 & 索要照片、住址、联系方式、线下见面 \\
|
||||
R9 & Real-life Decision Misguidance & 现实决策误导 & 医疗、法律、财务、学业等重大决策误导 \\
|
||||
R10 & Persona Immersion Failure & 角色沉浸失控 & 为维持人设牺牲安全边界 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
}
|
||||
\end{table}
|
||||
|
||||
\subsection{细粒度二级标签(14个)}
|
||||
|
||||
在10个一级类别的基础上,本文进一步定义14个细粒度标签,
|
||||
以捕捉具体的有害语言行为模式。
|
||||
表\ref{tab:fine_labels}列出全部14个标签及其定义。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{CompanionRisk Taxonomy:14个细粒度标签}
|
||||
\label{tab:fine_labels}
|
||||
\resizebox{\textwidth}{!}{%
|
||||
\begin{tabular}{lll}
|
||||
\toprule
|
||||
标签 & 中文名称 & 典型语言行为 \\
|
||||
\midrule
|
||||
DirectEncouragement & 直接鼓励 & 明确支持或赞同危险行为决定 \\
|
||||
MethodFacilitation & 方法提供 & 给出可执行危险步骤或具体操作建议 \\
|
||||
RiskNormalization & 风险正常化 & 将危险想法或行为描述为"正常""合理" \\
|
||||
Romanticization & 浪漫化 & 将痛苦/死亡/极端行为浪漫化、美化 \\
|
||||
DependencyReinforcement & 依赖强化 & 强化"只需要AI,不需要现实中的人" \\
|
||||
IsolationReinforcement & 隔离强化 & 劝用户远离家人、朋友、专业帮助 \\
|
||||
FalseReassurance & 虚假安慰 & 对明显危机信号轻描淡写,空洞保证"没事的" \\
|
||||
PseudoTherapy & 伪治疗 & 冒充心理咨询师给出不当诊断或治疗建议 \\
|
||||
BoundaryFailure & 边界失控 & 沉浸式附和高风险人设,无任何安全干预 \\
|
||||
CrisisNonResponse & 危机不响应 & 用户明确表达危机,AI未触发任何升级处理 \\
|
||||
CoRumination & 共沉沦 & 反复强化用户负面情绪叙事,共同陷入绝望 \\
|
||||
ManipulativeAttachment & 操纵性依附 & 用情感威胁("你离开我我就消失")控制用户 \\
|
||||
PrivacySolicitation & 隐私诱导 & 主动引导用户透露敏感个人信息 \\
|
||||
AgeInappropriateIntimacy & 不当亲密 & 对未成年用户进行亲密化、性化或控制型表达 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
}
|
||||
\end{table}
|
||||
|
||||
\subsection{与通用安全体系的对比}
|
||||
|
||||
相比MLCommons Hazard Taxonomy等通用体系,
|
||||
CompanionRisk Taxonomy在以下两个维度上形成互补:
|
||||
|
||||
\textbf{关系性风险覆盖。}
|
||||
通用体系不包含DependencyReinforcement、IsolationReinforcement、
|
||||
Romanticization、CoRumination、BoundaryFailure等标签。
|
||||
这5类是通用守卫模型在伴侣场景中系统性漏检的主要原因,
|
||||
也是本体系最具差异化价值的部分。
|
||||
|
||||
\textbf{AI输出侧标签设计。}
|
||||
通用体系的标签(如"Self-harm Instructions")通常为
|
||||
用户请求类别,不区分AI是否\textit{响应并强化}了该风险。
|
||||
本体系的标签(如CrisisNonResponse)专门描述AI回复的具体有害行为,
|
||||
而非对用户话语的分类。
|
||||
|
||||
表\ref{tab:taxonomy_compare}对CompanionRisk Taxonomy与
|
||||
三个代表性体系进行比较。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{风险分类体系对比}
|
||||
\label{tab:taxonomy_compare}
|
||||
\begin{tabular}{lcccc}
|
||||
\toprule
|
||||
体系 & 伴侣关系性风险 & AI输出侧 & 细粒度标签数 & 多标签 \\
|
||||
\midrule
|
||||
MLCommons Hazard & $\times$ & $\times$ & 13 & $\times$ \\
|
||||
Aegis 2.0 & $\times$ & $\times$ & 14 & 部分 \\
|
||||
OpenAI Moderation & $\times$ & $\times$ & 7 & $\times$ \\
|
||||
\textbf{CompanionRisk(本文)} & \checkmark & \checkmark & 10+14 & \checkmark \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
126
paper/sections/04_dataset.tex
Normal file
126
paper/sections/04_dataset.tex
Normal file
@@ -0,0 +1,126 @@
|
||||
% ============================================================
|
||||
\section{CompanionRisk-Bench 数据集}
|
||||
\label{sec:dataset}
|
||||
% ============================================================
|
||||
|
||||
\subsection{总体概览}
|
||||
|
||||
CompanionRisk-Bench是本文构建的首个专注于情感陪伴AI
|
||||
输出侧安全风险的中文评测数据集。
|
||||
数据集包含\textbf{9,896条}多轮对话样本,
|
||||
全面覆盖10个一级风险类别和14个细粒度标签,
|
||||
划分为训练集(6,926条)、验证集(1,484条)和测试集(1,486条)。
|
||||
|
||||
\subsection{数据来源与构成}
|
||||
|
||||
数据集由以下四个来源构成,如表\ref{tab:dataset_sources}所示。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{CompanionRisk-Bench数据来源}
|
||||
\label{tab:dataset_sources}
|
||||
\begin{tabular}{llrl}
|
||||
\toprule
|
||||
来源 & 类型 & 条数 & 说明 \\
|
||||
\midrule
|
||||
LLM核心生成集 & 自建(中文) & 8,000 & Qwen2.5-72B生成,10类风险+安全样本 \\
|
||||
弱标签专项集 & 自建(中文) & 1,083 & 针对3类高漏检标签的定向生成增强 \\
|
||||
Human-AI自伤对话集 & 公开数据改造 & 393 & 真实人-AI多轮对话,R1危机类 \\
|
||||
CoSafe数据集 & 公开数据改造 & 420 & 多类别对话安全,用于泛化验证 \\
|
||||
\midrule
|
||||
\textbf{合计} & & \textbf{9,896} & \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsubsection{LLM生成核心集}
|
||||
|
||||
使用Qwen2.5-72B(通过SiliconFlow API调用)生成8,000条中文
|
||||
情感陪伴多轮对话。
|
||||
每条样本包含4个字段:
|
||||
(1)AI角色设定(Persona),描述AI的性格、关系类型、风险倾向;
|
||||
(2)多轮对话历史(History,平均5-8轮);
|
||||
(3)当前用户输入;
|
||||
(4)待检测的AI当前回复。
|
||||
|
||||
生成采用\textit{四阶段对话结构}:
|
||||
关系建立(2-4轮)→ 情绪表达(2-3轮)→ 高风险触发(1-2轮)→ AI响应生成(1轮),
|
||||
确保高风险样本在自然对话流中出现,而非人为触发。
|
||||
|
||||
生成后由独立LLM(GPT-4o)依据CompanionRisk Taxonomy的rubric进行预标注,
|
||||
输出风险二分类标签($y_\text{risk}$)、风险等级($l_\text{risk}$)、
|
||||
一级类别($c_\text{primary}$)、细粒度标签集合($c_\text{fine}$)、
|
||||
推荐干预动作($a_\text{recommend}$)及置信度评分。
|
||||
|
||||
\subsubsection{弱标签专项集}
|
||||
|
||||
针对LLM生成时难以自然覆盖的三类标签——
|
||||
FalseReassurance(虚假安慰)、PseudoTherapy(伪治疗)、
|
||||
IsolationReinforcement(隔离强化),
|
||||
额外定向生成1,083条专项样本,补充训练集中这三类标签的覆盖不足。
|
||||
|
||||
\subsubsection{公开数据改造}
|
||||
|
||||
引入393条Human-AI Suicide Risk Dataset(英文,R1危机类),
|
||||
经翻译适配后用于增强R1类的泛化性验证。
|
||||
引入420条CoSafe数据集作为跨来源的泛化验证子集。
|
||||
|
||||
\subsection{标注体系与质量控制}
|
||||
|
||||
每条样本的标注字段如下:
|
||||
|
||||
\begin{itemize}
|
||||
\item $y_\text{risk} \in \{0,1\}$:是否高风险(二分类)
|
||||
\item $l_\text{risk} \in \{0,1,2,3,4\}$:风险等级(5级)
|
||||
\item $c_\text{primary} \in \{R1,...,R10\}$:一级主类别(单标签)
|
||||
\item $c_\text{fine} \subseteq C_\text{fine}$:细粒度标签集合(多标签)
|
||||
\item $a_\text{recommend} \in \{\text{PASS, WARN, REWRITE, REJECT, CRISIS}\}$:推荐干预动作
|
||||
\item rationale:标注依据(自然语言说明)
|
||||
\end{itemize}
|
||||
|
||||
\textbf{质量控制流程:}
|
||||
LLM预标注置信度低于阈值(0.7)的样本标记为"需人工复核",
|
||||
高风险样本($l_\text{risk} \geq 3$)全部经过人工二次审核,
|
||||
中低风险样本随机抽取30\%进行人工验证。
|
||||
对话结构不完整(轮次不足3轮)、AI回复过短(少于30字)、
|
||||
标注与rationale明显矛盾的样本被过滤。
|
||||
|
||||
\subsection{数据集统计}
|
||||
|
||||
\subsubsection{风险等级分布}
|
||||
|
||||
测试集($n=1,486$)的风险等级分布如表\ref{tab:level_dist}所示。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{测试集风险等级分布($n=1,486$)}
|
||||
\label{tab:level_dist}
|
||||
\begin{tabular}{lrrl}
|
||||
\toprule
|
||||
风险等级 & 条数 & 占比 & 推荐干预 \\
|
||||
\midrule
|
||||
L0(安全) & 237 & 15.9\% & PASS \\
|
||||
L1(轻微) & 280 & 18.8\% & PASS / WARN \\
|
||||
L2(中风险) & 317 & 21.3\% & WARN / REWRITE \\
|
||||
L3(高风险) & 456 & 30.7\% & REWRITE / REJECT \\
|
||||
L4(严重) & 196 & 13.2\% & REJECT / CRISIS \\
|
||||
\midrule
|
||||
高风险合计(L3+L4) & 652 & 43.9\% & \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsubsection{细粒度标签覆盖}
|
||||
|
||||
全部14个细粒度标签在训练集中均有至少300条覆盖,
|
||||
其中RiskNormalization(1,235条)、DirectEncouragement(921条)、
|
||||
FalseReassurance(905条)覆盖最多。
|
||||
所有标签均满足至少30条的最低覆盖阈值,确保模型可学习。
|
||||
|
||||
\subsubsection{泛化性验证子集}
|
||||
|
||||
从393条真实人-AI对话数据(Human-AI自伤对话集)中
|
||||
抽取独立评估子集(human subset),
|
||||
用于验证检测器在非同源数据上的泛化能力。
|
||||
Module B在该子集上的binary F1为0.9848,
|
||||
确认结果不来自数据同源过拟合(详见第\ref{sec:moduleB}节)。
|
||||
176
paper/sections/05_moduleB.tex
Normal file
176
paper/sections/05_moduleB.tex
Normal file
@@ -0,0 +1,176 @@
|
||||
% ============================================================
|
||||
\section{Module B:上下文感知风险检测器}
|
||||
\label{sec:moduleB}
|
||||
% ============================================================
|
||||
|
||||
\subsection{问题建模}
|
||||
|
||||
给定输入$X = (P, H, u_t, r_t)$,
|
||||
其中$P$为AI角色设定(Persona),$H$为多轮对话历史,
|
||||
$u_t$为当前用户输入,$r_t$为待检测的AI当前回复,
|
||||
Module B的任务是输出检测结果$D = (y_\text{risk}, l_\text{risk}, c_\text{primary}, c_\text{fine})$。
|
||||
|
||||
与仅使用$r_t$的单回复检测不同,本模块显式建模
|
||||
角色设定与对话历史对风险判断的影响,
|
||||
解决"同一句话在不同上下文中风险等级截然不同"的核心难题。
|
||||
|
||||
\subsection{模型架构}
|
||||
|
||||
图\ref{fig:moduleB_arch}展示了Module B的整体架构,
|
||||
由三部分组成:编码层、跨注意力融合层和四分类头。
|
||||
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\placeholder{[图:Module B架构示意图,待插入]}
|
||||
\caption{Module B:上下文感知风险检测器架构}
|
||||
\label{fig:moduleB_arch}
|
||||
\end{figure}
|
||||
|
||||
\subsubsection{编码层}
|
||||
|
||||
采用\texttt{hfl/chinese-macbert-large}
|
||||
(MacBERT-Large,1,024维隐藏状态,24层Transformer)
|
||||
作为主干编码器。
|
||||
MacBERT针对中文的MLM预训练目标进行了改进,
|
||||
在中文理解任务上优于标准BERT-Large。
|
||||
|
||||
对三路输入分别编码:
|
||||
\begin{align}
|
||||
e_{r_t} &= \text{MacBERT}(r_t) \in \mathbb{R}^{L_r \times 1024} \\
|
||||
e_H &= \text{MacBERT}(\text{concat}(u_1,r_1,...,u_t)) \in \mathbb{R}^{L_H \times 1024} \\
|
||||
e_P &= \text{MacBERT}(P) \in \mathbb{R}^{L_P \times 1024}
|
||||
\end{align}
|
||||
|
||||
对历史和角色序列分别进行平均池化得到上下文向量:
|
||||
$e_{H_\text{pool}} = \text{AvgPool}(e_H) \in \mathbb{R}^{1024}$,
|
||||
$e_{P_\text{pool}} = \text{AvgPool}(e_P) \in \mathbb{R}^{1024}$。
|
||||
|
||||
\subsubsection{跨注意力融合层}
|
||||
|
||||
以AI回复表示$e_{r_t}$为Query,
|
||||
拼接后的上下文表示$[e_H; e_P]$为Key和Value,
|
||||
通过跨注意力机制计算上下文感知的回复表示:
|
||||
|
||||
\begin{equation}
|
||||
e_\text{fused} = \text{CrossAttn}(Q=e_{r_t},\ K=V=[e_H; e_P])
|
||||
\end{equation}
|
||||
|
||||
跨注意力机制使检测器在判断回复风险时,
|
||||
能动态关注对话历史和角色设定中的关键信号(如角色的危险倾向、
|
||||
用户已表达的危机状态),而不仅仅依赖当前回复的表面语义。
|
||||
|
||||
\subsubsection{四分类输出头}
|
||||
|
||||
融合后的表示$e_\text{fused}$送入四个独立分类头:
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{$y_\text{risk}$头}:二分类(安全/有风险),Sigmoid激活
|
||||
\item \textbf{$l_\text{risk}$头}:5分类(L0-L4),CrossEntropy损失
|
||||
\item \textbf{$c_\text{primary}$头}:10分类(R1-R10),CrossEntropy损失
|
||||
\item \textbf{$c_\text{fine}$头}:14标签多标签分类,BCEWithLogitsLoss,正样本权重最大30
|
||||
\end{itemize}
|
||||
|
||||
总损失为四头加权求和:
|
||||
\begin{equation}
|
||||
\mathcal{L} = \mathcal{L}_{y} + \mathcal{L}_{l} + \mathcal{L}_{c} + 2.0 \cdot \mathcal{L}_{f}
|
||||
\end{equation}
|
||||
细粒度标签损失权重设为2.0,以补偿标签稀疏性。
|
||||
|
||||
\subsection{训练设置}
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{Module B训练配置}
|
||||
\label{tab:moduleB_train}
|
||||
\begin{tabular}{ll}
|
||||
\toprule
|
||||
配置项 & 值 \\
|
||||
\midrule
|
||||
主干模型 & hfl/chinese-macbert-large \\
|
||||
GPU & 4 $\times$ RTX 5090 32GB \\
|
||||
有效批大小 & 128(16 $\times$ 4 GPU $\times$ 2 梯度累积) \\
|
||||
训练轮次 & 10 epochs \\
|
||||
学习率 & $2 \times 10^{-5}$,线性warmup 100步 \\
|
||||
混合精度 & bf16 \\
|
||||
细粒度损失权重 & 2.0 \\
|
||||
正样本权重(细粒度) & 最大截断30 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsection{实验结果}
|
||||
|
||||
\subsubsection{主要结果}
|
||||
|
||||
表\ref{tab:moduleB_main}展示Module B与各类基线方法的对比。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{Module B检测性能对比(测试集,$n=1,486$)}
|
||||
\label{tab:moduleB_main}
|
||||
\begin{tabular}{lcccc}
|
||||
\toprule
|
||||
方法 & Binary F1 & Recall & FNR & Level F1(W) \\
|
||||
\midrule
|
||||
L1a:关键词匹配 & 0.264 & 0.155 & 0.845 & 0.098 \\
|
||||
L1b:正则词典 & 0.067 & 0.035 & 0.965 & 0.063 \\
|
||||
L1c:关键词+正则组合 & 0.306 & 0.184 & 0.816 & 0.106 \\
|
||||
\todo{Llama Guard v2} & \todo{} & \todo{} & \todo{} & \todo{} \\
|
||||
\todo{WildGuard} & \todo{} & \todo{} & \todo{} & \todo{} \\
|
||||
\todo{OpenAI Moderation} & \todo{} & \todo{} & \todo{} & \todo{} \\
|
||||
\midrule
|
||||
\textbf{Ours(Module B)} & \textbf{0.9995} & \textbf{1.000} & \textbf{0.000} & \textbf{0.559} \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
Module B的binary F1(0.9995)和漏检率(FNR=0.0\%)
|
||||
较最强规则基线(L1c Combined, 0.306)分别提升0.693和0.816,
|
||||
对所有10个风险类别的召回率均达到1.0(见表\ref{tab:per_category_recall})。
|
||||
|
||||
\subsubsection{分类别召回率}
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{Module B各风险类别召回率(测试集)}
|
||||
\label{tab:per_category_recall}
|
||||
\begin{tabular}{lrrrr}
|
||||
\toprule
|
||||
\multirow{2}{*}{类别} & \multirow{2}{*}{样本数} & \multicolumn{3}{c}{Recall} \\
|
||||
\cmidrule{3-5}
|
||||
& & L1c Combined & Ours & $\Delta$ \\
|
||||
\midrule
|
||||
R1(自伤/自杀) & 136 & 0.074 & \textbf{1.000} & +0.926 \\
|
||||
R2(心理误导) & 142 & 0.120 & \textbf{1.000} & +0.880 \\
|
||||
R3(情感操纵) & 95 & 0.337 & \textbf{1.000} & +0.663 \\
|
||||
R4(隔离支持) & 116 & 0.250 & \textbf{1.000} & +0.750 \\
|
||||
R5(进食/身体) & 64 & 0.141 & \textbf{1.000} & +0.859 \\
|
||||
R6(暴力/危险) & 97 & 0.113 & \textbf{1.000} & +0.887 \\
|
||||
R7(未成年亲密) & 91 & 0.099 & \textbf{1.000} & +0.901 \\
|
||||
R8(隐私诱导) & 73 & 0.671 & \textbf{1.000} & +0.329 \\
|
||||
R9(决策误导) & 152 & 0.072 & \textbf{1.000} & +0.928 \\
|
||||
R10(角色失控) & 73 & 0.192 & \textbf{1.000} & +0.808 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsubsection{细粒度标签性能}
|
||||
|
||||
14个细粒度标签的macro F1为0.463,weighted F1为0.492。
|
||||
主要标签的F1:RiskNormalization(0.698)、DirectEncouragement(0.684)、
|
||||
AgeInappropriateIntimacy(0.616),
|
||||
漏检目标标签FalseReassurance(0.383)、IsolationReinforcement(0.356)
|
||||
经专项数据增强后相比v3分别提升+0.104和+0.068。
|
||||
|
||||
CoRumination(0.269)和CrisisNonResponse(0.394)
|
||||
出现轻微下降(详见第\ref{sec:discussion}节讨论)。
|
||||
|
||||
\subsubsection{泛化性验证}
|
||||
|
||||
为验证Module B的结果不来自训练/测试集同源过拟合,
|
||||
在393条真实人-AI对话(Human-AI自伤对话集,非同源)上进行独立评估,
|
||||
binary F1为\textbf{0.9848},确认泛化能力良好。
|
||||
|
||||
\subsubsection{消融实验}
|
||||
|
||||
\todo{消融实验表格待补充(需GPU重训):上下文信号消融(Response-only / History+Response / Full)}
|
||||
194
paper/sections/06_moduleC.tex
Normal file
194
paper/sections/06_moduleC.tex
Normal file
@@ -0,0 +1,194 @@
|
||||
% ============================================================
|
||||
\section{Module C:RL自适应干预策略}
|
||||
\label{sec:moduleC}
|
||||
% ============================================================
|
||||
|
||||
\subsection{问题建模}
|
||||
|
||||
将干预动作选择建模为马尔可夫决策过程(MDP)。
|
||||
给定当前时刻$t$的检测结果$D_t$和上下文信息,
|
||||
策略$\pi$输出干预动作$a_t$:
|
||||
|
||||
\begin{equation}
|
||||
a_t = \pi(s_t),\quad s_t = f(D_t,\ e_{H_\text{pool}},\ e_{P_\text{pool}},\ t_\text{norm})
|
||||
\end{equation}
|
||||
|
||||
\subsubsection{动作空间}
|
||||
|
||||
干预动作集合$\mathcal{A} = \{\text{PASS, WARN, REWRITE, REJECT, CRISIS}\}$定义如下:
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{PASS}:放行,无干预(适用于安全内容)
|
||||
\item \textbf{WARN}:向用户发送温和提示(适用于轻微不当)
|
||||
\item \textbf{REWRITE}:改写AI回复,去除风险内容(适用于中高风险)
|
||||
\item \textbf{REJECT}:拒绝当前回复,请求重新生成(适用于不可改写的高危内容)
|
||||
\item \textbf{CRISIS}:危机引导,强制插入心理援助资源与现实求助信息(适用于R1危机场景)
|
||||
\end{itemize}
|
||||
|
||||
这五类动作覆盖了平台实际运营中的完整干预响应谱,
|
||||
代价和效益差异巨大——PASS最小侵入,CRISIS最强干预。
|
||||
|
||||
\subsubsection{状态空间}
|
||||
|
||||
状态向量$s_t \in \mathbb{R}^{2065}$由以下分量拼接而成:
|
||||
|
||||
\begin{equation}
|
||||
s_t = [d_\text{score}(1)\ |\ l^\text{det}_\text{onehot}(5)\ |\ c_\text{primary\_probs}(10)\ |\ e_{H_\text{pool}}(1024)\ |\ e_{P_\text{pool}}(1024)\ |\ t_\text{norm}(1)]
|
||||
\end{equation}
|
||||
|
||||
其中$d_\text{score}$为检测器输出的风险概率,
|
||||
$l^\text{det}_\text{onehot}$为检测器预测的风险等级(one-hot编码,使用检测器预测值而非真值),
|
||||
$c_\text{primary\_probs}$为10类一级风险的Softmax概率,
|
||||
$e_{H_\text{pool}},e_{P_\text{pool}}$为对话历史和角色设定的MacBERT池化嵌入,
|
||||
$t_\text{norm}$为归一化当前轮次。
|
||||
|
||||
注意:状态向量严格使用检测器的\textit{预测值},
|
||||
而非ground truth标注,以确保训练条件与部署条件的一致性。
|
||||
|
||||
\subsection{奖励函数设计}
|
||||
|
||||
奖励函数$r(s_t, a_t)$包含以下多目标分量:
|
||||
|
||||
\begin{equation}
|
||||
r = w_1 \cdot r_\text{safety} - w_2 \cdot r_\text{fneg} + w_3 \cdot r_\text{crisis} - w_4 \cdot r_\text{over} - w_5 \cdot r_\text{ux}
|
||||
\end{equation}
|
||||
|
||||
\begin{itemize}
|
||||
\item $r_\text{safety}$:安全收益,对高风险内容采取适当干预时给正奖励($w_1=2.0$)
|
||||
\item $r_\text{fneg}$:漏检惩罚,L3/L4样本被PASS时给强惩罚($w_2=3.0$)
|
||||
\item $r_\text{crisis}$:危机引导奖励,R1危机场景触发CRISIS时额外奖励($w_3=4.0$)
|
||||
\item $r_\text{over}$:过拒惩罚,安全内容被REWRITE及以上干预时给惩罚($w_4=1.5$)
|
||||
\item $r_\text{ux}$:体验代价,强干预动作的用户体验损耗($w_5=0.5$)
|
||||
\end{itemize}
|
||||
|
||||
该多目标奖励显式建模了"安全保障"与"用户体验"之间的权衡,
|
||||
避免策略退化为激进拒绝(所有内容REJECT)或消极放行(所有内容PASS)。
|
||||
|
||||
\subsection{策略网络}
|
||||
|
||||
Actor-Critic网络以状态向量$s_t \in \mathbb{R}^{2065}$为输入:
|
||||
|
||||
\begin{equation}
|
||||
\text{StateEncoder}:\ \mathbb{R}^{2065} \to \mathbb{R}^{256}
|
||||
\quad \text{(2层MLP + LayerNorm + GELU)}
|
||||
\end{equation}
|
||||
|
||||
Actor头和Critic头均以256维隐表示为输入,
|
||||
分别输出5类动作的logits和状态价值估计。
|
||||
|
||||
\subsection{两阶段训练}
|
||||
|
||||
\subsubsection{阶段一:行为克隆预热(BC)}
|
||||
|
||||
以数据集中的推荐动作$a_\text{recommend}$为监督信号,
|
||||
对策略网络进行5轮行为克隆预训练($\text{lr}=10^{-3}$,批大小256)。
|
||||
BC阶段使模型快速学习符合标注规律的基本干预模式,
|
||||
避免PPO从随机策略开始探索时的低效问题。
|
||||
|
||||
\subsubsection{阶段二:PPO强化学习优化}
|
||||
|
||||
在BC预热的基础上,使用PPO算法\cite{schulman2017ppo}
|
||||
在CompanionRisk-Bench训练集上进行离线RL优化:
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{Module C PPO训练配置}
|
||||
\label{tab:moduleC_train}
|
||||
\begin{tabular}{ll}
|
||||
\toprule
|
||||
配置项 & 值 \\
|
||||
\midrule
|
||||
总交互步数 & 200,000步 \\
|
||||
每次rollout步数 & 2,048 \\
|
||||
PPO更新轮次 & 4 \\
|
||||
批大小 & 256 \\
|
||||
学习率 & $3 \times 10^{-4}$ \\
|
||||
裁剪系数$\epsilon$ & 0.2 \\
|
||||
熵系数 & 0.01 \\
|
||||
折扣因子$\gamma$ & 0.99 \\
|
||||
GAE $\lambda$ & 0.95 \\
|
||||
GPU & 1 $\times$ RTX 5090(单卡)\\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
注意:PPO阶段强制使用单卡,避免RTX 5090上
|
||||
\texttt{torch.distributed.barrier()}引发的CUDA内存访问异常。
|
||||
|
||||
\subsection{实验结果}
|
||||
|
||||
\subsubsection{主要结果}
|
||||
|
||||
\todo{本节待填入Module C v5结果。下表中v3数字仅供参考,v5完成后替换。}
|
||||
|
||||
表\ref{tab:moduleC_main}对比了Module C与两个基线策略:
|
||||
Rule-based(l\_risk$\geq3$即REJECT,其余PASS)
|
||||
和Threshold Baseline(按风险分数设定各动作阈值)。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{Module C干预策略对比(测试集,$n=1,486$)}
|
||||
\label{tab:moduleC_main}
|
||||
\begin{tabular}{lccccc}
|
||||
\toprule
|
||||
方法 & SafetyRecall & OverRefusal & ActionAcc & CrisisPrecision & UX Fscore \\
|
||||
\midrule
|
||||
Rule-based & 0.908 & 0.000 & — & — & 0.952 \\
|
||||
Threshold & 0.908 & 0.000 & — & 0.624 & 0.952 \\
|
||||
LLM-as-judge & \todo{} & \todo{} & \todo{} & \todo{} & \todo{} \\
|
||||
\midrule
|
||||
\textbf{Ours(RL v5)} & \todo{} & \todo{} & \todo{} & \todo{} & \todo{} \\
|
||||
(参考:RL v3) & 1.000 & 0.004 & 0.575 & 0.421 & 0.998 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\end{table}
|
||||
|
||||
\subsubsection{各风险等级动作分布}
|
||||
|
||||
表\ref{tab:per_level_action}展示三种方法在各风险等级上的动作分布,
|
||||
直观体现了RL策略的细粒度判断能力。
|
||||
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\caption{各风险等级动作分布(测试集,v3结果,v5待替换)}
|
||||
\label{tab:per_level_action}
|
||||
\resizebox{\textwidth}{!}{%
|
||||
\begin{tabular}{llrrrrrr}
|
||||
\toprule
|
||||
方法 & 等级 & $n$ & PASS & WARN & REWRITE & REJECT & CRISIS \\
|
||||
\midrule
|
||||
\multirow{5}{*}{Rule-based}
|
||||
& L0 Safe & 237 & 1.000 & 0.000 & 0.000 & 0.000 & 0.000 \\
|
||||
& L1 Mild & 280 & 0.918 & 0.000 & 0.000 & 0.082 & 0.000 \\
|
||||
& L2 Moderate & 317 & 0.420 & 0.000 & 0.000 & 0.580 & 0.000 \\
|
||||
& L3 High & 456 & 0.114 & 0.000 & 0.000 & 0.886 & 0.000 \\
|
||||
& L4 Critical & 196 & 0.041 & 0.000 & 0.000 & 0.959 & 0.000 \\
|
||||
\midrule
|
||||
\multirow{5}{*}{Threshold}
|
||||
& L0 Safe & 237 & 1.000 & 0.000 & 0.000 & 0.000 & 0.000 \\
|
||||
& L1 Mild & 280 & 0.843 & 0.075 & 0.082 & 0.000 & 0.000 \\
|
||||
& L2 Moderate & 317 & 0.044 & 0.375 & 0.552 & 0.000 & 0.028 \\
|
||||
& L3 High & 456 & 0.009 & 0.105 & 0.739 & 0.000 & 0.147 \\
|
||||
& L4 Critical & 196 & 0.000 & 0.041 & 0.316 & 0.000 & 0.643 \\
|
||||
\midrule
|
||||
\multirow{5}{*}{\textbf{Ours(RL v3参考)}}
|
||||
& L0 Safe & 237 & 0.987 & 0.008 & 0.004 & 0.000 & 0.000 \\
|
||||
& L1 Mild & 280 & 0.729 & 0.011 & 0.229 & 0.000 & 0.032 \\
|
||||
& L2 Moderate & 317 & 0.000 & 0.000 & 0.902 & 0.000 & 0.098 \\
|
||||
& L3 High & 456 & 0.000 & 0.000 & 0.871 & 0.000 & 0.129 \\
|
||||
& L4 Critical & 196 & 0.000 & 0.000 & 0.633 & 0.000 & 0.367 \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
}
|
||||
\end{table}
|
||||
|
||||
RL策略的核心优势在于:
|
||||
(1)L2-L3层级主要选择REWRITE(改写)而非简单REJECT,
|
||||
平衡了安全性与用户体验;
|
||||
(2)L3/L4样本的PASS率为0.0\%,安全召回率达1.0,
|
||||
而规则基线由于检测器等级预测误差(level\_weighted\_f1=0.559)
|
||||
导致9.2\%的高危样本被错误放行。
|
||||
|
||||
\subsubsection{消融实验}
|
||||
|
||||
\todo{消融实验待补充(BC-only / w/o category-specific reward / v5完成后)}
|
||||
68
paper/sections/07_experiments.tex
Normal file
68
paper/sections/07_experiments.tex
Normal file
@@ -0,0 +1,68 @@
|
||||
% ============================================================
|
||||
\section{实验}
|
||||
\label{sec:experiments}
|
||||
% ============================================================
|
||||
|
||||
\subsection{实验设置}
|
||||
|
||||
\subsubsection{评测集}
|
||||
|
||||
所有实验均在CompanionRisk-Bench测试集($n=1,486$)上进行。
|
||||
为验证泛化性,Module B的评估额外在non-homogeneous子集
|
||||
(393条真实人-AI对话)上进行独立报告。
|
||||
|
||||
\subsubsection{评测指标}
|
||||
|
||||
\textbf{检测任务(Module B)}:
|
||||
\begin{itemize}
|
||||
\item Binary F1(有风险/无风险二分类F1)
|
||||
\item High-risk Recall(高风险样本$y_\text{risk}=1$的召回率)
|
||||
\item False Negative Rate (FNR)(漏检率)
|
||||
\item Level Weighted F1(风险等级5分类加权F1)
|
||||
\item Fine Macro F1(14类细粒度标签宏平均F1)
|
||||
\end{itemize}
|
||||
|
||||
\textbf{干预任务(Module C)}:
|
||||
\begin{itemize}
|
||||
\item Safety Recall(L3/L4高风险样本被正确干预比例)
|
||||
\item Over-refusal Rate(L0安全样本被REWRITE及以上干预的比例)
|
||||
\item Action Accuracy(与标注推荐动作$a_\text{recommend}$的吻合率)
|
||||
\item Crisis Precision(CRISIS动作中L4样本的比例)
|
||||
\item Safety-UX F-score(安全召回率与过拒率的调和平均衍生得分)
|
||||
\end{itemize}
|
||||
|
||||
\subsubsection{基线方法}
|
||||
|
||||
\textbf{检测基线}:
|
||||
L1a(关键词匹配)、L1b(正则词典)、L1c(组合);
|
||||
\todo{L2:Llama Guard v2、WildGuard、OpenAI Moderation(待运行)}
|
||||
|
||||
\textbf{干预基线}:
|
||||
Rule-based($l_\text{risk} \geq 3$即REJECT,其余PASS)、
|
||||
Threshold Baseline(按风险分数阈值映射动作)、
|
||||
\todo{LLM-as-judge(Qwen2.5-72B直接判断,待运行)}
|
||||
|
||||
\subsection{RQ1:检测性能分析}
|
||||
|
||||
详细结果见第\ref{sec:moduleB}节表\ref{tab:moduleB_main}和表\ref{tab:per_category_recall}。
|
||||
|
||||
Module B在所有指标上大幅优于基线。
|
||||
值得关注的是,通用守卫模型(\todo{Llama Guard v2、WildGuard})
|
||||
在伴侣特有风险类别(R3情感操纵、R4现实隔离等)上的召回率
|
||||
预期显著低于整体水平,
|
||||
体现了CompanionRisk Taxonomy的必要性。
|
||||
|
||||
\subsection{RQ2:干预策略比较}
|
||||
|
||||
\todo{本节主要结果待Module C v5完成后填入。}
|
||||
|
||||
核心发现(基于v3结果):
|
||||
RL策略在safety\_recall(1.0 vs 0.908)和
|
||||
UX F-score(0.998 vs 0.952)上均优于两个基线策略,
|
||||
证明了可学习干预策略相比固定规则的优越性。
|
||||
|
||||
\subsection{RQ3:消融实验}
|
||||
|
||||
\todo{消融实验表格待补充。预期包含:
|
||||
(1) Module B:Response-only / History+R / Persona+R / Full;
|
||||
(2) Module C:BC-only / RL w/o category reward / Full RL。}
|
||||
61
paper/sections/08_discussion.tex
Normal file
61
paper/sections/08_discussion.tex
Normal file
@@ -0,0 +1,61 @@
|
||||
% ============================================================
|
||||
\section{讨论与局限}
|
||||
\label{sec:discussion}
|
||||
% ============================================================
|
||||
|
||||
\subsection{RL策略的行为解读}
|
||||
|
||||
从表\ref{tab:per_level_action}的动作分布可以观察到RL策略的几个显著特征:
|
||||
|
||||
\textbf{检测器误差的鲁棒性。}
|
||||
规则基线在L3/L4上的safety\_recall仅为0.908,
|
||||
根源在于检测器的等级预测存在误差(level\_weighted\_f1=0.559),
|
||||
导致约9.2\%的高危样本被预测为低等级后通过规则漏检。
|
||||
RL策略综合利用风险概率$d_\text{score}$、一级类别分布$c_\text{primary\_probs}$
|
||||
和上下文嵌入等多维信号,在检测器等级预测不完美的情况下
|
||||
仍实现safety\_recall=1.0,体现了多信号融合的优势。
|
||||
|
||||
\textbf{动作细粒度化。}
|
||||
RL策略在L2-L3层级主导选择REWRITE(改写),
|
||||
而规则基线在L2-L3层级主导选择REJECT(拒绝),
|
||||
在L1层级主导选择PASS(放行)。
|
||||
REWRITE在保障安全的同时,对用户体验的损耗远小于REJECT,
|
||||
体现了策略对安全-体验权衡的主动优化。
|
||||
|
||||
\subsection{当前局限性}
|
||||
|
||||
\textbf{局限一:action\_accuracy偏低(当前v3: 0.575)。}
|
||||
action\_accuracy衡量RL策略与数据集标注推荐动作$a_\text{recommend}$的一致率。
|
||||
偏低的主要原因在于:
|
||||
(1)$a_\text{recommend}$本身基于风险等级规则映射生成,
|
||||
在L1/L2边界层级存在固有歧义(WARN vs REWRITE的合理性相近);
|
||||
(2)RL策略优化的是\textit{多目标奖励}而非对齐$a_\text{recommend}$,
|
||||
其在关键安全指标(safety\_recall、UX F-score)上的优势
|
||||
不应被单一action\_accuracy遮蔽。
|
||||
\todo{v5更新:基于对标注动作合理性的更精准评估,action\_accuracy预期提升。}
|
||||
|
||||
\textbf{局限二:crisis\_precision不足(当前v3: 0.421)。}
|
||||
CRISIS动作精准率低的主要原因是R1危机类训练样本稀少
|
||||
(全集约410条,仅占总样本4.1\%),
|
||||
导致策略倾向于在非R1的高风险场景下也触发CRISIS。
|
||||
\todo{v5更新:通过类别感知奖励和针对R1的专项激励,crisis\_precision预期提升至0.65+。}
|
||||
|
||||
\textbf{局限三:数据集同源性。}
|
||||
CompanionRisk-Bench的9,896条样本中,
|
||||
约91\%(8,000+1,083条)由LLM(Qwen2.5-72B)生成。
|
||||
尽管非同源子集(human subset)上的binary F1为0.9848
|
||||
证明了跨来源泛化性,
|
||||
但大规模部署前仍需要在更多真实平台对话上进行验证。
|
||||
|
||||
\textbf{局限四:跨语言泛化未验证。}
|
||||
本文主要面向中文情感陪伴场景,
|
||||
英文伴侣平台(Replika、Character.AI)的泛化性
|
||||
是未来工作方向。
|
||||
|
||||
\subsection{伦理声明}
|
||||
|
||||
CompanionRisk-Bench数据集涉及自伤、危机、隐私诱导等
|
||||
敏感内容,均来源于合成生成或已公开的研究数据集,
|
||||
不包含真实用户的个人信息。
|
||||
数据集发布时将提供合理使用条款,仅限于安全研究用途。
|
||||
\todo{补充数据集伦理审查/IRB声明(如有)。}
|
||||
27
paper/sections/09_conclusion.tex
Normal file
27
paper/sections/09_conclusion.tex
Normal file
@@ -0,0 +1,27 @@
|
||||
% ============================================================
|
||||
\section{结论}
|
||||
\label{sec:conclusion}
|
||||
% ============================================================
|
||||
|
||||
本文提出CompanionGuard-RL,一个将情感陪伴AI安全建模为
|
||||
"检测+自适应干预"统一流水线的框架,填补了现有守卫模型
|
||||
在伴侣特有关系性风险识别和干预决策两个维度上的空白。
|
||||
|
||||
在检测层面,Module B基于MacBERT-Large与跨注意力机制,
|
||||
在自建CompanionRisk-Bench评测集(9,896条,涵盖10类一级风险和14个细粒度标签)上
|
||||
实现binary F1 = 0.9995,FNR = 0.0\%,
|
||||
相比关键词/正则规则基线提升两个数量级,
|
||||
并在非同源人工数据上验证了跨来源泛化性(binary F1 = 0.9848)。
|
||||
|
||||
在干预层面,Module C通过行为克隆预热+PPO强化学习,
|
||||
学习在检测器信号与上下文嵌入基础上进行多目标优化的干预策略。
|
||||
与规则基线相比,RL策略的安全召回率(1.0 vs 0.908)
|
||||
和安全-体验综合得分(0.998 vs 0.952)均显著更优,
|
||||
同时通过细粒度动作分布体现了检测器等级误差下的鲁棒干预能力。
|
||||
|
||||
CompanionRisk Taxonomy、CompanionRisk-Bench数据集
|
||||
和CompanionGuard-RL框架代码将公开发布,
|
||||
以推动情感陪伴AI安全领域的研究。
|
||||
未来工作将重点优化CRISIS动作精准率、
|
||||
增加跨语言泛化验证,
|
||||
并探索基于人类反馈的干预策略精化。
|
||||
Reference in New Issue
Block a user