一种针对行为识别的基于自监督少样本学习的动作序列分割方法

文档序号:29083006发布日期:2022-03-02 00:34阅读:65来源:国知局
一种针对行为识别的基于自监督少样本学习的动作序列分割方法

1.本发明属于传感器动作识别技术领域,尤其涉及一种针对行为识别的基于自监督少样本学习的动作序列分割方法。


背景技术:

2.人类活动识别被认为是许多新兴物联网应用的一个关键方面,如智能家居和医疗保健,其中,活动分割的效果至关重要。在活动分类之前,连续接收的传感器数据通常被细分为子序列(每个对应于单个活动)。并且细分结果将被输入到行为识别的分类模型中。相应地,这些结果对活动分类的性能产生了显著影响。因此,已经开展了大量关于活动分割的研究,包括无监督方法和监督模型。
3.对于活动分割任务中的无监督方法:基于cpd(变化点检测)和基于阈值的方法都需要阈值来区分活动边界。然而,最佳阈值需要使用者有丰富的相关经验并且根据实际场景来确定。此外,基于时间形状的方法(如floss)需要给定问题的特定信息来确定时间约束参数,比较受环境依赖。
4.对于活动分割任务中的监督方法:虽然可以缓解主观性和环境依赖的问题,但是需要大量的目标传感器标记样本来训练模型,费时费力且受人力环境制约实际情况不一定能达到。


技术实现要素:

