微信扫码
与创始人交个朋友
我要投稿
我们来看知识图谱用来做大模型幻觉评估和修正的一个工作,其实是知识图谱参与大模型全周期的最后一环。
最近看到一个工作 《GraphEval: A Knowledge-Graph Based LLM Hallucination Evaluation Framework》(https://arxiv.org/pdf/2407.10793),提出了一个基于知识图谱的幻觉检测框架,用于评估大模型的回复,并检测与提供的知识不一致的地方,即所谓的“幻觉”。
此外,其还提供了一个将幻觉检测的结果进行进一步纠正的思路,虽然全是prompt,但也很有趣。从实现思想上来看,其基于通过知识图谱结构表示信息的思想,旨在解决之前幻觉检测方法缺乏可解释性的问题,从而提出了一个两阶段过程。
这种思路很有趣,也足够简单,感兴趣的可以看看,会有收获。
GraphEval首先从LLM输出中构建知识图谱,然后迭代检查每个三元组(triple)是否在给定上下文中事实一致。如果任何三元组被识别为不一致,输出将被视为事实不一致,并可能返回不一致的三元组以提供可解释性。
示意图如下所示:
我们分成两个方面来看,一个是GraphEval幻觉检测思路,另一个是GraphCorrect幻觉纠正实现思路。
第一阶段:从待评估的LLM输出中构建知识图谱。
对应的prompt如下:
第二阶段:迭代检查知识图谱中的每个三元组(triple),确定它们是否在给定上下文中事实一致。
将知识图谱中的每个三元组输入到一个现成的幻觉检测方法(如自然语言推理模型)中,并与提供的上下文进行比较,以检查是否存在不一致性。
如果任何三元组被识别为不一致,整个输出将被视为事实不一致,并返回不一致的三元组以提供可解释性。
其中,这一步使用自然语言推理(NLI)模型,通过将每个三元组与上下文一起输入NLI模型,获得每个三元组包含幻觉的概率。如果至少一个三元组产生的概率大于0.5,则将示例分类为不一致。
这块的方法之前我们看到过许多,例如,代表性的有
HHEM:基于DeBERTaV3模型,并最初在NLI数据上进行训练,Vectara创建的幻觉评估模型进一步在标注为一致性的数据库上进行微调。用于微调的数据集包括:FEVER、VitaminC和PAWS。此模型相对较小,仅需要738MB的内存,因此运行时间明显更短。
TRUE:基于T5-XXL模型,并类似于TRUE论文中描述的模型进行训练。与该论文中使用的ANLI数据集不同,此模型在与HHEM相同的数据集上进行训练,再加上以下数据集:SNLI、MNLI和Scitail。此模型需要45.5GB的内存。
TrueTeacher:Gekhman等人利用LLM评估幻觉的能力,通过注释模型生成的摘要生成合成数据。然后他们使用这些合成数据进一步微调中的模型,从而在TRUE基准测试中实现最先进的性能。此模型与TRUE模型大小相同。
不同模型对应的结果对比如下:
GraphEval 的输出可以扩展到纠正幻觉。首先识别知识图谱中可能包含幻觉的所有三元组(即那些概率大于0.5的三元组)。
分成3步:
首先,识别幻觉,先使用GraphEval检测方法识别出知识图谱中可能包含幻觉的三元组。
其次,纠正三元组,将这些三元组和上下文一起输入到LLM中,生成更正后的三元组。
最后,将原始LLM输出中的信息替换为更正后的三元组中的信息,对应的prompt如下:
与此相对应的,有不使用KG,而直接让大模型自行进行纠正的prompt,叫做“直接提示”如下:
最终对比的结果还是很有趣的,可以看看消融试验:
对提出的每种评估框架(HHEM+GraphEval、TRUE+GraphEval和TrueTeacher+GraphEval),将GraphCorrect与一种基本的提示策略进行了比较,作为幻觉纠正的基线。这种基线方法中使用的提示,也就是“直接提示”。
对于每个框架,首先识别幻觉,然后仅使用GraphCorrect或直接提示纠正怀疑包含幻觉的LLM输出,然后重新应用评估框架以检测纠正后的LLM输出中的幻觉。但此过程仅允许测量我们认为已纠正的幻觉,考虑到所使用的评估框架可能存在的错误。
表3中报告了使用直接提示和GraphCorrect在不同数据集和幻觉检测框架下,原始摘要和纠正版本之间的平均ROUGE-1、ROUGE-2和ROUGE-L分数,以衡量相似性。
表4中使用直接提示策略和GraphCorrect在SummEval、QAGS-C和QAGS-X基准测试中,认为已纠正的幻觉的百分比。幻觉首先由HHEM+GraphEval、TRUE+GraphEval和TrueTeacher+GraphEval分别检测,然后使用相同的指标进行纠正评估。
可以看到,GraphCorrect在所有任务中显著纠正了更多的幻觉,除了与QAGS-X数据集相关的两个任务。
本文主要介绍了GraphEval这个工作,其还是很有趣的,与之前的工作相比,其将纯文本格式的比对与知识图谱相结合。但也存在一些问题。例如:知识图谱构建阶段,可能会发生一些信息,吃出来的东西并不准确。
此外,GraphCorrect提供了仅修改LLM输出中易受幻觉影响的文本段的优势,同时保持其他部分不变,从而保持与原始文本的相似性。
这一特性通过在所有实验场景中评估原始摘要和纠正版本之间的ROUGE-1、ROUGE-2和ROUGE-L指标来说明,与直接提示相比,GraphCorrect系统地生成了与原始LLM输出更接近的文本。
这其实又是基于知识图谱进行事后校验的一个直接实现,这些闭环了。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-11-23
DB-GPT V0.6.2 版本更新:牵手libro社区、GraphRAG图谱构建能力增强等
2024-11-22
技术动态 | 如何使用知识图谱改进RAG?
2024-11-22
RAG前沿之RAG–知识图谱构建框架Graphusion:兼看LongRAG双视角检索增强生成范式
2024-11-21
OpenSPG/KAG 新版发布:聚焦用户反馈,大幅优化用户体验!
2024-11-15
大语言模型与图结构的融合:推荐系统中的新兴范式
2024-11-15
利用LLM构建非结构化文本的知识图谱
2024-11-13
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
2024-11-13
利用LLM Graph Transformer实现知识图谱的高效构建
2024-07-17
2024-07-11
2024-07-13
2024-08-13
2024-07-08
2024-07-12
2024-07-26
2024-06-10
2024-07-04
2024-06-24
2024-11-22
2024-11-04
2024-10-10
2024-10-03
2024-09-27
2024-09-08
2024-09-05
2024-08-27