Google Research 发布 SensorFM:训练自一万亿分钟穿戴数据,35 项健康任务赢 33 项
- Google Research 发布 SensorFM,一个基于超一万亿分钟可穿戴传感器数据预训练的健康基础模型,对应论文见 arXiv:2605.22759。
- 训练数据来自 500 万授权用户,覆盖 100 多个国家和美国全部 50 个州、20 多种 Fitbit 和 Pixel Watch 设备型号,时间跨度 2024 年 9 月到 2025 年 9 月。
- 在跨四个数量级的规模实验里,最大模型 SensorFM-B 在 35 个健康预测任务中赢下 33 个;把编码器冻住、只加一个线性头,也能在 34/35 个任务上超过传统的特征工程加监督学习。
- 核心技术是 AIM(自适应继承掩码):把设备真实丢掉的数据和训练时人为盖住的数据同等对待,让模型天生就能处理残缺信息。
- 在结合个人健康智能体的临床医生盲测里,用 SensorFM 预测生成的健康摘要,和用真实医学测量值生成的摘要相比,评分在统计上没有明显差距。
可穿戴设备攒的数据,大多没被真正用起来
过去十年,手表和手环记录下海量的心率、血氧、睡眠和运动数据。可这些数据大多沉睡在设备里,或者只被用来做一件很窄的事:算算今天走了多少步、睡得好不好。想让它们真正去预测健康风险,传统做法会撞上三堵墙。
一个任务,一个模型
想预测糖尿病就单独训一个糖尿病模型,想预测抑郁再训一个抑郁模型。每个模型都要自己的一套标注数据,彼此之间的知识没法共享。
标签又贵又难拿
一个健康标签(比如「这个人确诊了糖尿病」)背后是医学检查、化验和诊断,慢且贵。很多标签根本无法回溯,你没法让一个人回到三年前补一次体检。
个体差异太大
同样一段心率曲线,在一个人身上完全正常,在另一个人身上可能就是风险信号。一刀切的模型接不住这种因人而异。
Google Research 交出了答案:SensorFM
2026 年 7 月 9 日,Google Research 发布博客,介绍一个叫 SensorFM 的可穿戴健康数据基础模型,对应论文发表在 arXiv(编号 2605.22759)。
就像 GPT 用海量文本学会了语言的通用规律,SensorFM 用超一万亿分钟的传感器数据,去学人体生理的通用规律。它先学出一套通用底座,再往上接不同的具体任务。
喂了它什么:一万亿分钟身体数据
先看它到底吃了多少数据。这批数据来自 500 万名授权用户,时间跨度是 2024 年 9 月到 2025 年 9 月,覆盖 100 多个国家和美国全部 50 个州。
这是迄今为止用来训练模型的最大、也最多样的一批可穿戴数据。它把 34 个每分钟聚合特征整合到一起,来自五种传感器。
| 传感器 | 缩写 | 测量什么 |
|---|---|---|
| 光电容积描记 | PPG | 心率、心率变异性、血氧饱和度 |
| 加速度计 | Accelerometry | 运动、步数 |
| 皮肤电活动 | EDA | 皮肤导电率(压力反应) |
| 皮肤温度 | Skin Temp | 体温变化 |
| 高度计 | Altimetry | 海拔 / 爬升 |
其中两个缩写解释一下。PPG(光电容积描记)就是手表贴着皮肤发光,靠血管吸收光线的变化反推心跳和血氧,这也是智能手表测心率的主要原理。EDA(皮肤电活动)测的是皮肤表面导电率,人一紧张出汗,导电率就会变,所以常被用来间接反映压力和情绪。
手表会掉线,模型怎么学会不较真
SensorFM 最关键的一处设计,是它怎么对待「缺不全的数据」。手表会被摘下来充电,会进省电模式,传感器会开开关关。对可穿戴数据来说,残缺是家常便饭。
过去处理残缺数据有两条老路:一条是猜着填补空缺,可猜出来的值可能是错的,会带进偏差;另一条是直接丢掉残缺的时间窗,可这样会浪费大量宝贵数据。SensorFM 走了第三条路,AIM(自适应继承掩码):把设备真实丢掉的数据,和训练时人为盖住的数据,当成同一回事来处理,让模型天生就习惯了信息残缺,把「缺失」本身当作要自己补全的部分去学。
填补空缺,猜错就带进偏差;丢弃残缺窗,白白浪费数据。前提是「数据必须完整」。
真实缺失和人为遮盖同等对待,把补全缺失当成训练任务本身。前提是「残缺本来就正常」。
有点像训练一个人在信号不好的电话里,靠上下文猜出漏听的那几个字,而不用要求信号必须满格才肯听。AIM 就是让模型习惯在「听不全」的情况下也能还原出完整的意思。
这样训练出来的 SensorFM 天生就是「缺失感知」的:它不光能容忍数据残缺,还能反过来利用残缺来学习。
规模一放大,效果就跟着涨,还没到头
把数据和模型一起放大,效果会怎样?Google 做了一组跨越四个数量级的实验:数据量从 200 万传感器小时加到 20 亿,模型从 10 万参数长到 1 亿。
预训练损失随着数据和模型变大稳稳往下走,35 个任务里赢了 33 个。更关键的一点:性能曲线还没见顶的迹象,也就是继续加数据、加参数,它大概率还能更强。
这里的两个指标解释一下。AUC 衡量分类判断准不准(0.5 相当于瞎猜,1 是完美判断);皮尔逊系数衡量预测值和真实值有多同步(数值从 -1 到 1,越接近 1 越同步)。
冻住模型不动,接一个线性头就够用
一个模型学到的表示到底够不够用,有个很省事的测法:把模型本体冻住,一个参数都不改,只在它输出的生理表示上外接一个简单的线性头(这叫线性探针,linear probe),看它能不能直接干活。
在 35 个判别性健康任务上测(数据来自 3 项 IRB 批准的前瞻性研究,共 13,985 名参与者),覆盖六大类健康信号。
35 个任务里,34 个超过传统基线(每个圆点是一个任务,空心的那个是唯一没赢的):
只训练那个轻量线性头,就在 34 个任务上超过了「特征工程加监督学习」的传统基线。还有两个细节:模型越大,越能自己隐式抓到年龄、性别这类人口统计特征(再额外喂这些信息带来的提升越来越小);对抑郁、焦虑这种在传感器里信号很微弱、很难测的状况,它也能捕捉到,而且只要少量标注样本就能超过基线。
这意味着同一套生理表示能迁移到几十种健康预测任务上,适配一个新任务所需的标注数据和开发周期都大幅压缩。
一屋子 AI 智能体,抢着帮它接上预测头
把生理表示变成某个具体任务的预测器,传统上得靠人工做特征工程、挑架构、调超参数,很繁琐。Google 干脆让 AI 自己来干这件事。
他们搭了一间「多智能体协作教室」(agentic classroom):一群 AI 智能体互相协作、又互相竞争,反复地生成、测试、改进可执行代码,来搭建预测头。整个系统前后搜索了超过 3 万个候选方案。
还有两条规律:方案质量随着搜索一路单调变好;换用更强的 AI 模型(比如更新版本的 Gemini),能得到更好的方案。
AI 猜的和真实体检结果,医生分不出来
最后,Google 把 SensorFM 放进一个「个人健康智能体」(Personal Health Agent)里,做了一个设计得很严的实验:让它生成健康摘要,比较三种输入条件下的质量。
人口统计 + 每日指标
只用基本信息和每天的可穿戴数据生成摘要。五个维度里全面垫底。
再加 SensorFM 预测
在基线之上,加进模型对健康指标的推断。每个维度都高于基线。
再加真实测量值
在基线之上,加进真实的医学测量(ground-truth),作为能达到的上限来对照。
具体做法:一组临床医生在盲测条件下,从背景、相关性、合理性、个性化、潜在危害五个维度给摘要打分,一共打出 1,860 个评分,花掉超过 40 小时的专家评估时间。
两个结论:加进 SensorFM 预测后,五个维度全都高于基线;更关键的是,用 SensorFM 预测和用真实测量值相比,临床医生的打分在统计上没有明显差距。也就是说,在这个健康助手的场景里,模型的推断几乎和真实的医学测量一样有用。
这事还差什么:隐私、临床验证和相关性陷阱
这套结果之外,还有几件事得说清楚。
隐私
500 万人的健康数据,怎么保证安全?Google 强调用的是「授权」且「去标识化」的数据,但大规模健康数据的隐私始终是要盯住的问题。
临床验证
目前还停在研究阶段,离真正进入医疗应用,还隔着严格的临床试验。
可及性
它依赖 Fitbit、Pixel Watch 这类设备,买不起或用不上的人就被挡在门外,存在数字鸿沟。
相关不等于因果
模型学到的是信号之间的相关性,能拿来预测,但不代表能解释背后的因果。
冻结编码器,只训练一个轻量线性头,就在 34/35 个健康任务上超过了传统的特征工程加监督学习。 Google Research · SensorFM
手表攒了十年的身体数据,第一次被一个通用模型读懂了
Google Research 发布 SensorFM:一万亿分钟穿戴数据练出一个通用底座,一页带图讲清它是什么、怎么做到、效果多少。
↓ 一页读完 · 有一张会动的图
手表和手环记录了十年的心率、血氧、睡眠、运动,可这些数据大多沉睡在设备里,或只用来算算步数、看看睡得好不好。真想让它们去预测健康风险,老办法会撞上三堵墙。
✘ 还做不到:预测糖尿病、抑郁这类真正的健康风险
为什么?想预测一种病就得单训一个专用模型,每个都要自己一套医学标注(化验、诊断),又慢又贵,还没法让人回到三年前补做检查;何况同一段心率,在不同人身上意义可能完全相反,一刀切的模型接不住。
2026 年 7 月 9 日,Google Research 发布 SensorFM,用超一万亿分钟、500 万人的穿戴数据,训练出一个能读懂身体信号的通用底座(对应论文 arXiv:2605.22759)。
想预测抑郁,先攒一批"确诊抑郁"的病例当标注,再单独训一个抑郁专用模型;换个病,从头再来一遍。
同一个冻住不动的底座(模型参数不再改),接一个只训一层的"线性头"(不改模型本体、只在它输出上加一层做预测),就能通吃几十种健康任务。
两个关键结果:一是冻住底座、只训这一层,就在 34/35 个健康任务上超过老办法;二是在临床医生盲测里(评分时医生不知道每份摘要背后用了什么),用它的推断生成的健康摘要,和用真实医学测量值生成的相比,评分没有统计上的明显差距。而且数据和模型越放越大,效果还在往上涨,没有见顶。可它凭什么这么稳?关键在它怎么对付"缺不全的数据"。
手表会被摘下充电、进省电模式、传感器开开关关,对穿戴数据来说,残缺是常态,不是例外。SensorFM 的招牌设计 AIM(自适应继承掩码),就是专门对付这件事。
老办法要么猜着把空缺填上(可能填错、带进偏差),要么干脆丢掉残缺的片段(白白浪费数据);AIM 走第三条路,把设备真丢的数据和训练时故意盖住的数据当成同一回事,让模型天生就习惯"信息不全",把"补全缺失"本身当成要学的本事。
普通人对"任务胜率"没感觉,换成"要接一个新健康任务,得费多大劲"更直观。
提醒一句:以上数字全部来自 Google 官方博客与其论文的内部测试,目前还没有第三方独立复现。
- × 一种病
就得单训一个模型 - × 医学标注
又慢又贵 - × 同段心率
人人意义不同
一个都测不了…
所有信号。
它来学人体的规律。
数据缺了一大块!
当成要自己猜的部分。
只加一层,
就赢过老办法。
我分不出来。
一份用它的推断。
评分几乎一样。
