动作识别的预测方法、装置、服务器及存储介质与流程

文档序号:30089405发布日期:2022-05-18 08:12阅读:60来源:国知局
动作识别的预测方法、装置、服务器及存储介质与流程

1.本发明涉及无线通信技术领域,尤其涉及一种动作识别的预测方法、装置、服务器及存储介质。


背景技术:

2.随着机器学习与物联网技术的迅速发展,智能监控、人机交互、医疗健康等领域发展越来越迅速。目前,在人类社会行为生活较为忙碌的情况下,基于日常活动的时间序列分类技术不仅能够让用户对自身的活动模式有个清晰的认知,而且能够为用户提供更多个性化的记录支持。因而,如何感知用户或其他应用的行为时间序列信息,并据此执行及时的动作或服务,成为新的挑战。相关技术中,可以利用穿戴设备配备的传感器采集用户日常行为活动的时间序列数据,并通过安装的应用程序记录时间序列数据,但是,无法对记录的时间序列数据的动作类型进行准确识别。


技术实现要素:

3.有鉴于此,本发明实施例期望提供一种动作识别的预测方法、装置、服务器及存储介质。
4.本发明实施例的技术方案是这样实现的:
5.本发明的至少一个实施例提供一种动作识别的预测方法,所述方法包括:
6.获取原始时间序列数据;
7.提取所述原始时间序列数据对应的特征序列;
8.将所述特征序列映射到高维空间中,得到高维空间中的特征序列;
9.将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;
10.其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
11.此外,根据本发明的至少一个实施例,所述将所述特征序列映射到高维空间中,包括:
12.对所述特征序列进行截取,得到多个一维特征序列;
13.利用第一预设参数和第二预设参数,将所述多个一维特征序列映射到高维空间中;所述第一参数表征所述高维空间的维数,所述第二参数表征所述高维空间中的特征序列形成的流形状。
14.此外,根据本发明的至少一个实施例,所述将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,包括:
15.利用所述高维空间中的特性序列,确定多个超平面;
16.利用所述多个超平面,将所述高维空间划分为多个子空间;
17.将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练。
18.此外,根据本发明的至少一个实施例,所述利用所述高维空间中的特性序列,确定
多个超平面,包括:
19.对所述高维空间中的特征序列进行分组,得到多组特征序列;
20.针对所述多组特征序列中每组特征序列,确定相应组特征序列对应的超平面,得到多个超平面。
21.此外,根据本发明的至少一个实施例,所述将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练,包括:
22.针对各个子空间中每个子空间的每个特征序列,统计相应特征序列中满足预设条件的特征点数量;并确定相应特征序列包含的特征点总数;
23.计算统计的特征点数量与相应特征序列包含的特征点总数的比值;
24.当所述比值大于或等于预设阈值时,确定所述相应特征序列对应的动作类型为第一动作,并作为预设模型的训练结果。
25.此外,根据本发明的至少一个实施例,所述方法还包括:
26.当所述比值小于预设阈值时,确定所述相应特征序列对应的动作类型为第二动作,并作为预设模型的训练结果。
27.此外,根据本发明的至少一个实施例,所述统计相应特征序列中满足预设条件的特征点数量,包括:
28.确定相应特征序列中每个特征点的坐标;
29.针对相应特征序列中每个特征点,判断相应特征点的坐标是否满足预设坐标条件;
30.当相应特征点的坐标满足预设坐标条件时,将相应特征点作为待处理坐标点,得到多个待处理坐标点;
31.统计所述多个待处理特征点的数量。
32.此外,根据本发明的至少一个实施例,进行预设模型的一次训练时,所述方法还包括:
33.针对各个子空间中每个子空间,判断相应子空间是否已训练得到对应的训练结果;
34.当确定相应子空间已训练得到对应的训练结果时,将相应子空间进行排除;
35.将剩余子空间中的特征序列作为样本训练数据,进行预测模型的训练。
36.本发明的至少一个实施例提供一种动作识别的预测装置,包括:
37.获取单元,用于获取原始时间序列数据;
38.第一处理单元,用于提取所述原始时间序列数据对应的特征序列;将所述特征序列映射到高维空间中,得到高维空间中的特征序列;
39.第二处理单元,用于将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;
40.其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
41.此外,根据本发明的至少一个实施例,所述第一处理单元,具体用于:
42.对所述特征序列进行截取,得到多个一维特征序列;
43.利用第一预设参数和第二预设参数,将所述多个一维特征序列映射到高维空间中;所述第一参数表征所述高维空间的维数,所述第二参数表征所述高维空间中的特征序
列形成的流形状。
44.此外,根据本发明的至少一个实施例,所述第二处理单元,具体用于:
45.利用所述高维空间中的特性序列,确定多个超平面;
46.利用所述多个超平面,将所述高维空间划分为多个子空间;
47.将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练。
48.此外,根据本发明的至少一个实施例,所述利用所述高维空间中的特性序列,确定多个超平面,包括:
49.对所述高维空间中的特征序列进行分组,得到多组特征序列;
50.针对所述多组特征序列中每组特征序列,确定相应组特征序列对应的超平面,得到多个超平面。
51.此外,根据本发明的至少一个实施例,所述将所述第二处理单元,具体用于:
52.针对各个子空间中每个子空间的每个特征序列,统计相应特征序列中满足预设条件的特征点数量;并确定相应特征序列包含的特征点总数;
53.计算统计的特征点数量与相应特征序列包含的特征点总数的比值;
54.当所述比值大于或等于预设阈值时,确定所述相应特征序列对应的动作类型为第一动作,并作为预设模型的训练结果。
55.此外,根据本发明的至少一个实施例,所述第二处理单元,还用于:
56.当所述比值小于预设阈值时,确定所述相应特征序列对应的动作类型为第二动作,并作为预设模型的训练结果。
57.此外,根据本发明的至少一个实施例,所述第二处理单元,具体用于:
58.确定相应特征序列中每个特征点的坐标;针对相应特征序列中每个特征点,判断相应特征点的坐标是否满足预设坐标条件;当相应特征点的坐标满足预设坐标条件时,将相应特征点作为待处理坐标点,得到多个待处理坐标点;统计所述多个待处理特征点的数量。
59.此外,根据本发明的至少一个实施例,所述第二处理单元,具体用于:
60.进行预设模型的一次训练时,针对各个子空间中每个子空间,判断相应子空间是否已训练得到对应的训练结果;
61.当确定相应子空间已训练得到对应的训练结果时,将相应子空间进行排除;
62.将剩余子空间中的特征序列作为样本训练数据,进行预测模型的训练。
63.本发明的至少一个实施例提供一种服务器,包括:
64.通信接口,用于获取原始时间序列数据;
65.处理器,用于提取所述原始时间序列数据对应的特征序列;将所述特征序列映射到高维空间中,得到高维空间中的特征序列;以及将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
66.本发明的至少一个实施例提供一种服务器,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,
67.其中,所述处理器用于运行所述计算机程序时,执行上述任一方法的步骤。
68.本发明的至少一个实施例提供一种存储介质,其上存储有计算机程序,所述计算
机程序被处理器执行时实现上述任一方法的步骤。
69.本发明实施例提供的动作识别的预测方法、装置、设备及存储介质,获取原始时间序列数据;提取所述原始时间序列数据对应的特征序列;将所述特征序列映射到高维空间中,得到高维空间中的特征序列;将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;其中,所述预测模型用于对目标时间序列数据中的动作进行识别。采用本发明实施例的技术方案,将原始时间序列数据对应的特征序列映射到高维空间中,并将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,如此,可以利用训练得到的模型对目标时间序列的动作类别进行识别,并实时反馈给终端。
附图说明
70.图1是本发明实施例动作识别的预测方法应用的系统架构示意图;
71.图2是本发明实施例提供的一种动作识别的预测方法的实现流程示意图;
72.图3a和图3b是本发明实施例提供的两个人工时间序列的示意图一;
73.图4a和图4b是本发明实施例提供的两个人工时间序列的示意图二;
74.图5a和图5b是本发明实施例将原始时间序列对应的特征序列映射到高维空间中的实现流程示意图;
75.图6是本发明实施例将原始时间序列对应的特征序列映射到高维空间中的实现流程示意图;
76.图7是本发明实施例将高维空间划分为2个子空间的示意图;
77.图8是本发明实施例超平面h1的示意图;
78.图9是本发明实施例预测模型的训练以及利用训练的预测模型对目标时间序列进行动作识别的实现流程示意图;
79.图10是本发明实施例提供的一种动作识别的预测装置的组成结构示意图;
80.图11是本发明实施例提供的服务器的组成结构示意图。
具体实施方式
81.在对本发明实施例的技术方案进行介绍之前,先对相关技术进行说明。
82.相关技术中,随着机器学习与物联网技术的迅速发展,智能监控、人机交互、医疗健康等领域发展越来越迅速。目前,在人类社会行为生活较为忙碌的情况下,基于日常活动的时间序列分类技术不仅能够让用户对自身的活动模式有个清晰的认知,而且能够为用户提供更多个性化的记录支持。因而,如何感知用户或其他应用的行为时间序列信息,并据此执行及时的动作或服务,成为新的挑战。相关技术中,可以利用手机、手表、眼镜等穿戴设备配备的传感器采集日常行为活动的数据,并通过安装的应用如微信、keep、薄荷健康等记录用户日常行为活动的数据,得到时间序列数据,并利用传统的时间序列分类方法对采集的时间序列数据进行分类;其中,微信应用可以记录用户一天的走路步数,keep应用可以记录用户跑步的时长等。传统的时间序列分类方法可以分为四类:基于集成的分类方法、基于模型的分类方法、基于局部特征的分类方法和基于全局特征的分类方法。
83.相关技术中,利用传统的时间序列分类方法对采集的时间序列数据进行分类具有
以下缺陷:一、未考虑到采集的时间序列的特性,即通过多功能传感器采集用户日常行为活动对应的时间序列数据具有“海量、高维”的大数据特性和“实时更新”的“流数据”特性。二、对采集的时间序列进行切割时,未考虑时间序列对应的活动类型,单纯依靠人为经验确定每个时间片的切割长度和切割起始结束点,导致一个时间片对应的动作类别不止一个,且扩展性和复现性差。由于时间流数据的每一个切片或序列在实际日常采集数据中出现的位置和时间都不确定,因此不同的切割方式可以生成不同的数据样本,不同人体活动周期采用同种切割长度容易丢失部分类别的重要特征,例如,采用传统小窗格切割法对采集的时间序列进行切割,为每个小窗格贴上该类别的标签,但由于窗口的切割点在一个完整周期中相对位置不固定,无法保证不同切割方法下准确率保持稳定,再例如,采用传统大窗格切割法对采集的时间序列进行切割,虽然可容纳多个活动周期使切割点对样本的影响较低,但大窗格内可以包含多类别序列信息,大大增加序列分类的难度。三,在连续时间内的时间序列可以存在多个活动类型,这样,实时反馈时间序列对应的类别增加了难度。另外,人类生活日常行为不仅限于两种(走路和跑步),导致无法满足不同种类活动的应用需求,例如,不同类别活动在单位时间下卡路里消耗量不同,大大增加了全天卡路里消耗量计算的难度。四、利用已经分割标注好的公开活动数据集,如msr action3d、pamap等,只适用于实验室环境,无法适用于各种应用程序。
84.基于此,本发明的各个实施例中,获取原始时间序列数据;提取所述原始时间序列数据对应的特征序列;将所述特征序列映射到高维空间中,得到高维空间中的特征序列;将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
85.下面结合附图及实施例对本发明再作进一步详细的描述。
86.图1是本发明实施例提供的动作识别的预测方法应用的系统架构示意图,如图1所示,系统包括:
87.数据传输模块,用于获取终端采集的原始时间序列。
88.特征提取模块,用于提取所述原始时间序列数据对应的特征序列。
89.模型训练模块,用于将所述特征序列映射到高维空间中,得到高维空间中的特征序列;将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型。
90.在线测试模块,用于利用所述预测模型对目标时间序列数据中的动作进行识别。
91.图2是本发明实施例提供的一种动作识别的预测方法的实现流程示意图,结合图1所示的示意图说明图2的实现过程,如图2所示,所述方法包括:
92.步骤201:获取原始时间序列数据;
93.步骤202:提取所述原始时间序列数据对应的特征序列;
94.步骤203:将所述特征序列映射到高维空间中,得到高维空间中的特征序列;
95.步骤204:将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;
96.其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
97.这里,在步骤201中,实际应用时,所述原始时间序列数据可以是指终端的应用程序在不同时间上记录的数据,如微信、keep、薄荷健康等应用程序。具体地,终端可以利用加
速度传感器如mems惯性传感器件采集用户日常活动的三轴加速度数据,并通过终端的应用程序进行记录形成原始时间序列,最后通过传输方式如tcp/ip、http和蓝牙等,将记录的原始时间序列实时输出给所述系统中数据传输模块。
98.这里,在步骤202中,提取所述原始时间序列数据对应的特征序列之前,可以对所述原始时间序列数据进行预处理,如滤波等操作。由于原始时间序列数据是利用终端的加速度传感器采集得到的,考虑到加速度传感器易受到噪声影响,为了防止采集的数据和真实数据之间的噪声偏差对特征提取造成影响,即,为了将原始时间序列中存在的与真实数据之间的噪声偏差消除掉,可以对所述原始时间序列进行滤波。
99.这里,在步骤203中,将所述特征序列映射到高维空间之前,可以采用重叠滑动窗口、非重叠滑动窗口等对滤波后的原始时间序列进行切割,得到多个一维时间片段;每个时间片段对应单个动作类别的完整信息或部分信息。
100.这里,在步骤204中,为了提高训练速度和准确度,可以将高维空间划分为多个子空间,针对多个子空间中每个子空间进行并行识别,并且在某个子空间的特征序列的动作类型识别完成后将该子空间的特征序列从样本训练总数据中进行排除,基于剩余子空间的特征序列进行模型训练,以缩短训练时间,提升训练效率。
101.需要说明的是,当利用所述预测模型对目标时间序列数据中的动作进行识别后,所述服务器可以与终端进行交互,即服务器可以将识别的动作类型实时反馈给终端,实现端对端的实时反馈。另外,可以利用所述预测模型对不同类型的连续时间序列进行离线识别与在线识别,其中,离线识别是指对在一段时间内的时间序列数据进行动作类型的识别,例如,对终端的应用程序在一个月内记录的时间序列数据进行动作类型的识别。在线识别是指对当前时刻产生的时间序列数据进行动作类型的识别,例如,对终端的应用程序在当前时刻记录的时间序列数据进行动作类型的识别。
102.下面对如何提取原始时间序列对应的特征序列的过程进行详细说明。
103.具体地,先对所述原始时间序列进行卡尔曼滤波,然后对滤波处理后的原始时间序列进行特征提取。
104.实际应用时,由于原始时间序列数据是利用终端的加速度传感器采集得到的,考虑到加速度传感器采集数据时易受到噪声和周围环境中的电磁干扰,导致采集的数据和真实数据相隔一定差距,因此,在流时间序列的预处理中,需要通过对采集的原始时间序列数据进行去噪,使得干扰产生的误差减小。其中,噪声可分为具有均匀频率分布的随机噪声、白噪声以及由其他算法或外界设备引入的频率噪声。
105.基于此,在一实施例中,所述提取所述原始时间序列数据对应的特征序列,包括:
106.对所述原始时间序列进行卡尔曼滤波处理,得到滤波处理后的原始时间序列;对滤波处理后的原始时间序列进行特征提取,得到对应的特征序列。
107.这里,卡尔曼滤波是指一个最优化自回归数据处理算法,该方法突破了经典维纳滤波方法的局限性,也不需要大量的历史数据,因此适用于有实时反馈需求的情况。卡尔曼滤波通过引入状态空间模型,将最小均方估计作为准则,递推估计出当前时刻的值,然后再继续迭代下去。其不仅能达到较好的滤波效果,也能保证较高的数据输出效率和较少的计算量,满足实时反馈的需求。在基于加速度传感器的活动识别系统中,由于实时性需求,该滤波算法应该在保证滤波效果的前提下,能够占用尽可能少的计算量和存储空间。
108.下面对如何将原始时间序列对应的特征序列映射到高维空间中的过程进行详细说明。
109.实际应用时,考虑到相关技术中按照时间长短对特征序列进行截取,得到多个时间片段,由于时间长短不一,因此,每个时间片段都有可能对应多种动作类别,从而导致无法准确识别出动作类型。这样,本发明实施例中,考虑到细粒度监测需求和某些特征序列具备的短暂性特征,切换时间会很短,可以采用重叠滑动窗口、非重叠滑动窗口等对滤波后的特征序列进行切割处理,后续能够实时反馈该特征序列对应的动作类别。
110.为了同时识别出多个时间片段,将多个时间片段映射到高维空间中,
111.基于此,在一实施例中,所述将所述特征序列映射到高维空间中,包括:
112.对所述特征序列进行截取,得到多个一维特征序列;
113.利用第一预设参数和第二预设参数,将所述多个一维特征序列映射到高维空间中;其中,所述第一参数表征所述高维空间的维数,所述第二参数表征所述高维空间中的特征序列形成的流形状,即,从一维特征序列中选取嵌入到高维空间中的特征序列的时间间隔。
114.这里,对所述特征序列进行截取的过程,可以包括:
115.确定滑动窗口的长度;
116.按照确定的滑动窗口的长度对所述特征序列进行截取。
117.具体地,考虑到滑动窗口过长则需要使用多标签来标记窗口,这样,可以对特征序列进行分析,确定滑动窗口的长度,以保证一个滑动窗口内的特征序列只包含一个动作类别的完整信息或者部分信息,而不应包含多个动作类别的相关信息,例如,可以将滑动窗口的长度设置为100ms,该数值低于大多数用户进行单一活动类别的持续时长。
118.举例来说,假设原始时间序列表征用户在2分钟内完成的运动活动,确定滑动窗口的长度,假设确定的滑动窗口的长度为30秒,则对原始时间序列对应的连续特征序列进行截取得到4个特征序列,第1个特征序列对应的动作类别为跑步动作,第2个特征序列对应的动作类别为跑步动作,第3个特征序列对应的动作类别为走路动作,第4个特征序列对应的动作类别为走路动作。
119.这里,将所述多个一维特征序列映射到高维空间中的过程,可以包括:
120.利用所述第一预设参数,建立坐标系;
121.按照所述第二预设参数,从所述特征序列中选取多个待处理特征序列;
122.在建立的坐标系中确定所述多个待处理特征序列分别对应的特征点,得到多个特征点;
123.基于所述多个特征点,形成高维空间中的特征序列。
124.具体地,可以基于taken在detecting strange attractors in turbulence中提出的延迟嵌入理论,将截取得到的多个一维特征序列嵌入到高维空间中。
125.举例来说,用d表示所述第一预设参数,用τ表示所述第二预设参数。假设d=2,τ=1,对原始时间序列进行截取得到的一维特征序列t={y
t
,y
t+1
, y
t+2


},则建立二维坐标系,并按照时间间隔为t+τ=t+1从一维特征序列t 中选取{y
t
,y
t+1
,y
t+2


}作为高维空间中的特征序列,如图3所示。
126.这里,一维特征序列t中选取的特征序列的集合可以用公式(1)表示,具体如下:
127.sw
d,τ
(t)={(ti,t
i+τ
,...,t
i+(d-1)τ
)|i∈n}=m
ꢀꢀꢀ
(1)
128.其中,sw
d,τ
(t)可以将一串有序的实数值转化为几何空间的集合m,集合m 可以称为流形的集合。m的每个元素可以被认为是整个系列上的探针sw
d,τ
(t)的探测结果。d,τ一起决定探头的感应窗口,其中,τ决定感应的粒度,而d与窗口中涉及的样本数量有关。
129.这里,确定所述第一预设参数和第二预设参数的过程,可以包括:
130.确定原始时间序列对应的分布图;
131.基于确定的分布图,确定所述第一预设参数的参数值和所述第二预设参数的参数值。
132.具体地,可以通过交叉验证、专家知识、控制变量法中之一确定所述第一预设参数和所述第二预设参数。
133.举例来说,假设第一预设参数用d表示,第二预设参数用τ表示,图4a和图4b是两个人工时间序列,图4a中的人工时间序列在局部范围内进行分布,则将d
τ
的取值设置为一个较小值,如d=2,τ=2,将该人工时间序列对应的特征序列映射到高维空间后,得到两个相同形状的流形,即该人工时间序列对应一个动作类别。图4b中的人工时间序列在较大的范围内进行分布,则将d
τ
的取值设置为一个较大值,如d=2,τ=40,将该人工时间序列对应的特征序列映射到高维空间后,得到两个不同形状的流形,即该人工时间序列对应两个动作类别。
134.再例如,图5a中的人工时间序列在局部范围内进行分布,则将d
τ
的取值设置为一个较小值,如d=2,τ=40,将该人工时间序列对应的特征序列映射到高维空间后,得到两个相同形状的流形,即该人工时间序列对应一个动作类别。图5b中的人工时间序列在局部范围内进行分布,则将d
τ
的取值设置为一个较小值,如d=3,τ=40,将该人工时间序列对应的特征序列映射到高维空间后,得到两个不同形状的流形,即该人工时间序列对应两个动作类别。
135.综上所述,当原始的人工时间序列的分布是局部分布时,将d
τ
的取值设置为一个较小值;当原始的人工时间序列的分布是在大范围内散列分布时,将d
τ
的值设置为一个较大值。
136.在一示例中,如图6所示,描述将原始时间序列对应的特征序列映射到高维空间中的过程,包括:
137.步骤601:获取原始时间序列;对所述原始时间序列进行滤波处理,对滤波处理后的原始时间序列进行特征提取,得到对应的特征序列。
138.步骤602:确定滑动窗口的长度;按照确定的滑动窗口的长度对所述特征序列进行截取,得到截取后的特征序列。
139.步骤603:利用第一预设参数,建立坐标系;按照第二预设参数,从截取后的特征序列中选取待处理特征序列,得到多个待处理特征序列;
140.步骤604:在建立的坐标系中确定所述多个待处理特征序列分别对应的特征点,得到多个特征点;基于所述多个特征点,形成高维空间中的特征序列。
141.这里,将原始时间序列对应的特征序列映射到高维空间中,具备以下优点:
142.(1)能够基于延迟嵌入理论,对“海量、高维、实时更新”的原始数据进行高效地的几何空间特征表示,使其保留原始数据的全局变化趋势和局部数据特征;且具有较高的表
示精度,后续高维空间中的特征序列数据可以更方便准确地被分类器识别,能够提高训练的鲁棒性,且不受序列切割长度和首尾位置影响。
143.(2)使用滑动窗口对特征序列进行截取,即,采用对切割点不敏感且尽可能保留序列类别全部信息的切割方式,不受序列切割长度和首尾位置影响,后续能够准确对每个样本序列进行标注。
144.(3)将原始时间序列对应的特征序列映射到高维空间中,能够灵敏捕捉不同类序列特点,同时,能够到考虑同类别序列的不同表现形式以及不同类别之间的区分度,即数据的多样性和全面性。
145.(4)通过对原始时间序列进行滤波去噪、序列截取以及特征几何表示,为预测模型的搭建提供数据基础。
146.(5)对获取的原始流数据进行预处理,可以消除噪声和冗余,从而能够避免获取的数据不完整,同时,还可以促使数据聚合和标准化。
147.(6)根据采集到的原始数据提取特征(如时空信息),通过合适的滤波方式对输入数据进行去噪,然后特征序列截取,最后转化为高维空间中的特征序列,以便后续输入到模型中,进行动作识别的预测模型的训练。
148.下面对如何利用高维空间中的特征序列进行动作识别的预测模型的训练进行详细说明。
149.具体地,先确定高维空间的超平面;再利用确定的超平面,将高维空间中的特征序列划分为多个批次,每个批次的特征序列形成一个特征子空间;将各个特征子空间的特征序列分别进行预测模型的训练,直至训练结束。
150.实际应用时,考虑到在训练样本较多的情况下会导致训练时间较长,这样,可以在将特征序列映射到高维空间之后,利用“批量学习”的方式对样本训练数据进行模型训练,即,利用多个超平面,将高维空间中的特征序列划分为多个批次,每个批次的特征序列对应一个特征子空间,将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练,如此,可以在不影响训练准确度的情况下,极大的缩短训练时间。
151.基于此,在一实施例中,所述将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,包括:
152.利用所述高维空间中的特性序列,确定多个超平面;
153.利用所述多个超平面,将所述高维空间划分为多个子空间;
154.将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练。
155.这里,所述利用所述高维空间中的特性序列确定多个超平面,可以包括:
156.对所述高维空间中的特征序列进行分组,得到多组特征序列;
157.针对所述多组特征序列中每组特征序列,确定相应组特征序列对应的超平面,得到多个超平面。
158.具体地,利用所述高维空间中的特征序列,生成特征序列集合;将所述特征序列集合划分为多个子集合;利用所述多个子集合,确定多个超平面。
159.实际应用时,可以利用支持向量机找到将嵌入空间rd划分为s-和s
+
的超平面h。其中,支持向量机是一种将数据进行二分类的模型,使得分类间隔在特征空间上最大化的线性分类器,其核心在于将寻找分类超平面问题转化为一个凸二次规划问题求解。
160.举例来说,假设高维空间中的特征序列形成的集合用m表示,将高维空间中的特征序列划分为p组,每组对应的子集合用m1,m2,...,m
p
表示,每个子集合mi是利用相对于m的超平面hi确定的。以子集合mi为例,利用该子集合中对应的特征序列进行模型训练,得到的训练结果可以是该子集合对应的特征子空间包含两个类别的特征序列,即+1类形成的特征序列m
i+
和-1类形成的特征序列m
i-。
161.图7是将高维空间划分为2个子空间的示意图,如图7所示,高维空间中的特征序列形成的集合用m表,将高维空间中的特征序列划分为2组,每组对应的子集合用m1和m2表示,m1和m2是利用相对于m的超平面h1确定的。其中,由于与最优超平面最近的训练样本被称为支持向量,支持向量和最优超平面之间的距离越大,则表明该超平面对两类高的区分能力和分类正确率,因此,是利用m1和m2的最大间距确定超平面h1,如图8所示。
162.需要说明的是,由于批量学习允许并行进行预测模型的训练,因此可以进一步提高预测模型的训练效率。同时,批量学习不会因为使用多个超平面给分类时间复杂度产生额外的开销。另外,由于批量学习的时间复杂度是 o(p(ml/p)2),因此可以大大提高预测模型的训练效率。
163.例如,当p=ml/2(即成对进行批量训练)时,按照o(p(ml/p)2)计算的预测模型的时间复杂度为o(2ml),显然,o(2ml)与原始相对ml的线性复杂度o(ml2) 相比,可看出,o(2ml)相对ml的线性复杂度是明显降低的。再例如,给定m
t
测试长度l的时间序列,根据公式计算,分类时间复杂度是o(mm
t
l),其相对于训练样本大小m
t
是线性的。
164.实际应用时,可以采用“阈值学习”的方式,对每个子空间中的特征序列的动作类别进行识别。
165.基于此,在一实施例中,所述将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练,可以包括:
166.针对各个子空间中每个子空间的每个特征序列,统计相应特征序列中满足预设条件的特征点数量;并确定相应特征序列包含的特征点总数;
167.计算统计的特征点数量与相应特征序列包含的特征点总数的比值;
168.当所述比值大于或等于预设阈值时,确定所述相应特征序列对应的动作类型为第一动作,并作为预设模型的训练结果。
169.这里,当所述比值小于预设阈值时,确定所述相应特征序列对应的动作类型为第二动作,并作为预设模型的训练结果。
170.这里,所述统计相应特征序列中满足预设条件的特征点数量,可以包括:
171.确定相应特征序列中每个特征点的坐标;针对相应特征序列中每个特征点,判断相应特征点的坐标是否满足预设坐标条件;当相应特征点的坐标满足预设坐标条件时,将相应特征点作为待处理坐标点,得到多个待处理坐标点;统计所述多个待处理特征点的数量。
172.这里,所述相应特征点的坐标满足预设坐标条件可以是指所述相应特征点的每个坐标的取值落入预设取值范围,例如,该特征点为二维坐标点,即x坐标点和y坐标点,当x坐标点落入第一预设取值范围,且y坐标点落入第二预设取值范围时,表明该特征点的坐标满足预设坐标条件。
173.举例来说,假设子空间1中包含3个特征序列,分别用t1、t2和t3表示,其中,t1=
{(0,0),(0,1),(0,2)},t2={(1,0),(2,0),(3,0)},t3={(1,1),(2,2),(3,3)},假设第一预设取值范围为[1,2],第二预设取值范围为[1,3],则t3中的特征点(1,1)、(2,2)、(3,3)为满足预设坐标条件的特征点。
[0174]
实际应用时,可以采用“提升学习”方式,对每个子空间中的特征序列的动作类别进行并行识别,以加快预测模型的训练速度。
[0175]
基于此,在一实施例中,进行预设模型的一次训练时,所述方法还包括:
[0176]
针对各个子空间中每个子空间,判断相应子空间是否已训练得到对应的训练结果;当确定相应子空间已训练得到对应的训练结果时,将相应子空间进行排除;将剩余子空间中的特征序列作为样本训练数据,进行预测模型的训练。
[0177]
这里,实际应用时,为了减少训练数据总量,进而提升训练效率,在进行一次模型训练时,针对每个批次对应的子空间,若该子空间中特征序列的类别中已识别出,则该批次对应的样本训练数据可以从总训练数据中删除,其中,总训练数据可以是指整个高维空间对应的特征序列数据。
[0178]
表1是提升学习算法的代码示意,如表1所示,第7行描述的是训练结果。第8行描述的是利用训练的预测模型在总训练数据中删除正确分类的+1级的特征点。其中,每个子空间中+1或-1类的特征点的比例与整个高维空间中的总训练数据+1或-1类的特征点的比例保持相同。
[0179][0180]
表1
[0181]
下面以具体实施例详细说明利用预测模型对目标时间序列进行动作识别的过程。
[0182]
以二元分类为例,表1示出了对目标时间序列进行动作识别的算法的代码,具体分析如下:
[0183]
1)第1行到第6行,描述如何将原始时间序列数据对应的特征序列映射到高维空间中,并将高维空间划分为子空间,即如何进行分区学习。
[0184]
首先,将所有训练时间序列嵌入到从第1行到第5行的流形上采样的集合 m相同的
空间中;然后,确定超平面h,将嵌入空间划分为相对于m的s
+
和s-。其中,mi中每个嵌入点的标签与yi保持相同,即相应时间序列的标签。
[0185]
2)从第7行到第20行,描述如何采用“阈值学习”方式对各个子空间中的特征序列的类别进行识别。
[0186]
从第7行到第10行中,计算每个序列ti中嵌入si的嵌入点的比例pi。如果 pi≥th,其中,th为预设阈值,则对应的时间序列ti被分类为-1类;否则,被归类为+1类。
[0187]
从第10行开始,在(0,1)内搜索在训练数据集中具有最小错误分类时间序列数的最佳阈值,以根据最佳阈值对上述分类结果是否出现错误进行校验。
[0188]
3)从第21行起,描述如何预测未标记的目标时间序列。
[0189]
将目标时间序列tx作为mx嵌入到同一空间中,其中,训练数据在第21行。然后,计算mx的比例px学习的特征子空间s-。根据“阈值学习”,预测标签y
x

