- 数据集
- 人工智能
【免费下载链接】bev-decision
BEV Decision Mix(bev-decision)是一个面向有界决策模型训练的英文决策数据集,numeric_temporal配置专门覆盖时区换算、时间跨度、保修窗口、按比例分摊(proration)、单位换算这类"时间与数字"题目。本文将带你拆解其中43 种计算题的构建原理:它们如何被程序化生成、标签如何保证 100% 可验证,以及测试集为何能真正考察"没见过模板"的泛化能力。
numeric_temporal 配置全景:19,806 行数据怎么来的
打开 README.md 的 Additional configs 一节可以看到,numeric_temporal由五个来源拼成,数据文件位于 numeric_temporal/train.parquet 和 numeric_temporal/test.parquet:
| 数据来源 | 行数 | 考察的决策 |
|---|---|---|
| TimeQA | 8,873 | 某个时刻哪条事实成立;答不上来选none_at_that_time |
| 生成器·模板渲染 | 3,977 | 43 种计算类型,套短/中/长三档模板 |
| 生成器·模型写作渲染 | 3,997 | 同一批计算类型,改写成自由对话口吻 |
| FinQA | 2,604 | 精确执行值、临界阈值判断、变化幅度分档 |
| TAT-QA | 355 | 基于报表表格的精确数值 |
整个配置的题型分布为18,004 道 CHOICE(单选)、17,204 道 NOUL(是/否判断)、4,158 道 SCORE(有序量表打分),训练集 16,477 行,测试集 3,329 行,与全项目共享统一的五列结构(state、questions_json、domain、question_types、question_count)。
一句话总结定位:这个配置训练的不是"会聊天"的模型,而是能把带时间限定词和数字的输入压成一个有界答案(选一个选项、判一个布尔、打一个有序分)的模型。
43 种计算题的构建原理:生成器 × 模板渲染
这是本配置最有"工程味"的部分,也是标题里 43 的来源。
172 个组合 = 43 种计算类型 × 4 种渲染风格
README 的 Caveats 一节透露了一个关键数字:172 个"计算类型/渲染组合"。它的构成可以这样理解:
- 43 种计算类型:时区换算、时间跨度、保修窗口、按比例分摊、算术、单位换算、时间限定事实等(详见配置 Focus 描述);
- 4 种渲染风格:短、中、长三档模板 + 模型自由写作(free-form messages)。
43 × 4 = 172,正好对上。每个计算类型都被渲染成不同长度、不同口吻的题干,让模型学到的是"计算关系"而不是"模板腔"。
28 个组合只在测试集出现:这才是真正的泛化测试
172 个组合中有 28 个是 test-only(只在测试集出现)。也就是说,模型在训练时从没见过这 28 种"计算类型 × 渲染风格"的搭配,测试时却要答对它们。
这比"同分布测试"严格得多:它衡量的是模型能否把学会的时间/数值推理规则迁移到全新表述上,而不是背模板。📊
标签从哪来?——程序算的,模型只动嘴不动笔
这一点是理解"构建原理"的核心。README 明确写道:
In
hard_50kandnumeric_temporal, labels come from source annotations, executed programs,time-zone computation (IANA tz database), or rules evaluated in code.
- 时区题:答案由 IANA 时区数据库(tz database)计算得出,不是人估的;
- 算术/换算/分摊题:由执行过的程序和代码里求值的规则产生标签;
- GPT-6 Luna 的角色:它只在 3,997 行中负责"把题目改写成自然语言",从未参与打标签。它的每一行输出都要通过两层关卡——确定性程序校验 + 独立模型质检,不合格的整行丢弃。
简单说:模型只负责把题"说人话",答案永远来自可重算的代码。这保证了这道题算出的数,你和程序算出的数一定一致。
三种决策类型如何包装数值计算
numeric_temporal里的每一行都遵循 BEV Decision Mix 统一的 JEV 风格契约(CHOICE/NOUL/SCORE),对应到数值场景就是:
| 类型 | 数值题中的典型形态 | 标签 |
|---|---|---|
| CHOICE | 4 个候选答案选一个(如"跨越 DST 后本地时间是什么") | criteria中一个稳定 key |
| NOUL | 临界判断(如"此刻是否在保修期内?"、"是否超过阈值?") | 布尔值 |
| SCORE | 变化幅度分档(FinQA 的 change-size bands 就是典型) | 有序量表索引 |
注意 README 的提醒:SCORE 标签是序数目标,不是校准过的概率,也不是自由数值回归。做 FinQA/TAT-QA 类"精确值"题时,答案是程序执行出来的数,但打分本身仍落在有界量表上——这正是"bounded decision(有界决策)"训练范式的精髓。
上手建议与必须知道的注意事项
加载方式
数据与项目内其他配置一样走标准 datasets 接口:
from datasets import load_dataset numeric = load_dataset("avbiswas/bev-decision", "numeric_temporal") example = numeric["train"][0]如果习惯直接拉仓库文件,仓库地址为https://gitcode.com/hf_mirrors/avbiswas/bev-decision,numeric_temporal配置对应其中的 numeric_temporal/ 目录。
使用前的 4 个提醒(来自 README Caveats)
- FinQA 与 TAT-QA 的 dev 集被用于训练——如果你要在这两个公开基准上评测,先检查记录级重叠;
- TimeQA 的"错误时段"判定假设其标注答案是完备的;
- 生成器行共享同一套"模板文风",模型可能学会的是文风而非推理,测试集的 28 个 test-only 组合正是为此设计的"照妖镜";
- 项目没有统一的打包许可证(
license: unknown),二次分发或商用前请核对各上游来源(TimeQA 为 BSD-3-Clause 等)的条款。
小结
numeric_temporal的构建思路可以浓缩成三句话:
- 题目程序化生成:43 种计算类型 × 4 种渲染 = 172 个组合,题干有短有长、有模板有口语;
- 标签代码化验证:IANA 时区库 + 执行程序 + 代码求值规则,模型只改文字不碰标签;
- 测试集防背题:28 个 test-only 组合确保测的是"迁移能力"。
对想训练数值/时间推理能力的模型来说,这是 BEV Decision Mix 五个配置中最"硬核"的一块。
- 数据集
- 人工智能
【免费下载链接】bev-decision
相关推荐
解剖BEV 150K Decision Mix数据模式:state与questions_json的5列结构设计哲学
解剖BEV 150K Decision Mix数据模式:state与questions_json的5列结构设计哲学 BEV 150K Decision Mix
从选择题到评分题:用BEV 150K Decision Mix构建结构化输出的决策模型
从选择题到评分题:用BEV 150K Decision Mix构建结构化输出的决策模型 想让大模型学会"少说多做"? BEV 150K Decision Mix
BEV Decision Mix三大题型深度解读:CHOICE、NOUL与SCORE如何设计结构化决策任务
BEV Decision Mix三大题型深度解读:CHOICE、NOUL与SCORE如何设计结构化决策任务 BEV Decision Mix(bev decis
数据集人工智能
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考