2017-【人本数据和智能分会场】Myna:Context_Awareness_Framework_On_Smart_Devices_30页-5mb
报告摘要
文档总结:TalkingData Myna - 情景感知框架在智能设备上的应用
核心内容
TalkingData Myna 是一个基于 Android 平台的情景感知框架,旨在通过传感器数据识别用户行为,如行走、跑步、乘坐公交车、地铁等。该框架提供了面向开发者和数据科学家的两套接口,支持灵活的数据采集、特征提取、模型训练与评估,以及在移动端进行推理。
主要观点
- 情景感知的定义:情景感知是通过分析用户的环境、行为、时间等信息,实现对用户状态的实时识别。例如,识别用户是否在上班路上、在公园跑步或在逛街购物。
- 技术基础:情景感知依赖于智能移动设备上的传感器数据,如加速度计、陀螺仪等。这些传感器的高质量和高频数据更新是实现情景感知的关键。
- 应用场景:情景感知技术被广泛应用于多个领域,包括车险行业(UBI)、室内定位、反作弊、异常行为检测、人群画像、生物识别和个体识别等。
- 移动端优势:移动端具有低成本、低延时、高可靠性和边缘计算的优势,使其成为情景感知的理想平台。
- 深度学习方案:TalkingData Myna 支持深度学习框架,如 DeepSense,用于处理时间序列数据,提升模型的泛化能力和识别准确率。
- 数据采集与处理:有效的数据采集需要考虑设备姿态对传感器数据的影响,并通过计算旋转矩阵将数据转换到地球坐标系以减少偏差。
- 特征提取与选择:特征提取需兼顾时域和频域特征,使用 SFFS 和 XGBoost 特征重要性评估等方法选择最佳特征维度。
- 模型训练与评估:模型参数通过 GridSearchCV 进行优化,以平衡准确率和计算复杂度。
- 移动端推理:在移动端进行推理时,需根据设定的采样频率和时间窗口订阅传感器数据,提取特征并使用预训练模型进行识别。
- 模型导出与加载:支持将 TensorFlow LSTM 模型导出为优化后的格式,并在 Android 应用中加载和运行。
关键信息
支持的行为类型
- 静止
- 走
- 跑
- 乘坐公交车
- 乘坐地铁
- 乘坐小汽车
接口类型
- 面向开发者:提供简单接口调用,获取实时行为识别结果。
- 面向数据科学家:支持添加新的识别算法,调整传感器类型、采样频率和采样时长。
数据采集
- 用户行为数据需在相同状态下采集,以减少设备姿态差异的影响。
- 使用磁场传感器和重力加速度传感器计算旋转矩阵,将数据转换到地球坐标系。
特征提取
- 时域和频域特征均需考虑。
- 使用 SFFS 和 XGBoost 特征重要性评估方法选择最佳特征维度。
模型训练
- 使用 GridSearchCV 进行参数优化,以提高模型准确率。
- 支持多种机器学习模型,如随机森林和 XGBoost。
移动端推理
- 根据设定的采样频率和时间窗口订阅传感器数据。
- 使用预训练模型进行特征推理,输出每种行为的可能性。
模型导出与加载
- 使用 TensorFlow 工具冻结和优化模型,以适应移动端运行。
- 在 Android 应用中加载优化后的模型文件,并通过接口进行推理。
开源内容
TalkingData Myna 开源了以下内容:
- 训练和测试数据集
- 特征抽取的 Python 和 Java 代码
- 随机森林算法的 Java 代码
- XGBoost 模型的 Python 脚本
- 模型评估的 Python 脚本
- Demo 示例工程
- 详细的接口 API 说明文档
数据集信息
- UCI 数据集:包含 1,098,207 个样本,6 个属性,无缺失值。
- WISDM 数据集:无线传感器数据挖掘数据集。
- TalkingData 数据集:专门用于情景感知研究的数据集。
采样频率与时间窗口
- 选择合适的采样频率和时间窗口长度可以提高数据质量和模型识别准确率。
- 在移动设备上,需在模型准确率和耗电量之间取得平衡,可以通过延长时间窗口并降低采样频率来实现。
总结
TalkingData Myna 是一个全面的情景感知框架,支持多种行为识别算法和接口,适用于 Android 平台。其核心在于利用传感器数据进行行为识别,并通过深度学习和机器学习技术提升识别准确率。文档详细介绍了如何实现情景感知、如何进行数据采集、特征提取、模型训练和评估,以及如何在移动端进行推理和模型加载。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载