精准率和召回率是常见的评估指标,主要区别如下:
精准率(Precision):指返回的检索内容中有用信息的占比。也就是说,在所有被检索出来的内容中,真正有用的信息所占的比例。其计算公式为:精准率 = 真正例 / (真正例 + 假正例)。
召回率(Recall):指相关信息被正确预测出来的比例,即真正例在所有实际相关信息中的占比。其计算公式为:召回率 = 真正例 / (真正例 + 假反例)。
例如,在一个文档检索的场景中,精准率体现的是检索出的文档中有多少是真正有用的;召回率则体现的是相关的文档有多少被包含在返回的检索结果里。
总的来说,精准率关注的是检索结果的准确性,而召回率关注的是检索结果的完整性。
2.2.1最常见的一些自动化评估指标准确性指标:准确率(Accuracy):正确预测的样本数占总样本数的比例。召回率(Recall):真正例被正确预测出来的比例。F1值:综合考虑准确率和召回率的平衡指标。性能指标:推理速度:测量模型处理一个或一批输入数据所需的时间,反映其效率。资源利用率:如计算资源(CPU、GPU等)的使用情况。泛化能力评估:交叉验证:将数据集划分成多个子集,进行多次训练和验证,以观察模型在不同数据子集上的表现。比较基准:与已有的同类优秀模型进行比较,查看在相同任务和数据集上的表现差异。稳定性评估:多次运行模型,观察结果的一致性和波动情况。2.2.2进阶的自动化评估指标答案相似度:1、用embedding模型提取truths与answer的文本语义向量2、计算向量之间的相似度一般用余弦相似度(需要人工标注)答案相关度:1、利用LLM通过答案反推出问题。2、用embedding模型提取answer与生成问题的文本语义向量3、计算实际问题和生成问题向量之间的相似度(不需要标注)语境精确率其实就是有帮助的文档数量与所有被检索出的文档数量的比例。他体现的额是RAG系统对文档检索的精准度。会惩罚搜索一大堆没有用的文档给下游的行为1、用LLM判断contests对Question有用的数量。假设有帮助的为P
对比不同大型语言模型的性能需要考虑多个维度,包括但不限于以下几个方面:1.理解能力:评估模型对语言的理解程度,包括对语法、语义、上下文和隐含意义的理解。2.生成质量:检查模型生成的文本的质量,包括文本的流畅性、相关性和准确性。3.知识广度和深度:评估模型对广泛主题的知识掌握程度,以及它对特定领域或话题的理解深度。4.泛化能力:测试模型在处理未见过的任务或数据时的表现,这反映了模型的泛化能力。5.鲁棒性:检查模型对错误输入、对抗性输入或模糊不清的指令的应对能力。6.偏见和伦理:评估模型生成文本时是否存在偏见,以及模型是否遵循伦理标准。7.交互性和适应性:评估模型在交互环境中的表现,包括对用户反馈的适应性和持续对话的能力。8.计算效率和资源消耗:考虑模型的大小、训练和运行所需的计算资源。9.易用性和集成性:评估模型是否易于集成到不同的应用和服务中,以及提供的API和工具的易用性。为了进行有效的比较,可以采用以下方法:标准基准测试:使用标准的语言模型评估基准,如GLUE、SuperGLUE、SQuAD等,这些基准提供了统一的测试环境和评分标准。自定义任务:根据特定需求设计任务,以评估模型在特定领域的表现。人类评估:结合人类评估者的主观评价,特别是在评估文本质量和伦理问题时。A/B测试:在实际应用场景中,通过A/B测试比较不同模型的表现。性能指标:使用包括准确率、召回率、F1分数、BLEU分数等在内的性能指标来量化比较。
如果检索到的知识是无效的,会严重影响LLM应用的表现,因此将检索过程的精确度和召回率与整个LLM应用程序分开进行研究尤为重要。如下图所示,需要建立一个评估框架,将检索性能与整个LLM应用程序隔离开来。所以这里需要既需要从模型角度出发评估生成结果的质量,也需要从检索的角度出发,用精确度和召回率评估检索,并评估整个系统。模型角度(generation)回答真实性:模型结果真实性多高(少一些模型幻觉)回答相关度:结果和问题有多相关,不能南辕北辙检索角度(retrieval)召回率(recall):相关信息有多少包含在返回的检索内容里,越全越好准确率(precision):返回的检索内容中有用信息占比多少,越多越好RAGAS是一个用于RAG评估的知名开源库,推荐使用:[https://github.com/explodinggradients/ragas](https://github.com/explodinggradients/ragas)[heading3]RAG局限性[content]如果LLM应用面临的问题与上下文有关,那么RAG就是一个强大的工具。它使模型能够访问外部数据源,提供模型训练数据中不存在的必要上下文。这种方法可以显著提高模型的性能,尤其是在最新信息或特定领域信息至关重要的情况下。为模型提供参考文本的情况下,也能大大降低模型幻觉。需要注意的是RAG的局限性如下:适合打造专才,不适合打造通才。虽然能够为模型提供新的信息、专有领域知识等,但并不适合为模型提供通用领域知识。让模型保持稳定的风格或结构输出,降低token消耗等。也就是我们在prompt工程局限性的后两点,而这两点需要使用微调技术解决。