[0190]
这里,需要说明的是,可以通过将目标时间序列嵌入到类-1对应的特征子空间s-进行分类,也可以通过将目标时间序列嵌入到类1对应的特征子空间s
+
进行分类,两种实现的结果可以随着问题的不同而变化。例如,在对特定ecg 数据集进行分类的问题中,对s-的学习似乎优于s
+
,因此,实际上,可以将两个分类结果进行比较,并选择训练误差较小的分类结果作为最终分类器得到的分类结果。
[0191]
[0192][0193]
表2
[0194]
在一示例中,如图9所示,描述预测模型的训练以及利用训练的预测模型对目标时间序列进行动作识别的过程,包括:
[0195]
步骤901:获取传感器采集的原始时间序列数据。
[0196]
步骤902:对所述原始时间序列进行卡尔曼滤波处理,对滤波处理后的原始时间序列进行特征提取,得到对应的特征序列。
[0197]
步骤903:确定滑动窗口的长度;按照确定的滑动窗口的长度对所述特征序列进行
截取,得到多个一维特征序列。
[0198]
步骤904:将所述多个一维特征序列映射到高维空间中,得到所述高维空间中的特性序列。
[0199]
步骤905:利用所述高维空间中的特性序列,确定多个超平面;利用所述多个超平面,将所述高维空间划分为多个子空间;将各个子空间的特征序列分别作为样本训练数据,进行分类器模型的训练。
[0200]
步骤906:利用训练得到的分类器模型对目标人体连续动作对应的时间序列的动作类别进行识别。
[0201]
这里,利用训练得到的分类器模型对目标人体连续动作对应的时间序列的动作类别进行识别后,可以将对人体动作的类型进行识别的结果实时反馈给终端上的应用程序,该终端上的应用程序可以根据对人体动作的类型进行识别的结果,计算用户消耗的热量,例如,统计用户每周消耗的卡路里。
[0202]
表3是利用本发明实施例提供的预测模型对目标时间序列的动作类别进行识别的准确率和利用相关技术中dde-mgm模型对目标时间序列的动作类别进行识别的准确率的对比示意图,如表3所示,利用本发明实施例提供的预测模型对目标时间序列的动作类别进行识别的准确率高于利用相关技术中 dde-mgm模型对目标时间序列的动作类别进行识别的准确率。
[0203][0204]
表3
[0205]
这里,预测模型的训练以及利用训练的预测模型对目标时间序列进行动作识别,具备以下优点:
[0206]
(1)使用整个训练数据集并采用批量学习的方法来减少训练时间。与相关技术中选择适当的人工子集进行训练的方式相比,能够避免训练数据量较少导致分类器不准确问题的发生。
[0207]
(2)能够在训练规模非常大的情况下,通过提升学习方式减少训练数据的大小,与相关技术中采用快速算法如序列最小优化算法(smo,sequentialminimal optimization)进行模型训练的方式相比,能够提供减少训练成本。
[0208]
(3)能够解决以下技术问题:如何实现不因时间片切分长短而显著影响序列识别准确率这一目的;如何选取能够随着活动类别不同而明显变化的特征子空间;如何实现一
种多类连续序列的离线与在线识别算法;如何使得系统便于识别连续时间序列,提供友好的交互界面,实现端对端的实时反馈。
[0209]
(4)预测模型作为一种有监督学习的判别模型算法,支持向量机以结构化风险最小为原则,通过将经验风险和置信范围降至最小而提升泛化能力。在训练样本不多的情况下,它依旧能实现较好的分类效果。在支持向量机中,映射可以将低维线性不可分问题映射到高维线性可分,同时为了避免维度灾难和减少计算量的考虑,通过核函数进行高维判别。
[0210]
(5)在对时间序列进行特征处理以后,通过流形分区学习来提取一个新的几何特征(可以称为高维空间),通过分区学习与阈值学习,将所有训练时间序列嵌入到与具体流形上采样的集合相同的空间中后再进行划分,得到多个特征子空间,并利用每个特征子空间的特征序列,结合支持向量机(support vectormachine,svm)和提升(boosting)策略,进行分类器模型的训练,后续,可以利用训练得到的分类器模型,实现对特定动作类别进行识别。
[0211]
采用本发明实施例提供的技术方案,将原始时间序列数据对应的特征序列映射到高维空间中,并将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,如此,可以利用训练得到的模型对目标时间序列的动作类别进行识别,并实时反馈给终端。
[0212]
为实现本发明实施例的动作识别的预测方法,本发明实施例还提供一种动作识别的预测装置,图10为本发明实施例动作识别的预测装置的组成结构示意图;如图10所示,所述装置包括:
[0213]
获取单元101,用于获取原始时间序列数据;
[0214]
第一处理单元102,用于提取所述原始时间序列数据对应的特征序列;将所述特征序列映射到高维空间中,得到高维空间中的特征序列;
[0215]
第二处理单元103,用于将所述高维空间中的特性序列作为样本训练数据,进行预设模型的训练,得到对动作进行识别的预测模型;
[0216]
其中,所述预测模型用于对目标时间序列数据中的动作进行识别。
[0217]
在一实施例中,所述第一处理单元102,具体用于:
[0218]
对所述特征序列进行截取,得到多个一维特征序列;
[0219]
利用第一预设参数和第二预设参数,将所述多个一维特征序列映射到高维空间中;所述第一参数表征所述高维空间的维数,所述第二参数表征所述高维空间中的特征序列形成的流形状。
[0220]
在一实施例中,所述第二处理单元103,具体用于:
[0221]
利用所述高维空间中的特性序列,确定多个超平面;
[0222]
利用所述多个超平面,将所述高维空间划分为多个子空间;
[0223]
将各个子空间的特征序列分别作为样本训练数据,进行预设模型的训练。
[0224]
在一实施例中,所述第二处理单元103,具体用于:
[0225]
对所述高维空间中的特征序列进行分组,得到多组特征序列;
[0226]
针对所述多组特征序列中每组特征序列,确定相应组特征序列对应的超平面,得到多个超平面。
[0227]
在一实施例中,所述将所述第二处理单元103,具体用于:
[0228]
针对各个子空间中每个子空间的每个特征序列,统计相应特征序列中满足预设条
件的特征点数量;并确定相应特征序列包含的特征点总数;
[0229]
计算统计的特征点数量与相应特征序列包含的特征点总数的比值;
[0230]
当所述比值大于或等于预设阈值时,确定所述相应特征序列对应的动作类型为第一动作,并作为预设模型的训练结果。
[0231]
在一实施例中,所述第二处理单元103,还用于:
[0232]
当所述比值小于预设阈值时,确定所述相应特征序列对应的动作类型为第二动作,并作为预设模型的训练结果。
[0233]
在一实施例中,所述第二处理单元103,具体用于:
[0234]
确定相应特征序列中每个特征点的坐标;
[0235]
针对相应特征序列中每个特征点,判断相应特征点的坐标是否满足预设坐标条件;
[0236]
当相应特征点的坐标满足预设坐标条件时,将相应特征点作为待处理坐标点,得到多个待处理坐标点;
[0237]
统计所述多个待处理特征点的数量。
[0238]
在一实施例中,所述第二处理单元103,具体用于:
[0239]
进行预设模型的一次训练时,针对各个子空间中每个子空间,判断相应子空间是否已训练得到对应的训练结果;
[0240]
当确定相应子空间已训练得到对应的训练结果时,将相应子空间进行排除;
[0241]
将剩余子空间中的特征序列作为样本训练数据,进行预测模型的训练。
[0242]
实际应用时,所述获取单元101可以由动作识别的预测装置中的通信接口实现;第一处理单元102、第二处理单元103可由动作识别的预测装置中的处理器实现。
[0243]
需要说明的是:上述实施例提供的动作识别的预测装置在进行基于发射功率的预测时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的动作识别的预测装置与基于发射功率的预测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0244]
本发明实施例还提供了一种服务器,如图11所示,包括:
[0245]
通信接口111,能够与其它设备进行信息交互;
[0246]
处理器112,与所述通信接口111连接,用于运行计算机程序时,执行上述智能设备侧一个或多个技术方案提供的方法。而所述计算机程序存储在存储器113上。
[0247]
需要说明的是:所述处理器112和通信接口111的具体处理过程详见方法实施例,这里不再赘述。
[0248]
当然,实际应用时,服务器110中的各个组件通过总线系统114耦合在一起。可理解,总线系统114用于实现这些组件之间的连接通信。总线系统114 除包括数据总线之外,还包括电源总线、动作识别的预测总线和状态信号总线。但是为了清楚说明起见,在图11中将各种总线都标为总线系统114。
[0249]
本技术实施例中的存储器113用于存储各种类型的数据以支持服务器110 的操作。这些数据的示例包括:用于在服务器110上操作的任何计算机程序。
[0250]
上述本技术实施例揭示的方法可以应用于所述处理器112中,或者由所述处理器
112实现。所述处理器112可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过所述处理器112中的硬件的集成逻辑电路或者软件形式的指令完成。上述的所述处理器112可以是通用处理器、数字数据处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。所述处理器112可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器113,所述处理器112读取存储器113中的信息,结合其硬件完成前述方法的步骤。
[0251]
在示例性实施例中,服务器110可以被一个或多个应用专用集成电路 (asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld, programmable logic device)、复杂可编程逻辑器件(cpld,complexprogrammable logic device)、现场可编程门阵列(fpga,field-programmablegate array)、通用处理器、动作识别的预测器、微动作识别的预测器(mcu, micro controller unit)、微处理器(microprocessor)、或者其他电子元件实现,用于执行前述方法。
[0252]
可以理解,本技术实施例的存储器(存储器113)可以是易失性存储器或者非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器 (prom,programmable read-only memory)、可擦除可编程只读存储器 (eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdisc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronousdynamic random access memory)、增强型同步动态随机存取存储器 (esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random accessmemory)、直接内存总线随机存取存储器(drram,direct rambus randomaccess memory)。本技术实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0253]
在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器113,上述计算机程序可由服务器110的处理器112执行,以完成前述动作识别的预测服务器侧方法所述步骤。计算机可读存储介质可以是fram、rom、prom、 eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
[0254]
需要说明的是:“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0255]
另外,本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
[0256]
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1