Deep Transfer Learning for Cross-domain Activity Recognition
Abstract
选择合适的领域进行迁移学习有助于提高迁移的准确率, 本文提出了一种无监督源领域选择算法 Unsupervised Source Selection algorithm for Activity Recognition (USSAR)对于活动识别, 该算法能够从可用域列表中选择最相似的 K 个源域. 同时对于活动识别提出了一种有效的深度迁移网络 Transfer Neural Network for Activity Recognition (TNNAR).
Introduction
对于可穿戴传感器活动识别来说, 如果某一位置传感器数据缺失, 利用其他位置的传感器数据来创建模型识别活动, 这一问题叫做跨域活动识别 cross-domain activity recognition (CDAR).
跨领域活动识别具有以下难题挑战:
由于传感器信号不是独立的, 所以我们不知道哪个体部分与目标域最相似. 如果我们使用所有的身体部位, 可能会有负迁移, 因为一些身体部位可能是不同的.
我们只有目标域中的原始活动数据, 而没有实际的活动标签, 因此很难度量相似性.
即使我们已经知道了与目标域相似的主体部分, 也很难同时使用源域和目标域来构建良好的机器学习模型. 原因是不同区域的信号遵循的分布完全不同, 这意味着它们之间存在分布差异.
本文提出了一种无监督源领域选择算法, 作者认为传感器信号可能包括关于身体各部分的一般和特定关系, 一般关系指的是两个信号之间的数据距离, 如欧氏距离或余弦相似度, 特定关系指的是两个身体部位之间相似的运动模式或身体功能. 通过正确地测量不同身体部位之间的距离, 从而选择正确的源域.
在得到正确的源域之后, 提出了一种深度迁移网络. 为了减小两个域之间的距离在网络中增加一个自适应层来计算自适应损失, 可与分类损失共同优化.
实验在三个数据集上进行: OPPORTUNITY,PAMAP2,UCI DSADS,
Method
对于 target 域 \(D_t=\{x_t^j\}_{j=1}^{n_t}\)我们要学习它对应的活动标签 \(y_t\). 有 M 个已经标注的 source 域:\(\{D_s^i\}_{j=1}^M\). 每个 source 域 \(D_s^i=\{ x_s^j,y_s^j \}_{j=1}^{n_s^i}\).target 域和 source 域的数据分布是不同的. 需要设计一个算法从 M 个 source 域中挑选出 K 个最好的运用迁移学习方法来得到 \(y_t\).
Unsupervised Source Selection
使用 general distance 和 specific distance 结合来作为 source 域与 target 域的距离度量 \(D(A,B)\).
\[ D(A,B) = D_g(A,B) + \lambda D_s(A,B) \]
其中 \(D_g(A, B)\)表示 general distance,\(D_s(A,b)\)表示 specific distance,\(\lambda \in[0,1]\)表示两个距离之间的影响因子.
general distance
\(D_g(A,B)\)可以通过 \(\mathcal{A}\)-distance 来计算:
\[ D_g(A,B) = 2(1-2\epsilon) \]
其中 \(\epsilon\)是对域 A 和 B 进行分类的 error.\(\epsilon\)通过在 A 和 B 上训练一个线性二分类器 h, 然后应用 h 预测两域的 error.
specific distance
\(D_s(A,B)\)由活动识别的 semantic 和 kinetic 信息组成.
Semantic distance: 我们基本上给每个 source 域一个权值 w∈[0,1], 表示它与 target 域的空间关系. 因此, 如果有 M 个可用的源域, 就会有 M 个权重 \(\{ w_i\}_{j=1}^M\), 目前权重的或得是根据人类的经验, 作者认为如果两个域不是紧密相关的, 给出相对较小的权重; 如果认为两个域是紧密相关的, 给出相对较大的权重. 因为 \(w_i\)是权重, 它的约束条件定位:
\[ \sum _{i=1}^{M} w_i = 1 \]
Kinetic distance: 作者采用余弦相似度来进行计算, 两个域 A 和 B 的余弦相似度计算公式为:
\[ \cos(A,B) = \Bbb{E} \begin{bmatrix} \sum _{a,b} \frac {a\bullet b} {\vert a \bullet b \vert} \end{bmatrix} \]
E[.]为样本的期望.
一旦计算出运动距离, 我们将其与语义距离产生的权重相结合, 最终得到 specific distance 距离为:
\[ d_s(A,B) = \Bbb{E} \begin{bmatrix} \sum _{a,b} \frac {w_a a\bullet w_b b} {\vert w_a a \bullet w_b b \vert} \end{bmatrix} \]
最终的距离公式为:
- \[ d_s(A,B) = 2(1-2\epsilon) + \lambda \Bbb{
- E
- } \begin{
- bmatrix
- } \sum _{
- a,b
- } \frac {
- w_a a\bullet w_b b
- } {
- \vert w_a a \bullet w_b b \vert
- } \end{
- bmatrix
- } \]
- Transfer Neural Network
网络结构为
除了常规层之外额外添加了 adaption 层, 作者采用了最大平均偏差 (MMD) 作为减小域间差异的测量值. adaption 层计算自适应损失, 并结合分类损失进行优化. 网络整体损失函数表示为:
\[ f(x) = \ell_c(x) + \mu \ell_a(D_s, D_t) \]
其中 \(\ell_c(x)\)为标记数据 (源域) 上的分类损失,\(\ell_a(D_s, D_t)\)为源域和目标域上的自适应损失.\(\mu \in [0, 1]\)是权衡的因素.
作者没有给出源码
[论文链接][ https://dl.acm.org/citation.cfm?id=3265705 ]
来源: https://www.cnblogs.com/kanjian2016/p/11471063.html