5.本发明针对现有关于活动分割的方法比较受环境依赖和需要大量的标记样本来训练模型的问题,提出一种针对行为识别的基于自监督少样本学习的动作序列分割方法,在不同场景的不同传感器下,均有良好活动分割效果,且仅需很少的目标传感器标记样本即可达到良好活动分割效果。
6.为了实现上述目的,本发明采用以下技术方案:
7.一种针对行为识别的基于自监督少样本学习的动作序列分割方法,包括:
8.步骤1:构建自监督的少样本动作序列分割框架sftseg;该框架基于孪生神经网络,以大量源传感器的标记样本、少量目标传感器的标记样本、目标传感器的未标记样本作为输入数据;其中,所述源传感器的标记样本和目标传感器的标记样本对应有四个状态标签,分别为静止状态、开始状态、运动状态和结束状态;所述样本指的是从传感器数据中得出的动作序列;
9.步骤2:对于所述源传感器的标记样本,构建交叉熵损失函数进行孪生神经网络训练;
10.步骤3:对于所述目标传感器的标记样本,将所述源传感器的标记样本作为扰动,并将该扰动注入所述目标传感器的标记样本中作为增强数据,构建一致性正则化损失函数进行孪生神经网络训练;
11.步骤4:基于所述目标传感器的未标记样本构建正样本对和负样本对,并基于此构建自监督损失函数来训练孪生神经网络,以使孪生神经网络能够捕获目标传感器的未标记样本的特征;
12.步骤5:通过步骤1-4得到训练好的sftseg,将目标传感器的样本作为测试样本输入训练好的sftseg,训练好的sftseg首先预测测试样本的状态标签,然后根据预测的状态标签对测试样本进行活动分割。
13.进一步地,所述步骤3包括:
14.按照如下规则构建增强数据:
15.a.作为扰动的压缩后的源传感器的标记样本与目标传感器的标记样本具有相同的类别;
16.b.根据翘曲路径将压缩后的源传感器的标记样本添加到目标传感器的标记样本中;所述翘曲路径通过动态时间规整算法生成。
17.进一步地,所述步骤4包括:
18.采用滑动窗口将动作序列离散为固定大小为w的重叠窗口,其中滑动步长为l;
19.如果两个窗口符合以下约束条件,则将其视为正样本对:两个窗口相邻;两个窗口包含相同数量的变化点,并且两个窗口的差异不包含任何变化点;
20.如果两个窗口符合以下约束条件,则将其视为负样本对:两个窗口的间隔大于给定的最小时间距离;两个窗口包含不同数量的变化点;所述变化点为动作序列行为突然变化的时间点。
21.进一步地,所述步骤4还包括:
22.对于正样本对,首先计算一个正样本对的差异集的sep分数,然后根据sep分数过滤正样本对;
23.对于负样本对,将负样本对的每个样本分成h个不相交的部分,然后计算所有两个连续部分的sep分数,得到负样本对的每个样本的最高sep分数;然后,根据负样本对的每个样本的最高sep分数计算负样本对的相异性得分;剔除相异性得分较低的负样本对。
24.与现有技术相比,本发明具有的有益效果:
25.本发明提出了自监督的少样本动作序列分割框架sftseg来分割动作序列数据上的活动,并使用孪生神经网络实现少样本学习和分类。以往的活动分割方法,往往基于相同传感器,本发明能够实现利用源传感器数据增强目标传感器数据的识别准确率,并能达到使用很少的目标传感器标记样本就可以实现很好的活动分割和识别效果。实现少样本活动分割技术,并采用孪生神经网络作为少样本学习的主要实现方法。本发明针对三种不同的数据,分别设计了不同的损失函数来增强训练效果:针对源传感器的标记样本,构建交叉熵损失函数强制输入样本至相应的类别;为了增强对目标传感器数据的泛化能力,引入了一致性正则化方法,将源传感器的标记样本作为扰动,并将该扰动作为增强数据注入目标传感器的标记样本中,来利用有限的目标传感器的标记样本进行模型训练;为了缓解源域和目标域之间的大量偏移,引入自监督学习,基于目标传感器的未标记样本构建正样本对和负样本对来训练孪生神经网络,使孪生神经网络能够捕获目标数据的特征。
26.本发明解决了活动分割任务中无监督方法(如基于变化点检测和基于阈值)的环境依赖和设计人员主观性的问题,在不同场景的不同传感器下,均有良好活动分割效果。本
发明还解决了活动分割任务中监督方法需要大量目标传感器标记数据(高成本且受各种条件制约)的问题,实现了仅需很少的目标传感器标记样本即可达到良好活动分割效果。
附图说明
27.图1为一个动作序列提取出的四种运动状态示例图;
28.图2为本发明实施例一种针对行为识别的基于自监督少样本学习的动作序列分割方法的流程示意图;
29.图3为环绕和最短路径的差异示例图;
30.图4为从动作序列中提取的正(负)样本对示例图;
31.图5为活动开始点检测示例图;
32.图6为不同大小标记目标数据的分割性能(f1-score)折线图。
具体实施方式
33.下面结合附图和具体的实施例对本发明做进一步的解释说明:
34.活动分割旨在确定活动的开始和结束时间,这是人类活动识别的第一步。由于难以从目标传感器收集大量标记数据,因此广泛采用无监督方法进行活动分割,例如基于cpd的方法和基于阈值的方法。然而,这些方法都面临着经验和环境依赖的问题。因此,我们通过以下步骤将活动分割任务转化为分类问题:(1)首先将连续时间序列数据离散化为大小相等的窗口;(2)然后将每个窗口分为四个状态类别:静止状态、开始状态、运动状态和结束状态;(3)最后,根据这些状态标签识别活动的开始和结束点。在这里,四个状态标签定义为:静止状态:窗口充满没有活动的时间序列数据;开始状态:窗口包含活动的起点;运动状态:窗口充满人体活动的时间序列数据;结束状态:窗口包含活动的终点。从一个活动中提取的这四种状态的例子如图1所示,它说明了作为时间函数的一个子载波的wifi信道状态信息(channel state information,csi)幅度的一阶差异。这里的竖直虚线是活动的实际起点和终点。
35.这样,分割结果在很大程度上取决于状态推断效果。因此,活动分割问题成为如何设计合适的状态推断模型以预测来自目标传感器的离散数据的状态标签的方法。由于标记样本有限,我们引入少样本学习作为状态推断模型。假设收集源传感器的多个标记样本是可行的,我们的目标变成如何使用三种类型的输入数据构建鲁棒的小样本学习模型对传感器数据进行状态推断:来自源传感器的大量标记样、来自目标传感器的少量标记样本和部分未标记样本(即大量源传感器的标记样本、少量目标传感器的标记样本、目标传感器的未标记样本)。在实际应用中,由于目标数据可能在不同场景下(如不同的人、环境和传感器设备)收集,它们的风格和特征可能完全不同。因此,少样本学习模型应该能够解决源域和目标域数据分布差异较大的问题。
36.具体地,一种针对行为识别的基于自监督少样本学习的动作序列分割方法,包括:
37.步骤1:构建自监督的少样本动作序列分割框架sftseg;该框架基于孪生神经网络(siamese network),以源传感器的标记样本、目标传感器的标记样本、目标传感器的未标记样本作为输入数据;其中,所述源传感器的标记样本和目标传感器的标记样本对应有四个状态标签,分别为静止状态、开始状态、运动状态和结束状态;所述样本指的是从传感器
数据中得出的动作序列;具体地,该框架为一个基于孪生神经网络的状态推断模型;
38.步骤2:对于所述源传感器的标记样本,构建交叉熵损失函数进行孪生神经网络训练;
39.步骤3:对于所述目标传感器的标记样本,将所述源传感器的标记样本作为扰动,并将该扰动注入所述目标传感器的标记样本中作为增强数据,构建一致性正则化损失函数进行孪生神经网络训练;
40.步骤4:基于所述目标传感器的未标记样本构建正样本对和负样本对,并基于此构建自监督损失函数来训练孪生神经网络,以使孪生神经网络能够捕获目标传感器的未标记样本的特征,并构建自监督损失函数进行训练约束;
41.步骤5:通过步骤1-4得到训练好的sftseg,将目标传感器的样本作为测试样本输入训练好的sftseg,训练好的sftseg首先预测测试样本的状态标签,然后根据预测的状态标签对测试样本进行活动分割。
42.在上述实施例的基础上,本发明还提出另一种针对行为识别的基于自监督少样本学习的动作序列分割方法,具体包括:
43.a.状态推断模型概述
44.具体地,针对主观和环境依赖以及目标传感器标记数据不足的问题,我们引入了少样本学习模型来预测离散数据的状态标签,并将标签进一步用于分割活动。然而,与一般的少样本学习不同的是,在活动分割场景中,源域和目标域之间存在很大的偏移,并且存在相同的类别标签。为此,我们提出了一个自监督的少样本动作序列分割框架,sftseg,该框架具体为一个基于孪生神经网络的状态推断模型。如图2所示。
45.具体地,该框架基于孪生神经网络,以三种数据作为输入:大量源传感器的标记样本、少量目标传感器的标记样本、目标传感器的未标记样本,分别对应分类损失、一致性正则化损失和自监督损失。首先,由于源传感器的标记样本和目标传感器的标记样本具有相同的四个类别,我们基于源传感器的标记样本构建了一个分类(交叉熵)损失l
cl
。其次,由于仅基于源传感器数据训练的模型可能无法准确捕捉目标传感器数据的特征,我们基于有限的目标传感器的标记样本开发了一致性正则化损失l
cr
以增强模型的平滑性。在这里,源传感器的标记样本被缩小作为扰动注入到目标传感器的标记样本中以产生增强数据然后样本对被用来构建一致性正则化损失l
cr
。第三,为了增强对目标传感器数据的泛化能力,我们设计了一个基于样本对的自监督损失这一样本对使用我们设计的针对时间序列的辅助任务从未标记的目标数据中提取。我们进一步提出自适应加权方法来增强这一损失。
46.具体地,我们通过孪生神经网络实现了少样本学习。一般的孪生神经网络采用卷积神经网络,该网络使用来自源传感器的大量标记数据进行训练,以提取特征向量,并通过测量新样本与目标传感器的各个类别的样本之间的距离来进行少样本分类。具体的来说,一个孪生神经网络由两个网络组成,它的参数是共享的。每个分支都使用了相同的网络架构,例如卷积神经网络(cnn)。一般来说,孪生网络是通过基于样本对的最小化对比损失来训练的。给定输入对样本对(x1,x2)及其由孪生网络获得的特征向量对(f(x1),f(x2)),潜在
空间中的特征向量之间的距离计算为
47.de=||f(x1)-f(x2)||
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
48.对比损失函数l
ct
定义为:
[0049][0050]
其中y是分配给该对的二进制标签,即如果x1和x2属于同一类,则y=0,否则y=1;m是边距。
[0051]
b.用一致性正则化来增强少样本学习
[0052]
这里,我们试图利用标记数据从两个方面来增强孪生神经网络模型。首先,对于标记的源数据,由于它们与目标数据具有相同的四个类别,我们采用交叉熵(分类)损失进行模型训练。其次,对于标记的目标数据,由于它们的数量非常少,我们提出了线级数据增强方法并设计了一致性正则化损失,这一方法迫使增强数据和原始数据具有相同的标签分布来加强模型平滑度。
[0053]
分类损失。与典型的少样本学习任务不同,对于活动分割,源传感器数据和目标传感器数据具有相同的四个类别:静止状态、开始状态、运动状态和结束状态。因此,为了利用标记的源传感器数据,我们采用交叉熵损失而不是少样本学习的一般损失来训练神经网络,这可以增强网络的分类能力。令d
ls
=(x
ils
,yi)
ni=1
为源传感器的标记样本集,其中yi是x
ils
的状态标签。分类器f是一个将输入特征空间映射到标签空间的函数。考虑到所有源传感器的标记样本d
ls
,交叉熵(分类)损失如下:
[0054][0055]
其中θ是模型参数,y
ij
表示样本xi的one-hot形式的标签的第j个元素,fj是f的第j个元素。
[0056]
一致性正则化。由于源域和目标域之间的较大偏移,仅基于源传感器数据训练的模型可能无法完全捕获目标传感器数据的特征,相应地可能无法有效预测目标传感器数据的状态标签。因此,我们在此引入一致性正则化,以利用有限的标记目标传感器数据来增强模型的泛化能力。换句话说,我们设计一种针对动作序列数据的线级数据增强方法,该方法将生成增强数据以构建一致性正则化损失。
[0057]
一致性正则化旨在确保分类器为注入扰动的未标记样本分配相同的类别标签。尽管广泛使用的扰动方法(如随机噪声、高斯噪声和衰减噪声)可以有效地应用于图像和自然语言数据处理,由于时间序列数据的内在性质,其并不适合于时间序列数据。例如,图像的扰动方法主要是为了产生像素级的变化,而时间序列数据需要线性变化,因为时间序列数据是随时间而变的一种波形。此外,增强数据应该具有与目标传感器数据类似的风格,这有利于推断模型学习目标传感器数据的特性。
[0058]
为此,我们将源传感器的标记样本缩小后作为扰动,并将该扰动注入目标传感器的标记样本中生成增强数据。然后将原样本(目标传感器的标记样本)和增强数据输入孪生神经网络,最小化原样本和增强样本的相应特征之间的距离来训练孪生神经网络。
[0059]
具体来说,为了生成具有目标传感器数据风格的增强数据,我们按照两个规则构建增强数据:(i)被压缩作为扰动的源传感器的标记样本应该与目标传感器的标记样本具
有相同的类别;(ii)根据翘曲路径将压缩后的源传感器的标记样本注入到目标传感器的标记样本中。在这里,使用动态时间规整算法(dynamic time warping,dtw)生成的翘曲路径映射了两个数据序列的元素,以最小化它们之间的距离。图3中显示了一个关于两个动作序列样本的翘曲路径和最短路径的示例。此处,黑色和灰色实线表示两个时间序列样本的波形,灰色虚线表示图3(a)中的翘曲路径和图3(b)中的最短路径。当把黑色实线的作为扰动时,如果将此扰动以最短路径加入灰色实线的,这个波形将会发生剧烈的扭曲,如图3(c)所示。而图3(d)中的翘曲路径所得到的结果,既能保持基本形状,又能对波形有一定的改变。
[0060]
因此,增强数据计算如下:
[0061][0062]
其中,aggregate(x,x

))根据翘曲路径对两个序列求和。并且h(x)是收缩传感器数据的幅度的函数,例如h(x)=γ*x。在这里γ∈(0,1)可以是调整收缩度的超参数。
[0063]
因此,为了惩罚原始样本和增强数据的不一致预测,一致性正则化损失通过以下公式计算:
[0064][0065]
其中f(x)是指通过孪生神经网络的特征向量,d
t
是来自目标传感器的标记数据集。
[0066]
c、通过自监督促进少样本学习
[0067]
为了进一步使推断模型学习目标数据的特征,我们在此将自监督技术结合到少样本学习中,该技术利用大量未标记的目标数据进行模型训练。为此,我们提出了适合于时间序列数据的辅助任务来构建自监督损失,并通过设计自适应权重来调整每个训练样本对的重要性以进一步增强这种损失。
[0068]
自监督损失。为了使用自监督方法训练孪生网络,我们需要为孪生网络设计一个基于未标记数据的辅助任务。尽管在计算机视觉和自然语言处理领域(例如图像旋转、变形和裁剪)中存在一些有效的辅助任务,但它们不适用于连续时间序列数据。例如,在计算机视觉中广泛使用的图像旋转任务目标是为旋转的图像分配与原始图像相同的标签。但是,对于活动分割,当带有开始状态标签的序列旋转180
°
时,很容易与结束状态的序列混淆。如图1所示,将带有开始状态标签的数据旋转180
°
后,其形状与带有结束状态的数据非常相似。
[0069]
为此,我们提出了一个适合于时间序列数据的辅助任务,它基于未标记的目标数据构建许多正样本对和负样本对来训练孪生网络。这里,正样本对意味着两个样本都具有相同的状态标签,而负样本对则相反。我们将形状相似的两个连续窗口视为正样本对,将形状不同的两个分开的窗口视为负样本对。具体来说,我们采用滑动窗口将动作序列离散为大小为w的重叠窗口,其中滑动步长为l。如果两个窗口符合以下约束条件,则将其视为正样本对:(i)这两个窗口相邻;(ii)它们包含相同数量的变化点,并且两个窗口的差异不包含任何变化点。相应地,如果两个窗口符合以下约束条件,则将其视为负样本对:(i)这两个窗口彼此充分分离,即它们的间隔应大于给定的最小时间距离(如2*w);(ii)它们包含不同数量的变化点,即一个窗口包含一个变化点,另一个窗口没有变化点。这里,变化点是动作序
列行为突然变化的时间点。对于包含动作数据的时间序列,活动转换可被视为变化点。因此,如果两个连续的窗口包含相同数量的变化点,它们应该有相同的状态标签,被视为正样本对。而变化点数不同的两个窗口应该有不同的状态标签,被视为负样本对。我们采用基于密度比的方法sep(s.aminikhanghahi,t.wang,and d.j.cook,“real-time change point detection with application to smart home time series data,”ieee transactions on knowledge and data engineering,vol.31,no.5,pp.1010

1023,2019)来检测变化点。该方法通过将概率度量和变更分数与相应的阈值比较来确定变化点,达到了较好的性能。
[0070]
图4给出了正负样本对示例,其中竖直虚线是活动的真实开始点和结束点。如图4所示,样本对是正的,因为它们是两个相邻的窗口,并且它们只有一个变化点,以及两个差集和没有任何变化点。在此示例中,竖直虚线是变化点,因为它们是活动的过渡点。相应地,样本对为负样本对,因为它们相距较远并且具有不同数量的变化点。
[0071]
根据这些规则,可以从未标记的目标数据中获得大量正对和负对。为了提高样本质量,我们进一步剔除了低置信度的样品。具体来说,更大的sep分数意味着存在变化点的概率更大。对于正样本对,由于样本对的差异集和不应该存在变化点,所以我们丢弃差异集中sep分数较高的样本对。为此,我们首先计算一个样本对的差异集的sep分数,然后根据他们的分数过滤样本对。对于一个样本对的差异集,将该差异集平均分为两部分:x
t-1
和x
t
,每个长度为s,然后我们计算它们的密度比,如下所示:
[0072][0073]
其中f
t-1
(x)和f
t
(x)分别对应于两部分的概率估计密度。其次,sep变化点得分的构造如下:
[0074][0075]
通过这种方式,可以计算差异集和的sep值和然后,为了确保这些训练样本的质量并避免过拟合,我们剔除了10%的正样本对:
[0076][0077]
其中f
drop
反映了剔除的情况,是两个分数的平均值,ε是由所有正样本对的sep值的排序结果和剔除率确定的阈值。
[0078]
对于负样本对,我们期望一个样本有一个变化点,而另一个样本没有变化点。为了满足这一要求,我们过滤掉在变化点上具有较小差异度的样本对。为此,我们设计了一个基于sep分数的相异性分数,以剔除置信度较低的负样本对。具体地,将负样本对的每个样本分成h个不相交的部分,然后使用公式(7)计算所有两个连续部分的sep分数。让表示第j和第(j+1)个部分的sep分数。最高的sep分数为:
[0079][0080]
因此,每个来自负样本对的样本都可以计算出一个最大sep分数,假设和分别为具有1个和0个变化点的样本的最大的sep分数。该样本对的相异性得分可以计算为:
[0081][0082]
相异性得分较低的负样本对将被去掉,其中,除了用替换外,仍然采用公式(8)作为过滤方法。
[0083]
在减少10%的低置信度的正负样本后,剩下的样本对通过以下自监督损失来训练孪生神经网络:
[0084][0085]
其中de是一对输入样本和的特征向量对和之间的距离,即y是分配给这一样本对的标签,即如果和具有相同的状态标签,则y=0,否则y=1;m是关于边距的超参数。
[0086]
自适应加权。在对样本对进行筛选后,剩余的正样本对和负样本对都具有较高的置信度。然而,不同的样本对可能为学习数据表示提供不同的线索。通常,没有任何活动数据的样本对应该包含较少的学习数据表示的线索。相应地,包含活动数据的样本对应该提供更多的线索,并在模型训练中发挥更重要的作用。图4显示了两种样本对的示例。在该图中,由于正样本对包含活动数据,而负样本对没有活动数据,因此在模型训练时,正样本对值得更多关注。
[0087]
由于活动发生时传感器数据的振幅范围比没有活动时的振幅范围大得多,因此变化范围较大的样本对可能包含活动数据,在模型训练中应予以重视。我们采用样本对的振幅方差来估计波动幅度。因此,样本对的波动幅度可以用如下的公式描述:
[0088][0089]
其中和分别是样本对和的振幅方差。然后将v
pair
作为权重,在模型训练时调整其重要性。考虑到这个权重,公式(11)中自监督损失变为:
[0090][0091]
最后,结合公式(3)中的分类损失、公式(5)中的一致性损失和公式(13)中带权重的自监督损失后,最终的损失函数说明如下::
[0092][0093]
在这一损失中,一致性损失基于目标传感器的标记数据,而自监督对比损失基于目标传感器的未标记数据。因此,利用这些损失训练的模型可以有效地捕捉目标传感器数
据的特征并应用于目标传感器。模型采用带有默认超参数的adam算法作为的优化方法。
[0094]
d活动分割
[0095]
在获得训练好的状态推断模型后,我们从目标传感器预测给定动作序列的状态标签,即我们比较目标样本向量和每个类的样本向量的距离,该目标样本与那个类别的样本的距离最小,就将该目标样本标记为这一类别。然后根据推断出的状态标签对活动进行分割。具体地,基于以下方式检测活动的开始点和结束点。首先,使用滑动窗口将连续的动作序列(传感器数据流)分割为重叠的窗口,每个窗口的长度为w,其中滑动步长为1。其次,使用状态推断模型推断每个窗口的状态标签。最后,根据窗口的状态标签,通过观察一组窗口标签的众数的变化来识别活动的起点和终点。这里的众数是集合中最常出现的数字。换句话说,如果众数从1(静止状态)更改为2(开始状态),则相应的窗口被视为活动的开始。如果众数从4(结束状态)更改为1(静止状态),则此窗口被视为活动的结束。
[0096]
为了更直观的表示,图5给出了一个关于如何通过观察众数变化来检测活动开始点的示例,其中用于计算众数的窗口标签列表的长度m设置为10。在该图中,有18个数据点,从1到13的点是静止数据,从14到18的点是活动数据。这些数据首先被分割成11个重叠窗口,每个窗口的长度w=8。其次,对于每个窗口,使用经过训练的状态推断模型来推断其状态标签。从w1到w6的状态标签是静止状态,1。从w7到w11的状态标签是开始状态,2。最后,遍历每个窗口以检测活动的开始点和结束点。当检查w10时,状态标签列表从w1到w10的众数为1。当检查w11时,当前数据点i的索引为18,从w2到w11的众数变为2,这意味着众数从1(静止状态)变为2(开始状态),表明这里存在活动开始点。当多个值的出现频率相同时,众数将设置为这些值中的最大的那个。这里,开始点t
start
设置为i-m/2+1。因此,在本例中,当i=18且m=10时,t
start
等于实际起点14。对人类活动进行分割后,这些数据可用于活动分类。
[0097]
为验证本发明效果,进行如下实验:
[0098]
我们用四种数据集,并基于不同的传感器设备、用户和环境下评估sftseg的有效性。此外,还研究了各个组件的贡献和训练数据大小对性能的影响。
[0099]
a.实验数据和设置
[0100]
实验数据。我们在四个行为识别数据集上开展实验,这些数据集来自不同类型的传感器,例如wifi设备、智能手机和rfid标签。
[0101]
handgesture:该数据集包括由两个实验主体执行并由惯性测量单元捕获的十二个手部运动活动。这些活动由开窗、关窗、饮水、浇花、剪、劈、搅、看书、网球正手、网球反手、扣球等组成。而且活动是连续的。
[0102]
usc-had:该数据集由十二个人类活动组成,每个活动使用3轴加速度计和3轴陀螺仪分别记录在14个类别中。每个类别的活动重复五次,包括向前走、向左走、向右走、上楼、下楼、向前跑、跳起来、坐下、站立、睡觉、电梯上升和电梯下降。由于这些数据是不连续的,为了进行分割,活动集是手动随机拼接的。
[0103]
rfid:该实验数据集包含了来自六个人的数据,每个人在墙壁和rfid天线之间摆姿势,其中九个被动式rfid标签放置在墙壁上。rfid数据是一个非连续数据集,因为它是由六个受试者中的每一个的十二个姿势连接而成的,并且为了实验的进行,仍然为手动拼接数据。
[0104]
wifiaction:该数据集由五个人进行的十项活动组成,这些活动使用wifi设备并
change point detection with application to smart home time series data,”ieee transactions on knowledge and data engineering,vol.31,no.5,pp.1010

