Graphically Speaking: Unmasking Abuse in Social Media with Conversation Insights¶
会议: ACL 2025
arXiv: 2504.01902
代码: 已开源(论文中附链接)
作者: Célia Nouri, Jean-Philippe Cointet, Chloé Clavel
机构: INRIA ALMAnaCH, Sciences Po médialab, Télécom Paris
领域: 仇恨言论检测 / 图神经网络
关键词: 滥用语言检测, 图注意力网络, 对话上下文, Reddit, 上下文感知分类
一句话总结¶
提出一种基于图注意力网络(GAT)的上下文感知滥用语言检测框架,将 Reddit 对话建模为图结构(节点=评论,边=回复关系),利用基于 Reddit 界面渲染逻辑的 affordance-based 图裁剪策略保留关键上下文,3 层 GAT 模型达到 F1=0.7624,显著优于无上下文基线和扁平化上下文方法,在上下文敏感样本上提升尤为明显(+4.75%)。
研究背景与动机¶
领域现状:社交媒体中滥用语言(Abusive Language, AL)的检测是重要挑战。AL 包括仇恨言论、毒性内容、攻击性语言和网络欺凌。大多数现有 ALD 模型独立分类每条评论,忽视对话上下文。
上下文的重要性: - Pavlopoulos et al. (2020) 发现加入上下文后 5% 的标签发生改变 - Menini et al. (2021) 发现加入上下文后滥用标签占比从 18% 降至 10% - 这些矛盾结果说明上下文整合的复杂性
现有方法的不足: - 多数方法仅考虑前一条评论或原始帖子作为上下文 - 扁平化处理(简单拼接)无法建模对话结构,甚至引入噪声 - 已有图方法多构建全连接图或依赖平台特定特征(如转发路径),不够通用
核心动机:利用图结构显式保留对话拓扑,让上下文信息在多层交互中传播,从而更好地捕获滥用语言的上下文依赖
方法详解¶
整体架构¶
BERT 文本编码 → Affordance-based 图构建 → GAT 多层上下文聚合 → 拼接+分类
问题形式化¶
给定对话线程 T = {c_1, ..., c_N},构建有向图 G(T) = (V, E),其中节点 V 代表评论,边 (c_j, c_i) ∈ E 表示 c_i 是 c_j 的回复。每个节点特征 \(\mathbf{x}_i \in \mathbb{R}^d\) 来自 BERT 的 [CLS] token 嵌入。目标:预测目标评论 c_i 的标签 y_i ∈ {0, 1}(0=非滥用,1=滥用)。
Affordance-based 图裁剪策略¶
Reddit 对话可能包含数百条评论,但用户写回复时通常只看到部分内容。本文设计了模拟 Reddit 默认渲染算法的图裁剪策略:
对每个目标评论 c_i,保留以下节点构成子图 G_i: 1. 原始帖子 c_1(蓝色) 2. 根帖的 Top-5 高分回复(绿色)—— 按 upvotes-downvotes 排名 3. 每个 Top-5 回复的最高分子回复(黄色) 4. 从根帖到目标评论的完整回复路径(红色)
此外,每个节点都与原始帖子相连,模拟用户看到帖子后再阅读回复的行为流。裁剪后图最多 25 个节点,中位数 9 个。
GAT 模型¶
使用图注意力网络(Veličković et al., 2018)学习上下文表示:
每层更新: $\(\mathbf{x}_m^{(l+1)} = \text{ELU}\left(\sum_{n \in \mathcal{N}(m)} \alpha_{mn} \mathbf{W}^{(l)} \mathbf{x}_n^{(l)}\right)\)$
注意力系数: $\(\alpha_{mn} = \frac{\exp(\text{LeakyReLU}(\mathbf{a}^T [\mathbf{W}^{(l)}\mathbf{x}_m^{(l)} \| \mathbf{W}^{(l)}\mathbf{x}_n^{(l)}]))}{\sum_{k \in \mathcal{N}(m)} \exp(\text{LeakyReLU}(\mathbf{a}^T [\mathbf{W}^{(l)}\mathbf{x}_m^{(l)} \| \mathbf{W}^{(l)}\mathbf{x}_k^{(l)}]))}\)$
最终分类: L 层 GAT 后,将目标节点的图嵌入 \(\mathbf{x}_i^{(L)}\) 与原始文本嵌入 \(\mathbf{x}_i\) 拼接→全连接层降维到 d=768 → 分类层 → Sigmoid 输出
模型参数量极小:BERT (110M) + GAT (~6M/层),推理仅需 100-200ms,远低于 GLM 的数秒级延迟。
损失函数¶
标准二元交叉熵损失。
实验¶
数据集:Contextual Abuse Dataset (CAD)¶
- 约 25,000 条 Reddit 评论,来自 16 个以滥用内容著称的子版块
- 采用基于目标的六类分类法:3 类滥用(Identity-directed / Affiliation-directed / Person-directed)+ 3 类非滥用(Neutral / Counter Speech / Non-Hateful Slurs)
- 标注流程严格:每条由 2 名标注员标注 → 不一致通过共识仲裁 → 专家最终审核
- Fleiss' Kappa = 0.583(中等一致性)
- 本文使用二分类(滥用 vs 非滥用)
- 标注员标记了约 1/3 的滥用样本需要对话上下文才能正确分类
RQ1: 最优上下文窗口¶
| GAT 层数 | (最大, 中位)节点数 | Mean F1 ± CI |
|---|---|---|
| 1 | (3, 2) | 0.7537 ± 0.0069 |
| 2 | (7, 3) | 0.7613 ± 0.0041 |
| 3 | (12, 5) | 0.7624 ± 0.0058 |
| 4 | (13, 7) | 0.7592 ± 0.0065 |
| 5 | (14, 8) | 0.7609 ± 0.0043 |
关键发现: - 3 层 GAT 性能最佳(F1=0.7624),其感受野(中位 5 节点、最大 12 节点)恰好覆盖 affordance-based 图中大部分节点 - 超过 3 层后性能略降——远处评论引入不相关信息 - 2-5 层间差异无统计显著性,但 1 层明显不足
RQ2: 图模型 vs 扁平化模型¶
| 模型 | Mean F1 ± CI |
|---|---|
| No Context (BERT) | 0.7453 ± 0.0076 |
| Text-Concat (Longformer) | 0.7417 ± 0.0081 |
| Embed-Concat | 0.7488 ± 0.0025 |
| GAT 3L (ours) | 0.7624 ± 0.0058 |
关键发现: - 扁平化上下文方法(Text-Concat)反而不如无上下文基线——简单拼接引入噪声,印证了之前研究的发现 - GAT 3L 显著优于所有基线 - Embed-Concat 略优于 No Context,但远不如 GAT
上下文敏感样本分析¶
| 模型 | 上下文敏感(CSS) PCP | 上下文无关(CFS) PCP |
|---|---|---|
| No Context | 70.71% ± 2.61 | 81.67% ± 2.89 |
| Text-Concat | 70.80% ± 3.61 | 82.33% ± 1.88 |
| Embed-Concat | 70.97% ± 1.19 | 83.00% ± 1.98 |
| GAT 3L | 74.07% ± 1.12 | 84.21% ± 2.14 |
关键发现: - CSS 对所有模型都更有挑战性(低约 10%) - GAT 在 CSS 上的提升更显著:比 No Context +4.75%(CFS 仅 +3.11%) - 比 Text-Concat: CSS +4.62%(CFS 仅 +2.28%) - 说明 GAT 在需要上下文推断的场景中优势最大
案例分析¶
以论文 Section 1 展示的对话图为例: - 目标评论 "No u" 被标注为滥用,但孤立看无法判断 - 滥用来源(恐同侮辱)位于目标评论 3 跳之外 - 1-2 层 GAT 无法正确分类,3+ 层 GAT 可以——因为 3 跳感受野恰好覆盖了关键上下文 - 注意力权重分析:回复路径上的边获得高注意力权重,原始帖子到其他节点的边注意力很低——模型学会了动态识别和优先处理关键上下文线索
与 GLM 的对比¶
- 专有 GLM (GPT-4: 1.76T 参数) 缺乏透明性,不适合内容审核
- 开源 GLM (LLaMA-2-13B, DeepSeek-V2) 参数庞大
- 本文方法:BERT (110M) + GAT (~6M/层) 仅约 116-128M 参数
- 推理速度:100-200ms vs GLM 的数秒
亮点与洞察¶
- Affordance-based 图裁剪:模拟 Reddit 用户实际看到的内容来构建图——这是一种优雅的"用户视角"设计,比全连接图或随机裁剪更合理
- 简单拼接上下文有害:Text-Concat 甚至不如无上下文基线——这对"更多上下文=更好"的直觉是有力反驳
- 图结构在 CSS 上优势放大:正是在最需要上下文的样本上,图方法提升最大——直接证明了结构化上下文建模的价值
- 轻量高效:~120M 参数、100-200ms 推理延迟,远优于 GLM 替代方案,适合大规模部署
- 注意力可解释性:GAT 的注意力权重可直接揭示模型关注哪些上下文节点——为内容审核提供可解释性
局限性¶
- 仅在 CAD 单一数据集上评估——需要更多跨平台、多语言数据集验证
- 仅使用文本信息:Reddit 帖子中常有图片(尤其原始帖子),未纳入多模态信号
- 未整合用户行为和社交动态:如用户历史行为、社交关系等
- 2-5 层 GAT 差异无统计显著性——可能需要更大数据集来区分最优层数
- Affordance-based 策略针对 Reddit 设计,是否适用于其他平台(Twitter/X、Facebook)需要额外验证
- 隐性滥用和反讽检测能力有限——这是 ALD 的通用难题
相关工作¶
- 上下文对标注的影响:Pavlopoulos et al. (2020) → Menini et al. (2021) → 矛盾发现说明上下文整合的复杂性
- 扁平化上下文方法:Text-Concat (BERT/Longformer) → Embed-Concat → History Embedding → 效果不一致
- 图方法:全连接图(Wang et al., 2020)→ 时序图(Cecillon et al., 2021)→ 回复图(Hebert et al., 2024; Agarwal et al., 2023)
- GraphNLI (Agarwal et al., 2023):固定概率随机游走+距离折扣 → 本文 GAT 动态学习上下文节点重要性
- 大模型方法:GPT-4/DeepSeek through prompting → 缺乏透明性、计算昂贵、不适合实时审核
评分¶
⭐⭐⭐⭐ (4/5)
- 创新性: ⭐⭐⭐⭐ — Affordance-based 图裁剪和 GAT 在 ALD 上的系统性应用是亮点
- 实验充分性: ⭐⭐⭐⭐ — 层数消融、多基线对比、CSS/CFS 分析、注意力可视化均完整
- 写作质量: ⭐⭐⭐⭐⭐ — 动机清晰、案例分析生动、图示优秀
- 实用价值: ⭐⭐⭐⭐⭐ — 轻量高效、可解释、适合大规模部署
- 局限: 仅一个数据集、纯文本模态、Reddit 特定策略
相关论文¶
- [ACL 2025] Temporal Reasoning for Timeline Summarisation in Social Media
- [ACL 2025] Narrative Media Framing in Political Discourse
- [ACL 2025] REP: Keys to Robust Edits — From Theoretical Insights to Practical Advances
- [ACL 2025] GA-S3: Comprehensive Social Network Simulation with Group Agents
- [ACL 2025] SOTOPIA-Ω: Dynamic Strategy Injection Learning and Social Instruction Following Evaluation for Social Agents