跨領域活動識別的深度遷移學習

  • 2019 年 10 月 3 日
  • 筆記

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)。

跨領域活動識別具有以下難題挑戰:

  1. 由於感測器訊號不是獨立的,所以我們不知道哪個體部分與目標域最相似。如果我們使用所有的身體部位,可能會有負遷移,因為一些身體部位可能是不同的。
  2. 我們只有目標域中的原始活動數據,而沒有實際的活動標籤,因此很難度量相似性。
  3. 即使我們已經知道了與目標域相似的主體部分,也很難同時使用源域和目標域來構建良好的機器學習模型。原因是不同區域的訊號遵循的分布完全不同,這意味著它們之間存在分布差異。

本文提出了一種無監督源領域選擇演算法,作者認為感測器訊號可能包括關於身體各部分的一般和特定關係,一般關係指的是兩個訊號之間的數據距離,如歐氏距離或餘弦相似度,特定關係指的是兩個身體部位之間相似的運動模式或身體功能。通過正確地測量不同身體部位之間的距離,從而選擇正確的源域。

在得到正確的源域之後,提出了一種深度遷移網路。為了減小兩個域之間的距離在網路中增加一個自適應層來計算自適應損失,可與分類損失共同優化。

實驗在三個數據集上進行: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])表示兩個距離之間的影響因子。

  1. general distance

(D_g(A,B))可以通過(mathcal{A})-distance來計算:
[ D_g(A,B) = 2(1-2epsilon) ]
其中(epsilon)是對域A和B進行分類的error。(epsilon)通過在A和B上訓練一個線性二分類器h,然後應用h預測兩域的error。

  1. specific distance

(D_s(A,B))由活動識別的semantickinetic資訊組成。

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 {abullet 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 abullet w_b b} {vert w_a a bullet w_b b vert} end{bmatrix} ]
最終的距離公式為:
[ d_s(A,B) = 2(1-2epsilon) + lambda Bbb{E} begin{bmatrix} sum _{a,b} frac {w_a abullet 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]