【论文阅读笔记】HaDes幻觉检测benchmark

0 论文信息

  • 题目:A Token-level Reference-free Hallucination Detection Benchmark for
    Free-form Text Generation
  • 作者:Tianyu Liu, Yizhe Zhang, Chris Brockett, Yi Mao, Zhifang Sui, Weizhu Chen, Bill Dolan
  • 会议:ACL,2022
  • 链接:https://arxiv.org/abs/2104.08704

1 背景

LLM幻觉检测现有方法缺点:

  • 依赖句子或文档级参考文本(oracle reference),文本生成任务不容易有 reference 来判断是否为幻觉;
  • 检测粒度较粗,无法实时判断 token 是否出现幻觉。

2 论文贡献

2.1 数据集构建

提出 令牌级(token-level)、无参考(reference-free) 的幻觉检测任务,无需依赖外部参考文本,直接检测文本中单个令牌的幻觉风险。同时,构建了上述任务的数据集 HaDes。构建流程如下:

  • raw data:英文Wiki百科文本片段
  • 扰动文本 :对原始文本进行内容篡改以引入幻觉。使用BERT进行干扰,保证文本的流畅性并且在词汇上多样化。主要有三个阶段:MASK、REPLACE、RANK。
    • MASK:使用[MASK] token从第三句话开始随机预定义的比率p随机mask掉单词(默认mask掉一个,除非spacy实体识别为更长的长度,即实体为最小的mask单元),不mask停用词或标点符号
    • REPLACE:利用BERT-base来预测mask掉的部分,为了更好的流畅性,是从左到右预测mask文本的,实验中保持了干扰前后token数量相同,并且直接强制不生成原始token。比较了贪婪、topp、topk几种解码策略,每种方法采样30个文本,最后选择了topk(k=10),因为多样性(生成不同token的数量)和流畅性的权衡最好。
    • RANK:对每个raw text生成20个候选扰动文本,使用GPT-2根据困惑度排序,保留困惑度最低的文本,保证流畅性和句法正确性。
  • 数据标注 :通过人工标注验证扰动后的文本是否存在幻觉。为了降低标注成本 同时解决数据中的标签不平衡 问题,采用 *迭代模型闭环(iterative model-in-loop) 策略。以 BERT 为基础模型,利用前一轮标注数据迭代训练幻觉检测模型,舍弃模型预测概率极高或极低的样本(阈值随轮次调整),保留高不确定性样本,同时使用 RoBERTa 模型计算扰动文本与原始文本的余弦相似度,过滤相似度 > 0.9 的改述样本。与此同时,通过子采样降低标注中的 H 类标签。
  • 数据分析:得到幻觉分布规律 (如常见于名词)

2.2 baseline model

Featrue-based:平均单词概率、平均熵(这两个用BERT-based算)、TF-IDF、PPMI、POS(比如动词、形容词的区别)、NER(是否是命名实体)。然后使用逻辑回归LR和支持向量机SVM来学习。

Transformer-based:BERT、GPT-2(只能用于在线设置)、XLNet和RoBERTa。从最后一层的hidden-state中最大池化,然后映射到0-1标签熵,训练时就用交叉熵。

最优参数 :使用最大池化而非平均池化、使用2层隐藏维数为h / 2的MLP,将模型参数冻结,只微调分类器。
评价指标 :accuracy, precision, recall, F1(p, r, F1分H和N计算), AUC, G-Mean, BSS

上下文长度对模型性能的影响如下:

离线模式指可以双向阅读上下文,在线模式指只能阅读上文的历史记录。

相关推荐
听麟30 分钟前
HarmonyOS 6.0+ PC端虚拟仿真训练系统开发实战:3D引擎集成与交互联动落地
笔记·深度学习·3d·华为·交互·harmonyos
DuHz33 分钟前
通过超宽带信号估计位置——论文精读
论文阅读·人工智能·机器学习·自动驾驶·汽车
Biomamba生信基地41 分钟前
《Science Advances》11例样本图谱文章,空间转录组揭示特发性肺纤维化病理特征
论文阅读·空间转录组分析
一个人旅程~44 分钟前
我存在吗?你存在吗?
笔记·程序人生·电脑·ai写作
xqqxqxxq1 小时前
Java IO 核心:BufferedReader/BufferedWriter & PrintStream/PrintWriter 技术笔记
java·笔记·php
第七序章1 小时前
【Linux学习笔记】初识Linux —— 理解gcc编译器
linux·运维·服务器·开发语言·人工智能·笔记·学习
-Springer-2 小时前
STM32 学习 —— 个人学习笔记5(EXTI 外部中断 & 对射式红外传感器及旋转编码器计数)
笔记·stm32·学习
崎岖Qiu2 小时前
【计算机网络 | 第十篇】以太网的 MAC 层
网络·笔记·计算机网络·mac地址
BlackWolfSky2 小时前
鸿蒙高级课程笔记2—应用性能优化
笔记·华为·harmonyos
玄同7652 小时前
Python Random 模块深度解析:从基础 API 到 AI / 大模型工程化实践
人工智能·笔记·python·学习·算法·语言模型·llm