一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于对抗式元学习的跨场景人体动作识别方法与流程

2021-11-15 17:58:00 来源:中国专利 TAG:


1.本发明涉及无线网络、人体动作识别和深度学习领域,尤其涉及一种基于少样本的对抗式元学习方法。


背景技术:

2.近年来,随着物联网技术的发展,基于无线电技术的人体动作识别系统在智慧家庭、健康监护等领域得到了广泛的应用,因此越来越受到人们的关注。现有的方法可分为wifi、超宽带(uwb)和射频识别标签(rfid)等。其中uwb技术需要部署大量设备来接收、处理信号,需要改造场地,从而导致代价高昂;而基于rfid标签、手机或可穿戴设备来实现人体识别也需要目标随身携带设备。目前基于wifi的人体动作识别系统由于具有不需要在目标上附加任何设备,部署成本低和隐私泄露担忧等优点正成为一种流行的技术。而且现在wifi信号覆盖领域广泛,小到个人家庭,大到医院商场等都部署有wifi设备,可以方便的获取wifi数据,因此基于wifi的人体动作识别技术受到了众多研究者的青睐。
3.在无线电通信领域,如在ieee 802.11n等通信标准协议中,信道状态信息(channel state information,csi)以物理层为基础,描述了信道的幅度和相位特性,能够更好地反映细粒度的信道信息,可以用来表示信道链路的质量。由于csi对由人体动作引起的环境动态变化较为敏感,基于此特性,研究人员开发设计了多种基于csi的人体动作识别系统。
4.但目前,实际的基于csi的人体动作识别系统在部署时面临两大挑战:一是csi数据易受动态环境变化的影响。具体来说,由于严重的多径和阴影衰落影响,csi数据不稳定,这是由短期干扰(如开门、关门、桌椅等家具的移动)和长期干扰(如湿度、温度和光照变化)引起的。因此,实时csi数据将与人体动作识别模型记忆的值大不相同。如果没有更新csi动作数据,会导致识别准确度降低。一个简单的解决方案是重新收集数据并训练网络模型以适应环境的变化。然而,这种方法是非常不切实际的,因为这个校准过程会花费大量的人力物力成本。一些工厂部署了固定的硬件来获得新的csi进行修改,但是额外的硬件实现会产生额外的成本。此外,另一个需要考虑的挑战是,将在一个已知环境中训练成熟的人体识别系统部署到一个新场景中来识别新用户的动作时,识别准确率会显著下降。这是因为人们在不同的环境通常会按不同的速度重复相同的动作,进而导致同一种csi动作信号的波动性过大,从而不能被系统识别。使得系统必须针对不同的场景重新训练,这将给动作识别带来相当大的重复工作量。


技术实现要素:

