coachtwin-workouts
收藏资源简介:
该数据集包含10,393个合成的、结构化的锻炼计划,由小型开放语言模型Qwen2.5-Instruct生成,用于驱动CoachTwin应用——一个锻炼推荐器加AI锻炼生成器。数据集的生成过程包括:使用参数化的一次性提示在1,920个单元格的网格(目标×设备×时长×难度×身体焦点)上进行生成,然后通过确定性的修复-验证后处理流程。数据集来自两个运行版本,由`source`列标记:`v1_prompt`(无练习计数目标,7,223行)和`duration_aware`(包含按时长练习计数目标,3,170行)。两个版本都通过相同的修复-验证合约,确保所有行符合统一标准。修复步骤通过修复可确定性修复的缺陷将产量提高了一个数量级。类别平衡通过身体焦点的逆频率加权采样实现,将54.8倍的不平衡修正到2.4倍。数据集包含以下列:`title`(锻炼名称,无数字)、`warm_up`(热身描述)、`exercises`(JSON字符串,包含`{name, sets, reps, rest_seconds}`列表)、`cool_down`(冷却描述)、`notes`(教练笔记)、`goal`(类别:力量/减重/耐力/柔韧性/一般健身)、`equipment`(类别:自重/哑铃/阻力带/全套健身房)、`duration_minutes`(整数:15/30/45/60)、`difficulty`(类别:初学者/中级/高级)、`body_focus`(类别:全身/上半身/下半身/核心/有氧/推/拉/腿)、`source`(类别:来源)。EDA总结:10,393行,零缺失值;身体焦点不平衡比2.40倍;平均每个锻炼2.9个练习(范围2-9);时长与练习数无相关性(相关系数0.06);练习词汇表包含4,707个独特名称;零真正重复;休息时间均在15-120秒范围内。已知限制:标题词汇较窄;内容非专家验证(合成数据,非健身或医疗建议);练习与身体焦点匹配基于关键词规则,可能导致合适练习被丢弃。预期用途:作为基于嵌入的锻炼推荐器的检索语料库,以及AI锻炼生成器的少样本上下文。
The CoachTwin Workouts dataset contains 10,393 synthetic, structured workout plans generated by the small open language model Qwen2.5-Instruct for powering the CoachTwin application—a workout recommender plus AI workout generator. The generation process includes generating on a 1,920-cell grid (goal × equipment × duration × difficulty × body focus) using parameterized one-shot prompts, followed by a deterministic fix-validate post-processing pipeline. The dataset comes from two runs, marked by the `source` column: `v1_prompt` (no exercise count target, 7,223 rows) and `duration_aware` (with duration-aware exercise count target, 3,170 rows). Both versions pass through the same fix-validate contract, ensuring all rows meet uniform standards. The fix step increases yield by an order of magnitude by fixing deterministically fixable defects. Class balance is achieved via inverse frequency weighting for body focus, reducing imbalance from 54.8x to 2.4x. The dataset includes columns: `title` (workout name, no numbers), `warm_up` (warm-up description), `exercises` (JSON string with list of `{name, sets, reps, rest_seconds}`), `cool_down` (cool-down description), `notes` (coach notes), `goal` (categories: strength/weight loss/endurance/flexibility/general fitness), `equipment` (categories: bodyweight/dumbbells/resistance bands/full gym), `duration_minutes` (integers: 15/30/45/60), `difficulty` (categories: beginner/intermediate/advanced), `body_focus` (categories: full body/upper body/lower body/core/cardio/push/pull/legs), `source` (categories: source). EDA summary: 10,393 rows, zero missing values; body focus imbalance ratio 2.40x; average 2.9 exercises per workout (range 2-9); no correlation between duration and exercise count (correlation coefficient 0.06); exercise vocabulary of 4,707 unique names; zero exact duplicates; rest seconds all within 15-120s. Known limitations: narrow title vocabulary; content not expert-validated (synthetic data, not fitness or medical advice); exercise-body focus matching based on keyword rules may discard suitable exercises. Intended use: as retrieval corpus for embedding-based workout recommenders and few-shot context for AI workout generators.
CoachTwin Workouts 数据集概述
基本信息
- 数据集名称: CoachTwin Workouts
- 许可证: MIT
- 语言: 英语
- 数据规模: 约10K-100K条记录(实际包含10,393条记录)
- 数据格式: CSV文件(
coachtwin_workouts.csv),包含单个训练集(train split) - 任务类别: 文本生成、句子相似度
- 标签: 健身、合成数据、锻炼计划
数据内容与结构
该数据集包含10,393个合成的、结构化的锻炼计划,由开源小型语言模型生成,用于支持CoachTwin应用(一个锻炼推荐及AI锻炼生成器)。
数据模式(Schema)
| 列名 | 类型 | 描述 |
|---|---|---|
title |
字符串 | 锻炼名称(按构造规则不含数字) |
warm_up |
字符串 | 热身描述 |
exercises |
JSON字符串 | 一组{name, sets, reps, rest_seconds}列表 |
cool_down |
字符串 | 冷却描述 |
notes |
字符串 | 教练备注 |
goal |
类别 | 力量/减重/耐力/柔韧性/综合健身 |
equipment |
类别 | 自重/哑铃/阻力带/全健身房 |
duration_minutes |
整数 | 15/30/45/60 |
difficulty |
类别 | 初级/中级/高级 |
body_focus |
类别 | 全身/上肢/下肢/核心/有氧/推/拉/腿 |
source |
类别 | 数据来源标识:v1_prompt 或 duration_aware |
数据生成方法
数据使用 Qwen2.5-Instruct 模型生成,采用参数化一次性提示(one-shot prompting),覆盖一个1,920单元格的参数网格(目标 × 设备 × 时长 × 难度 × 身体部位),随后经过确定性的修复-验证后处理流程。
数据来源于两个批次,由source列区分:
| 来源 | 行数 | 模型 | 提示特点 |
|---|---|---|---|
v1_prompt |
7,223 | Qwen/Qwen2.5-0.5B-Instruct |
无锻炼数量目标 |
duration_aware |
3,170 | Qwen/Qwen2.5-1.5B-Instruct |
指定每时长的锻炼数量目标 |
两个批次均通过相同的修复-验证合约,所有发布行均符合统一标准。
探索性数据分析(EDA)摘要
数据质量与完整性
- 10,393行,0缺失值
- 0个真正重复项(0.0%)
- 3,953行与其他行共享标题但内容与参数不同
- 休息时间全部在预期的15-120秒范围内
类别平衡(按身体部位)
| 身体部位 | 数量 |
|---|---|
| 全身 | 1,905 |
| 腿 | 1,538 |
| 上肢 | 1,396 |
| 有氧 | 1,352 |
| 下肢 | 1,192 |
| 核心 | 1,128 |
| 拉 | 1,087 |
| 推 | 795 |
类别平衡通过逆频率加权采样实现,将body_focus的不平衡比从54.8倍修正至2.4倍。
数据丰富度
- 每个锻炼计划平均含2.9个锻炼动作(范围:2-9个)
- 共4,707个独特锻炼名称,总条目30,270个(类型-标记比率为0.156)
关键发现
- 锻炼数量与时长不相关:
duration_minutes与num_exercises的相关系数为0.06(负向结果),尽管提示中明确指定了不同时长的锻炼数量目标,模型响应仍不够强。 - 两个EDA驱动的修复存在交互作用:逆频率采样通过集中生成
push/pull/core(平均2.4-2.8个动作)来修正身体部位不平衡,但这些类别均值低于full body(3.5个),导致总体平均锻炼数量下降。 - 修复层不是数量下降的原因:修复前后
duration相关系数基本不变(+0.34 vs +0.35),修复主要成本在于整计划拒绝率约30%。
已知限制
- 标题词汇比锻炼词汇更窄,例如"Strength Training Circuit"这类通用名称会出现在多个真正不同的锻炼计划中
- 内容未经专家验证——这是用于机器学习演示的合成数据,并非健身或医疗建议
- 锻炼动作到
body_focus的匹配通过关键词规则强制执行,如果动作名称不含已识别的关键词,即使该动作合适也可能被删除
预期用途
用作基于嵌入的锻炼推荐器的检索语料库,以及AI锻炼生成器的少样本上下文(详见CoachTwin Space)。
附带文件
coachtwin_generation.ipynb:完整生成代码coachtwin_eda.ipynb:完整EDA分析及绘图




