使用射频信号进行人体感知的无监督学习.
为射频信号人工标注标签是相当困难的,而收集未标记的射频信号相对比较容易。本文探讨从未标记的射频数据中进行无监督特征学习的可行性。将基于计算机视觉的无监督学习方法直接应用于射频数据会遇到以下问题:
- 无监督学习方法要么依赖于较强的数据增强(如对比学习中的颜色抖动),要么依赖于代理任务(pretext task, 如为灰度图上色或预测图像的旋转角度)。这些方法不能直接应用于射频信号,因为射频信号是通过分析空间中不同位置反射的信号功率得到的,既没有携带颜色信息,又对旋转变换等不具有不变性。
- 在射频信号中,人体目标对应的信息区域占比通常比较小,甚至$<1\%$。大多数射频信号是从环境中的物体反射过来的,直接应用无监督学习方法会受到背景噪声的强烈干扰,无法获得人体的有用信息。
- 射频信号携带许多与人体目标或当前任务无关的信息,因为几乎所有物体都能反射信号。在遮挡环境中,只有一小部分射频信号会穿透墙壁,其余信号会被墙壁和环境中的其他物体反射,而穿透墙壁的信号与反射的信号的比例取决于墙体材料和表面。由于无法准确指定反射信号的哪部分对应场景中的人体目标,因此无监督学习方法很难学习对于人体感知有用的特征表示,并避免不相关的信息。
本文提出了一种轨迹引导的无监督学习方法(trajectory-guided unsupervised learning, TGUL),该方法通过基于雷达的模块探测目标并跟踪他们的轨迹,在任何时刻放大包含目标的检测区域,并消除其他物体的反射信号,在该区域内应用无监督训练损失。此外还探讨了适用于射频信号的数据增强方法与自监督任务。实验结果表明,对比学习方法仍然会偏向于学习射频信号中具有对比性但对下游任务没有帮助的捷径信息,并丢弃人体的有用信息;而预测学习可以学习有用的信息,并在微调后超过基于监督方法的性能。
1. 基于射频信号的人体感知框架
作者选择了三个基于射频信号的人体感知任务:
- 3D姿态估计:从射频信号中推断人体的14个3D关节点。
- 动作识别:从射频信号中分析人类行为和相互作用。
- 行人重识别:从不同时间和地点中分析感兴趣的目标。
网络总体结构如图所示。首先使用由9个残差模块组成的时空卷积特征网络从输入射频帧中提取特征,然后在特征图中裁剪包含目标的边界框。最后将裁剪好的特征送入适用于特定任务的子网络,生成帧级特征。所有子任务共享特征网络,并具有任务独立的子网络。
2. 轨迹引导的无监督学习
(1)ROI检测的信号处理
RGB图像中感兴趣的对象通常占据图像中的许多像素,而人体目标的反射信号只占据射频热图的一小部分($<1\%$),因此对射频信号应用无监督学习方法之前,需要对人体目标进行跟踪和放大。否则无监督学习只能学习到占据大部分像素的背景信息,从而忽略人体信息。
在RGB图像中放大目标通常依赖于从真实标签中学习到的目标边界框,这不适用于无监督学习框架。考虑到射频信号的特点,在射频信号中检测感兴趣目标主要有两个挑战:
- 放大在空间中特定位置区域反射的射频信号,并忽略其余射频信号:由于射频热图对应于射频信号在水平或垂直平面的投影,因此放大空间中某个区域的反射信号可以通过裁剪该区域在热图上的投影来实现。
- 确定人体目标位于空间中的哪个区域:雷达系统可以使用射频信号跟踪和检测移动的目标。在大多数室内场合中,人是唯一的大型移动目标,因此可以采用雷达检测算法检测目标并生成移动轨迹。当人体目标静止时,轨迹将停留在目标停止移动的位置。本文使用WiTrack方法自动跟踪和生成人体目标的轨迹。该方法首先从热图中减去中值,去除场景中静态物体的反射。然后计算连续帧之间的差值检测运动目标并生成轨迹。根据轨迹为每一帧中的人体目标生成大小为$1m\times 1.5m$的边界框。
(2)射频信号的预测无监督学习
上图展示了通过预测无监督学习从射频信号中学习人体特征表示的方法。给定由$T$个射频帧构成的热图序列$x_1,\cdots x_T$,首先为每一帧$x_i$检测出包含目标的感兴趣区域边界框$b_i$。随机屏蔽其中的$t$帧并填充$0$,构造屏蔽后的输入$M(x)$。将输入依次通过一个编码器网络$E_{\theta}$、一个根据感兴趣区域$b_i$裁剪特征的ROI对齐模块\(\Bbb{R}\)和一个解码器网络$D_{\delta}$,得到重构结果\(D_{\delta}(\Bbb{R}(E_{\theta}(M(x))_i,b_i))\)。并定义重构损失\(\mathcal{L}_r\):
\[\mathcal{L}_r = \sum_{i=1}^{T} ||D_{\delta}(\Bbb{R}(E_{\theta}(M(x))_i,b_i))-\Bbb{R}(E_{\theta}(x_i,b_i)||_2\]编码器即为上述框架中的特征提取模块,由9个残差模块组成的时空卷积特征网络。解码器设计为由3个残差模块组成的空间转置卷积网络。预测学习采用下面两种方式:
- 自编码 auto-encoder:对输入没有屏蔽操作,即$M$是恒等映射。
- 图像修复 inpainting:由$T=100$个射频帧组成的射频序列,随机屏蔽$5$帧并填充$0$。
(3)射频信号的对比无监督学习
上图展示了通过对比无监督学习从射频信号中学习人体特征表示的方法。给定由$T$个射频帧构成的热图序列$x_1,\cdots x_T$,首先为每一帧$x_i$检测出包含目标的感兴趣区域边界框$b_i$。然后对边界框进行两次增强$\tau_1$和$\tau_2$,得到增强后的边界框$\tau_1(b_i)$和$\tau_2(b_i)$。将增强边界框分别通过一个编码器网络$E_{\theta}$、一个根据感兴趣区域$b_i$裁剪特征的ROI对齐模块\(\Bbb{R}\)和一个多层非线性投影网络$H_{h}$,得到这两个正样本的潜在表示$z_{2i}$和$z_{2i+1}$。由于人类行为是连续的,连续$S=10$帧内的特征都被视为正样本对。使用InfoNCE作为对比损失\(\mathcal{L}_c\),即对于$N$个包含$T$帧的射频热图:
\[\mathcal{L}_c = -\sum_{j=1}^{N} \sum_{i=1}^{T} \sum_{m=1}^{S} \log \frac{\exp(\text{sim} (z_{2i}^j,z_{2i-S+2m}^j)/t)}{\sum_{l=1}^{N}\sum_{k=1}^{2T} \Bbb{1}_{k \ne 2i || l \ne j} \exp (\text{sim} (z_{2i}^j,z_{k}^l)/t))}\]其中相似度函数选用余弦相似度\(\text{sim}(u,v) = \frac{u^Tv}{\|u\|_2\|v\|_2}\)。边界框的增强$\tau_1$和$\tau_2$是对边界框进行裁剪和调整。
编码器即为上述框架中的特征提取模块,由9个残差模块组成的时空卷积特征网络。投影头采用带1个残差块的空间卷积网络。
3. 实验分析
下表展示了固定特征提取网络的实验结果,即在应用于不同的下游任务时只训练对应的子网络。结果表明使用TGUL进行预测学习的预训练能够学习到有用的特征表示,并在所有任务上实现了不同程度的性能改进。此外使用图像修复比使用自编码表现更好。而对比学习的预训练在所有下游任务上的表现都比较差,这可能是因为对比学习学习到与感兴趣任务无关的捷径语义。
下表展示了微调的结果,即在不同任务上同时训练特征提取网络与子网络。结论与上述类似,使用预测学习能够提高模型的表现,而使用对比学习几乎没有效果。
上述结果也体现出TGUL的有效性,直接在射频信号上应用预测学习的性能提升有限,这是因为TGUL能够有效地强制网络将注意力集中在人体目标上,从而减少对噪声区域的关注,相比于没有引导时获得更好的性能。
对比学习的表现较差,甚至低于网络的随机初始化结果,这可能是因为对比学习利用了捷径信息(比如目标与射频设备之间的距离),丢弃了对下游任务有用的其他信息。下图展示了对比学习和预测学习得到的预训练特征的可视化,对比学习丢弃了大部分信息,而预测学习保存并提取输入热图中的人体信息。
作者还进行了一些消融实验,并在人体姿态估计任务上进行比较。所进行的消融包括:
- 屏蔽策略:预测学习中的图像修复需要对射频帧的一部分进行屏蔽;具体地比较了屏蔽中心段的$25$帧、屏蔽随机$5$帧以及每帧$0.25$概率屏蔽的结果。
- 屏蔽长度:比较了屏蔽不同的帧数量的结果。
- 无标记数据:比较了在大量无标记数据上训练并在少量标记数据上微调的结果。