5.本发明的目的是为克服上述现有技术中的不足之处,提出一种基于对抗式元学习的跨场景人体动作识别方法,以期能基于少样本学习即可完成人体动作的识别,并能提高动作识别的准确性以及鲁棒性。
6.本发明为达到上述发明目的,采用如下技术方案:
7.本发明一种基于对抗式元学习的跨场景人体动作识别方法的特点是按如下步骤进行:
8.步骤1、选定两个室内环境布局不同的房间记为场景1和场景2,并分别部署一对wifi收发设备:
9.所述wifi收发设备中的wifi信号的发送设备为带有a根天线的路由器,记为ap,wifi信号的接收设备为带有b根天线的无线网卡,记为rp,且路由器ap和无线网卡rp间隔距离为l,从而在场景1和场景2中分别构成a
×
b个天线对用于发送和接收无线电信号,且每个天线对有z个可用的子载波;
10.步骤2、数据采集和预处理;
11.步骤2.1、原始数据采集:
12.在场景1中,利用wifi收发设备按照采样时间t和采样速率p采集人体动作csi信号,并将第w次采集的第c种类别且维度为(a
×
b,z,p
×
t)的三维人体动作csi信号记为csi
c,w
,其中,w∈[1,w],w表示采集的总次数,c∈[1,c],c表示人体动作的种类;
[0013]
步骤2.2、数据预处理:
[0014]
使用离散小波滤波方法对所述人体动作csi信号csi
c,w
进行降噪处理,再基于阈值分割方法对降噪处理后的人体动作csi信号进行尺寸转换,得到预处理后的人体动作csi信号并记为x
c,w
,并记第c种类别的人体动作csi信号x
c,w
所对应的标签标注为y
c
,从而一共得到c
×
w个带标签的csi样本(x
c,w
,y
c
);
[0015]
步骤2.3、构建元学习训练任务集d
train
={t
i
|i=1,2,

,i},i表示学习任务的总个数:
[0016]
从所述人体动作csi样本中随机选择n个动作类别的k个人体动作csi样本构成第i个元学习任务t
i
,并将第i个元学习任务t
i
划分为支持集t
is
和查询集t
iq
,分别记为其中,表示第i个元学习任务支持集t
is
中第n个动作类别的第k1个人体动作csi样本;表示第i个元学习任务查询集t
iq
中第n个动作类别的第k2个人体动作csi样本,k1表示第i个元学习任务支持集t
is
中每种类别的人体动作csi样本数量,k2表示第i个元学习任务查询集t
iq
中每种类别的人体动作csi样本数量,k1 k2=k;
[0017]
步骤3、构建对抗式元学习神经网络模型,包含:特征提取器模块、生成器模块、鉴别器模块和人体动作识别模块;
[0018]
步骤3.1、所述特征提取器模块使用r1个卷积单元,且每个卷积单元依次包含一层convolution卷积层、一层batchnorm批归一化层和一层leaky

relu激活函数层;且每个卷积单元的输出均连接一层dropout层;
[0019]
所述第i个元学习任务支持集t
is
经过特征提取器模块的处理后,输出第i组人体动作csi样本的特征向量作csi样本的特征向量表示得到的第i个元学习任务支持集t
is
中第n个动作类别的第k1个人体动作csi样本的特征向量;
[0020]
步骤3.2、所述生成器模块依次使用r2个反卷积单元和r3个卷积单元,每个反卷积单元依次包含一层convolutiont反卷积层、一层batchnorm批归一化层、一层leaky

relu激活函数层和tanh层;
[0021]
将第i组人体动作csi特征向量f
is
输入到所述生成器模块中依次进行处理,最后从tanh层中输出虚拟元学习任务支持集表示第i个元学习任务支持集t
is
中第n个动作类别的第k1个虚拟人体动作csi样本;
[0022]
步骤3.3、所述鉴别器模块使用r4个卷积单元和r5个全连接层,并将所述第i个元学习任务支持集t
is
和虚拟支持集t
i

s
作为一个整体输入到所述鉴别器模块中,用于训练所述特征提取器模块、生成器模块、鉴别器模块的权值:
[0023]
利用式(1)来计算损失函数l
gan
,再使用随机梯度下降sgd优化方法以余弦退火学习率分别动态更新相应模块的权值,并在损失函数l
gan
的值趋于稳定时完成训练,得到训练好的提取器模块、生成器模块、鉴别器模块;
[0024][0025]
式(1)中,和分别表示取自真实支持集t
is
和虚拟支持集t
i

s
的样本;λ表示超参数:惩罚因子,用于平衡均方误差损失项和对抗损失项,t
im
表示取自真实支持集t
is
和虚拟支持集t
i

s
的样本混合数据集:α∈(0,1),用于约束生成器模块和鉴别器模块,加速收敛过程,p
d
表示鉴别器判别函数,判断样本属于哪一类动作类别;
[0026]
步骤3.5、所述人体动作识别模块依次使用r6个卷积单元和r7个全连接层;
[0027]
将第i个元学习任务支持集t
is
输入训练好的生成器模块中,并生成新的虚拟支持集t
i

