ulvr_subset
收藏资源简介:
ULVR stage-0子数据集是统一视觉潜在推理(ULVR)阶段0训练数据的精选嵌套子集,专门设计用于多模态视觉推理和潜在表示学习任务。它包含视觉问答和图像到文本两种核心任务类型。数据集采用双模式结构:latent模式提供预计算的教师潜在表示,遵循step0-all数据集的模式;source模式提供匹配的原始源样本,包括图像、问题、答案和对话消息,遵循ULVR_v2_clean数据集的模式。两种模式的数据可通过sample_id在类别内进行关联。数据集涵盖8个类别:bbox_crop、bbox_highlight、helper_interleaved、scene_graph、text_cot、depth、edge以及segmentation(在source中)或visual_representation(在latent中)。提供了7种不同规模的子集配置,总样本量从40,000到472,592不等,采用确定性嵌套选择机制,确保子集间的包含关系。数据以Parquet格式存储,包含图像字节、文本字段和潜在表示向量等多种数据类型。该数据集适用于训练和评估视觉语言模型、研究潜在表示学习、进行消融实验以及多模态推理任务。
The ULVR stage-0 sub-dataset is a curated nested subset of the Unified Visual Latent Reasoning (ULVR) stage-0 training data, specifically designed for multimodal visual reasoning and latent representation learning tasks. It includes two core task types: visual question answering and image-to-text. The dataset employs a dual-mode structure: the latent mode provides pre-computed teacher latent representations, following the pattern of the step0-all dataset; the source mode provides matching original source samples, including images, questions, answers, and conversation messages, following the pattern of the ULVR_v2_clean dataset. Data from both modes can be correlated within categories via sample_id. The dataset covers 8 categories: bbox_crop, bbox_highlight, helper_interleaved, scene_graph, text_cot, depth, edge, and segmentation (in source) or visual_representation (in latent). It offers 7 subset configurations of varying scales, with total sample sizes ranging from 40,000 to 472,592, using a deterministic nested selection mechanism to ensure inclusion relationships between subsets. Data is stored in Parquet format and includes various data types such as image bytes, text fields, and latent representation vectors. This dataset is suitable for training and evaluating vision-language models, researching latent representation learning, conducting ablation experiments, and performing multimodal reasoning tasks.
数据集概览:ULVR stage-0 subsets (latent + source)
该数据集是 Unified Visual Latent Reasoning (ULVR) stage-0 训练数据的精选子集,提供两种类型的数据:latent(预计算的教师隐空间表示)和 source(原始样本,包含图像、问答对和消息)。
- 许可协议:Apache-2.0
- 任务类别:视觉问答 (visual-question-answering)、图像到文本 (image-to-text)
- 标签:多模态、视觉推理、隐空间推理、教师隐空间、ULVR
数据组成与结构
每个子集文件夹包含两个子目录:
latent/:预计算的教师隐空间数据,模式与 RuoliuYang/step0-all 相同。source/:对应的原始样本数据(图像、问答、消息),模式与 RuoliuYang/ULVR_v2_clean 相同。
Latent 和 source 行通过 sample_id 在类别内可连接。
目录布局:
<folder>/ latent/data/<category>/<category>-NNNNN.parquet source/data/<category>/<category>-NNNNN.parquet
类别 (<category>):
bbox_crop, bbox_highlight, helper_interleaved, scene_graph, text_cot, depth, edge, segmentation
注意:
segmentation目录中的source行类别为segmentation,其对应的latent行类别为visual_representation。
子集列表
| 子集文件夹 | 每个类别的样本数 | 总计 |
|---|---|---|
size-40k |
全部 8 个类别 × 5,000 | 40,000 |
size-80k |
全部 8 个类别 × 10,000 | 80,000 |
size-250k |
depth/edge/scene_graph/segmentation = 全部;bbox_crop/bbox_highlight/text_cot/helper_interleaved = 各 40,000 | 246,263 |
size-500k |
全部数据 (完整 stage-0) | 472,592 |
ablate-5 |
depth, edge, scene_graph, bbox_crop, helper_interleaved × 8,000 | 40,000 |
ablate-3 |
bbox_crop, depth, scene_graph × 13,334 | 40,002 |
ablate-1 |
bbox_crop × 40,000 | 40,000 |
ablate-8等价于size-40k,故未重复列出。
选择机制
- 确定性:每个类别内的样本顺序基于种子为 42 的固定随机混洗排序。
- 嵌套性:
size-40k ⊂ size-80k ⊂ size-250k ⊂ size-500k,即较小子集是较小子集的前缀。 ablate-*子集同样遵循该固定顺序的前缀规则。
索引文件 (index/)
索引文件支持无需下载全部子集文件夹,仅下载完整的 size-500k 并通过索引切换子集。
| 文件路径 | 说明 |
|---|---|
index/master_order.parquet |
所有 472,592 个样本的 ID,按 seed-42 排序;包含列:dataset_name, dir, sample_id, rank |
index/<subset>.parquet |
每个子集的确切 ID 列表;包含列:dataset_name, dir, sample_id |
index/<subset>.jsonl |
可用于训练的清单文件(stage2_train.jsonl 的子集,保持原始顺序) |
index/subsets_spec.json |
每个子集每个类别的容量及总计 |
推荐工作流:下载一次 size-500k,通过索引切换不同子集。
数据模式
latent 模式 (list<float16>):
|
| 列名 | 类型 | 说明 |
|---|---|---|
sample_id |
- | 样本唯一标识 |
category |
str | 类别 |
source_dataset |
str | 来源数据集 |
num_intermediate_steps |
int | 中间步骤数 |
latent_dtype |
str | 隐空间数据类型(固定为 "bfloat16") |
latent_shape |
list[int64] | 隐空间的形状,例如 [29, 8, 3584] |
latent |
list[float16] | 平铺的隐空间数据 |
source 模式: |
| 列名 | 类型 | 说明 |
|---|---|---|
sample_id |
- | 样本唯一标识 |
category |
str | 类别 |
source_dataset |
str | 来源数据集 |
question |
str | 问题文本 |
answer |
str | 答案文本 |
input_image |
bytes | 输入图像字节 |
intermediate_image_1/2/3 |
bytes | 中间图像字节(可为空) |
num_intermediate_steps |
int | 中间步骤数 |
messages_json |
str | 消息的 JSON 字符串 |
加载示例
加载 source 和 latent 数据: python from datasets import load_dataset
加载 source 子集 (size-40k)
src = load_dataset("RuoliuYang/ulvr_subset", "size-40k-source", split="train")
加载 matching latent 子集
lat = load_dataset("RuoliuYang/ulvr_subset", "size-40k-latent", split="train")
通过索引加载子集: python import pyarrow.parquet as pq from datasets import load_dataset
idx = pq.read_table("hf://datasets/RuoliuYang/ulvr_subset/index/ablate-5.parquet")
full_src = load_dataset("RuoliuYang/ulvr_subset", "size-500k-source", split="train") want_src = set(zip(idx["dir"].to_pylist(), idx["sample_id"].to_pylist())) sub_src = full_src.filter(lambda r: (r["category"], r["sample_id"]) in want_src)
full_lat = load_dataset("RuoliuYang/ulvr_subset", "size-500k-latent", split="train") want_lat = set(zip(idx["dataset_name"].to_pylist(), idx["sample_id"].to_pylist())) sub_lat = full_lat.filter(lambda r: (r["category"], r["sample_id"]) in want_lat)
解码图像: python from PIL import Image import io
img = Image.open(io.BytesIO(src[0]["input_image"]["bytes"]))
来源说明
- Latent 数据:复现自
step0-all,以 float16 存储;原始 bfloat16 可无损恢复(最大绝对误差极小)。 - Source 数据:复现自
ULVR_v2_clean,图像字节和文本/元数据列逐字复制。 source_dataset列遵循ULVR_v2_clean的约定,在latent和source两部分中保持一致。




