信息速览
可穿戴加速度计在流行病学和临床研究里用得极广,但「原始数据」这四个字往往名不副实——大多数公开数据给的是厂家软件算出来的「活动计数」,而不是加速度本身。计数一旦生成,中间那一步就再也回不去了。
这份数据给的是原始三轴加速度,而且一次给四个部位:左腕、左髋、左踝、右踝。同一时刻、同一动作,四个位置的波形差异有多大,是姿态识别研究的核心问题之一,而多数数据只给一个部位。
它的标签方式也值得一说:不是事后靠算法猜,而是让受试者在每段活动的开始与结束各拍三次手,让设备记录下三下冲击,再据此切段;这种做法笨,但可靠。而我也把三十二个文件全部下载并逐行统计了一遍。原始体量约九百一十八万行,四个部位、六个活动码、每人十几到七十多分钟不等。核对过程中发现了几件条目页没提的事,构成了本篇最实在的部分。
§1 它是什么:四部位同步的原始加速度
1.1 一句话定义与四条边界
这是一份原始加速度的标注数据集:三十二名健康成年人在四个身体部位同时佩戴三轴加速度计,以一百赫兹采样,在一次约一小时的外出中依次完成平地行走、上下楼梯与驾车,全程逐点带活动标签。
四条边界先讲清:
- 给的是原始值,不是计数。 每行十四列,其中十二列是四个部位的三轴加速度,单位是重力加速度 g。你可以自己算任何特征,也可以自己复现厂家的计数算法。
- 样本是三十二个人,不是三十二万条。 总行数九百多万,但独立受试者只有三十二个。这个比例后面会反复提到。
- 活动是脚本化的,不是自由生活。 路线固定、顺序固定、时长大致固定。它测的是「在指定动作下四个部位长什么样」,不是「人一天怎么动」。
- 没有临床结局。 全部健康志愿者,没有随访,没有疾病标签。
1.2 采集协议:一次约一小时的外出
协议分两段,都在户外完成:
第一段,步行。 沿一条约 0.66 英里的预设路线走,中间穿插上下楼梯:5 段平地行走、6 段下楼、6 段上楼交替进行,整段持续 9.0 至 13.5 分钟。受试者被要求按自己平时的速度走,以尽量接近自由生活状态。
第二段,驾车。 步行结束后立刻被带到自己的车上,沿预设路线驾驶 18 至 30 分钟,视交通状况而定。路线同时包含高速与城市道路。
中间有一个细节:受试者要在每段活动的开始和结束各拍三次手。 拍手在加速度信号上产生三个明显的尖峰,事后据此确定各段的起止时刻并赋标签。条目页特别说明,第一段活动前后各几秒的数据也会保留,标为「非研究活动」。
这个做法很实用,因为如果靠时间表对齐,一旦受试者中途停下系鞋带,整段标签就错位了。拍手把对齐的责任交给了数据本身。
1.3 设备与佩戴位置
| 项目 | 内容 |
|---|---|
| 型号 | ActiGraph GT3X+,三轴 |
| 数量 | 每人四台 |
| 位置 | 左腕、左髋、左踝、右踝 |
| 采样率 | 100 赫兹 |
| 同步方式 | ActiLife 软件同步到同一外部时钟 |
| 固定方式 | 魔术贴绑带 |
| 踝部位置 | 踝外侧 |
| 腕部位置 | 腕背,如普通手表 |
| 髋部位置 | 腰带左侧;无腰带时挂腰带环或夹在腰头 |
条目页对同步这件事说得很坦白:软件同步在理论上应保证设备间并行测量,但随着时间推移可能出现亚秒级的不同步,并引了自己 2019 年的方法学论文(该文第 3.8 节)讨论这个问题。同时说明,在这批数据中未观察到严重的不同步。
这句话要正面理解:作者主动承认了一个只能靠外部时钟保证、无法事后验证的弱点。对四部位对齐要求高的分析(比如算部位间的相位差),亚秒级漂移就是灾难;对只看各部位独立特征的分析则无所谓。
1.4 六个活动码的含义
| 码 | 含义 | 说明 |
|---|---|---|
| 1 | 平地行走 | 沿预设路线,按平时速度 |
| 2 | 下楼 | 六段 |
| 3 | 上楼 | 六段 |
| 4 | 驾车 | 两段(中间被拍手打断) |
| 77 | 拍手 | 每段活动前后的分界标记 |
| 99 | 非研究活动 | 每段前后的过渡时间 |
77 不是一个「活动」,是一个标点符号。 它的存在是为了让 1、2、3、4 的时间边界可以被自动识别。同一个道理,99 也不是活动,是「设备开着但没在研究协议里」的那段时间。
这一点在使用时要特别小心:如果把 77 和 99 当成两个类别一起训练,模型会学到「拍手像拍手」,而这没有任何意义。
1.5 它不适合回答什么
- 不能推人群的活动量。 三十二个健康志愿者、一次一小时的外出,与「人群平均每天走多少步」没有关系。
- 不能做自由生活识别。 没有家务、没有通勤、没有坐着办公、没有抱孩子。六类之外的动作一律不存在。
- 不能做老年人或病人的步态分析。 受试者二十三到五十四岁,全部健康。
- 不能做长期佩戴的依从性研究。 只戴一次,约一小时。
- 不能做设备间的一致性研究(严格意义上)。四台是同一型号,且软件同步,无法分离「部位差异」与「设备个体差异」。
1.6 与相邻数据的定位
| 这份数据 | 常见的腕戴活动数据集 | 步态实验室数据 | |
|---|---|---|---|
| 部位 | 四个(腕、髋、双踝) | 通常一个(腕) | 通常足底压力加光学捕捉 |
| 采样 | 100 赫兹原始值 | 多为 30 至 100 赫兹 | 100 至 1000 赫兹 |
| 标签来源 | 拍手标记加协议分段 | 日记或视频回看 | 实验室分段 |
| 活动类型 | 走、上下楼、驾车 | 走、跑、坐、睡 | 走、转身、起坐 |
| 环境 | 户外真实路面 | 多为自由生活 | 实验室地面 |
它的独特性在于部位数:四个同步部位在公开数据里不多见。多数研究只有腕部,因为腕戴设备最容易被接受;但腕部信号对下肢动作的敏感度最低,这正是一部分活动识别研究转向多部位的原因。
1.7 版本与许可
版本 1.0.0,发布于 2021 年 6 月 26 日(文件时间戳显示受试者数据文件更新于 2019 年 9 月 13 日)。许可为 Open Data Commons Open Database License v1.0,与常见的 ODC-By(署名)不同——ODbL 是「署名 + 相同方式共享」,若你基于它做出衍生数据库并公开,衍生库也必须用 ODbL。这一点在做产品时需要法务确认。
DOI 为 10.13026/51h0-a262,最新版本 DOI 为 10.13026/fqq5-r521。总未压缩体积 760.8 MB,ZIP 包 176.1 MB。
§2 数据构成:三十二个 CSV、九百多万行
2.1 目录里有什么
根目录五个条目:
| 名称 | 大小 | 说明 |
|---|---|---|
raw_accelerometry_data/ |
— | 32 个 CSV |
LICENSE.txt |
25.2 KB | ODbL 全文 |
SHA256SUMS.txt |
3.5 KB | 32 个文件的校验值 |
participant_demog.csv |
1.2 KB | 32 行,7 列 |
raw_accelerometry_data_dict.csv |
1.6 KB | 14 行变量说明 |
SHA256SUMS.txt 只有 3.5 KB,对应三十二个数据文件(每个约 100 字节一行)——这是个小而实用的细节:下载完可以立刻逐文件校验,成本极低。
2.2 participant_demog.csv 的实际内容
三十二行,七列。我把它整表读了一遍,核对结果如下:
| 项目 | 核对值 |
|---|---|
| 总数 | 32 人 |
| 性别 | 男 13、女 19 |
| 年龄范围 | 23 至 54 岁 |
| 年龄中位数 | 38 岁 |
| 年龄均值 | 39.0 岁 |
| 年龄分段 | 23–29 岁 5 人、30–39 岁 12 人、40–49 岁 10 人、50–54 岁 5 人 |
| 身高范围 | 58 至 76 英寸(中位 69.5) |
| 体重范围 | 100 至 310 磅(中位 159.5) |
| 体重指数范围 | 17.7 至 39.8(中位 23.9) |
| 体重指数 ≥30 | 8 人 |
| 体重指数 ≥25 | 15 人 |
| 体重指数 <18.5 | 2 人 |
| 种族 | 白人 24、亚裔 5、黑人 3 |
| 右利手 | 31 人(1 人为双利手) |
第一处与条目页不符:年龄上限。
条目页写的是「年龄在二十三到五十二岁之间」,而文件里有两个人是五十三岁和五十四岁(id1c7e64ad 54 岁、id37a54bbf 52 岁、idf1ce9a0f 52 岁、idf5e3678b 52 岁)。实际上限是 54。
这不是大问题,但它说明条目页的文字是手写的,没有与文件核对。对一份以「原始数据」为卖点的数据集,这个细节值得记一笔。
另外一点值得注意:体重范围很宽。最低 100 磅(45.4 公斤)与最高 310 磅(140.6 公斤)相差三倍多,对应的体重指数从 17.7 到 39.8。这个跨度对加速度研究其实是好事——体重会影响软组织对加速度的衰减,样本里有极端值意味着这一效应可以被观察到。但 8 个肥胖者、2 个偏瘦者,这样的分布也不足以做分层分析。
2.3 十四列的含义
每个 CSV 第一行是表头,十四列:
activity, time_s, lw_x, lw_y, lw_z, lh_x, lh_y, lh_z, la_x, la_y, la_z, ra_x, ra_y, ra_z
activity:整数活动码;time_s:距设备启动的秒数,两位小数;- 后十二列:四个部位的三轴加速度,单位 g,六位小数。
我核对了一项容易出问题的地方:三十二个文件的表头都是十四列,没有例外。全量解析时没有一行的列数异常。
2.4 我逐文件统计出的实际规模
这是本篇最核心的一张表。三十二个文件逐行读完,结果如下:
| 指标 | 值 |
|---|---|
| 总数据行 | 9,182,100 |
| 单人最少行 | 94,200(约 15.7 分钟) |
| 单人最多行 | 446,600(约 74.4 分钟) |
| 单人时长中位数 | 约 51.7 分钟 |
time_s 起始 |
全部为 0.00 |
| 采样步长 | 全部 0.01 秒(100 赫兹),无例外 |
| 时间戳非递增行 | 0 |
| 空值 | 0 |
| 右踝三轴同时为 0 的行 | 39,400 |
采样步长完全规整。 三十二个文件、九百多万行,time_s 的相邻差值众数全部是 0.01,没有任何一处跳变、回退或重复。这一点比很多公开加速度数据集干净——常见的问题是设备休眠导致的缺口,以及浮点舍入导致的时间戳抖动。这里两者都没有。
时长跨度很大。 最短的 idabd0c53c 只有 15.7 分钟,最长的 idf5e3678b 有 74.4 分钟。差距主要来自驾车段:idf5e3678b 的驾车时长 22.6 分钟、非研究活动 40.7 分钟,而 idabd0c53c 根本没有驾车段。
2.5 六个活动码的真实分布
九百一十八万行按活动码拆开:
| 码 | 行数 | 占比 | 换算时长 |
|---|---|---|---|
| 1 走平路 | 1,576,845 | 17.2% | 约 4.4 小时(全样本合计) |
| 2 下楼 | 267,538 | 2.9% | 约 0.74 小时 |
| 3 上楼 | 279,907 | 3.1% | 约 0.78 小时 |
| 4 驾车 | 3,741,501 | 40.7% | 约 10.4 小时 |
| 77 拍手 | 122,515 | 1.3% | 约 0.34 小时 |
| 99 非研究活动 | 3,193,794 | 34.8% | 约 8.9 小时 |
三件事直接从这个表里读出来:
第一,驾车占了四成。 如果把六类一起训练,驾车类的样本量是下楼类的十四倍。类别极不均衡。
第二,上楼与下楼几乎相等(279,907 对 267,538,差 4.6%)。这符合协议设定(各六段),也说明受试者的上下楼速度相对稳定。
第三,非研究活动占了三分之一。 这不是「缺失」,是协议里明确保留的设备开启但未进入研究动作的时间。但它不能当负样本用——那段时间里受试者可能在走路去车边、在聊天、在站着等,行为未知。
2.6 分段结构:一份几乎完全一致的时间表
我把每个文件按活动码切成连续段,结果非常整齐。三十二个文件只有四种段序列模式:
| 模式 | 人数 | 说明 |
|---|---|---|
| A | 25 | 标准:99 开头 → 19 段步行(含 18 个拍手分界)→ 99 → 2 段驾车 → 99 |
| B | 5 | 标准但无驾车段 |
| C | 1 | 步行部分多了一段平路(共 6 段平路) |
| D | 1 | 驾车段只有一段(中间没有拍手分界) |
25 人的段序列完全相同,这是一个很强的信号:协议执行得非常严格。取一个标准文件 id00b70b13 展开看:
99 0.00 → 260.40 260.41s ← 设备开启到正式开始
77 260.41 → 263.12 2.72s ← 拍手三次
1 263.13 → 305.79 42.67s ← 第一段平地走
77 305.80 → 307.70 1.91s
2 307.71 → 322.33 14.63s ← 下楼
77 322.34 → 324.04 1.71s
3 324.05 → 338.27 14.23s ← 上楼
...
可以清楚看到:每段实际活动 15 到 200 秒,中间夹 1.5 到 2.7 秒的拍手段。 拍手段的长度几乎恒定在 1.5 至 1.9 秒(三次拍手的自然节奏),这为自动检测提供了很好的特征。
而 C 模式的那一位(id4ea159a8)多了一段平路——条目页其实提到了这件事:
一位受试者短暂忘记了指示,在掉头下楼之前多走了一段平地。
这条说明与数据完全对得上。这是本篇核对中唯一一处「条目页说了、数据也证实了」的细节,值得记下来,因为它说明作者确实逐人看过数据。
2.7 驾车段:二十七人,不是三十二人
这是本篇最重要的核对结果。
五名受试者完全没有驾车数据。 他们是:id1f372081、id9603e9c3、ida61e8ddf、idabd0c53c、idd80ac2b4。这五个人的文件里 activity=4 的行数为零,段序列属于 B 模式(99 → 步行 → 99)。
条目页在写协议时说「参与者随后驾车 18 至 30 分钟」,在数据描述里说三十二个文件各对应一名受试者,但没有提到有五人没有驾车数据。
这五个人的共同点值得注意:他们的记录时长也是最短的(15.7 至 27.7 分钟),且全部属于同一批文件(时间戳与其他人相同,都是 2019-09-13)。最合理的推测是他们因故没有完成驾车环节(没开车来、临时有事、或车辆条件不符),但条目页没有说明原因。
对使用的直接影响:如果做驾车/非驾车的二分类,正样本只有二十七人;如果做四分类(走、下、上、驾),有五人在这四类中的一类上是完全缺失的,按人划分交叉验证时这五人所在折的类别覆盖会不完整。
驾车段的时长也有超出协议范围的情况:
| 指标 | 核对所得 | 条目页声明 |
|---|---|---|
| 有驾车数据的人数 | 27 | 未说明(隐含 32) |
| 驾车时长范围 | 17.8 至 40.4 分钟 | 18 至 30 分钟 |
| 驾车时长中位数 | 23.0 分钟 | — |
| 驾车时长均值 | 23.1 分钟 | — |
| 超出 30 分钟 | 1 人(idbae5a811,40.4 分钟) |
— |
| 低于 18 分钟 | 1 人(idf540d82b,17.8 分钟) |
— |
两个越界值都在合理范围内(交通拥堵会让时间变长,路况好会变短),但说明「18 至 30 分钟」是个大致范围,不是硬约束。
2.8 步行段:与协议描述基本吻合
把每人的 1、2、3 类样本加起来(不含拍手),得到步行的净活动时长:
| 指标 | 核对所得 |
|---|---|
| 步行净时长范围 | 514.6 至 799.9 秒(8.6 至 13.3 分钟) |
| 中位数 | 667.9 秒(11.1 分钟) |
| 均值 | 663.8 秒(11.1 分钟) |
| 含拍手的整段跨度 | 9.0 至 13.8 分钟 |
条目页说步行部分「持续 9.0 到 13.5 分钟」。含拍手的跨度量出来是 9.0 至 13.8 分钟——下限完全吻合,上限略超 0.3 分钟。这个偏差很小,可以认为一致。
2.9 三个人的右踝通道有连续全零段
这是我核对时发现的另一件事,条目页完全没提。
三轴同时为 0 在真实加速度信号里几乎不可能出现(重力至少在一个轴上)。我按「右踝三轴同时为 0」筛行,发现集中在三个人身上,且各自是一段连续区间:
| 受试者 | 全零行数 | 占该人比例 | 时间区间(秒) | 落在哪个阶段 |
|---|---|---|---|---|
id1f372081 |
700 | 0.4% | 104.01 – 111.00 | 非研究活动段(99) |
idecc9265e |
9,500 | 2.7% | 3371.01 – 3466.00 | 记录末尾,非研究活动段 |
idb221f542 |
29,200 | 10.0% | 2618.01 – 2910.00 | 驾车段之后,非研究活动段 |
三段的共同点:全部落在「非研究活动」(码 99)区间,没有一段侵入 1、2、3、4 这四类有效活动。
这个观察很重要,因为它把问题的严重性大幅降低了:这些零值不会污染任何有效活动的训练样本。 最可能的原因是设备在活动结束之后被摘下或松动,而记录还在继续。
但也不能完全忽略:idb221f542 的全零段占了该人百分之十的记录,如果按「全文件」做无监督特征(比如全程均方根),这个人会被系统性地拉低。
处理建议:加载后先按「右踝三轴同时为 0」建一个掩码,把掩码行从右踝相关的特征里剔除;做跨人比较时把被掩蔽的比例作为一个协变量记录下来。
除右踝之外,我没有对左踝、髋、腕做同样的筛查。这留作一个可验证的疑问(见 §11.2)。
2.10 四个部位的信号幅度差异有多大
我算了每人每个部位的加速度模长均值(三轴平方和开方):
| 部位 | 模长均值范围(g) | 全样本中位数(g) |
|---|---|---|
| 左腕 | 0.929 至 1.137 | 约 1.05 |
| 左髋 | 0.977 至 1.108 | 约 1.00 |
| 左踝 | 1.138 至 1.472 | 约 1.21 |
| 右踝 | 1.132 至 1.475 | 约 1.22 |
(静止时理想值应为 1.000 g,即单纯重力。)
三个观察:
第一,髋部最接近 1.000。 中位数约 1.00,说明髋部在全程中相对平稳——这符合直觉,髋部靠近身体质心,位移最小。
第二,踝部系统性偏高,约 1.21。 走路时足部每次落地都有冲击,会把均值推高到 1 g 以上。偏高幅度接近 21%,这是一个很稳定的生理性偏差。
第三,腕部均值低于 1 g(1.05)。 这个略高于 1 但低于踝,说明手部动作多但幅度小。
而三个踝部数值异常高的人值得单独看:id9603e9c3(1.472)、ida61e8ddf(1.450)、idabd0c53c(1.426)、idd80ac2b4(1.439)。这四个人的踝部均值比其他人高出 20% 以上,而且他们的记录恰好也是最短的几个(15.7 至 20.5 分钟),且都没有驾车段。
这四条线索指向同一个解释:这四个人可能走得比其他受试者快或步态更重,也可能绑带绑得更紧(耦合更好)。但我无法区分这两者——条目页没有记录步行速度,也没有记录绑带松紧。
这是一个很好的例子,说明为什么「原始数据」既是礼物也是负担:它给了你全部信息,但没给你判断这些信息的上下文。
2.11 我核对了什么、没核对什么
- 核对了:全部三十二个文件的行数、列数、表头;
time_s的步长与单调性;六个活动码的行数;每人每个活动码的段数与总时长;三十二人的段序列模式;participant_demog.csv全部三十二行;右踝三轴同时为零的行数与区间;四个部位的模数均值。 - 没核对:原始
.gt3x二进制(数据已转为 CSV,无法回溯转换过程);四台设备之间的同步误差(需要外部参考信号,数据里没有);左右踝之外三个部位的全零段;拍手时刻的检测精度;步行路线的实际长度与坡度;天气与地面材质。
§3 访问:760.8 MB,一次下载
3.1 许可与门槛
Open Database License v1.0(ODbL)。PhysioNet 标为 Open Access,同意条款即可下载,无申请、无 DUA。
这是本篇要特别提醒的一点:ODbL 与 ODC-By 不同。ODC-By 只要求署名;ODbL 除了署名,还要求衍生数据库以相同许可共享。如果你把这份数据与其他数据合并成一个新库并公开,新库必须也是 ODbL。用于内部研究不受影响,用于产品要确认。
3.2 引用
条目页给的引用格式为 Karas M、Urbanek J、Crainiceanu C、Harezlak J、Fadel W(2021),标题为 Labeled raw accelerometry data captured during walking, stair climbing and driving,版本 1.0.0,PhysioNet,DOI 10.13026/51h0-a262。
条目页另有明确要求:使用时应同时引用 PhysioNet 平台本身的标准引用(Pollard 等 2026 年发表于 Nature Health 的那篇)。
3.3 下载
三种方式:ZIP 包(176.1 MB)、wget -r -N -c -np 递归、AWS S3 免签名同步。
3.4 一次下载的实际教训
这次核对时我踩了一个很具体的坑,值得写下来。
走 PhysioNet 的 nginx 下载单个文件,速度慢到不可用。 我下载第一个文件 idabd0c53c.csv(8.1 MB)用了超过十二分钟,之后十五分钟只完成了一个文件。串行下载三十二个文件(合计约 760 MB)按这个速度要十几个小时。
换到 S3 直连后,速度是 5.3 MB/s。 地址形如:
https://physionet-open.s3.amazonaws.com/accelerometry-walk-climb-drive/1.0.0/raw_accelerometry_data/<subj_id>.csv
八路并发,三十二个文件两分钟内全部下完。
同样的现象在上一篇(actes-cycloergometer-exercise)也遇到过:PhysioNet 的普通 HTTP 下载对大文件不稳定,会出现无声截断。遇到 PhysioNet 大文件,第一选择就该是 S3 免签名同步,不要先试普通链接。
3.5 到手的实际形态
| 项目 | 实际 |
|---|---|
| 数据 CSV | 32 个,合计约 760 MB |
| 单文件范围 | 8.1 MB 至 44.7 MB |
| 总行数 | 九百一十八万余 |
| 人口学文件 | 1 行表头 + 32 行 |
| 字典文件 | 1 行表头 + 14 行(注意首行带 BOM) |
| 校验文件 | 32 行 |
raw_accelerometry_data_dict.csv 首字节是 UTF-8 BOM。用 Python 默认编码读会导致第一列列名变成 \ufeffVariable name。用 encoding='utf-8-sig' 即可。这是个常见小坑,但第一行代码就会碰上。
§4 局限:三十二个健康人,一次固定路线
4.1 样本量的真实含义
这份数据的量级要分四层数:
| 层级 | 数量 |
|---|---|
| 受试者 | 32 |
| 活动段(去掉拍手分界) | 约 700 段 |
| 数据行(采样点总和) | 约九百一十八万 |
| 四个部位乘三轴 | 每行 12 个数值 |
从人到采样点,是 28.7 万倍。但独立信息量接近三十二。
具体地说:一个人的一段平路走产生了 4 万行数据,这 4 万行高度自相关——相邻两个采样点(相隔 0.01 秒)几乎完全一样。有效的独立观测数大致是「步数」,而不是「行数」。
这对划分策略的影响是决定性的:必须按受试者划分。 如果按行随机划分训练集与测试集,同一步的一半在训练集、一半在测试集,测试准确率会接近百分之百,这个数字毫无意义。
4.2 三十二人的人口学偏斜
按 participant_demog.csv 逐行核对:
- 种族:白人 24 人(75%)、亚裔 5 人、黑人 3 人;
- 年龄:全部在 23 至 54 岁,全部为成年人,无老年人;
- 全部健康:这是明确写进条目的的(“32 healthy participants”);
- 性别:女 19、男 13,略偏女性。
对加速度研究来说,最要紧的偏斜不是种族,是年龄。步态的加速度特征随年龄变化很大:老年人步频下降、步幅缩短、足部冲击减弱、躯干摆动增加。在二十至五十岁的人身上训练出的模型,直接用到七十岁人群上,性能会下降——下降多少取决于特征,但方向是确定的。
4.3 路线固定:地点效应无法与活动效应分离
协议规定了固定的步行路线(约 0.66 英里)与固定的驾车路线(约 12.8 英里)。这带来一个隐蔽的问题:
所有人在同一段路上走路。 如果那段路有一段上坡、一段地砖不平、一段树荫,那么这些特征会出现在所有人的数据里,模型可能学到「路」而不是「人怎么走」。
对活动识别任务,这不算大问题——任务本来就是「在这种路面上分辨走还是上下楼」。但对步态分析任务,这是硬伤:你以为在测步态,其实在测路面与步态的卷积。
条目页没有描述路线的地形、材质、坡度。这是无法从数据里补回来的信息。
4.4 四台设备的同步只能靠软件
前面提过,同步用 ActiLife 软件对齐到外部时钟,条目页承认可能有亚秒级漂移。
要理解这个限制的实际影响,得看漂移相对于什么是「大」的:
- 如果要算部位间的相位差(比如脚落地时刻,踝部冲击与髋部响应差多少毫秒),亚秒级漂移会让这个量彻底失效;
- 如果要算部位间的相关性(在几秒的窗口内,腕与踝的波形有多相似),几十毫秒的漂移影响不大;
- 如果只做单部位特征(每个部位独立算均方根、频域特征),漂移完全不影响。
所以这不是一个「能不能用」的问题,是一个「能算什么」的问题。
4.5 没有原始设备文件
发布的是 CSV,不是厂家原始的 .gt3x 二进制。这个转换做过什么处理,条目页没有完整交代。
至少有两件事无法从 CSV 反推:
- 原始采样率是不是真的一百赫兹。 GT3X+ 支持 30 至 100 赫兹多档,如果采集时设的是 30 赫兹、事后插值到 100 赫兹,CSV 里看不出区别(时间戳会是规整的 0.01)。我在核对时看到时间戳完全规整、无抖动,这既可能是原始采集的规整,也可能是转换时重采样的规整。
- 是否有过任何滤波。 GT3X+ 内部有抗混叠滤波,其截止频率随采样率变化。CSV 里的值是否已经过该滤波,条目页未说明。
这两条都属于「拿到数据后可以用物理方法检验、但需要额外实验」的类别。
4.6 它测不到的那一维
这份数据没有能量消耗、没有心率、没有步数真值、没有录像。
其中录像这一项最要紧。活动标签来自拍手标记加协议分段,这意味着:
- 段内的一致性无法验证。 一段标为「平地行走」的 42 秒里,受试者有没有停下来系鞋带?有没有中途转身?一拍手只能标出段落边界,标不出段内异常。
- 无法验证「按平时速度走」这句话。 条目页说受试者被要求按平时速度走,但没有步速记录,也没有录像。因此「步速」这个对加速度影响最大的变量,是缺失的。
这是一份「标签正确但强度未知」的数据。 对分类任务够用,对剂量-反应研究不够。
4.7 类别不均衡与「伪类」问题
前面已算过,六类里驾车占四成、拍手只占 1.3%。但更麻烦的是语义问题:
- 拍手(77)与走走停停(99)不是活动类型,是过程标记。
- 如果把六类一起训练,模型会很容易分出 77(拍手有极规律的三个尖峰),从而把总体准确率拉高——但这个能力没有用。
- 反过来说,如果剔除 77 与 99,就丢了约 36% 的数据,而且四类的样本量差距更大(驾车 374 万对下楼 27 万,差 14 倍)。
最合理的处理是:把 77 与 99 当遮罩用,不当初类。 用 77 定位有效段的边界,用 99 排除过渡期,只在 1、2、3、4 上训练与评估。
4.8 每个人贡献的段数并不相同
从段序列看,25 人是标准模式,5 人无驾车,1 人多一段平路,1 人少一段驾车分界。这意味着:
| 类别 | 提供样本的人数 | 每人的段数 |
|---|---|---|
| 平路走 | 32 | 5(1 人多至 6) |
| 下楼 | 32 | 6 |
| 上楼 | 32 | 6 |
| 驾车 | 27 | 2(1 人只有 1) |
按段计算,驾车类只有 27 人乘 2 段共 54 段,而上下楼各有 192 段。按「段」这个层级做交叉验证时,驾车类的 27 个人只有 54 个样本点,方差会很大。
4.9 数据质量清单(DAIMS)
| 维度 | 评估 |
|---|---|
| 完整性 | 32 个文件全部存在;行数、列数一致;无空值;时间戳无缺口 |
| 准确性 | 行数与时间轴可验证为自洽;但原始采样率与滤波情况无法从 CSV 反推;右踝三人有连续全零段 |
| 一致性 | 表头格式统一;活动码取值限于六个;段序列高度一致(25 人完全相同) |
| 时效性 | 数据采集于 2018 至 2019 年,2021 年发布;设备型号 GT3X+ 现已非最新 |
| 唯一性 | 每个 CSV 对应一个受试者,ID 无重复;但受试者 ID 是哈希串,无法与外部数据关联 |
| 有效性 | 标签机制(拍手)清晰且可复现;但段内一致性与步速无记录 |
「准确性」一栏里,右踝全零这件事我判定为局部缺陷、不影响有效活动段(见 §2.9)。这是核对之后才能下的判断,不是条目页给的。
§5 它能用来做什么
5.1 多部位活动识别的基准
四个部位同步,这是最直接的用途。可以做一个很干净的问题:在只有一个部位的情况下,分类准确率掉多少?
具体来说,用同样的特征与分类器,分别用腕、髋、左踝、右踝、以及四部位拼接,做五次实验。结论会直接回答一个工程问题:单腕设备能不能替代多部位。
这个问题在文献里被讨论过很多次,但多数研究用的是自己采的数据、自己的类别。这份数据的价值是把四部位、同协议、同受试者固定下来。
5.2 上下楼梯的区分
上楼与下楼在多数活动识别研究里被合并成「爬楼」,因为单靠腕部很难分开。这份数据里两者各约二十七万行,且是交替进行的(下、上、下、上……),同一段楼梯、同一个人、前后脚,是最干净的对照。
可以检验:从这个人在下楼段学到的特征,能不能迁移到同一人的上楼段。
5.3 驾车检测
驾车在可穿戴研究里是个实际问题——开车时腕部几乎不动,很容易被误判为「坐着」或「睡眠」。这份数据给了 27 个人共约 10.4 小时的驾车记录,且路线包含高速与城市两种路况。
注意路况没有分段标记。 条目页说路线包含高速与城市道路,但数据里驾车只有一个活动码 4,没有细分。要区分两种路况,只能靠信号本身的特征(高速平稳、城市频繁加减速),属于无监督的探索。
5.4 做拍手检测的方法学研究
拍手段是一个天然的「事件检测」任务:在长信号里找出一串规律的冲击。它有三个特点——形态固定、时长固定(1.5 至 1.9 秒)、间隔规律(每段活动前后各一次)。
用它可以做一件很实用的事:验证一套自动分段流程。如果你要处理的数据没有人工标记,你需要自动找出段落边界;这份数据给了标准答案,可以量化你的分段算法准不准。
5.5 作为信号处理的教学素材
三十二个 CSV、结构简单、时间轴规整、标签清晰。适合教:读取与清洗、按活动码分段、四部位对齐、时频分析、按受试者划分的评估。全部在一台笔记本上完成。
一个具体的好处是规模适中:总行数九百多万,pandas 读单个文件(最多四十四万行)毫无压力,全体读进来也就几 GB 内存。既不像玩具数据那样看不出问题,也不像 TB 级数据那样需要集群。
5.6 检验「体重如何影响加速度」
样本里体重指数从 17.7 到 39.8,跨度很大。可以问一个具体问题:在同样的活动下,肥胖者的踝部加速度是否更小?
理论上应该更小——皮下脂肪对冲击有衰减作用。但方向也可能相反:肥胖者步态更重、落地冲击更大。这份数据可以提供初步观察,但 8 个肥胖者、2 个偏瘦者,样本量不足以做分层结论。
5.7 它不能用来做什么
- 不能算人群活动量。 不是自由生活,不是代表性样本。
- 不能做老年人步态。 全部 54 岁以下,全部健康。
- 不能做能耗估计的验证。 没有间接测热、没有心率、没有 VO2。
- 不能做疾病筛查。 没有病人。
- 不能直接用于产品训练后宣称泛化。 单一中心、单一设备、单一路线。
5.8 用之前必须先做的三件事
第一,剔除 77 与 99。 把它们当作遮罩与边界,不当作类别。如果非要保留,至少单独报告「去掉这两类之后」的指标。
第二,建右踝零值掩码。 按「右踝三轴同时为 0」筛行,检查是否落在有效活动段内。按本篇核对,这三段全在 99 段里,但你的分析流程应该能自动发现这一点,而不是依赖别人核对过。
第三,确认驾车类的样本数。 如果你以为有 32 个人,实际只有 27 个。按人划分交叉验证时,要处理「某折里没有驾车样本」的情况。
§6 常见误读
6.1 误读一:九百多万个样本
这是本篇最想纠正的一条。九百一十八万是采样点数,不是样本数。
为什么容易这么读?因为每个采样点确实带一个标签,看起来就像九百多万个「带标签样本」。这也是深度学习教程里常见的表述方式。
正确的读法:把「受试者」当分组变量。任何划分、任何置信区间、任何跨人比较,分母都是三十二。要算「多少人能分对」而不是「多少行能分对」。
6.2 误读二:把拍手当一类活动
拍手(77)占总行数 1.3%,样本量十二万行,比下楼还少。但它的信号特征极为独特——三次规律的高频冲击。
如果把它当第六类,模型会很容易分对它,从而让宏平均指标看起来不错。但这个能力毫无用处,因为在真实场景里没人会在走路前后拍手。
更糟的是,它会让模型把注意力放在「有没有拍手」这个特征上,而不是「步态长什么样」。
6.3 误读三:把 99 当「静止」
99(非研究活动)里有八十九小时的数据,占三成半。这个码的字面意思是「设备开着,但不在研究协议内」。
它绝对不是「静止」。 那段时间里可能是:走到起点、和研究员说话、站着等待、上车、下车、走到车边。行为完全未知。
如果拿它当「静止类」的负样本训练,等于给模型喂了一堆标签错误的样本。
6.4 陷阱一:按行随机划分
这个陷阱前面提过,但因为后果最严重,值得单列。
按行随机划分会造成相邻采样点跨集泄漏:第 1000 行在训练集、第 1001 行在测试集,而这两行相隔 0.01 秒,数值几乎一样。模型只要记住「上一行的值」,就能在测试集上达到近乎完美。
判据:如果你的分类准确率超过 99%,先怀疑划分方式,不要先高兴。
正确做法有两条:按受试者划分(推荐),或按时间段划分(每人的前 70% 训练、后 30% 测试,但要注意活动顺序是固定的,前段只有走路)。
6.5 陷阱二:忘了四个部位是并联的
一行里有四个部位的数据,它们来自同一时刻。这意味着特征维度是乘关系,不是加关系:四个部位乘三个轴等于十二个通道。
如果只取模长(三轴平方和开方),会丢掉方向信息,但也会掩盖部位间的相关性。如果直接用十二通道,特征数会很多,而样本只有三十二人——过拟合几乎是必然的。
建议:先用四通道(四个部位的模长)做基线,再逐步加方向信息,每一步都看按人划分的验证分数怎么变。
6.6 陷阱三:用文件时长当「佩戴时长」
不同文件的时长从 15.7 分钟到 74.4 分钟。这个差别主要来自驾车段与等待时间,不是佩戴时长。
如果做「每天戴多久」这类分析,用这份数据会得出荒谬结论——它只戴了一次,而且时间由驾车路况决定。
6.7 陷阱四:把活动码当连续值
活动码是 1、2、3、4、77、99。这四个数字看起来有序,但 77 和 99 不是「更高级的活动」——它们是特殊标记。编码者留了 77 与 99 这两个空档,正是为了视觉上区分。
如果误把 activity 当连续变量做回归,会得到完全没有意义的结果。
6.8 陷阱五:忽略 77 段的定长特性
拍手段长度非常稳定,量出来在 1.5 至 2.7 秒之间,多数 1.5 至 1.9 秒。这个稳定性可以当特征用(前面提过),但也意味着如果你的算法用「段长」作为分段依据,会得到很好的结果,但这个结果不具备普适性——换个受试者、换个拍手节奏就失效。
6.9 陷阱六:年龄上限照抄条目页
条目页写「23 到 52 岁」,文件里最大 54 岁。这个差别不影响分析,但说明条目页的文字没有与文件做过交叉核对。这提醒我们:凡是从条目页抄来的数字,用之前都该在文件里验证一遍。
我在核对时就遇到过两处(年龄上限、驾车人数),都在正文里标了出来。
6.10 一个关于「原始」的层次问题
最后一条是概念上的。这份数据叫 “raw accelerometry”,是原始加速度,但它不是设备原始输出:
| 层级 | 内容 | 这份数据 |
|---|---|---|
| 传感器原始 | 电容变化、ADC 原始码 | 否 |
| 设备输出 | ADC 码乘增益后的加速度,未滤波 | 可能,未说明 |
| 厂家处理 | 抗混叠滤波、校准 | 可能已施加 |
| 研究处理 | 重采样、去重力、坐标变换 | 未施加(时间轴保留原始 0.01 秒) |
| 摘要指标 | 活动计数、能量消耗 | 否 |
它处在第三与第四层之间。这个定位对大多数用途完全够用,但如果有人的研究问题是「滤波对特征的影响」,这份数据就答不了。
§7 与相邻数据的定位
7.1 与公开腕戴数据的分工
| 这份数据 | 腕戴自由生活数据 | 实验室步态数据 | |
|---|---|---|---|
| 部位 | 腕、髋、双踝 | 通常仅腕 | 多部位加权毯、光学 |
| 活动 | 走、上下楼、驾车 | 走、跑、坐、躺、睡 | 走、转身、起坐 |
| 环境 | 户外真实路面 | 真实生活 | 实验室平地 |
| 标签来源 | 现场协议加拍手 | 日记、视频 | 实验员标记 |
| 时长 | 每人约一小时 | 数天至数周 | 数分钟 |
它的不可替代性在于多部位同步;它的短板在于时长与人群。要回答「四部位哪个最有用」,用它;要回答「人一天怎么动」,不能用它。
7.2 与 ActivityNet 类视频数据的分工
视频动作识别数据集(如 ActivityNet)与这份数据在任务形式上相同:把一段序列分到某个动作类别。区别在于模态。
视频给的是外观,加速度给的是力学。两者可以配对研究——比如用视频标出动作边界,再用加速度验证边界检测算法。这份数据的拍手标记,本质上就是「没有视频时的边界标记」。
7.3 规模在整个生态里处于什么位置
加速度数据集按规模分三档:
| 档 | 规模 | 代表形态 |
|---|---|---|
| 小 | 数十人、数百 MB | 这份数据(32 人、760 MB) |
| 中 | 数百至数千人、数 GB | 队列研究的子集(如 NHANES 的加速度子样本) |
| 大 | 数万人以上、数十 GB | 大型生物银行的加速度子队列 |
760 MB 处在小档。这个位置决定了它适合做方法学研究,不适合做泛化性主张。
7.4 与研究线的接续
条目页 References 里三篇是关键:Fadel 等 2019 年发表在 Statistics in Biosciences 的「用原始加速度区分走路与爬楼」,是这份数据的直接方法学出处;Straczkiewicz 等 2017 年的会议摘要关于驾车自动检测;Karas 等 2019 年的综述讨论加速度数据在健康研究中的挑战与机会。
跟着这三篇读,能看清作者为什么要把四个部位都戴上。 2019 年那篇综述尤其值得看——它是理解「为什么原始数据比计数好」这一论点最完整的表述。
7.5 适合谁用
- 做多部位活动识别的团队:这是最对口的用途。
- 做可穿戴算法验证的方法学研究者:数据规模适中,标签清晰,适合做对照实验。
- 做信号处理教学:结构简单、无缺失、时间轴规整。
- 不适合:需要老年人样本的团队、需要自由生活的团队、需要能耗金标准的团队。
§8 怎么用:分析方案
8.1 最小可用基线
在碰任何模型之前,先拿一个数。
做法:对每个「有效活动段」(用 77 切分、去掉 99),算四个部位的模长均方根与标准差,共八维特征(四部位乘二)。用多项逻辑回归做四分类,按受试者五折交叉验证。
为什么是这个基线:均方根反映强度、标准差反映波动,这两个量对不同活动有直观的区分力;逻辑回归不会过拟合到受试者身份;按人分组保证不泄漏。
这个基线大概能到 70% 至 85%。它的意义不是高,是你必须打过它。如果你的深度学习模型只有 88% 而基线 82%,那六个点的提升是否值得,要看你为它付出了多少。
8.2 划分策略:按受试者,且要看每折的类别覆盖
按受试者分组五折,三十二人分到五折,每折六至七人。这里有一个必须检查的点:
每折里是否都有驾车样本。 五人无驾车数据,若这五人恰好集中在某一两折里,那几折的驾车类样本为零,四分类的指标无法计算。
处理方式:分层划分——按「有无驾车数据」分层,保证每折里都有驾车的与无驾车的。这样每折都能算四类混淆矩阵。
8.3 指标怎么选
四分类且不均衡(驾车是下楼的十四倍),主指标不该是准确率。
| 指标 | 回答什么 | 是否合适 |
|---|---|---|
| 总体准确率 | 平均对多少 | 不合适:驾车主导 |
| 宏平均 F1 | 每类同权 | 合适,主指标 |
| 每类召回 | 每类漏多少 | 必报,尤其上楼与下楼 |
| 混淆矩阵 | 错在哪 | 必报 |
推荐主指标:宏平均 F1,加一张四乘四混淆矩阵。如果关心上下楼的区分,额外单列「上楼与下楼互错」的比例。
8.4 五条失败模式
| 现象 | 可能原因 | 排查动作 |
|---|---|---|
| 准确率 99% 以上 | 按行划分,泄漏 | 改按受试者划分重跑 |
| 驾车类召回接近 1,其他类很差 | 驾车样本占四成,模型偏向多数类 | 看混淆矩阵,试类别加权 |
| 上楼与下楼几乎全混 | 单部位信息不足 | 试四部位拼接,或加频域特征 |
| 不同折分数波动极大 | 某折含无驾车受试者 | 分层划分,报告每折类别覆盖 |
| 去掉某人后分数大跌 | 过度依赖个体特征 | 留一受试者验证 |
第四条最容易被忽略。三十二人分五折,每折六七人,任何一折里的特殊受试者(比如那四个踝部幅值异常高的人)都会显著影响该折分数。
8.5 部位消融:最有价值的对照实验
这是这份数据最该做的实验。
设计:特征固定(模长均方根与标准差),分类器固定(逻辑回归),只改输入部位:
| 组 | 输入 | 维度 |
|---|---|---|
| 1 | 仅左腕 | 2 |
| 2 | 仅左髋 | 2 |
| 3 | 仅左踝 | 2 |
| 4 | 仅右踝 | 2 |
| 5 | 双踝 | 4 |
| 6 | 髋加双踝 | 6 |
| 7 | 四部位 | 8 |
七组,同一套划分,同一套评估。结果可以画成一条曲线,看边际收益在哪里消失。
预期:腕部单独最差(手部动作与下肢关系最弱),双踝最好,但双踝到四部位的提升可能很小。如果确实很小,那么对设备设计是一个有价值的结论——两只脚踝就够,不需要腕与髋。
这个结论如果能重复出来,比任何一个分类准确率都更有实际意义。
8.6 从时域到频域
加速度的频域信息对区分上下楼很关键。
做法:对每个活动段,取某一部位的模长序列,做快速傅里叶变换,取 0.5 至 10 赫兹的功率谱。这个频段覆盖了正常步行(约 1.5 至 2.5 赫兹的步频)与其谐波。
特征可以是:主频位置、主频功率占比、谱熵、低频与高频的功率比。
为什么可能有用:上楼与下楼的步频相近,但冲击的锐度不同——下楼时足部落地更硬,高频分量更强。这个差别在时域上是「波形更尖」,在频域上是「高频功率更高」。
8.7 一个贴合实际的部署方案
如果目标是做一个「识别当前在走还是在上楼」的功能,实际约束是:单设备、低功耗、实时。
在这个约束下,前面的所有对照实验要重新排优先级:
- 设备选型:按 §8.5 的结论,优先看踝部。
- 特征:只用模长,不用三轴(省一半计算)。
- 窗口:2 至 5 秒滑动窗(覆盖 3 到 10 步),步进 1 秒。
- 模型:逻辑回归或浅层决策树,避免深度模型(功耗与延迟)。
- 验证:按人划分,报每类召回,尤其上下楼的互错率。
这套方案能到多少,可以拿这份数据直接测。测完之后,你至少知道「单踝加简单特征」的天花板在哪里。
§9 一个更宽的问题:为什么「原始」稀缺
写完这些核对,值得退一步说一个现象。
可穿戴领域里,公开的原始加速度数据远比公开的「活动计数」少。原因不难理解:原始数据的体积大(这份 32 人就 760 MB,如果是一万人戴一周,就是 TB 级);而且厂家把计数算法当商业资产,不愿意让原始数据流通。
体积不是主要障碍。真正的障碍是「原始」意味着责任转移:给了计数,使用者只能相信厂家;给了原始,使用者要自己承担滤波、校准、特征提取的全部判断。这份数据把判断的责任交给了使用者——它是好事,也是负担。
负担具体体现在:条目页没有说滤波情况、没有说原始采样率、没有记录步速。这些都不是疏忽,而是「原始数据」这种交付方式的必然结果——一旦交出去,作者就不再控制它会怎么被解读。
所以使用这份数据时,有一个心态上的准备:你会比使用计数数据时遇到更多「不知道」。 前面列的 §11.2 六个疑问,都属于这一类。它们不是数据的缺陷,是原始数据的常态。
§10 术语与口径
| 术语 | 本篇口径 |
|---|---|
| 原始加速度 | 三轴加速度的逐点数值,单位 g,未做去重力等处理 |
| 部位 | 左腕、左髋、左踝、右踝四者之一 |
| 活动段 | 两个拍手标记之间的一段同码数据 |
| 拍手标记 | 活动码 77,一段拍手,用于确定活动边界 |
| 非研究活动 | 活动码 99,设备开启但不在协议内 |
| 有效活动 | 活动码 1、2、3、4 四类 |
| 模长 | 三轴平方和开方,静止时应为 1.000 g |
| 段序列 | 一个文件中所有连续段的码依次排列 |
§11 事实清单
11.1 核心事实表
| 项目 | 值 |
|---|---|
| 受试者 | 32 人(男 13、女 19) |
| 年龄范围(核对) | 23 至 54 岁 |
| 年龄中位数 | 38 岁 |
| 体重指数范围 | 17.7 至 39.8 |
| 种族构成 | 白人 24、亚裔 5、黑人 3 |
| 佩戴部位 | 4 个(左腕、左髋、左踝、右踝) |
| 采样率 | 100 赫兹 |
| 总数据行(核对) | 九百一十八万二千一百 |
| 单人时长范围 | 15.7 至 74.4 分钟 |
| 活动码 | 6 个(1/2/3/4/77/99) |
| 有驾车数据的人数(核对) | 27 |
| 驾车占比 | 40.7% |
| 步行净时长范围 | 8.6 至 13.3 分钟 |
| 右踝全零段 | 3 人,共 39,400 行 |
| 段序列模式 | 4 种(25 人同一种) |
| 未压缩体积 | 760.8 MB |
| 许可 | ODC-ODbL v1.0 |
| DOI | 10.13026/51h0-a262 |
11.2 可立即验证的疑问
下面每条都能用一条命令或一次查看确认:
- 原始采样率到底是不是 100 赫兹? 看
time_s的相邻差值是否全部为 0.01。若是,只能说明发布版本是 100 赫兹;原始采集是否为 100 赫兹,需要看.gt3x元数据,而数据里没有。 - 是否有滤波痕迹? 对任一静止段(99 段的开头)做频谱,看 30 赫兹以上是否有能量。真实的未滤波加速度信号在高频有噪声底,滤波后会被截断。
- 左踝、髋、腕是否也有全零段? 按同一方法筛「三轴同时为 0」,检查另外三个部位。
- 拍手段的检测精度如何? 用信号找三连尖峰,与活动码 77 的边界比较,算时间偏差分布。
- 那四个踝部幅值异常高的受试者,步速是否更快? 用零穿越率估计步频,与他人比较。若步频也更高,说明是走得快;若步频相同但幅值高,可能是绑带更紧。
- 五个无驾车受试者是否有共同特征? 看他们的年龄、性别、记录时长,是否指向某个未记录的排除原因。
第 6 条我在核对时看过:这五人记录时长 15.7 至 27.7 分钟,全部是 A 模式之外的最短记录,年龄分别为 31、30、34、23、29——全部在 23 至 34 岁的年轻段。这是一个可疑的巧合,但仅凭三十二人无法确定这是否意味着什么。
11.3 证据链
§1:协议(0.66 英里步行、5 段平路 6 段下楼 6 段上楼、9.0 至 13.5 分钟、12.8 英里驾车、18 至 30 分钟)、设备型号与佩戴位置、拍手标记机制、软件同步的亚秒级漂移讨论,全部来自条目页 Methods 段。活动码含义来自条目页 Data Description 与数据字典文件。
§2:全部统计结果(行数、时长、活动码分布、段序列、人口学分布、右踝零值、部位模长)均由我下载三十二个 CSV 后逐行解析得到。条目页只提供了文件清单与协议描述。§2.2 的年龄上限不符、§2.7 的驾车人数不符,是本篇核对发现的。
§3:许可、DOI、体积、三种下载方式来自条目页 Access 与 Files 区。S3 直连与 nginx 慢的对比是本次核对过程的实际记录。
§4:样本量四层量级、人口学偏斜、路线固定、同步限制、无原始设备文件、无步速与录像、类别不均衡、每人类别覆盖、DAIMS 表,前六条基于条目页表述加数据结构分析,第七第八条的数值来自核对,DAIMS 为编辑按维度展开。
§5:六条用法为编辑基于数据特性展开,条目页未逐条提及。§5.6 的体重对比是基于样本分布提出的可做问题,不是已有结论。
§6:六条误读与陷阱中,6.1 至 6.3 是基于数据结构与标签语义的分析;6.4 至 6.8 为方法学常识结合本数据;6.9 来自核对发现;6.10 为编辑判断。
§7:与腕戴、实验室数据的对照基于公开常识;规模分档为编辑整理;7.4 的三篇文献来自条目页 References。
§8:全部为编辑的方法学建议。§8.5 的七组消融设计是本篇提出,条目页没有做过部位对照。
§9:关于「原始数据稀缺」的判断属编辑观点,非数据集测量结果。
§11.1:除条目页给出的许可、DOI、体积、采样率外,其余均为核对结果。
未验证的部分:原始 .gt3x 文件与 CSV 之间的转换过程;四台设备的实际同步误差;左踝、髋、腕的全零段;拍手检测的精度;步行路线的地形与材质;受试者的实际步速。
编辑说明
本页依据 PhysioNet 条目页(https://physionet.org/content/accelerometry-walk-climb-drive/1.0.0/)公开表述撰写,并完整下载了三十二个原始 CSV、人口学文件、数据字典与校验文件做逐行核对,总计九百一十八万行。
需要说明的几处判断:
一是关于年龄上限。条目页写「二十三到五十二岁」,人口学文件里有两个五十三岁、一个五十四岁。本页按文件判定上限为五十四岁,并据此认为条目页文字未与文件交叉核对。
二是关于驾车人数。条目页描述协议时说三十二人随后驾车,但五个文件里活动码 4 的行数为零。本页据此判定实际有驾车数据者为二十七人,并在 §2.7 列出这五人。
三是关于右踝全零。三人的右踝三轴同时为零,且三段全部落在非研究活动区间。本页判定为设备脱落或接触不良,并强调这些零值不侵入有效活动段。这个判断基于我对三者时间区间的核对。
四是关于四个踝部幅值异常高的人。本页只记录了现象(模长约 1.43 至 1.47,明显高于其他人的 1.14 至 1.30),没有推断原因,因为步速与绑带松紧都未记录。
五是关于下载方式。本页记录了走 PhysioNet nginx 下载极慢(十二分钟完成一个 8 MB 文件)而 S3 直连达 5.3 MB/s 的实测对比。这不是数据集本身的问题,但对使用者有直接价值。
六是关于「原始」。本页在 §6.10 列了五层,判定这份数据处在「可能已施加厂家滤波」与「未做研究处理」之间。这是基于条目页没说明滤波情况而做的保守判断,不是确证。
七是关于许可差异。ODbL 与常见的 ODC-By 不同,要求衍生数据库同许可共享。本页在 §3.1 明确提示,供合规判断参考。
资助与利益冲突:条目页注明由印第安纳临床与转化科学研究所设计统计试点基金支持,部分由 NIH 国家转化科学促进中心 UL1TR001108 资助,作者 Harezlak 另获 NIMH R01MH108467。条目页声明作者无利益冲突。伦理方面,研究经印第安纳大学机构审查委员会批准,全体受试者签署书面知情同意。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- kinecal — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- scientisst-move — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- grabmyo — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- sisfall — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- wisdm — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- hospital-activity-bosch — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- ppg-dalia — 共享标签:生理信号 / 可穿戴传感 / 步态与运动
- rehab-motion-capture — 共享标签:生理信号 / 可穿戴传感 / 步态与运动 / 评测基准
- pamap2 — 共享标签:生理信号 / 可穿戴传感 / 步态与运动
- dreamt — 共享标签:生理信号 / 可穿戴传感 / 评测基准
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

