石俊豪,左德承,張 展,潘道華
(哈爾濱工業(yè)大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,哈爾濱 150001)
作為泛在計算中的一個主要研究領(lǐng)域,人體活動識別在很多重要領(lǐng)域中得到了應(yīng)用, 如醫(yī)療、教育、娛樂等[1-3]。而隨著微電機(jī)系統(tǒng)的快速發(fā)展,傳感模塊的集成度越來越高,如美國ADI公司研發(fā)的ADXL05傳感模塊,其尺寸僅9.4*19 mm。高集成度的智能傳感模塊,促進(jìn)了普適環(huán)境下人體活動識別應(yīng)用的不斷進(jìn)步和完善。尤其以智能手機(jī)等為代表的便攜可穿戴傳感設(shè)備,不斷智能化、普及化,基于傳感器的活動識別,已經(jīng)成為許多智能場景下更好的方式。
1991年,施樂(Xerox)公司的PARC實驗室研究員Mark Weiser首次提出泛在計算(Ubiquitous Computing)的概念[4]。迄今為止,泛在計算領(lǐng)域已經(jīng)有近30年的發(fā)展?;趥鞲衅鞯娜梭w活動識別作為其中重要的子領(lǐng)域也在此期間有了長足的進(jìn)步。1998年,喬治亞理工大學(xué)學(xué)者D.Abowd等人開發(fā)了Cyberguide系統(tǒng),用于向用戶提供諸如新聞推送、天氣預(yù)報等服務(wù)[5]。進(jìn)入21世紀(jì)后,基于傳感器的活動識別技術(shù)有了飛速發(fā)展,如Mantyla V.M等利用ADXL202傳感模塊進(jìn)行手勢識別[6],其系統(tǒng)流程與現(xiàn)在的活動識別系統(tǒng),以及很多其它領(lǐng)域的模式識別類問題非常相似。時至今日,基于傳感器的活動識別技術(shù)已經(jīng)日趨成熟,研究者們對其研究也更加深入和細(xì)化。如:南京大學(xué)的Wang等人設(shè)計了CHMMs模型,用來解決在智能家居環(huán)境下多用戶活動識別的問題[7];比爾肯特大學(xué)的Kerem Altun等,對不同分類算法在活動識別問題上的效果進(jìn)行比較[8];Adil Mehmood Khan等通過加速度計數(shù)據(jù)和人工神經(jīng)網(wǎng)絡(luò)(ANN)算法,對日?;顒舆M(jìn)行分類[9];Michael B Del Rosario等在智能手機(jī)上實現(xiàn)不同分類算法,比較不同模型的性能[10]。
目前,基于傳感器的活動識別均遵循相似的系統(tǒng)流程,如圖1所示。
圖1 人體活動識別流程
基于傳感器的人體活動識別系統(tǒng)的數(shù)據(jù)采集仰仗于各類傳感器和傳感設(shè)備。從廣義定義上,傳感器是指對可以模擬物理量變化,并能迅速感應(yīng)且轉(zhuǎn)換為以便傳送和處理的電量變化的器件。如速度、溫度、聲、光、氣體等物理量均有相應(yīng)的傳感器。在針對人體活動識別的問題時,由于人們主要以捕捉運(yùn)動狀態(tài),采取運(yùn)動過程數(shù)據(jù)為主,因此主要以加速度計數(shù)據(jù)為主。作為活動識別中最常用的傳感器,加速度計可以測量被測目標(biāo)的運(yùn)動加速度值。目前多數(shù)加速度計輸出三維的加速度數(shù)據(jù),代表了被測物體在空間中3個軸向的加速度值。除此之外,陀螺儀和地磁計也經(jīng)常在識別系統(tǒng)中使用。陀螺儀也屬于一種動作類傳感器,其測量的是被測目標(biāo)繞軸旋轉(zhuǎn)的角速度,與加速度計類似,陀螺儀的輸出值也是三維的。地磁計測量的是空間磁場強(qiáng)度,通過地磁計數(shù)據(jù),可以得到被測目標(biāo)相對于地球坐標(biāo)系的朝向。地磁計的測量數(shù)據(jù)可以輔助加速度計和陀螺儀對被測目標(biāo)的態(tài)勢進(jìn)行估計。目前市面上很多MEMS傳感模塊將這3類傳感器集成為九軸運(yùn)動傳感器。典型的如Invensense公司的MPU系列芯片[11]。
除此之外,很多其它種類的傳感模塊也被引入到研究當(dāng)中,以提供更便捷、更精確的識別服務(wù)。例如:使用GPS定位模塊幫助判斷用戶當(dāng)前位置,是否在室內(nèi)/室外[12];引入氣壓計來判斷用戶當(dāng)前所處的海拔高度,對于涉及到電梯、上下樓等活動的場景有很大作用[13]等。在醫(yī)療、運(yùn)動等領(lǐng)域也有很多應(yīng)用使用體征類傳感器,檢測用戶體征參數(shù)。典型的如心率傳感器,用以實時采集用戶的心跳數(shù)據(jù);體溫傳感器,用以監(jiān)測用戶體溫數(shù)據(jù)。隨著科學(xué)技術(shù)的發(fā)展,越來越多新類型的傳感器和智能設(shè)備進(jìn)入到了學(xué)者們的視野當(dāng)中。如Guan等利用熱釋電紅外傳感器對人體活動進(jìn)行監(jiān)測[14];Thirupugalsamy等通過人體在室內(nèi)對wifi信號的影響來進(jìn)行活動識別[15]。
經(jīng)過傳感設(shè)備采集到的數(shù)據(jù),通常需要經(jīng)過一些預(yù)處理步驟。由于數(shù)據(jù)在收集過程中可能會因為傳輸環(huán)境、人為誤操等原因而出現(xiàn)丟失或錯誤。在獲得數(shù)據(jù)之后應(yīng)該做一些必要的檢查和修復(fù)。在數(shù)據(jù)的糾錯補(bǔ)全方面,文獻(xiàn)[16]中對無線環(huán)境下的數(shù)據(jù)傳輸異常提出了解決方案。由于活動數(shù)據(jù)本身在采集過程受到各種噪聲的影響,需要進(jìn)行濾波降噪的處理。常用的濾波器有卡爾曼濾波器[17]、巴特沃斯濾波器[18]等等。由于收集到的數(shù)據(jù)大多以數(shù)據(jù)流形式存在,因此所收集到的時序數(shù)據(jù)通常要進(jìn)行切片。在此過程中最常使用的是滑動窗口算法,該算法將一個固定長度的窗口作為“模具”,讓窗口沿著時間序列對數(shù)據(jù)進(jìn)行切分?;瑒哟翱诘拈L度是一個至關(guān)重要的參數(shù),其決定了切分的數(shù)據(jù)塊大小是否合理。一些活動識別研究的主要內(nèi)容也是基于對窗口大小的探討。如文獻(xiàn)[19]中提出了一種動態(tài)可變的滑動窗口算法(如圖2所示),對不同復(fù)雜程度的活動數(shù)據(jù)進(jìn)行切分。
圖2 滑動窗口算法
完成切分后,采集的數(shù)據(jù)流被切分成多個活動數(shù)據(jù)片段,形成數(shù)據(jù)集。
特征(Feature)在模式識別中是一種抽象的數(shù)據(jù)描述方式,將一組數(shù)據(jù)提取特征,既可以縮小數(shù)據(jù)規(guī)模,以便對數(shù)據(jù)中所蘊(yùn)藏的重要信息有明確的掌握。特征提取通常需要一個領(lǐng)域的專業(yè)知識,針對人體活動識別方向,目前主要的特征可以分為兩類:一是時域特征,此類特征幾乎是所有模式識別系統(tǒng)都會涉及到的。最常用的包括:均值、方差、標(biāo)準(zhǔn)差、最值、百分位數(shù)等等。二是頻域特征,計算頻域特征需要先對原數(shù)據(jù)進(jìn)行時頻域轉(zhuǎn)換,如傅里葉變換(FFT),然后提取其中相應(yīng)的特征。比較常見的特征有傅里葉系數(shù)、頻域熵等。文獻(xiàn)[20]中對這兩類特征進(jìn)行了對比,發(fā)現(xiàn)時域特征對于分類效果的作用更大,效果更好。經(jīng)過特征提取之后,各個數(shù)據(jù)片段形成了特征向量組成的特征集。表1給出了常用的統(tǒng)計特征及計算方式。
表1 常用統(tǒng)計特征
分類模型是識別系統(tǒng)的核心,其作用是根據(jù)之前得到的特征向量,將對應(yīng)的活動數(shù)據(jù)歸類為某種活動。模型訓(xùn)練和測試的目的,是通過對模型的多次迭代,不斷調(diào)整模型本身的參數(shù),進(jìn)而使模型對當(dāng)前的應(yīng)用場景更具有針對性,增加其分類的能力。
傳統(tǒng)的機(jī)器學(xué)習(xí)方法是基于傳感器的人體活動識別研究中最常用的方法。相對于新興的深度學(xué)習(xí)分類模型而言,這些算法通常計算量小、實現(xiàn)簡單,較適合于普適計算環(huán)境。
(1)決策樹(Decision tree,DT):決策樹是一種非常常見的分類算法[21],具有概念簡單、分類規(guī)則易于理解的優(yōu)點。直觀地說,DT是一組具有分類條件的多分支樹。計算模型復(fù)雜度低、效率高。但是,DT模型容易過度擬合,其比較適合針對離散型特征的分類問題。目前比較常用的CART(分類和回歸樹)模型優(yōu)化了這種情況。CART采用基于最小距離的基尼指數(shù)估計函數(shù),非常靈活,允許部分錯分樣本[22]。
(2)支持向量機(jī)(Support vector machine,SVM):1995年,貝爾實驗室的Vaonik等人[23]正式發(fā)表論文,提出了SVM算法在分類任務(wù)中的優(yōu)越性能。其所改進(jìn)的軟邊距非線性SVM算法,在手寫字符識別問題上可稱是SVM相關(guān)研究的標(biāo)志性成果。最初SVM主要面向的是二分類問題,其算法思想是在數(shù)據(jù)的樣本空間中,尋找能將兩類區(qū)分開的且與兩類具有最大間隔的最優(yōu)超平面。圖3顯示了超平面與間隔的關(guān)系,居于虛線中間的實線為最優(yōu)超平面。SVM是一種優(yōu)秀的分類器,在許多類似的研究中得到了使用或改進(jìn)。Fullerton 等[24]利用SVM在實際生活場景下實現(xiàn)對傳感器數(shù)據(jù)的分類,并取得良好的效果。
圖3 超平面及間距示意
(3)樸素貝葉斯分類器(Na?ve Bayes):樸素貝葉斯模型的識別方式不同于大多數(shù)分類方法,其側(cè)重于尋找聯(lián)合分布P(X,Y)的表達(dá)式,P(X,Y)的公式如下:
P(X,Y)=P(Y|X)*P(X)
(3)
其中,X為特征,Y為活動標(biāo)簽。
樸素貝葉斯模型用于小規(guī)模數(shù)據(jù)集,易于實現(xiàn)[25]。但是,其假設(shè)不同特征之間是相互獨立的,因此具有高耦合特性的數(shù)據(jù)在樸素貝葉斯分類器上的性能不是很好。
(4)K近鄰(K-Nearest Neighbor):K近鄰算法是一種基本的分類與回歸算法。在基本實現(xiàn)上,使用的是多數(shù)表決的惰性學(xué)習(xí)過程,核心就是使用一種距離度量,統(tǒng)計距離目標(biāo)點最近的K個節(jié)點中數(shù)目最多的標(biāo)簽并將其賦予目標(biāo)點。文獻(xiàn)[26]中使用傳感器信息,對爬樓梯等動作進(jìn)行識別,將K近鄰和其它算法進(jìn)行比較,K近鄰分類器得到了最好的識別效果。但是這種方法對于K值的選取比較苛刻,容易受到樣本數(shù)據(jù)中孤立點的影響,因此分類結(jié)果不穩(wěn)定。
近年來,深度學(xué)習(xí)(Deep Learning, DL)算法備受關(guān)注。其在圖像處理、自然語言處理、數(shù)據(jù)挖掘等許多領(lǐng)域都有優(yōu)異的研究成果。隨著DL算法的進(jìn)一步發(fā)展,相關(guān)模型也被應(yīng)用到基于傳感器的人體活動識別的研究中。目前常用的深度學(xué)習(xí)分類算法主要為卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)以及長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)。CNN可以提取深層的數(shù)據(jù)特征,并且可以自動提取數(shù)據(jù)特征,降低了活動識別的專業(yè)領(lǐng)域知識的需求,簡化了步驟,通常能獲得相較上述分類器更高的準(zhǔn)確率。文獻(xiàn)[27]中使用CNN對多通道時間序列數(shù)據(jù)進(jìn)行了分類。實驗結(jié)果表明,其準(zhǔn)確率高于對照組中其它機(jī)器學(xué)習(xí)分類器。LSTM源于循環(huán)神經(jīng)網(wǎng)絡(luò),不同的是通過門控制手段使得整個網(wǎng)絡(luò)具有長期記憶和短期記憶,解決了梯度消失問題。而由于人體活動通常具有時序上的規(guī)律性,LSTM對具有上下文活動信息的識別場景更有優(yōu)勢。文獻(xiàn)[28]中結(jié)合溫濕度傳感數(shù)據(jù),使用LSTM對13種人體活動進(jìn)行識別,為糖尿病早期診斷提供了有力參考。
需要注意,盡管DL算法相較于機(jī)器學(xué)習(xí)算法有更高的識別準(zhǔn)確率,但仍然有其自身的缺陷。首先,DL算法的優(yōu)勢仰賴于大量數(shù)據(jù)的訓(xùn)練,但質(zhì)量高、數(shù)量多的數(shù)據(jù)集很難搜集;此外DL算法大多結(jié)構(gòu)復(fù)雜、計算復(fù)雜,不利于一些實時性要求高的識別場景,并且能耗較高,在許多電量有限的設(shè)備中并不適合部署。
在經(jīng)過訓(xùn)練和測試之后,整個系統(tǒng)需要部署在具體物理設(shè)備中。依照總體架構(gòu)設(shè)計的不同,一些對個人的監(jiān)測,會將整個系統(tǒng)部署在同一設(shè)備中。如:智能手機(jī)、智能手環(huán)等。由于人體活動識別需要長期監(jiān)測,因此必須考慮系統(tǒng)的節(jié)能性。文獻(xiàn)[29]中針對GPS的使用設(shè)計了專門算法,使其僅在地理位置發(fā)生變化時才開啟GPS傳感模塊,使得整個活動識別的能耗得到有效降低。識別一些低強(qiáng)度活動通常需要較少的數(shù)據(jù)量即可,因此應(yīng)該有適當(dāng)?shù)膫鞲衅鞑蓸宇l率機(jī)制,自適應(yīng)地控制傳感器采樣頻率以降低設(shè)備能耗。如文獻(xiàn)[30]中提出了“壓縮”的概念,其實質(zhì)是控制數(shù)據(jù)采集模塊的采樣頻率,文中還通過窮舉方式找到最優(yōu)的采樣頻率和分類性能的組合。在一些多傳感器系統(tǒng)中,多個傳感器同時工作會讓整個系統(tǒng)處于高能耗狀態(tài),而實際上某些同類型傳感器節(jié)點互為冗余,適當(dāng)讓一些節(jié)點進(jìn)行休眠可以延長整個系統(tǒng)的生命周期,降低能耗。如文獻(xiàn)[31]中為不同活動設(shè)置了多個傳感器配置,通過對過往活動的總結(jié),來預(yù)測下一個窗口的活動,同時按照算法開啟最優(yōu)的傳感器設(shè)置,提高了活動識別準(zhǔn)確率的同時節(jié)約了系統(tǒng)的能耗。
隨著擴(kuò)大的數(shù)據(jù)量和多樣化的服務(wù)應(yīng)用,越來越多應(yīng)用選擇服務(wù)器-客戶端的模式來設(shè)計整個系統(tǒng)。時至今日更多的HAR系統(tǒng)選擇邊緣計算架構(gòu)的部署模式。Salman等[32]在其工作中,對邊緣計算的設(shè)計模式做了全面的總結(jié),Li等[33]針對物聯(lián)網(wǎng)環(huán)境下的深度學(xué)習(xí)算法設(shè)計了基于邊緣計算的系統(tǒng)架構(gòu)。
本文以人體活動識別流程為主線,梳理了各類關(guān)鍵技術(shù)與相關(guān)工作。盡管目前基于傳感器的人體活動識別技術(shù)相關(guān)研究都能取得不錯的效果,但在實際場景中仍然面臨許多更為復(fù)雜的場景所帶來的的新問題。如:系統(tǒng)對傳感設(shè)備偏移的魯棒性不足、訓(xùn)練深度學(xué)習(xí)分類模型數(shù)據(jù)量過少、均衡設(shè)備能耗和服務(wù)質(zhì)量之間的矛盾等。這些問題還需要在未來工作中進(jìn)行更深入的研究。