s
后,得到增强支持集再输入所述人体动作识别模块中,用于训练所述人体动作识别模块的权值,并将第i个元学习任务查询集t
iq
输入到所述人体动作识别模块中,得到样本的识别结果,并使用softmax函数将所述识别结果转换为概率输出;
[0028]
利用式(2)构建交叉熵损失l
r
,再使用随机梯度下降sgd优化方法以余弦退火学习率来动态更新所述人体动作识别模块的权值,并在交叉熵损失l
r
的值趋于稳定时完成训练,从而得到训练好的人体动作识别模型f
base

[0029][0030]
式(2)中,p
r
表示人体动作识别模型的分类器函数,用于判断样本属于哪一类动作类别;
[0031]
步骤4:按步骤2的过程在场景2中采集人体动作csi信号并进行数据预处理,且每个动作类别仅需采集1次,从而得到元学习优化任务数据集d
test
={u
j
|j=1,2,

,j},且第j个元学习优化任务u
j
仅包含优化任务支持集u
js
={(x1,y1),(x2,y2),

,(x
n
,y
n
),

(x
n
,y
n
)},其中,(x
n
,y
n
)表示第j个元学习优化任务数据集中的支持集中第n个动作类别的人体动作csi样本;
[0032]
将优化任务支持集输入到所述训练好的人体动作识别模型f
base
,并利用二次梯度下降法来优化所述人体动作识别模型f
base
的参数,从而得到跨场景人体动作识别模型f
optimized
,用于识别场景2中的动作。
[0033]
与现有技术相比,本发明的有益效果在于:
[0034]
1、本发明引入了对抗式元学习的方法进行跨场景人体动作识别,以适应定位环境、用户和动作种类的变化,实验结果表明,无论是定位环境、用户和动作种类的单一变化或复式变化,其跨场景识别效果都要比没有对抗式元学习的人体动作识别精度高、开销低;
[0035]
2、本发明通过建立元学习任务集来训练网络模型,使用了任务级样本来代替单个样本训练网络,解决了现有人体动作识别中csi数据易受动态环境变化的影响,并采用了一个基于优化模型参数的机制提高了跨场景人体动作识别准确率。
[0036]
3、本发明通过独特设计的特征提取器模块、生成器模块、鉴别器模块来解决了重新校准模型所需要花费的大量人力物力成本问题,通过生成虚拟样本来增强训练任务集,从而提高了系统的鲁棒性,并设计了特征提取器模块改进了生成器模块的性能,采用一个改进的损失函数来提升鉴别器模块的鉴别能力,得到了更精细化的分类效果。
附图说明
[0037]
图1是本发明基于对抗式元学习的跨场景人体动作识别实现流程图;
[0038]
图2是本发明实施的场景1的设备布置图;
[0039]
图3是本发明实施的场景2的设备布置图;
[0040]
图4是本发明采用的训练任务集和测试任务集构成示意图;
[0041]
图5是本发明设计的对抗式元学习神经网络模型图。
具体实施方式
[0042]
本实施例中,参照图1,一种基于对抗式元学习的跨场景人体动作识别方法是按如下步骤进行:
[0043]
步骤1、选定两个室内环境布局不同的房间记为场景1和场景2,并分别部署一对wifi收发设备:
[0044]
wifi收发设备中的wifi信号的发送设备为带有a根天线的路由器,记为ap,wifi信号的接收设备为带有b根天线的无线网卡,记为rp,且路由器ap和无线网卡rp间隔距离为l,从而在场景1和场景2中分别构成a
×
b个天线对用于发送和接收无线电信号,且每个天线对有z个可用的子载波;
[0045]
本实施例中,如图2、图3所示,在场景1和场景2中的房间内分别间隔2.6米的固定位置部署wifi设备:带有2根天线的tl

