文本生成模型评估方法

chatgpt/2023/10/4 7:14:00

“”"

好的,我来通俗易懂地介绍一下这几个指标,并给出一些例子。1. Rouge 指标Rouge 是一组用于自动文本摘要评估的指标,经常用于自然语言处理中。Rouge 包括三种常用的指标:Rouge-1、Rouge-2 和 Rouge-L,它们的含义分别如下:- Rouge-1:计算自动生成文本与参考摘要中各个短语之间的重合度分数,其中短语包括单个的词语和句子。- Rouge-2:计算自动生成文本与参考摘要中相邻两个短语之间的重合度分数,其中短语为两个单词组成的二元组。- Rouge-L:使用最长公共子序列(LCS)来计算生成文本和参考摘要的相似性分数。例如,在一个文本摘要任务中,我们需要将一段文本(例如一篇新闻文章)缩短为一个摘要(例如一到两句话),然后使用 Rouge 指标来评估我们的摘要的质量。假设我们的摘要生成如下:

今天是一个阳光明媚的日子,我和朋友们开心地玩耍着。


我们可以将参考摘要(ground-truth summaries)定义为人工编写的摘要,假设参考摘要如下:

晴朗的天气里,我们在户外尽情游玩。


对于 Rouge-1,我们可以将生成文本和参考摘要分解成多个短语并计算它们的重合度得分,例如:

生成文本:今天、是、一个、阳光明媚、的、日子、我、和、朋友们、开心、地、玩耍着
参考摘要:晴朗、的、天气里、我们、在、户外、尽情、游玩

重合度分数:3/10 = 0.3


对于 Rouge-2,我们需要计算相邻两个短语之间的重合度得分。以下是一个例子:

生成文本:今天 是、是 一个、一个 阳光明媚、阳光明媚 的、的 日子、日子 我、我 和、和 朋友们、朋友们 开心、开心 地、地 玩耍着
参考摘要:晴朗 的、的 天气里、天气里 我们、我们 在、在 户外、户外 尽情、尽情 游玩

重合度分数:1/9 = 0.111


对于 Rouge-L,我们需要使用最长公共子序列(LCS)来计算生成文本和参考摘要之间的相似性。以下是一个例子:

生成文本:今天 是 一个 阳光明媚 的 日子,我 和 朋友们 开心 地 玩耍着
参考摘要:晴朗 的 天气里,我们 在 户外 尽情 游玩

LCS:是 一个 我 和 开心 玩耍着

LCS 长度:5

Rouge-L 分数:5/11=0.454


这就是 Rouge 指标的一些例子,它们能够自动对生成的文本进行评估并得出相应的得分来衡量质量。2. BLEU-4
BLEU 是一种用于评估自动机器翻译(MT)结果的评估指标,BLEU-4 是 BLEU 中的一种最常用的型号。BLEU-4 的基本工作流程如下:- 从已经翻译好的文本和机器翻译结果中提取 N-grams
- 使用 N-grams 的重叠数量来计算机器翻译结果和参考翻译之间的相似性分数。
- 计算几何平均值以获得 BLEU 分数。例如,假设我们正在评估一个机器翻译系统的质量,我们将使用“BLEU-4”来计算分数。考虑翻译系统生成以下翻译结果:

机器翻译:the cat is sitting on the mat


然后下面是比较输出翻译和参考文本之间 N-gram 重叠度的过程:
参考翻译1:the cat is on the mat
参考翻译2:there is a cat on the mat计算 1-gram、2-gram、3-gram、4-gram 中的重叠度。1-gram:翻译和参考翻译之间的重叠度:3/6=0.5
2-gram:翻译和参考翻译之间的重叠度:2/5=0.4
3-gram:翻译和参考翻译之间的重叠度:1/4=0.25
4-gram:翻译和参考翻译之间的重叠度:0/3=0计算几何平均值。BLEU-4 分数计算:exp(1/4*(log(0.5) + log(0.4) + log(0.25) + log(0)))=0

BLEU-4 得分越高表示机器翻译在翻译同样的文本时的效果越好。

  1. 困惑度
    困惑度是一种常用于评估语言模型性能的指标,用于衡量模型在新数据上的预测能力。困惑度越低,表示模型预测新数据的能力越好。以一个语言模型为例,计算困惑度的步骤如下:

    • 准备好测试数据集。
    • 对于测试集中的每个序列,计算模型对其的预测概率。
    • 用对数概率计算平均困惑度,使用 e 求指数平均值并取倒数。

    例如,考虑以下文本序列:

    训练集:the cat is sitting on the mat
    测试集:the dog is chasing the cat
    

    神经语言模型被训练用于预测每个词在序列中的出现概率。基于测试序列,对于每个可能的下一个词,模型可以给出一个概率分数,并得出以下困惑度分数:

    Model Predicted: 0.5 * 0.2 * 0.15 * 0.3 = 0.0045
    Perplexity: exp(-(log(0.0045)/4))=83.006
    

    对于这个序列,困惑度为 83.006,表示模型在预测新序列时的不确定性相对较高。

希望这些例子能够让你对这些指标有更加清晰的理解。
“”