1023,2019.]。
[0114]
igts:一种基于信息增益的分割方法。这种方法通过使用动态规划方法来估计动作边界,以最大化组成部分的信息增益。
[0115]
floss:一种基于形状的分割方法。该方法基于以下事实来分割活动数据:相似形状的模式应该与相同的类别相关联,并且发生在彼此的时间上很接近的范围内。
[0116]
espresso:一种熵和形状感知时间序列分割方法。该方法利用时间序列的熵和时间形状特性对多维时间序列进行活动分割。
[0117]
deepseg:一种基于监督学习的活动分割方法。该框架采用cnn作为状态推断模型来预测离散数据的状态标签,然后根据状态标签识别活动边界。
[0118]
c.活动分割的性能表现
[0119]
表1显示了在四个数据集上不同方法的分割性能,其中最佳效果以粗体突出显示。通过分析方法性能,我们有以下观察结果。
[0120]
首先,我们提出的sftseg在四个数据集上始终比基线分割方法产生更好的性能。具体来说,sftseg在handgesture、usc-had、rfid和wifiaction数据集的f1-score比较好的基线方法deepseg分别提高了2.45%,5.82%,8.23%,1.92%。结果表明,sftseg可以通过我们提出的一致性正则化和自监督损失来捕捉目标数据的特征,并进一步基于几个标记样本对目标数据进行准确的活动分割。
[0121]
其次,与非监督方法相比,监督方法deepseg并没有表现出明显的优势,尤其是对于rfid数据。主要原因是deepseg是为源数据和目标数据具有相同分布的场景而设计的。然而,在只有几个标记的目标样本的情况下,deepseg的竞争力会降低。这也解释了大多数工作在缺乏标记数据时利用非监督方式来分割活动的原因。而sftseg可以解决标记目标数据有限的问题,并且取得了比这些监督和非监督方法更好的性能。
[0122]
第三,对于非监督的基线方法,不同的数据集应该采用不同的非监督方法以获得更好的分割结果。例如,对于rfid数据,igts优于其他无监督方法,但是,对于handgesture数据,其分割结果明显比espresso差。这些结果为我们提到的描述提供依据:非监督分割方法通常会受到环境相关问题的影响。相比之下,我们提出的sftseg可以在所有数据集上始终如一地取得了更好的性能。
[0123]
表1:分割性能比较
[0124][0125]
d.消融实验
[0126]
在这里,我们专注于研究我们设计的基本组件在sftseg中的贡献,即一致性正则化损失、自监督损失和自适应加权。我们研究了不同组件的作用:(i)sftseg-base是基本的siamese网络模型,通过公式(3)中给出的标记源数据优化分类损失。(ii)sftseg-consis是我们设计的一致性正则化损失的孪生模型,如公式(5)所示。(iii)sftseg-self是具有自监督损失的孪生网络模型,但没有公式(11)中的自适应权重。(iv)sftseg-weight是具有自监督损失和自适应权重的孪生网络模型,如公式(13)所示。(v)sftseg-full是我们提出的包含所有组件的模型。四个数据集的分割结果显示在表2中,最好的结果以粗体突出显示。该表中的观察结果如下:首先,sftseg-full取得了最好的性能。同时,sftseg-base表现最差,这表明我们设计的主要组件的功能可以大大提高分割性能。其次,当结合一致性正则化后,sftseg-consis获得了比sftseg-base更好的结果。这是因为我们设计的方法增强了来自目标域的有限标记样本,这有利于模型提高目标域的泛化能力。第三,sftseg-self和sftseg-weight在较大程度上优于sftseg-base。这一结果验证了我们设计sftseg的主要动机,即基于未标记的目标数据的自监督损失,可以使模型能够捕获目标域的特征并进一步提高分割性能。
[0127]
表2:考虑不同组件时的性能
[0128][0129]
e.目标数据大小的作用
[0130]
sftseg试图利用目标数据来缓解源域和目标域之间的大量偏移。因此,在这里我们探讨目标数据大小对分割性能的作用。特别是,当未标记的目标数据的数量变化时,我们研究了1-shot、3-shot和5-shot(n-shot中的n指每个动作类别的标记数据数量)的结果。
[0131]
图6说明了选择不同比例的未标记目标数据时f1-score的结果,其中(a)为handgesture数据对应f1-score的结果,(b)为usc-had数据对应f1-score的结果,(c)为rfid数据对应f1-score的结果,(d)为wifiaction数据对应f1-score的结果。rmse的结果没有显示,因为它具有相同的趋势。图6显示sftseg随着四个数据集未标记数据量的增加分割性能也逐步提高。这表明未标记的数据大小对分割性能起着重要的作用,我们设计的自监督任务可以有效地采用未标记的目标数据来增强模型性能。此外,5-shot性能明显优于1-shot。原因是更多的目标标记样本不仅有利于训练阶段的一致性正则化,而且有利于测试阶段测试样本与标记目标样本之间的距离计算。总的来说,上述结果表明sftseg可以有效地利用标记和未标记的目标数据来提高分割性能。
[0132]
综上,本发明提出了自监督的少样本动作序列分割框架sftseg来分割动作序列数据上的活动。以往的动作分割方法,往往针对相同传感器,本发明能够实现利用源传感器数据增强目标传感器数据的分割准确率,并能达到使用很少的目标传感器标记样本就可以实现很好的活动分割和识别效果。采用孪生神经网络作为少样本学习的主要框架,实现少样本活动分割技术。本发明针对三种不同的输入数据,分别设计了不同的损失函数来增强训练效果:针对源传感器的标记样本,构建交叉熵损失函数强制输入样本归入相应的类别;为了增强对目标传感器数据的泛化能力,引入了一致性正则化方法,将源传感器的标记样本缩小后作为扰动,并将该扰动注入目标传感器的标记样本中作为增强数据,利用增强数据训练模型来提高模型的泛化能力;为了解决源域和目标域数据分布存在较大差异问题,引入自监督学习,基于目标传感器的未标记样本构建正样本对和负样本对来训练孪生神经网络,使孪生神经网络能够捕获目标数据的特征,从而提高推断性能。
[0133]
本发明解决了活动分割任务中非监督方法(如基于变化点检测和基于阈值)的环
境依赖和设计人员主观性的问题,在不同场景不同传感器下,均有良好活动分割效果。本发明还解决了活动分割任务中监督方法需要大量标记的目标数据(高成本且受各种条件制约)的问题,实现了仅需很少标记的目标传感器样本即可达到良好活动分割效果。
[0134]
以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1