wdr6500路由器为发送端ap发送csi信号,带有intel5300网卡的联想台式电脑为接收端rp,接收端带有3根线,则一共有2
×
3个天线对。由于wifi采用ofdm技术,每个天线对有30个可用的子载波。在一台配备英特尔i7

10700k cpu和nvidia gtx 3080 gpu的计算机上进行所有实验。
[0046]
步骤2、数据采集和预处理;
[0047]
步骤2.1、原始数据采集:
[0048]
在场景1中,利用wifi收发设备按照采样时间t和采样速率p采集人体动作csi信号,并将第w次采集的第c种类别且维度为(a
×
b,z,p
×
t)的三维人体动作csi信号记为csi
c,w
,其中w∈[1,w],w表示采集的总次数,c∈[1,c],c表示人体动作的种类;
[0049]
步骤2.2、数据预处理:
[0050]
使用离散小波滤波方法对所述人体动作csi信号csi
c,w
进行降噪处理,再基于阈值
分割方法对降噪处理后的人体动作csi信号进行尺寸转换,得到预处理后的人体动作csi信号记为x
c,w
,并记第c种类别的人体动作csi信号x
c,w
所对应的标签标注为y
c
,从而一共得到c
×
w个带标签的csi样本(x
c,w
,y
c
);
[0051]
本实施例中,csi的采样率为50包每秒,对于每一个人体动作,采样时间为4秒,实验者站在图2中的设备中间位置,按表1中的动作集种类依次演示动作来采集csi信号,每种动作需重复采集10次,本实施例中,取3个天线对,再经过滤波和阈值分割后一共得到16
×
10个带标签的csi样本(x
c,w
,y
c
)={x
c,w
=(1
×
3,30,50
×
4),y
c
∈(1,16)}。
[0052]
表1人体动作集种类
[0053][0054]
步骤2.3、构建元学习训练任务集d
train
={t
i
|i=1,2,

,i},i表示学习任务的总个数:
[0055]
从人体动作csi样本中随机选择n个动作类别的k个人体动作csi样本构成第i个元学习任务t
i
,并将第i个元学习任务t
i
划分为支持集t
is
和查询集t
iq
,分别记为其中,表示第i个元学习任务支持集t
is
中第n个动作类别的第k1个人体动作csi样本;表示第i个元学习任务查询集t
iq
中第n个动作类别的第k2个人体动作csi样本,k1表示第i个元学习任务支持集t
is
中每种类别的人体动作csi样本数量,k2表示第i个元学习任务查询集t
iq
中每种类别的人体动作csi样本数量,k1 k2=k;
[0056]
本实施例中,比如从上述人体动作csi样本数据库中随机选择n=5个动作类别的k=10个人体动作csi样本构成第i=1个元学习任务t1,并按k1=1和k2=9将第i=1个元学习任务t1划分为支持集t
1s
和查询集t
1q
,分别记为,分别记为如图4所示;
[0057]
步骤3、如图5所示,构建对抗式元学习神经网络模型,包含:特征提取器模块、生成器模块、鉴别器模块和人体动作识别模块;
[0058]
步骤3.1、特征提取器模块使用r1个卷积单元,且每个卷积单元依次包含一层convolution卷积层、一层batchnorm批归一化层和一层leaky

relu激活函数层;且每个卷积单元的输出均连接一层dropout层;
[0059]
第i个元学习任务支持集t
is
经过特征提取器模块的处理后,输出第i组人体动作csi样本的特征向量csi样本的特征向量表示得到的第i个元学习任务支持集t
is
中第n个动作类别的第k1个人体动作csi样本的特征向量;
[0060]
本实施例中,特征提取器模块使用r1=2个卷积单元,第i=1个元学习任务支持集t
1s
经过特征提取器模块的处理后,输出第i=1组人体动作csi样本的特征向量
[0061]
步骤3.2、生成器模块依次使用r2个反卷积单元和r3个卷积单元,每个反卷积单元依次包含一层convolutiont反卷积层、一层batchnorm批归一化层、一层leaky

