wzmmmm/plan-diffusion
收藏资源简介:
建筑平面图图结构数据集,用于图扩散模型训练。
--- language: - 中文 license: MIT --- # Plan-Diffusion 本数据集为建筑平面图图结构数据集,用于图扩散模型训练。 ## 数据来源 - 原始平面图数据源自 [Architext_v1](https://github.com/ennauata/architext) 建筑平面图数据集 - 中文文本描述由 Qwen VL 系列模型对平面图图像批量生成 ## 统计信息 - 原始平面图样本量:49,631 张 - 数据增强方式:对每张平面图执行5次随机游走操作 - 总有效样本量:**248,155 条** ## 文件说明 ### `graph_tokens_combo_5w.npz` 主数据文件,包含以下数组: | 字段名 | 维度形状 | 说明 | |---|---|---| | `tokens` | (248155, 256) | 图游走Token序列,包含BOS/EOS/PAD标记 | | `lengths` | (248155,) | 每条序列的有效Token长度 | | `coords` | (248155, 40, 2) | 节点坐标(已中心化至原点,坐标为整数) | | `node_types` | (248155, 40) | 节点组合类型ID | | `adj_matrix` | (248155, 40, 40) | 邻接矩阵 | | `n_nodes` | (248155,) | 每张平面图的有效节点数 | ### `graph_prompts_combo_5w.txt` 每行对应一条中文文本描述,行号与npz文件的索引一一对应(每张原始平面图的描述会连续重复5行)。 ### `type_combo_vocab.json` 节点组合类型词表与模型训练所需的Token常量: | 常量名 | 取值 | |---|---| | VOCAB_SIZE | 79 | | NODE_OFFSET | 38 | | BOS_ID | 36 | | EOS_ID | 37 | | TOK_OPEN | 33 | | TOK_CLOSE | 34 | | TOK_BREAK | 35 | | N_TYPES | 32 | | MAX_NODES | 40 | ## 加载示例 python from datasets import load_dataset dataset = load_dataset("wzmmmm/plan-diffusion", split="train") # 读取第一条样本,打印全部7个属性 for i, data in enumerate(dataset): print("======= 第1条样本完整信息 =======") print(" [1] Token序列") print("内容:", data['tokens']) print("总长度:", len(data['tokens'])) print(" [2] 有效序列长度") print("有效Token长度:", data['lengths']) print(" [3] 节点坐标") print("内容:", data['coords']) print("形状:", len(data['coords']), "×", len(data['coords'][0]) if data['coords'] else 0) print(" [4] 节点类型") print("内容:", data['node_types']) print("总长度:", len(data['node_types'])) print(" [5] 邻接矩阵") print("形状:", len(data['adj_matrix']), "×", len(data['adj_matrix'][0]) if data['adj_matrix'] else 0) print(" [6] 有效节点数") print("每张平面图的有效节点数量:", data['n_nodes']) print(" [7] 文本提示") print("文本描述:", data['prompt']) # 仅查看第一条样本 break ## 输出示例 plaintext ======= 第1条样本完整信息 ======= [1] Token序列 内容: [36, 39, 1, 33, 34, 40, 2, 33, 34, 41, 9, 33, 34, 42, 9, 33, 34, 43, 8, 33, 39, 34, 44, 11, 33, 34, 45, 3, 33, 34, 46, 2, 33, 34, 47, 10, 33, 34, 48, 10, 33, 42, 34, 49, 9, 33, 34, 50, 1, 33, 34, 51, 1, 33, 34, 52, 8, 33, 34, 53, 2, 33, 34, 54, 2, 33, 34, 55, 2, 33, 34, 56, 2, 33, 46, 34, 35, 57, 4, 33, 41, 49, 34, 35, 58, 2, 33, 47, 55, 34, 59, 8, 33, 50, 52, 34, 35, 60, 1, 33, 39, 44, 34, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 总长度: 256 [2] 有效序列长度 有效Token长度: 104 [3] 节点坐标 内容: [[-38.0, 55.0], [-38.0, 84.0], [-8.0, 84.0], [-8.0, 25.0], [-38.0, 25.0], [-67.0, 25.0], [-67.0, -33.0], [-38.0, -33.0], [6.0, -33.0], [6.0, 25.0], [36.0, 25.0], [36.0, 11.0], [65.0, 11.0], [65.0, -33.0], [65.0, -92.0], [21.0, -92.0], [21.0, -63.0], [-38.0, -63.0], [36.0, 84.0], [21.0, -33.0], [36.0, -33.0], [-67.0, 55.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0], [0.0, 0.0]] 形状: 40 × 2 [4] 节点类型 内容: [1, 2, 9, 9, 8, 11, 3, 2, 10, 10, 9, 1, 1, 8, 2, 2, 2, 2, 4, 2, 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 总长度: 40 [5] 邻接矩阵 形状: 40 × 40 [6] 有效节点数 有效节点数量: 22 [7] 文本提示 文本描述: 厨房位于西南侧,与北侧和南侧的浴室相邻;客厅居中偏东,连接上下两个卧室,且与厨房通过虚线示意连通。




