metabench A Sparse Benchmark to Measure General Ability in Large Language Models

本文是LLM系列文章,针对《metabench A Sparse Benchmark to Measure General Ability in Large Language Models》的翻译。

metabench 用于衡量大型语言模型中一般能力的稀疏基准

摘要

大型语言模型 (LLM) 在一系列任务上的能力各不相同。Open LLM Leaderboard 等举措旨在通过几个大型基准(LLM 可以正确或错误地响应的测试项目集)来量化这些差异。然而,基准分数内部和之间的高度相关性表明 (1) 这些基准衡量存在一小部分共同的潜在能力,并且 (2) 项目利用了冗余信息,因此基准可能会被大大压缩。我们使用来自 n > 5000 个 LLM 的数据来确定 ARC、GSM8K、HellaSwag、MMLU、TruthfulQA 和 WinoGrande 这六个基准中信息量最大的项目(d = 28,总共 632 个项目)。从中,我们提炼出一个稀疏基准测试 metabench,它的大小不到所有六个基准测试原始大小之和的 3%。这个新的稀疏基准测试通过生成基础基准特定能力的估计器来超越分数。我们表明,这些估计量 (1) 可用于重建平均为 1.5% 均方根误差 (RMSE) 的每个原始单独基准分数,(2) 以 0.8% RMSE 重建原始总分,以及 (3) 具有单个潜在公因数,其 Spearman 与总分的相关性为 r = 0.93。

1 引言

2 基准蒸馏

3 结论

本研究中提出的研究结果强调了使用稀疏基准 metabench 来衡量大型语言模型 (LLM) 能力的可行性和优势。成功地将六个著名的基准测试(ARC、GSM8K、HellaSwag、MMLU、TruthfulQA 和 WinoGrande)蒸馏成更小的项目集,同时将信息损失降至最低。通过识别和利用信息量最大的项目,meta

<think>好的,用户的问题是关于如何验证部分系统在FMT Sparse格式下的正确性。首先,我需要明确FMT Sparse格式的具体定义和应用场景。FMT通常指文件格式或数据结构,Sparse可能指稀疏矩阵或数据的存储方式。结合用户提供的参考引用,特别是引用[2]中提到Linux的Input子系统和input_mt_slot结构,这可能与输入设备的多点触控数据有关,而FMT Sparse可能是一种用于存储稀疏触控数据的格式。 接下来,用户需要验证这种格式的正确性。根据系统验证的一般方法,可能需要从数据结构、功能测试、性能分析等方面入手。首先,检查数据结构是否符合规范,比如input_mt_slot是否正确地记录了触点信息。然后,进行功能测试,确保数据在传输和处理过程中没有丢失或错误。性能方面需要验证处理效率和资源占用情况,特别是在高负载下的表现。 此外,用户提到的“部分系统”可能指系统中的某个子系统或模块,需要针对该部分进行隔离测试,确保其在FMT Sparse格式下的独立功能正常。可能需要编写单元测试或集成测试用例,模拟各种输入场景,验证输出的正确性。同时,参考Linux的Input子系统文档,了解多点触控协议的具体要求,确保实现符合标准。 还需要考虑使用工具进行验证,比如日志记录、调试工具或第三方测试框架,帮助捕捉数据流中的异常。最后,对比实际输出与预期结果,确认一致性和准确性。整个过程中,文档的参考和现有系统的实现细节是关键,需要结合引用中的信息来指导验证步骤。</think>验证部分系统在$FMT Sparse$格式下的正确性,需要从数据结构、功能实现和性能指标三个维度进行验证,具体步骤如下: ### 一、数据结构验证 1. **格式规范比对** 检查$input\_mt\_slot$结构体是否满足多点触控协议要求[^2],验证以下字段: $$ABS\_MT\_POSITION\_X: [0, 32767]$$ $$ABS\_MT\_TRACKING\_ID: [0, 65535]$$ 使用工具获取原始输入事件: ```bash evtest /dev/input/eventX ``` 2. **稀疏性验证** 通过注入单点/多点触控事件,观察数据包中未激活触点字段是否被正确忽略。例如仅发送触点1的坐标时,触点2对应的$ABS\_MT\_SLOT$应不包含有效数据。 ### 二、功能验证 1. **事件完整性测试** ```python # 使用python-evdev库模拟输入 from evdev import UInput, AbsInfo, ecodes as e cap = { e.EV_ABS: [ (e.ABS_MT_SLOT, AbsInfo(value=0, min=0, max=3)), (e.ABS_MT_POSITION_X, AbsInfo(value=0, min=0, max=32767)) ] } ui = UInput(cap) ui.write(e.EV_ABS, e.ABS_MT_SLOT, 0) # 切换触点槽 ui.write(e.EV_ABS, e.ABS_MT_POSITION_X, 1000) ui.syn() # 验证内核是否接收完整事件 ``` 2. **触点追踪测试** 构造$TRACKING\_ID$连续变化事件流,验证系统能否正确处理触点生成/消失事件: ``` SYN_REPORT ABS_MT_TRACKING_ID 45 ABS_MT_POSITION_X 1000 SYN_REPORT ABS_MT_TRACKING_ID -1 # 触点消失 SYN_REPORT ``` ### 三、性能验证 1. **时序约束测试** 使用高精度计时器测量事件处理延迟,确保满足: $$t_{processing} \leq 16ms \quad (60Hz刷新率)$$ 2. **压力测试** 通过自动化工具连续发送$N$触点事件($N \geq$设备支持的最大触点数量),验证是否出现数据截断或内存溢出。典型测试用例: $$\{ (x_i,y_i) | x_i = 100i,\ y_i=200i \}, i \in [1,10]$$ ### 四、参考实现验证 对比Linux内核$drivers/input/touchscreen$目录下的驱动实现,重点检查$input\_mt\_report\_pointer\_emulation()$等关键函数的调用逻辑。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UnknownBody

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值