非常抱歉让你感到困惑。我会尽力再次解释这些指标。1. Rouge 指标:Rouge (Recall-Oriented Understudy for Gisting Evaluation) 是用于评估自动摘要质量的指标。它有三个常用的变种:Rouge-1、Rouge-2 和 Rouge-L。- Rouge-1:它衡量生成的摘要与参考摘要中单个单词的重合程度。- Rouge-2:它衡量生成的摘要与参考摘要中相邻两个单词的重合程度。- Rouge-L:它使用最长公共子序列(LCS)来衡量生成的摘要与参考摘要的相似程度。例如,对于以下参考摘要和生成的摘要:参考摘要:在晴朗的天气中,他们在户外尽情玩耍。生成摘要:他们在阳光明媚的天气里放松和娱乐。计算 Rouge-1:参考摘要中的单词: 在、晴朗、的、天气、中、他们、在、户外、尽情、玩耍生成摘要中的单词: 他们、在、阳光明媚、的、天气、里、放松、和、娱乐单词重合数:4单词总数:9Rouge-1 分数:4/90.444类似地,可以计算 Rouge-2 和 Rouge-L。2. BLEU-4:BLEU (Bilingual Evaluation Understudy) 是用于评估机器翻译结果质量的指标。BLEU-4 是 BLEU 中的一个常用变体。这个指标通过比较参考翻译的 N-gram 与机器翻译结果中的 N-gram 的匹配程度来计算分数。通常使用 1-gram 到 4-gram 进行比较。例如,考虑以下参考翻译和机器翻译结果:参考翻译: 这只猫正躺在地毯上。机器翻译: 那只猫在地毯上睡觉。对于 1-gram、2-gram、3-gram 和 4-gram,得出以下结果:1-gram 匹配数:32-gram 匹配数:23-gram 匹配数:14-gram 匹配数:0根据这些结果,计算 BLEU-4 分数,得出如下结果:BLEU-4 分数:exp( 1/4 * (log(3/3) + log(2/2) + log(1/1) + log(0/1) ) ) = 0BLEU 分数介于 01 之间,越接近 1 表示机器翻译的质量越好。3. 困惑度 (Perplexity):困惑度是用来评估语言模型的一个指标。它衡量模型在给定一段文本后能预测下一个词的能力。困惑度越低,说明模型的预测能力越好。对于一个语言模型,它会基于训练数据计算每个词在序列中的概率。然后,对于一个测试序列,
模型会将其分解为单词,并计算每个单词的概率得分。每个单词的概率得分之积称为该序列的似然度(likelihood)。困惑度是将似然度进行指数化后得到的一个值。例如,考虑以下语言模型和测试序列:
语言模型: the cat is sitting on the mat
测试序列: the dog is chasing the cat对于测试序列中的每个单词,模型计算它出现在该序列中的概率和。然后,模型将每个单词的概率得分相乘,得到该序列的概率得分为 0.002。通过将这个值求指数平均值并取倒数,可以计算出困惑度。在这种情况下,困惑度为 250,说明模型的预测能力相对较差。希望这次讲解更加清晰易懂。如果您还有任何疑问,请随时提出。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-5313221.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

4090Ti被取消,NVIDIA还要推出新“甜品卡“

不知不觉距离 NVIDIA RTX 40 系显卡发布已快一年,4090 到 4060 从旗舰到甜品也都差不多了。 不过每个男孩子都想要的礼物 - RTX 4090 Ti ,至今仅在春晚发布。 从核心架构上来看,RTX 4090 上的 AD 102-300 也确实不是完全体。 仅拥有144组 S…

Stable Diffusion 文字生成图片如何写提示词

Stable Diffusion是一种基于神经网络的技术,通过输入提示词来生成相应的图片。为了获得高质量的图片输出,您需要选择合适的提示词,并确保它们能够激发模型的想象力和创造力。 以下是一些编写提示词的建议: 确定主题:…

【Linux命令200例】mktemp用于创建临时文件或目录

🏆作者简介,黑夜开发者,全栈领域新星创作者✌,2023年6月csdn上海赛道top4。 🏆本文已收录于专栏:Linux命令大全。 🏆本专栏我们会通过具体的系统的命令讲解加上鲜活的实操案例对各个命令进行深入…

类和对象——初始化列表

目录 初始化列表 注意 单/多参数传入 explicit关键字 匿名函数 先前,我们知道有构造函数——用于给各成员变量一个初始值。 但是仍然不能称为是初始化,因为初始化只能初始化一次,但是构造函数里可以多次赋值 初始化列表 以日期类Date…

【Golang 接口自动化08】使用标准库httptest完成HTTP请求的Mock测试

目录 前言 http包的HandleFunc函数 http.Request/http.ResponseWriter httptest 定义被测接口 测试代码 测试执行 总结 资料获取方法 前言 Mock是一个做自动化测试永远绕不过去的话题。本文主要介绍使用标准库net/http/httptest完成HTTP请求的Mock的测试方法。 可能有…

软件测试员,面试常见的18个问题(记得收藏!)

软件测试面试18个常见问题汇总 Q1:项目中相关需求问题,测试可以直接和客户沟通吗? A1:可以,最初与客户沟通需求时,测试人员直接参与,所以我们可以直接和客户方的代表开会进行沟通。 A2&#xff…

使用gadl对土地利用栅格重分类

要使用Python语言进行土地利用栅格的重分类,可以使用gadl库(GDAL的Python绑定)来实现。gadl库提供了一组功能强大的函数和类,可用于读取、处理和分析栅格数据。 首先,确保已经安装了gadl库。可以使用以下命令通过pip进…

别再分库分表了,来试试它吧

什么是NewSQL传统SQL的问题 升级服务器硬件数据分片NoSQL 的问题 优点缺点NewSQL 特性NewSQL 的主要特性三种SQL的对比TiDB怎么来的TiDB社区版和企业版TIDB核心特性 水平弹性扩展分布式事务支持金融级高可用实时 HTAP云原生的分布式数据库高度兼容 MySQLOLTP&OLAP&#xff…
推荐文章