当前位置: 首页 > news >正文

语言模型评价指标

1. BLEU(Bilingual Evaluation Understudy)

目标:衡量生成文本和参考文本之间的词汇相似性。

计算步骤:
  1. N-gram 匹配

    • 将生成文本和参考文本分解成 1-gram、2-gram、…、N-gram(通常取到 4-gram)。
    • 统计生成文本中的 N-gram 是否出现在参考文本中。
  2. 精确匹配率

    • 对每个 N-gram,计算生成文本中匹配的数量与总数量的比值:
      Precision n = 生成文本中匹配的 N-gram 数 生成文本中的 N-gram 总数 \text{Precision}_n = \frac{\text{生成文本中匹配的 N-gram 数}}{\text{生成文本中的 N-gram 总数}} Precisionn=生成文本中的 N-gram 总数生成文本中匹配的 N-gram 
  3. 加权平均

    • 对不同的 N-gram 精确率取加权几何平均(权重通常相等):
      BLEU N = exp ⁡ ( ∑ n = 1 N w n ⋅ log ⁡ ( Precision n ) ) \text{BLEU}_N = \exp\left(\sum_{n=1}^N w_n \cdot \log(\text{Precision}_n)\right) BLEUN=exp(n=1Nwnlog(Precisionn))
      其中, w n = 1 N w_n = \frac{1}{N} wn=N1
  4. 长度惩罚

    • 如果生成文本的长度与参考文本长度差距过大,BLEU 分数会受到惩罚:
      BP = { 1 , 生成文本长度 > 参考文本长度 exp ⁡ ( 1 − 参考文本长度 生成文本长度 ) , 否则 \text{BP} = \begin{cases} 1, & \text{生成文本长度} > \text{参考文本长度} \\ \exp\left(1 - \frac{\text{参考文本长度}}{\text{生成文本长度}}\right), & \text{否则} \end{cases} BP={1,exp(1生成文本长度参考文本长度),生成文本长度>参考文本长度否则
  5. 最终公式
    BLEU = BP ⋅ exp ⁡ ( ∑ n = 1 N w n ⋅ log ⁡ ( Precision n ) ) \text{BLEU} = \text{BP} \cdot \exp\left(\sum_{n=1}^N w_n \cdot \log(\text{Precision}_n)\right) BLEU=BPexp(n=1Nwnlog(Precisionn))


2. ROUGE(Recall-Oriented Understudy for Gisting Evaluation)

目标:衡量生成文本覆盖参考文本的程度,更关注召回率

主要变体:
  1. ROUGE-N(基于 N-gram 的召回率):

    • 计算生成文本中匹配的 N-gram 占参考文本中 N-gram 的比例:
      ROUGE-N = 匹配的 N-gram 数量 参考文本中的 N-gram 总数 \text{ROUGE-N} = \frac{\text{匹配的 N-gram 数量}}{\text{参考文本中的 N-gram 总数}} ROUGE-N=参考文本中的 N-gram 总数匹配的 N-gram 数量
  2. ROUGE-L(基于最长公共子序列的匹配):

    • 计算生成文本与参考文本的最长公共子序列(LCS),然后基于 LCS 的长度计算召回率和精确率:
      R = LCS 参考文本长度 , P = LCS 生成文本长度 R = \frac{\text{LCS}}{\text{参考文本长度}}, \quad P = \frac{\text{LCS}}{\text{生成文本长度}} R=参考文本长度LCS,P=生成文本长度LCS
      ROUGE-L = ( 1 + β 2 ) ⋅ P ⋅ R R + β 2 ⋅ P \text{ROUGE-L} = \frac{(1 + \beta^2) \cdot P \cdot R}{R + \beta^2 \cdot P} ROUGE-L=R+β2P(1+β2)PR
      其中, β \beta β 是召回权重。
  3. ROUGE-S(基于跳跃的二元词对):

    • 计算生成文本和参考文本中,所有词对的匹配情况。

3. METEOR(Metric for Evaluation of Translation with Explicit ORdering)

目标:解决 BLEU 无法捕获语义相似性和顺序的重要性问题。

计算步骤:
  1. 匹配策略

    • 包括词形匹配(exact)、同义词匹配(synonymy)、词干匹配(stemming)。
    • 对生成文本中的每个词,找出参考文本中最优匹配。
  2. 精确率与召回率

    • 计算生成文本与参考文本的匹配精度(P)和召回率(R):
      P = 匹配的词数 生成文本的总词数 , R = 匹配的词数 参考文本的总词数 P = \frac{\text{匹配的词数}}{\text{生成文本的总词数}}, \quad R = \frac{\text{匹配的词数}}{\text{参考文本的总词数}} P=生成文本的总词数匹配的词数,R=参考文本的总词数匹配的词数
  3. 调和平均

    • 对 P 和 R 使用 F1 分数加权:
      F = ( 1 + β 2 ) ⋅ P ⋅ R R + β 2 ⋅ P F = \frac{(1 + \beta^2) \cdot P \cdot R}{R + \beta^2 \cdot P} F=R+β2P(1+β2)PR
  4. 惩罚因子

    • 考虑词序对齐情况,加入惩罚因子 (P_{\text{penalty}}),对不连贯的匹配施加惩罚:
      Penalty = γ ⋅ ( chunk 数量 匹配词数 ) 3 \text{Penalty} = \gamma \cdot \left(\frac{\text{chunk 数量}}{\text{匹配词数}}\right)^3 Penalty=γ(匹配词数chunk 数量)3
  5. 最终分数
    METEOR = F ⋅ ( 1 − Penalty ) \text{METEOR} = F \cdot (1 - \text{Penalty}) METEOR=F(1Penalty)


4. Perplexity

目标:衡量语言模型生成文本的连贯性和预测能力,表示模型对句子的不确定性。

计算公式:
  • 对于语言模型给定的句子 w 1 , w 2 , … , w N w_1, w_2, \ldots, w_N w1,w2,,wN,Perplexity 定义为:
    Perplexity = 2 − 1 N ∑ i = 1 N log ⁡ 2 P ( w i ∣ w 1 , … , w i − 1 ) \text{Perplexity} = 2^{-\frac{1}{N} \sum_{i=1}^N \log_2 P(w_i | w_1, \ldots, w_{i-1})} Perplexity=2N1i=1Nlog2P(wiw1,,wi1)
解释:
  1. 概率计算

    • P ( w i ∣ w 1 , … , w i − 1 ) P(w_i | w_1, \ldots, w_{i-1}) P(wiw1,,wi1) 表示模型预测第 i i i 个词的概率。
    • 高概率(模型更确定)对应低 Perplexity。
  2. 直观意义

    • Perplexity 越低,说明模型越能有效预测文本。
    • Perplexity 是对数似然的指数变换:
      Perplexity = exp ⁡ ( − 1 N ∑ i = 1 N log ⁡ P ( w i ) ) \text{Perplexity} = \exp\left(-\frac{1}{N} \sum_{i=1}^N \log P(w_i)\right) Perplexity=exp(N1i=1NlogP(wi))

相关文章:

语言模型评价指标

1. BLEU(Bilingual Evaluation Understudy) 目标:衡量生成文本和参考文本之间的词汇相似性。 计算步骤: N-gram 匹配: 将生成文本和参考文本分解成 1-gram、2-gram、…、N-gram(通常取到 4-gram&#xff…...

工程师 - MSYS2介绍

https://www.msys2.org/ MSYS2 是一系列工具和库,为您提供了一个易于使用的环境,用于构建、安装和运行本地 Windows 软件。 MSYS2 is a collection of tools and libraries providing you with an easy-to-use environment for building, installing an…...

算法基础三:插入排序

定义 插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用…...

小米汽车加速出海,官网建设引领海外市场布局!

面对国内市场的饱和态势,中国企业出海步伐纷纷加速,小米也是其中的一员。Canalys数据显示,2024年第三季度,小米以13.8%的市场份额占比,实现了连续17个季度位居全球前三的成绩。 据“36 氪汽车”报道,小米汽…...

Python Polars快速入门指南:LazyFrames

前文已经介绍了Polars的Dataframe, Contexts 和 Expressions,本文继续介绍Polars的惰性API。惰性API是该库最强大的功能之一,使用惰性API可以设定一系列操作,而无需立即运行它们。相反,这些操作被保存为计算图,只在必要…...

什么是网络安全(Cybersecurity)?

不同组织机构对网络安全(Cybersecurity或Cyber Security)的定义不尽相同。从目标上来说,网络安全主要用于保护网络、计算机、移动设备、应用程序及数据等资产免受网络攻击,避免造成数据泄露、业务中断等安全问题。 网络钓鱼、勒索…...

VBA批量插入图片到PPT,一页一图

Sub InsertPicturesIntoSlides()Dim pptApp As ObjectDim pptPres As ObjectDim pptSlide As ObjectDim strFolderPath As StringDim strFileName As StringDim i As Integer 设置图片文件夹路径strFolderPath "C:\您的图片文件夹路径\" 请替换为您的图片文件夹路径…...

Pandas-DataFrame入门

文章目录 一. Pandas DataFrame简介二. 加载数据集1. 目的2. 步骤① 导包② 加载csv③ 查看数据类型及属性④ Pandas与Python常用数据类型对照 三. 查看部分数据1. 根据列名加载部分列数据① 加载一列数据,通过df[列名]方式获取② 加载多列数据,通过df[[…...

爬虫 - 爬取王者荣耀所有皮肤图片

结果展示 安装 pip install requests logger代码 import json import os import re from concurrent.futures import ThreadPoolExecutorimport requests from loguru import loggerdef parse_url(url, bFalse):try:headers {"User-Agent": "Mozilla/5.0 (Wi…...

【畅购商城】购物车模块之查看购物车

目录 分析 接口 后端实现 前端实现:显示页面 前端实现:显示购物车信息 分析 用户如果没有登录,购物车存放在浏览器端的localStorage处,且以数组的方式进行存储。用户如果登录了,购物车存放在redis中&#xff0c…...

Spring Boot 学习笔记

学习代码第一步&#xff1a;如何写 Hello world &#xff1f; 1、新建项目 新建一个 Maven Java 工程&#xff0c;在 pom.xml 文件中添加 Spring Boot Maven 依赖&#xff1a; <parent><groupId>org.springframework.boot</groupId><artifactId>spri…...

快速打造智能应用:从设计到上线的全流程指南

随着人工智能技术的快速发展&#xff0c;如何将大模型技术转化为实际应用成为了各行业关注的焦点。本文将以一个经典的 RAG&#xff08;检索增强生成&#xff09;知识问答系统为例&#xff0c;详细介绍从智能体设计到最终应用部署的全流程。通过结合阿里云的魔笔低代码平台和丰…...

Java-将一个大列表均分成多个小列表,每个小列表包含10个元素

要将一个大列表均分成多个小列表,每个小列表包含10个元素,可以使用多种方法。以下是几种常 见的方法: 方法一:使用 subList 这是你已经提到的方法,通过 subList 来获取子列表。 import java.util.ArrayList; import java.util.List;public class BatchProcessingExamp…...

tcp_rcv_synsent_state_process函数

tcp_rcv_synsent_state_process 是 Linux Kernel 中用于处理 TCP 连接在 SYN-SENT 状态下接收到报文的函数。这个函数在 TCP 三次握手阶段起到了至关重要的作用,处理了在客户端发送 SYN 请求之后收到服务器响应报文的各种情况。 以下是这个函数的解读和剖析: int tcp_rcv_sy…...

关于无线AP信道调整的优化(锐捷)

目录 一、信道优化的基本原则二、2.4G频段信道优化三、5G频段信道优化四、信道优化代码具体示例五、其他优化措施 一、信道优化的基本原则 信道优化旨在减少信道间的干扰&#xff0c;提高网络覆盖范围和信号质量。基本原则包括&#xff1a; 1. 选择合适的信道&#xff1a;根据…...

C#编写的金鱼趣味小应用 - 开源研究系列文章

今天逛网&#xff0c;在GitHub中文网上发现一个源码&#xff0c;里面有这个金鱼小应用&#xff0c;于是就下载下来&#xff0c;根据自己的C#架构模板进行了更改&#xff0c;最终形成了这个例子。 1、 项目目录&#xff1b; 2、 源码介绍&#xff1b; 1) 初始化&#xff1b; 将样…...

计算机网络|数据流向剖析与分层模型详解

文章目录 一、网络中的数据流向二、计算机网络通信模型1.OSI 模型2.TCP/IP 模型3.TCP/IP五层模型3.1 分层架构描述3.2各层地址结构3.3UDP数据包报头结构 三、总结 一、网络中的数据流向 在计算机网络中&#xff0c;数据的流向是指数据从发送端到接收端的传输路径。数据流向涉及…...

某些iphone手机录音获取流stream延迟问题 以及 录音一次第二次不录音问题

一些型号的iphone手机录音获取流stream延迟问题 以及 录音一次第二次不录音问题 延迟问题 navigator.mediaDevices.getUserMedia({ audio: true }) .then((stream) > {console.log(stream) }&#xff09;从开始到获取stream会有将近2s的延迟 导致按下按钮开始录音 会有前…...

gazebo_world 基本围墙。

如何使用&#xff1f; 参考gazebo harmonic的官方教程。 本人使用harmonic的template&#xff0c;在里面进行修改就可以分流畅地使用下去。 以下是world 文件. <?xml version"1.0" ?> <!--Try sending commands:gz topic -t "/model/diff_drive/…...

Ubuntu 上高效实现 Texlive 安装和管理

文章目录 介绍操作步骤1. 下载 Texlive 安装包2. 解压安装包3. 安装基础安装命令通用的 scheme 选项 4. 配置环境变量 使用 tlmgr 管理包总结 介绍 Texlive 是学术和技术文档编写的重要工具, 选择适合的安装方案能帮助您提升效率并减少磁盘空间占用. 本文将为您提供在 Ubuntu …...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角&#xff0c;以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向&#xff0c;距离坐标原点x个像素;第二个是y坐标&#xff0c;表示当前位置为垂直方向&#xff0c;距离坐标原点y个像素。 坐标体系-像素 …...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

如何更改默认 Crontab 编辑器 ?

在 Linux 领域中&#xff0c;crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用&#xff0c;用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益&#xff0c;允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...

如何在Windows本机安装Python并确保与Python.NET兼容

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

深入浅出WebGL:在浏览器中解锁3D世界的魔法钥匙

WebGL&#xff1a;在浏览器中解锁3D世界的魔法钥匙 引言&#xff1a;网页的边界正在消失 在数字化浪潮的推动下&#xff0c;网页早已不再是静态信息的展示窗口。如今&#xff0c;我们可以在浏览器中体验逼真的3D游戏、交互式数据可视化、虚拟实验室&#xff0c;甚至沉浸式的V…...