周 祥,常 俊,武 浩
(云南大學(xué) 信息學(xué)院,云南 昆明 650091)
傳統(tǒng)的基于傳感器[1-5]的行為識別方法,需使用者佩戴各種傳感器設(shè)備,使得使用者感到不便,而基于如視頻圖像[6]、雷達(dá)[7]等無設(shè)備的方式,前者由于不利于保護(hù)隱私同時對環(huán)境光照的要求較高,后者成本較高不利于廣泛使用。而現(xiàn)如今基于WiFi信號的行為識別方法則有著成本低、識別精度高等特點(diǎn)。其中基于WiFi信號的接收信號強(qiáng)度(RSSI)[8]的行為感知,因其不能表征細(xì)粒度的信息,所以對人體行為的識別效果并不理想。而CSI信號[9]相比RSSI信號,其是細(xì)粒度的信號特征信息,每個CSI值代表正交頻分復(fù)用(OFDM)系統(tǒng)[10]中子載波的幅度和相位,所以其含有更高的數(shù)據(jù)分辨率。如Thomas等[11]對CSI信號提取基于語音信號的梅爾頻率倒譜系數(shù)(MFCC)特征[12],再結(jié)合采用CNN[13]用于CSI時間序列分類,實(shí)現(xiàn)了95%的平均識別率,Akhtar等[14]從經(jīng)過處理后的CSI信號無線電圖像的判別分量中提取特征用于識別駕駛員行為,實(shí)現(xiàn)了94.1%的平均識別精度。還有Yao等[15]采用小波變換[16]提取CSI信號時頻域特征用于行為識別,得到了93.1%的平均識別精度,可見對于CSI用作行為識別具有很好的應(yīng)用價值。
現(xiàn)如今基于信道狀態(tài)信息的行為識別工作中,由于硬件限制,所以很少關(guān)注CSI信號測量中普遍存在的線性相位誤差,從而忽略了信息有用的非線性特性,以及對信號進(jìn)行預(yù)處理難免會濾除一些有用信息,從而影響識別的精度。針對這一問題,提出一種基于WiFi信道狀態(tài)信息的行為識別方法,通過從原始CSI信號中提取代表信號非線性特性的三階累積量[17]作為特征,并采用一種基于互信息的特征選擇技術(shù)(MIFS)[18]對原始特征進(jìn)行篩選提取考慮到非高斯信號分布的高魯棒性特征子集,最后將提取到的特征子集輸入到經(jīng)過了粒子群優(yōu)化算法(PSO)[19]優(yōu)化過參數(shù)的SVM分類模型[20]中。該方法有著較低的系統(tǒng)復(fù)雜度,能實(shí)現(xiàn)較高的識別精度和魯棒性。
無線信號在傳輸過程中由于其信道狀況并不穩(wěn)定,會根據(jù)環(huán)境因素而發(fā)生衍射、反射、散射等變化,這些變化會反映到接收端接收的子載波的波動中,無線信號在空氣中的傳播如圖1所示。而現(xiàn)如今引入正交頻分復(fù)用(OFDM)的無線技術(shù)的最新發(fā)展實(shí)現(xiàn)了具有最小誤碼率(BER)的更高數(shù)據(jù)包傳輸速率。符合IEEE 802.11n OFDM標(biāo)準(zhǔn)的商用Wi-Fi設(shè)備還實(shí)現(xiàn)了多輸入多輸出(MIMO)概念。在Linux 802.11n CSI工具中,符合OFDM的設(shè)備可以將信道頻率響應(yīng)(CFR)讀取為CSI信號,其主要反映了子載波的信號幅度和相位的變化。Wi-Fi的信道模型可以表示為
(1)
H=(hijk)NT×NR×30
(2)
其中,i∈[1,NT],j∈[1,NR],k∈[1,30]。 而hijk表示第i根發(fā)射天線到第j根接收天線之間的數(shù)據(jù)流中的第k個子載波的值。其具體還可以表示如下
hijk=|hijk|ej∠hijk
(3)
其中, |hijk| 表示幅度響應(yīng), ∠hijk表示相位響應(yīng)。
圖1 無線信號傳播
首先高階累積量對高斯噪聲不敏感,所以在處理帶有高斯有色加性噪聲的非高斯信號時,可對其求高階累計量,使得輸出噪聲部分的高階累積量為零,只留下非高斯信號部分,從側(cè)面增強(qiáng)了有用信號的信噪比,可見采用高階累積量的特征可以免除信號預(yù)處理階段,降低系統(tǒng)復(fù)雜度。而優(yōu)選使用三階累積量來從原始CSI信號中提取特征,是因?yàn)槠湎啾纫?、二階累積量其能揭示更豐富信號特征信息,四階的累積量及其以上,因其建立了高度復(fù)雜的矩陣,需要大量的計算成本,所以在當(dāng)前工作中不考慮它。而三階累積量的具體推算過程如下:對于一個變量X存在一個距生成函數(shù)mkx(t), 且當(dāng)統(tǒng)計期望E{etX} 存在,t∈R。 此時可以得到函數(shù)高階距表達(dá)式
mkx(τ1,…,τk-1)=E{X(t)X(t+τ1)…X(t+τk-1)}
(4)
其中,τ1…τk-1為時滯參數(shù),由式(4)可推出三階距的表示為
m3x(τ1,τ2)=E{X(t)X(t+τ1)X(t+τ2)}
(5)
而相對應(yīng)的非零累積量Ckx, 可以計算為相應(yīng)矩的非線性組合
Ckx(τ1,…,τk-1)=mkx(τ1,…,τk-1)-mkxG(τ1,…,τk-1)
(6)
其中,mkx(τ1,…,τk-1) 為k階距,mkxG(τ1,…,τk-1) 為相應(yīng)高斯過程的k階矩,而特別的,若X(t) 具有零均值,三階累積量可以表示為
C3x(τ1,τ2)=m3x(τ1,τ2)
(7)
MIFS是一種基于互信息的特征選擇算法,其使用互信息度量候選特征與類別之間的相關(guān)性,以及與已選特征集合的冗余性,再以貪心策略選擇與類別相關(guān)性強(qiáng)且已選特征冗余度低的特征集合。從而可以減少計算時間,提高計算精度。而互信息定義如下
(8)
式(8)表示變量X和Y之間的互信息,其中p(x)、p(y)、p(x,y) 分別表示X的概率分布,Y的概率分布以及X和Y的聯(lián)合概率分布。兩變量之間互信息越大,之間相關(guān)性越強(qiáng)。依據(jù)互信息的定義,MIFS算法對應(yīng)的算法流程如圖2所示,具體步驟如下:
(1)初始化:將原始輸入特征空間FR賦值給F,S置空;
(2)對F中每個輸入特征fi, 根據(jù)式(8)計算互信息I(Fi;C);
(3)選擇使I(Fi;C); 最大的那個fi, 將fi加入到S中,記為{fi}→S, 同時從F去掉fi記為F
(4)重復(fù)以下過程,直到選夠K個特征:
(5)輸出包含選定特征的特征子集S。
圖2 MIFS算法流程
當(dāng)分類模型的參數(shù)屬于最優(yōu)時,相應(yīng)的模型的分類精度最高,而粒子群優(yōu)化算法(PSO)屬于基于群體的智能優(yōu)化搜索算法,可以用其優(yōu)化支持向量機(jī)的分類模型(SVM)參數(shù)使其獲得最高的識別準(zhǔn)確率。首先生成初始化例子群,計算其適應(yīng)值,并尋找個體極值pid和全局最優(yōu)解pgd, 最終來更新粒子的速度和位置。而每個粒子根據(jù)下面的式(9)、式(10)來進(jìn)行更新其速度和位置
(9)
(10)
其中,vid和xid分別代表速度和位置,r1和r2是0到1之間的隨機(jī)數(shù),c1為學(xué)習(xí)因子,c2為社會因子,而當(dāng)社會因子大于學(xué)習(xí)因子時,有助于粒子向著全局最搜索,因此,取c1=1.6,c2=2。 而ω是權(quán)重,其取值范圍為 [ωmin,ωmax], 其中最大迭代次數(shù)為itermax, 由上可得到以下公式
(11)
由于本文選擇的核函數(shù)是高斯核函數(shù),所以將粒子群算法應(yīng)用于支持向量機(jī)分類模型的參數(shù)尋優(yōu)時,粒子就是懲罰因子C和核參數(shù)γ, 采用PSO調(diào)參就是尋找使SVM分類精度最大的參數(shù),具體通過粒子群優(yōu)化算法優(yōu)化SVM分類模型的參數(shù)的流程如圖3所示。
圖3 PSO優(yōu)化SVM參數(shù)流程
系統(tǒng)整體設(shè)計包含4個模塊:由數(shù)據(jù)采集模塊、特征提取模塊、特征選擇模塊、分類模型4部分組成,具體系統(tǒng)結(jié)構(gòu)如圖4所示,實(shí)驗(yàn)最初采集到不同環(huán)境下的不同動作的CSI原始數(shù)據(jù),然后對數(shù)據(jù)提取其三階累計量特征,再采用MIFS算法對原始特征進(jìn)行篩選魯棒性強(qiáng)的特征子集,將其輸入到已經(jīng)別粒子群優(yōu)化算法優(yōu)化過參數(shù)的支持向量機(jī)分類模型中采用10倍交叉驗(yàn)證,得出識別準(zhǔn)確率。
圖4 系統(tǒng)結(jié)構(gòu)
本次數(shù)據(jù)采集分別在長4 m,寬5 m的實(shí)驗(yàn)室和長4 m,寬6 m的會議室兩種不同環(huán)境下采集,具體實(shí)驗(yàn)場景如圖5所示,可見辦公室場景環(huán)境相對復(fù)雜,而實(shí)驗(yàn)室場景的環(huán)境較為空曠。實(shí)驗(yàn)通過兩臺外置了Intell 5300網(wǎng)卡的臺式機(jī)作為CSI信號的收發(fā)端,其中Tx表示信號發(fā)射端,Rx表示信號接收端,而發(fā)送端采用1根發(fā)送天線用以發(fā)送信號,而接收端采用3根接收天線用以接收信號,且設(shè)置了工作頻率為2.4 GHz,帶寬設(shè)置為20 MHz。而收發(fā)端距離地面高度為75 cm同時之間相距2 m。
圖5 實(shí)驗(yàn)場景
本文采用了Matlab自帶的高階光譜分析工具箱(HOS)從信道中每個子載波中提取9個三階累積量特征。為了降低計算工作量,只采用一根接收天線所接收到的數(shù)據(jù),由于信道有30個子載波。因此提取出270個累積特征的特征向量。而圖6中的等高線顯示了不同動作的第一延遲量和第二延遲量之間估計的三階累積量的二維等高線圖。通過“坐下”、“刷牙”的圖可發(fā)現(xiàn)其具有基本對稱性。
圖6 三階累積量的2D等高線
本文中采用了基于互信息的特征篩選方法(MIFS)對原始特征進(jìn)行篩選,并且設(shè)置β=0.75, 通過實(shí)驗(yàn)選擇不同實(shí)驗(yàn)環(huán)境下篩選后的特征指數(shù)K(10、20、25、30、40維累積量特征)用于分類模型測試系統(tǒng)效果。
最終將得到的篩選后的特征子集輸入到采用高斯核的經(jīng)過粒子群算法優(yōu)化過參數(shù)的支持向量機(jī)分類模型中進(jìn)行分類,并且為了保證實(shí)驗(yàn)結(jié)果的精準(zhǔn)性,采用10倍交叉驗(yàn)證來得出實(shí)驗(yàn)結(jié)果。
實(shí)驗(yàn)所選的實(shí)驗(yàn)對象總共有10人。該10人含4名女6名男的本科生與研究生,年齡在19歲到25歲之間,身高在155 cm到183 cm之間,最終采集到實(shí)驗(yàn)室環(huán)境下2000個數(shù)據(jù),會議室環(huán)境下3000個數(shù)據(jù)。并將其用于驗(yàn)證本方法的識別精度,最終得出表1與表2分別表示在不同場景下關(guān)于不同動作識別率的混淆矩陣,由表1看出實(shí)驗(yàn)室由于較為空曠受到的多徑影響較小所以平均識別率達(dá)到97.4%,而會議室環(huán)境復(fù)雜,信號受到的多徑影響較大但其平均識別率也達(dá)到了94.8%,而以上兩種環(huán)境下本方法的平均識別率達(dá)到了96.1%。
表1 實(shí)驗(yàn)室場景識別率/%
表2 會議室場景識別率/%
為驗(yàn)證不同發(fā)包率對動作識別精度的影響,嘗試了在不同的發(fā)包速率(50,100,200,500,1000) Hz下采集了不同人體日常行為的CSI原始數(shù)據(jù),并采用10倍交叉驗(yàn)證,得出在不同速率下兩種場景中的平均識別精度,由圖7發(fā)包速率對識別率的影響圖可以發(fā)現(xiàn)發(fā)包速率與實(shí)驗(yàn)的平均識別率成正比關(guān)系,但是當(dāng)發(fā)包率到達(dá)500 Hz時,實(shí)驗(yàn)已經(jīng)能取得較好的結(jié)果,而當(dāng)發(fā)包率超過500 Hz時,準(zhǔn)確率的提升并不明顯,且越高的發(fā)包速率也帶來了更高的丟包風(fēng)險和計算時間。
圖7 發(fā)包速率影響
為了驗(yàn)證不同維度的特征子集對識別率的影響,通過將提取到的原始特征向量,并通過MIFS降維算法將其降維成10、20、25、30、40維的特征子集,然后輸入到優(yōu)化好參數(shù)的SVM分類模型中,通過圖8子集維度對識別率影響圖可以發(fā)現(xiàn),當(dāng)K=30時,能獲得較好的平均識別率,驗(yàn)證了當(dāng)K=30時的特征子集已經(jīng)能表達(dá)原信號絕大部分的信息,而當(dāng)K超過30時對識別率的提升并不明顯,而且更高的子集維度還會帶來更大的冗余量和更高的過擬合風(fēng)險。
圖8 子集維度影響
本文之前提及了3種現(xiàn)有的人體行為識別的方法,與其它方法相比,本方法省略了復(fù)雜的信號預(yù)處理階段,但從表3可以看出本方法雖然降低了系統(tǒng)復(fù)雜度,但各動作的平均識別精度依然高于別的方法,可見本方法所提取的CSI信號的三階累計量特征,保存了大部分原始信號的有用信息。對魯棒性和識別精度的提升非常明顯。
表3 各方法平均識別率對比
本文提出了一種基于信道狀態(tài)信息的無設(shè)備的日常行為識別方法,首先通過兩臺連接上Intel 5300網(wǎng)卡的臺式機(jī)做信號收發(fā)端采集原始CSI信號,隨后在未進(jìn)行去噪預(yù)處理的情況下提取信號的三階累積量特征,再用基于互信息的特征選擇方法構(gòu)造出具有高魯棒性的特征子集,最后將特征子集輸入到經(jīng)過了粒子群優(yōu)化算法優(yōu)化過參數(shù)的SVM分類器中進(jìn)行分類。最終實(shí)現(xiàn)了不同場景下不同動作96.1%的平均識別率,驗(yàn)證該方法提取的三階累積量作為特征在擁有較強(qiáng)魯棒性的同時對提高識別精度有著顯著作用。不過該方法目前僅實(shí)現(xiàn)了對單人單個動作的識別,且更換場景后還需要進(jìn)行大量的訓(xùn)練,但鑒于現(xiàn)實(shí)生活需要,以后單人連續(xù)動作、多人多動作的識別以及跨場景動作識別將會是未來重要的研究方向。