待补充
OxWearables/ssl-wearables
3/5
🧩 软硬件结合
已发布
项目简介
Self-supervised learning for wearables using the UK-Biobank (>700,000 person-days)
这是一个专注于可穿戴设备人体活动识别(HAR)的开源项目,核心创新在于提出了多任务自监督学习(SSL)框架。项目由牛津大学团队开发,相关论文发表于arXiv,旨在解决可穿戴数据标注成本高、泛化能力差的核心痛点。
标签
项目特点
**多任务自监督学习框架**:同时学习多个辅助任务(如时间序列变换预测、对比学习等),提升特征表示质量。
**降低标注成本**:无需大量人工标注数据即可训练出高性能的HAR模型。
**跨数据集泛化能力强**:在多个公开数据集上验证,模型迁移到新环境或新用户时表现稳定。
**模块化设计**:支持多种骨干网络(CNN、LSTM、Transformer)和自监督策略,方便组合与扩展。
**完整的训练与评估流程**:提供数据加载、模型训练、测试、可视化等全套工具。
**基于PyTorch实现**:代码清晰,易于复现和修改。
技术规格
| 框架 | PyTorch |
|---|---|
| 支持的数据集 | PAMAP2、USC-HAD、Opportunity、WISDM等 |
| 传感器类型 | 加速度计、陀螺仪、磁力计(取决于数据集) |
| 采样率 | 50Hz - 100Hz(可配置) |
| 骨干网络 | CNN、LSTM、Transformer |
| 自监督任务 | 时间序列变换预测、对比学习、掩码重建等 |
| 评估指标 | F1-score、准确率、召回率 |
| 运行环境 | Python 3.7+,CUDA可选 |
| 论文 | arXiv:2205.13029 |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| Python 3.7+ | 1 | — | 运行环境 |
| PyTorch 1.9+ | 1 | — | 深度学习框架 |
| numpy | 1 | — | 数值计算 |
| scikit-learn | 1 | — | 评估指标 |
| pandas | 1 | — | 数据处理 |
| PAMAP2数据集 | 1 | — | 可选,需自行下载 |
| USC-HAD数据集 | 1 | — | 可选,需自行下载 |
| Opportunity数据集 | 1 | — | 可选,需自行下载 |
| WISDM数据集 | 1 | — | 可选,需自行下载 |
能力画像
**记忆与知识检索**:3/5 — 需要理解自监督学习、时间序列分析等基础知识,但项目文档和论文提供了充分参考。
**动手与操作**:2/5 — 主要涉及代码运行和参数调整,无需硬件动手能力。
**编程与算法**:4/5 — 需要Python编程基础,理解PyTorch和深度学习训练流程,修改模型结构需较强算法能力。
**设计与建模**:3/5 — 可基于框架设计新的自监督任务或骨干网络,但已有模板可参考。
**实验与调试**:4/5 — 需要调整超参数、处理数据集差异、分析训练曲线,调试过程较为复杂。
**协作与分享**:2/5 — 开源项目,可通过Issue和PR参与,但社区规模较小。
**学习与研究**:5/5 — 非常适合学习自监督学习在时间序列上的应用,论文和代码结合紧密。
**系统集成**:2/5 — 可集成到其他HAR系统中,但需适配数据接口。
项目图库
所需技能
Python编程基础
PyTorch框架使用经验
深度学习基础知识(尤其是自监督学习)
时间序列数据处理能力
基本的Linux命令行操作
数据集下载与预处理能力
适用场景
学术研究:探索自监督学习在可穿戴传感数据上的新方法
人体活动识别(HAR)模型开发:降低标注成本,提升跨用户/跨设备泛化能力
健康监测应用:如老年人跌倒检测、运动状态识别
智能穿戴设备算法研发:在手表、手环等设备上实现高效活动识别
课程教学:作为深度学习与时间序列分析的教学案例