王 方,崔海英,方亞?wèn)|,郎瑞祥,葉 劍+
(1.浪潮集團(tuán)有限公司 浪潮云信息技術(shù)有限公司,山東 濟(jì)南 250010;2.中國(guó)科學(xué)院計(jì)算技術(shù)研究所,北京 100190)
用戶基本活動(dòng)識(shí)別一般是指識(shí)別用戶的行走、奔跑、站立等簡(jiǎn)單活動(dòng),與基本活動(dòng)識(shí)別相比,復(fù)雜活動(dòng)識(shí)別(high-level activity recognition,HAR)主要識(shí)別吃飯、工作、運(yùn)動(dòng)等日常生活活動(dòng),復(fù)雜活動(dòng)識(shí)別提供了更加豐富的用戶情境信息,同時(shí)也大大增加了活動(dòng)識(shí)別的難度[1]。
不同的復(fù)雜活動(dòng)識(shí)別方法往往考慮不同的因素,例如將加速度傳感器配置在人體多個(gè)位置從而考慮人體不同部位的加速度;用手機(jī)采集用戶附近WiFi列表、地理位置、用戶環(huán)境聲音、加速度等。在眾多的相關(guān)因素中,時(shí)空軌跡被證明是與用戶復(fù)雜活動(dòng)相關(guān)的關(guān)鍵因素[1-4]。該因素對(duì)于過(guò)濾用戶的活動(dòng)有重要的作用,此處的過(guò)濾作用主要指根據(jù)時(shí)空軌跡特征可以排除部分不會(huì)發(fā)生在某個(gè)地點(diǎn)的活動(dòng)。例如,當(dāng)用戶在工作單位時(shí),他可能會(huì)在工作、會(huì)議等,但是不會(huì)發(fā)生做飯、家務(wù)等活動(dòng)。為此,以運(yùn)動(dòng)軌跡的時(shí)空特性為基礎(chǔ),研究復(fù)雜活動(dòng)識(shí)別方法具有重要意義。
用戶的復(fù)雜活動(dòng)由簡(jiǎn)單活動(dòng)組成。所以對(duì)于復(fù)雜活動(dòng)識(shí)別的過(guò)程通常,首先通過(guò)先識(shí)別簡(jiǎn)單活動(dòng),基于識(shí)別的簡(jiǎn)單活動(dòng)進(jìn)而完成復(fù)雜活動(dòng)識(shí)別。簡(jiǎn)單活動(dòng)識(shí)別首先將原始數(shù)據(jù)按照固定時(shí)間間隔劃分為段,進(jìn)而識(shí)別每段對(duì)應(yīng)的簡(jiǎn)單活動(dòng)。文獻(xiàn)[5]提出了一種利用智能手機(jī)的加速度計(jì)數(shù)據(jù)和機(jī)器學(xué)習(xí)算法對(duì)運(yùn)動(dòng)進(jìn)行分類的系統(tǒng),該文利用特征提取和選擇技術(shù)對(duì)簡(jiǎn)單或識(shí)別優(yōu)化,該方法可以識(shí)別和分類動(dòng)態(tài)和靜態(tài)物理用戶活動(dòng),利用特征選擇,減少所需特征的數(shù)量,從而在保持分類精度的同時(shí)降低模型的復(fù)雜度,同時(shí)比較了SVM、KNN、kStar等多種機(jī)器學(xué)算法的優(yōu)劣。文獻(xiàn)[6]提出了一種基于光學(xué)HR(心率)傳感器和三軸腕部磨損加速度計(jì)的活動(dòng)監(jiān)測(cè)框架。系統(tǒng)基于一種著名的監(jiān)督分類算法——隨機(jī)森林,利用了標(biāo)簽校正、信號(hào)分割、特征提取、參數(shù)檢測(cè)和特征約簡(jiǎn)等數(shù)據(jù)處理方法,對(duì)坐、站、家庭活動(dòng)等進(jìn)行識(shí)別。文獻(xiàn)[7]采用LDA模型分析訓(xùn)練數(shù)據(jù)包含的話題,將話題概率分布相似的段合并,通過(guò)比較段與用戶標(biāo)簽來(lái)識(shí)別復(fù)雜活動(dòng)。該類方法存在的問(wèn)題在于簡(jiǎn)單活動(dòng)種類較少,只包含基本的快走,慢走,站立等活動(dòng)。這并不足以區(qū)分很多復(fù)雜活動(dòng),比如用戶的工作和吃飯都是以坐這個(gè)簡(jiǎn)單活動(dòng)構(gòu)成的;用戶的步行通勤和購(gòu)物都是以慢走這個(gè)主要活動(dòng)構(gòu)成的。因此,種類過(guò)少的簡(jiǎn)單活動(dòng)并不能很好區(qū)分復(fù)雜活動(dòng)。
文獻(xiàn)[8,9]考慮用戶的活動(dòng)受其周圍用戶影響,不同社區(qū)用戶間存在相似性。因此借助相鄰用戶以及相似社區(qū)來(lái)識(shí)別當(dāng)前用戶活動(dòng)。文獻(xiàn)[8]提出了一種“眾包”方法,通過(guò)發(fā)現(xiàn)目標(biāo)用戶和社區(qū)用戶之間的類相似性,結(jié)合用戶依賴模型和一般模型的優(yōu)點(diǎn),為HAR構(gòu)建個(gè)性化模型,該方法使用集體數(shù)據(jù)來(lái)匹配個(gè)人數(shù)據(jù),其中的關(guān)鍵是使用目標(biāo)用戶的稀缺標(biāo)簽數(shù)據(jù),根據(jù)類的相似性選擇其他用戶數(shù)據(jù)的子集,而不是使用所有其他用戶的數(shù)據(jù)構(gòu)建模型,從而構(gòu)建個(gè)性化模型。文獻(xiàn)[9]使用軌跡相似度和用戶活動(dòng)區(qū)域相似度計(jì)算用戶的關(guān)系強(qiáng)度從而構(gòu)建關(guān)系網(wǎng)絡(luò),然后提取相應(yīng)的社區(qū)特征訓(xùn)練基于社區(qū)的活動(dòng)分類器,并根據(jù)個(gè)人的數(shù)據(jù)訓(xùn)練個(gè)人活動(dòng)分類器,將兩個(gè)分類器結(jié)果融合作為最終的結(jié)果。該類方法存在的問(wèn)題在于當(dāng)用戶量很大時(shí),構(gòu)建關(guān)系網(wǎng)絡(luò)是一個(gè)計(jì)算復(fù)雜性很高的任務(wù),模型訓(xùn)練需要較長(zhǎng)的時(shí)間。
文獻(xiàn)[2,10-12]綜合考慮時(shí)空因素,采集多源數(shù)據(jù),利用多源數(shù)據(jù)的不同特點(diǎn),構(gòu)造合適的框架,識(shí)別用戶復(fù)雜活動(dòng)。文獻(xiàn)[2]使用手機(jī)和心電監(jiān)護(hù)儀作為數(shù)據(jù)采集設(shè)備,分別采集了WiFi,GPS坐標(biāo),環(huán)境聲音等數(shù)據(jù),并提出了一個(gè)啟發(fā)式算法對(duì)活動(dòng)識(shí)別。該方法對(duì)睡眠、工作兩個(gè)活動(dòng)的識(shí)別率很高,但是對(duì)于鍛煉、吃飯、外出等活動(dòng)的識(shí)別率都比較低。文獻(xiàn)[10]提出了一種基于成本敏感的GPS活動(dòng)識(shí)別模型,以提高少數(shù)活動(dòng)的識(shí)別的準(zhǔn)確性,從而反映出用戶的個(gè)人偏好,是一種側(cè)重于提供平衡結(jié)果的方法,采用成本敏感的隱馬爾可夫模型進(jìn)行識(shí)別。文獻(xiàn)[11]在活動(dòng)識(shí)別時(shí)考慮了加速度、GPS和聲頻等信息,并利用GPS信息估算出磁場(chǎng)信息,同時(shí)提出兩種版本的支持向量機(jī)(SVM)分類器算法。文獻(xiàn)[12]設(shè)計(jì)了一個(gè)啟發(fā)式的活動(dòng)識(shí)別框架,共需訓(xùn)練31個(gè)分類器,根據(jù)數(shù)據(jù)的不同,選擇某個(gè)合適的分類器進(jìn)行預(yù)測(cè)。由于該方法需要訓(xùn)練的分類器眾多,大大增加了模型訓(xùn)練的工作量。該類方法中,時(shí)空特征只是作為分類器眾多特征中的一維,并未考慮時(shí)空軌跡對(duì)活動(dòng)的過(guò)濾作用。
為此,本文提出了一種基于ROA復(fù)雜活動(dòng)識(shí)別方法,該方法充分利用時(shí)空軌跡對(duì)交通方式識(shí)別的重要作用以及對(duì)用戶復(fù)雜活動(dòng)的過(guò)濾作用,使得每個(gè)ROA內(nèi)復(fù)雜活動(dòng)具有較強(qiáng)的規(guī)律性并且復(fù)雜活動(dòng)的種類小于待識(shí)別活動(dòng)全集的種類,因此有助于提高分類器對(duì)復(fù)雜活動(dòng)的識(shí)別率。與文獻(xiàn)[5-7]所述的方法不同,本文并未識(shí)別簡(jiǎn)單活動(dòng),而是根據(jù)相關(guān)特征直接識(shí)別復(fù)雜活動(dòng)。與文獻(xiàn)[8,9]所述的方法不同,該類方法使用用戶時(shí)空軌跡來(lái)衡量用戶的關(guān)系強(qiáng)度構(gòu)造關(guān)系網(wǎng)絡(luò),本文并不需構(gòu)造復(fù)雜的關(guān)系網(wǎng)絡(luò),從而在計(jì)算復(fù)雜度上低于這些算法。與文獻(xiàn)[2,10-12]所述的方法不同,該類方法一般利用時(shí)空軌跡提取速度,獲取地理位置的類別等,并將這些信息作為分類器的一維特征輔助復(fù)雜活動(dòng)識(shí)別,本文則是利用時(shí)空軌跡將數(shù)據(jù)劃分為ROA,基于ROA識(shí)別復(fù)雜活動(dòng)。同時(shí),本文中提到的分類器并不局限于某種特定的分類器,每個(gè)ROA可以根據(jù)實(shí)際情況采用相同或者不同的分類器。
基于ROA復(fù)雜活動(dòng)識(shí)別方法的算法框架如圖1所示。訓(xùn)練階段,首先使用ROA提取算法從傳感器數(shù)據(jù)流中提取ROA,基于不同的ROA,分別訓(xùn)練相同或不同的分類器。識(shí)別階段,首先,判斷待識(shí)別的數(shù)據(jù)屬于哪個(gè)ROA,然后選擇相應(yīng)的分類器進(jìn)行分類,分類的結(jié)果即為復(fù)雜活動(dòng)識(shí)別的結(jié)果。當(dāng)用戶到達(dá)了一個(gè)他以前從未到過(guò)的地方時(shí),由于缺乏有效的歷史數(shù)據(jù),判斷當(dāng)前數(shù)據(jù)的ROA將產(chǎn)生較大的誤差,這種情況下,可以通過(guò)比較ROA屬性的相似性來(lái)選擇合適的ROA。同時(shí),用戶一天的識(shí)別結(jié)果就可以組成用戶該天的活動(dòng)模式。活動(dòng)模式對(duì)活動(dòng)識(shí)別具有重要意義:活動(dòng)模式提供了一個(gè)活動(dòng)之前活動(dòng)和之后活動(dòng)的信息,這樣的信息使得可以根據(jù)活動(dòng)之間的聯(lián)系來(lái)對(duì)識(shí)別的結(jié)果進(jìn)行合理調(diào)整;并且用戶的活動(dòng)模式具有規(guī)律性,例如用戶在工作日的活動(dòng)模式是相對(duì)固定的,在非工作的活動(dòng)模式也是相對(duì)固定的。這樣的規(guī)律性使得可以把活動(dòng)規(guī)律當(dāng)作用戶活動(dòng)識(shí)別的先驗(yàn)知識(shí),提高活動(dòng)識(shí)別的準(zhǔn)確率。關(guān)于活動(dòng)模式的應(yīng)用,我們將在未來(lái)的工作中繼續(xù)探究,本文我們將著重討論ROA的提取及分類器的訓(xùn)練。
圖1 基于ROA復(fù)雜活動(dòng)識(shí)別方法框架
時(shí)空軌跡對(duì)復(fù)雜活動(dòng)的過(guò)濾作用主要體現(xiàn)在用戶不同ROA的活動(dòng)種類相對(duì)較少并具有較強(qiáng)的規(guī)律性。本文提出了兩種ROA提取算法,第一種是基于密度聚類的ROA提取算法,此算法基于用戶長(zhǎng)時(shí)間停留的區(qū)域GPS數(shù)據(jù)采樣及WiFi列表數(shù)據(jù)采樣的密度將會(huì)大于用戶以某種交通方式經(jīng)過(guò)的區(qū)域,因此采用密度聚類可以從數(shù)據(jù)中提取ROA。然而,用戶的差異性和地點(diǎn)的差異性對(duì)密度聚類的參數(shù)具有較大的影響,使得密度聚類方法的參數(shù)不容易確定,同時(shí),密度聚類算法具有較高的時(shí)間復(fù)雜度,面對(duì)大量數(shù)據(jù)時(shí),需要較長(zhǎng)的訓(xùn)練時(shí)間。因此,本文提出了基于濾波的ROA提取算法。用戶的ROA是由若干道路連接在一起的,當(dāng)用戶以某種交通方式通過(guò)道路時(shí),GPS坐標(biāo)變化率將會(huì)高于用戶長(zhǎng)時(shí)間停留的ROA,因此采用濾波的方式,識(shí)別道路上的數(shù)據(jù),并對(duì)非道路上的數(shù)據(jù)進(jìn)行合理的合并,可以從數(shù)據(jù)中提取ROA。該算法相對(duì)于基于密度聚類的ROA提取算法而言,用戶差異性和地點(diǎn)差異性對(duì)參數(shù)影響較小,同時(shí)具有較低的算法復(fù)雜度。
2.2.1 基于密度聚類的ROA提取算法
在基于密度聚類的ROA提取算法中,首先對(duì)WiFi列表進(jìn)行了基于Jaccard距離的密度聚類,將每個(gè)類中的GPS坐標(biāo)統(tǒng)一修正為該類中所有GPS坐標(biāo)的平均值,進(jìn)而對(duì)修正后的GPS數(shù)據(jù)進(jìn)行基于歐氏距離的密度聚類。聚類結(jié)果中,每一個(gè)類即為一個(gè)ROA,所有非類內(nèi)點(diǎn)視為一個(gè)ROA,非類內(nèi)點(diǎn)所對(duì)應(yīng)的ROA一般為道路上的點(diǎn)。算法偽代碼如算法1所示。
算法1: 密度聚類ROA提取算法。
輸入: GPS數(shù)據(jù)GPSData, WiFi列表數(shù)據(jù)WiFiData
輸出: ROA標(biāo)簽ROATag
WiFiDistance←GetDistance(WiFiData, “jaccard”)
WiFiCluster←DBSCAN(WiFiDistance,eps,minPts)
WiFiClusterTag←WiFiCluster.tag
FOR(iINunique(WiFiClusterTag))
IF(i!= 0)
index←which(WiFiClusterTag==i)
GPSData[index, 1] ←mean(GPSData[index, 1])
GPSData[index, 2] ←mean(GPSData[index, 2])
GPSDistance←GetDistance(GPSData, “euclidean”)
GPSCluster←DBSCAN(GPSDistance,eps,minPts)
ROATag←GPSCluster.tag
RETURNROATag
之所以采取先對(duì)WiFi列表聚類修正GPS數(shù)據(jù)再對(duì)GPS聚類的原因是,在某些建筑物中,由于建筑物結(jié)構(gòu)使得建筑物內(nèi)GPS信號(hào)時(shí)有時(shí)無(wú),這樣情況下產(chǎn)生的GPS定位結(jié)果誤差非常大,如果直接使用GPS密度聚類,無(wú)法將這些數(shù)據(jù)采樣聚在一起,產(chǎn)生錯(cuò)誤,如圖2所示。圖2中每個(gè)非圓的圖形代表一個(gè)聚類。圖2(a)中,右下角十字,叉,菱形為同一地點(diǎn)的GPS采樣,由于信號(hào)問(wèn)題導(dǎo)致有較大的偏差而無(wú)法聚在一起。WiFi的輻射距離相對(duì)較小,所以,使用WiFi數(shù)據(jù)聚為一類的數(shù)據(jù),實(shí)際的GPS位置不會(huì)相差太大,因此采用WiFi聚類修正數(shù)據(jù)采樣的GPS坐標(biāo)。如果只使用WiFi聚類,由于某些建筑沒(méi)有WiFi信號(hào),導(dǎo)致會(huì)丟失這些建筑物的聚類,如圖2(b)所示。圖2(b)中右下角較為分散的點(diǎn)因?yàn)閃iFi采樣一致而被聚集在一起,但是右上方和左方的聚類由于沒(méi)有WiFi信號(hào)而丟失。所以,采取了使用WiFi聚類修正GPS坐標(biāo)再對(duì)GPS聚類的方法,結(jié)果圖2(c)所示。圖2(c)中左方和右上方的聚類沒(méi)有丟失,右下方點(diǎn)經(jīng)過(guò)WiFi修正而聚為一類。
圖2 基于密度聚類的ROA提取算法
2.2.2 基于濾波的ROA提取算法
在基于濾波的ROA提取算法中,首先根據(jù)GPS坐標(biāo)及采樣頻率求出GPS坐標(biāo)的變化率。由于用戶在道路上可能因?yàn)槟承┰驎?huì)停止前進(jìn),同時(shí),某些建筑物會(huì)發(fā)生GPS坐標(biāo)的偏移產(chǎn)生GPS變化率的突變,因此首先采用平滑濾波器對(duì)GPS變化率進(jìn)行平滑濾波,可以根據(jù)數(shù)據(jù)的不同情況采用平滑線性濾波器或統(tǒng)計(jì)排序(非線性)濾波器,本文采用了均值濾波器。對(duì)平滑濾波后的數(shù)據(jù)低通濾波,此時(shí),標(biāo)記為1的點(diǎn)組成用戶長(zhǎng)時(shí)間停留的數(shù)據(jù)段,標(biāo)記為0的點(diǎn)為道路上的點(diǎn)。接下來(lái)需要將屬于同一個(gè)ROA的數(shù)據(jù)段進(jìn)行合并。對(duì)當(dāng)前每個(gè)數(shù)據(jù)段計(jì)算一個(gè)平均值,當(dāng)兩個(gè)數(shù)據(jù)段的平均值小于一定閾值時(shí),將兩個(gè)數(shù)據(jù)段進(jìn)行合并,合并完成即為ROA提取結(jié)果。算法偽代碼算法2所示。
算法2: 濾波ROA提取算法。
輸入: GPS數(shù)據(jù)GPSData
輸出: ROA標(biāo)簽ROATag
GPSChangeRate←GetGPSChangeRate(GPSData)
GPSSmoothRate←SmoothFilter(GPSChangeRate)
GPSTag←LowPassFilter(GPSSmoothRate)
ROAMean←NULL
GPSList←NULL
FOR(iIN1:length(GPSData))
IF(GPSTag[i] == 1)
GPSList.add(GPSData[i])
ELSE
IF(GPSList!=NULL)
ROAMean.add(mean(GPSList))
GPSList←NULL
ROATag←mergeROA(GPSTag,ROAMean)
RETURNROATag
完成ROA提取后,需要為每個(gè)ROA訓(xùn)練一個(gè)分類器。特別的,當(dāng)根據(jù)訓(xùn)練數(shù)據(jù)判定某個(gè)ROA為平凡ROA時(shí),對(duì)該ROA不訓(xùn)練分類器,而直接使用該平凡ROA對(duì)應(yīng)的復(fù)雜活動(dòng)作為識(shí)別的結(jié)果。本文將從分類器數(shù)據(jù)采集及分類器設(shè)計(jì)兩個(gè)方面介紹分類器的訓(xùn)練。
(1)數(shù)據(jù)采集。數(shù)據(jù)采集階段,需要獲取盡可能多的與用戶復(fù)雜活動(dòng)相關(guān)的特征,不同數(shù)據(jù)采集設(shè)備能獲取到的數(shù)據(jù)不同,本文采用的智能手機(jī)作為數(shù)據(jù)采集的設(shè)備,因此,將以智能手機(jī)為例對(duì)數(shù)據(jù)采集的特征進(jìn)行探討。本文中采集的數(shù)據(jù)主要是:①時(shí)間。用戶的復(fù)雜活動(dòng)往往受到時(shí)間的約束,例如,用戶在固定的時(shí)間上班,固定的時(shí)間下班,固定的時(shí)間吃飯等;②x、y、z方向的加速度。不同的復(fù)雜活動(dòng)往往對(duì)應(yīng)不同的加速度變化率,當(dāng)用戶睡眠時(shí),加速度的變化率趨近于0,而當(dāng)用戶運(yùn)動(dòng)時(shí),加速度值變化劇烈;③是否是工作日。用戶在工作日的活動(dòng)規(guī)律是與非工作日的活動(dòng)規(guī)律不同的;④手機(jī)模式、是否在充電。某些用戶的手機(jī)模式、充電狀態(tài)是與用戶的活動(dòng)有關(guān)系的,例如某些用戶習(xí)慣睡前將手機(jī)調(diào)為靜音或震動(dòng)模式,有些用戶習(xí)慣睡眠的時(shí)候?qū)κ謾C(jī)充電等;⑤用戶最近使用的5個(gè)App。由于智能手機(jī)的功能越來(lái)越強(qiáng)大,越來(lái)越多的人使用手機(jī)娛樂(lè),學(xué)習(xí),點(diǎn)外賣等,這時(shí)候,用戶使用的App一定程度上與用戶的復(fù)雜活動(dòng)有關(guān)系。⑥GPS坐標(biāo)。獲得用戶軌跡,提取ROA。⑦WiFi列表。用戶直連WiFi和信號(hào)強(qiáng)度最強(qiáng)的15個(gè)WiFi MAC地址列表,提取ROA。
(2)分類器設(shè)計(jì)。由于不同分類器適用于不同的場(chǎng)景,為了發(fā)揮不同分類器在不同場(chǎng)景下的優(yōu)勢(shì),本文分別為不同的ROA訓(xùn)練了kNN,SVM,決策樹(shù),樸素貝葉斯4種分類器。ROA提取算法會(huì)影響最優(yōu)分類器的選擇,本文在兩種ROA提取算法的基礎(chǔ)上,分別實(shí)現(xiàn)了上述的4種分類器。最優(yōu)分類器與數(shù)據(jù)的特點(diǎn)具有比較密切的關(guān)系,無(wú)法根據(jù)ROA的特點(diǎn)直接選擇最優(yōu)分類器,由于留一交叉驗(yàn)證可以很好驗(yàn)證模型的泛化能力,本文采用留一交叉驗(yàn)證選擇最優(yōu)分類器。本文統(tǒng)計(jì)了所有ROA中,最優(yōu)分類器的比例。在65%的ROA中,SVM是最優(yōu)分類器,在32%的ROA中,決策樹(shù)是最優(yōu)分類器,3%的ROA中,樸素貝葉斯是最優(yōu)分類器,沒(méi)有任何ROA,kNN是最優(yōu)分類器。因此,本文選擇了SVM和決策樹(shù)作為復(fù)雜活動(dòng)識(shí)別的分類器。
本文將從比較基于密度聚類的ROA提取算法和基于濾波ROA提取算法的優(yōu)劣以及驗(yàn)證ROA提取算法可以提高活動(dòng)識(shí)別的準(zhǔn)確性兩個(gè)方面進(jìn)行實(shí)驗(yàn)。為了比較兩種ROA提取算法的優(yōu)劣,首先本文對(duì)兩種ROA提取算法的時(shí)間復(fù)雜度進(jìn)行了嚴(yán)格的推導(dǎo),比較兩種算法時(shí)間復(fù)雜度的區(qū)別。然后分別使用兩種ROA提取算法對(duì)相同的數(shù)據(jù)提取ROA,并使用相同的分類模型對(duì)活動(dòng)進(jìn)行識(shí)別,使用活動(dòng)識(shí)別準(zhǔn)確性來(lái)評(píng)價(jià)ROA提取算法準(zhǔn)確性。為了驗(yàn)證ROA提取算法可以提高活動(dòng)識(shí)別準(zhǔn)確率,本文分別使用先提取ROA再分類的方法和直接分類的方法對(duì)相同的數(shù)據(jù)進(jìn)行了實(shí)驗(yàn),通過(guò)對(duì)比兩種方法活動(dòng)識(shí)別的準(zhǔn)確率來(lái)驗(yàn)證ROA提取算法的效果。
我們?cè)贏ndroid智能手機(jī)上實(shí)現(xiàn)了數(shù)據(jù)采集App來(lái)進(jìn)行數(shù)據(jù)采集。數(shù)據(jù)采集App會(huì)以后臺(tái)進(jìn)程的形式使用 0.1 HZ 的頻率進(jìn)行數(shù)據(jù)收集,這樣一個(gè)相對(duì)較低的頻率使得數(shù)據(jù)采集App不會(huì)嚴(yán)重影響用戶手機(jī)的續(xù)航能力。數(shù)據(jù)標(biāo)注方面,一部分研究者采用的是用戶開(kāi)始活動(dòng)時(shí)點(diǎn)擊活動(dòng)開(kāi)始,結(jié)束是點(diǎn)擊活動(dòng)結(jié)束,用戶點(diǎn)擊按鈕的時(shí)間即為活動(dòng)的起始時(shí)間。實(shí)際使用過(guò)程中,本文發(fā)現(xiàn),這種標(biāo)注方式往往因?yàn)橛脩敉洏?biāo)注活動(dòng)結(jié)束而導(dǎo)致數(shù)據(jù)產(chǎn)生錯(cuò)誤。因此,本文采用了用戶在自己方便的時(shí)刻進(jìn)行標(biāo)注的方式,標(biāo)注的時(shí)候用戶可以選擇活動(dòng)的起始時(shí)間,從而減少錯(cuò)誤標(biāo)簽的產(chǎn)生。大部分志愿者表示,這種標(biāo)注方式對(duì)用戶的正常生活干擾較小,友好性更強(qiáng)。
共7名志愿者參與了本次的數(shù)據(jù)采集,身份既有老師也有學(xué)生。他們有著不同的生活習(xí)慣和活動(dòng)地點(diǎn),從而保證了數(shù)據(jù)的多樣性。每名志愿者收集了為期3周的活動(dòng)數(shù)據(jù),最后一共收集了130天的活動(dòng)數(shù)據(jù),共3120個(gè)小時(shí),涉及活動(dòng)標(biāo)簽743個(gè),平均每個(gè)志愿者106個(gè)活動(dòng)標(biāo)簽。
本文在嘗試了眾多分類模型后,發(fā)現(xiàn)SVM和決策樹(shù)是眾多分類模型中性能最好的兩個(gè)。因此本文采用了濾波提取ROA和SVM(Filter+SVM)、濾波提取ROA和決策樹(shù)(Filter+DT)、聚類提取ROA和SVM(Cluster+SVM)以及聚類提取ROA和決策樹(shù)(Cluster+DT)4種模型進(jìn)行比較。本文使用數(shù)據(jù)集中前兩周的數(shù)據(jù)作為訓(xùn)練集,分別對(duì)4種模型進(jìn)行了訓(xùn)練,使用最后一周的數(shù)據(jù)作為預(yù)測(cè)集,得到了模型預(yù)測(cè)的結(jié)果。根據(jù)模型預(yù)測(cè)結(jié)果和數(shù)據(jù)采集時(shí)用戶真實(shí)的活動(dòng)標(biāo)簽,計(jì)算了4個(gè)模型對(duì)各種活動(dòng)識(shí)別的準(zhǔn)確率、召回率以及F-score,如圖3所示。圖3中對(duì)于學(xué)習(xí)和睡覺(jué)兩種活動(dòng)而言,濾波算法和聚類算法具有接近的F-score,對(duì)于吃飯、運(yùn)動(dòng)、家務(wù)和交通而言,濾波算法的F-score大于聚類算法的F-score。因?yàn)橛脩舨町愋院偷攸c(diǎn)差異性會(huì)影響聚類算法參數(shù)的選擇,導(dǎo)致部分?jǐn)?shù)據(jù)被劃分到錯(cuò)誤的ROA導(dǎo)致活動(dòng)識(shí)別產(chǎn)生錯(cuò)誤。而濾波ROA提取算法參數(shù)受用戶差異性和地點(diǎn)差異性影響較小,故取得了相對(duì)較高的F-score。
圖3 兩種ROA提取算法的對(duì)比
因?yàn)榛跒V波的ROA提取算法具有較高的準(zhǔn)確性,因此本文采用了濾波ROA提取算法和SVM(Filter+SVM)、濾波ROA提取算法和決策樹(shù)(Filter+DT)、不提取ROA的SVM(SVM)、不提取ROA的決策樹(shù)(DT)這4種模型進(jìn)行比較,同樣采用前兩周的數(shù)據(jù)作為訓(xùn)練集,后一周的數(shù)據(jù)作為預(yù)測(cè)集,計(jì)算了4種模型的準(zhǔn)確率、召回率和F-score。如圖4 所示。圖4中,無(wú)論針對(duì)什么活動(dòng),加上ROA提取算法的模型F-score都大于不提取ROA直接分類的模型。極端的,對(duì)于睡覺(jué)這種活動(dòng),不提取ROA的情況下F-score為0,而提取ROA后,F(xiàn)-score超過(guò)90%。這表明ROA提取算法對(duì)于提高活動(dòng)識(shí)別準(zhǔn)確性具有明顯作用。
圖4 有ROA提取算法與無(wú)ROA提取算法的對(duì)比
表1中,列出了不同模型對(duì)各項(xiàng)活動(dòng)識(shí)別的F-score,其中“所有”代表所有活動(dòng)的F-score。從模型角度而言,F(xiàn)ilter+SVM和Cluster+SVM的結(jié)果較好,并且相對(duì)接近,兩種模型在識(shí)別不同的活動(dòng)時(shí)各有優(yōu)劣,但Filter+SVM的訓(xùn)練速度更快。Filter+DT的效果次于前兩者,差別不大。SVM和DT與其它有ROA提取算法的模型效果相差甚多,再次驗(yàn)證了ROA提取算法有效提高了活動(dòng)識(shí)別準(zhǔn)確性。從活動(dòng)的角度而言,學(xué)習(xí)、睡覺(jué)、運(yùn)動(dòng)、吃飯4種活動(dòng)F-score較高,而家務(wù)、交通這兩種活動(dòng)F-score較低。本文對(duì)家務(wù)的定義是在家里發(fā)生的除了學(xué)習(xí)、睡覺(jué)、吃飯、運(yùn)動(dòng)以外的活動(dòng)。由于家務(wù)的定義相對(duì)寬泛,并且用戶在家里并不會(huì)隨身攜帶手機(jī),而經(jīng)常將手機(jī)放置在某個(gè)地方從事家務(wù),因此,對(duì)家務(wù)的識(shí)別率較低。借助室內(nèi)定位技術(shù)和智能家居技術(shù)輔助識(shí)別家務(wù)將可能提高家務(wù)的識(shí)別率。對(duì)于交通而言,其錯(cuò)誤的識(shí)別一般發(fā)生在用戶離開(kāi)座位但尚未離開(kāi)建筑物或用戶進(jìn)入建筑區(qū)但尚未達(dá)到自己座位的時(shí)候。比如用戶學(xué)習(xí)后離開(kāi)建筑物步行一段時(shí)間進(jìn)入餐廳吃飯,模型將離開(kāi)座位但尚未離開(kāi)教學(xué)樓和進(jìn)入餐廳尚未到達(dá)座位的數(shù)據(jù)分別識(shí)別為學(xué)習(xí)和吃飯,而用戶往往將這部分?jǐn)?shù)據(jù)標(biāo)記為交通。由于實(shí)際生活中,活動(dòng)的切換并沒(méi)有嚴(yán)格的界限,因此,模型對(duì)這部分?jǐn)?shù)據(jù)的預(yù)測(cè)并不能認(rèn)為是錯(cuò)誤的,并且對(duì)實(shí)際的應(yīng)用也不會(huì)產(chǎn)生太大的影響。因此,本文認(rèn)為模型在這種情況下產(chǎn)生的誤差是可以接受的。
表1 不同模型對(duì)各種活動(dòng)識(shí)別的F-score
為了解決移動(dòng)場(chǎng)景中的復(fù)雜活動(dòng)識(shí)別問(wèn)題,本文提出了一種基于ROA的復(fù)雜活動(dòng)識(shí)別方法。該方法利用了時(shí)空軌跡對(duì)復(fù)雜活動(dòng)的過(guò)濾作用,從數(shù)據(jù)中提取ROA,使得每個(gè)ROA中復(fù)雜活動(dòng)種類相對(duì)較少,構(gòu)成相對(duì)簡(jiǎn)單,規(guī)律性較強(qiáng)。在此基礎(chǔ)上,該方法在不同的ROA上,可以使用不同分類模型對(duì)復(fù)雜活動(dòng)進(jìn)行區(qū)分,充分發(fā)揮不同分類模型在不同場(chǎng)景下的長(zhǎng)處,大大提高了模型的魯棒性。最后,本文基于現(xiàn)實(shí)生活中收集的數(shù)據(jù)進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,本文提出的基于ROA復(fù)雜活動(dòng)識(shí)別方法可以明顯提高復(fù)雜活動(dòng)識(shí)別的準(zhǔn)確率。
下一步,我們將從兩個(gè)方面繼續(xù)我們的工作,首先我們將考慮當(dāng)用戶到達(dá)一個(gè)新的位置,在沒(méi)有有效歷史數(shù)據(jù)的情況下怎樣提高活動(dòng)識(shí)別的準(zhǔn)確性。進(jìn)一步的,我們將考慮活動(dòng)模式對(duì)活動(dòng)識(shí)別的重要作用,用戶活動(dòng)一般具有較強(qiáng)的規(guī)律性和聯(lián)系性,充分考慮活動(dòng)模式將有助于提高用戶活動(dòng)識(shí)別的準(zhǔn)確性。