relu激活函数层和tanh层;
[0062]
将第i组人体动作csi特征向量f
is
输入到生成器模块中依次进行处理,最后从tanh层中输出虚拟元学习任务支持集层中输出虚拟元学习任务支持集表示第i个元学习任务支持集t
is
中第n个动作类别的第k1个虚拟人体动作csi样本;
[0063]
本实施例中,生成器模块依次使用r2=2个反卷积单元和r3=2个卷积单元,第i=1组人体动作csi特征向量f
1s
输入到生成器模块中,最后从tanh层中输出虚拟元学习任务支持集
[0064]
步骤3.3、鉴别器模块使用r4个卷积单元和r5个全连接层,并将第i个元学习任务支持集t
is
和虚拟支持集t
i

s
作为一个整体输入到鉴别器模块中,用于训练特征提取器模块、生成器模块、鉴别器模块的权值:
[0065]
利用式(1)来计算损失函数l
gan
,再使用随机梯度下降sgd优化方法以余弦退火学习率分别动态更新上述模块的权值,并在损失函数l
gan
的值趋于稳定时完成训练,得到训练好的提取器模块、生成器模块、鉴别器模块;
[0066][0067]
式(1)中,和分别表示取自真实支持集t
is
和虚拟支持集t
i

s
的样本;λ表示超参数:惩罚因子,用于平衡均方误差损失项和对抗损失项,t
im
表示取自真实支持集t
is
和虚拟支持集t
i

s
的样本混合数据集:α∈(0,1),用于约束生成器模块和鉴别器模块,加速收敛过程,p
d
表示鉴别器判别函数,判断样本属于哪一类动作类别。
[0068]
本实施例中,鉴别器模块使用r4=2个卷积单元和r5=1个全连接层;
[0069]
步骤3.5、人体动作识别模块依次使用r6个卷积单元和r7个全连接层;本实施例中,r6=5;r7=2;
[0070]
将第i个元学习任务支持集t
is
输入训练好的生成器模块中,并生成新的虚拟支持集t
i

s
后,得到增强支持集再输入所述人体动作识别模块中,用于训练所述人体动作识别模块的权值,并将第i个元学习任务查询集t
iq
输入到所述人体动作识别模块中,得到样本的识别结果,使用softmax函数将其转换为概率输出,并利用式(2)构建交叉熵损失l
r
,再使用随机梯度下降sgd优化方法以余弦退火学习率来动态更新人体动作识别模块的权值,并在交叉熵损失l
r
的值趋于稳定时完成训练,从而得到训练好的人体动作识别模型f
base

[0071][0072]
式(2)中,p
r
表示人体动作识别模型的分类器函数,用于判断样本属于哪一类动作类别;
[0073]
步骤4:按步骤2的过程在场景2中采集人体动作csi信号并进行数据预处理,且每个动作类别仅需采集1次,从而得到元学习优化任务数据集d
test
={u
j
|j=1,2,

,j},且第j
个元学习优化任务u
j
仅包含优化任务支持集u
js
={(x1,y1),(x2,y2),

,(x
n
,y
n
),

(x
n
,y
n
)},其中,(x
n
,y
n
)表示第j个元学习优化任务数据集中的支持集中第n个动作类别的人体动作csi样本;
[0074]
将优化任务支持集输入到训练好的人体动作识别模型f
base
,并利用二次梯度下降法来优化人体动作识别模型f
base
的参数,从而得到跨场景人体动作识别模型f
optimized
,用于识别场景2中的动作。
[0075]
本实施例中,比如从上述人体动作csi样本数据库中随机选择n=5个动作类别的人体动作csi样本构成第j=1个元学习优化任务u
j
仅包含优化任务支持集u
1s
={(x1,y1),(x2,y2),

,(x5,y5)};
[0076]
实验结果表明,该发明方法面对多种环境变换等影响因素时均取得了较高的动作识别准确率。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献