• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于GRU 神經(jīng)網(wǎng)絡(luò)的智能家居用戶行為識別方法

      2020-12-25 03:44:56高建清陳星娥
      莆田學(xué)院學(xué)報 2020年5期
      關(guān)鍵詞:智能家居預(yù)處理神經(jīng)網(wǎng)絡(luò)

      高建清, 陳星娥

      (福建江夏學(xué)院 電子信息科學(xué)學(xué)院, 福建 福州 350108)

      0 引言

      隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展, 各種智能產(chǎn)品在家庭環(huán)境中得到廣泛應(yīng)用。 在智能家居中, 通過非視覺傳感器而不是攝像頭來采集數(shù)據(jù)和識別用戶的行為, 有助于消除用戶隱私方面的顧慮, 也不受光線條件的影響。 而人口老齡化也是當(dāng)前社會面臨的問題, 提高智能家居環(huán)境中的用戶行為識別的效率和準(zhǔn)確性, 可以提升老年人的用戶體驗, 減少護(hù)理成本[1-4]。

      基于傳感器的用戶行為識別主要有數(shù)據(jù)驅(qū)動和知識驅(qū)動兩種方法[5]。 常見的數(shù)據(jù)驅(qū)動方法包括樸素貝葉斯( Naive Bayes)、 支持向量機(jī)(SVM)、 隱馬爾可夫模型(HMM)、 條件隨機(jī)場(CRF)以及神經(jīng)網(wǎng)絡(luò)(Neural Network) 等。 鞏莉提出了一種基于改進(jìn)的支持向量機(jī)模型( CSSVM)的日常行為識別算法, 比單獨核函數(shù)的性能更好[6]。 仝鈺采用了基于特征合并的條件隨機(jī)場行為識別方法, 提高了模型訓(xùn)練效率和行為識別的準(zhǔn)確性[3]。 包曉安等提出了一種以基于長短期記憶網(wǎng)絡(luò)(LSTM) 改進(jìn)的遞歸神經(jīng)網(wǎng)絡(luò)模型, 預(yù)測準(zhǔn)確度高于誤差反向傳播神經(jīng)網(wǎng)絡(luò)(BP)模型與遞歸神經(jīng)網(wǎng)絡(luò)(RNN)模型[7]。 薛銘龍等提出一種引入懲罰項的隨機(jī)森林算法, 具有更高的分類精度與噪聲魯棒性[8]。 數(shù)據(jù)驅(qū)動方法能夠處理不確定性和時間信息, 但需要大量數(shù)據(jù)集進(jìn)行訓(xùn)練和學(xué)習(xí)。 知識驅(qū)動方法通過構(gòu)建日常行為領(lǐng)域知識庫, 采用本體或者規(guī)則的形式進(jìn)行行為建模和推理。 Chen 等在領(lǐng)域?qū)<蚁闰炛R的基礎(chǔ)上, 使用基于邏輯的方法進(jìn)行行為識別[9]。 蘇雷等改進(jìn)了馬爾可夫邏輯網(wǎng)絡(luò)中勢函數(shù)的計算方法, 對于包含錯誤的數(shù)據(jù)集也能達(dá)到較高的準(zhǔn)確率[10]。 知識驅(qū)動方法易于理解和使用, 但是不能處理不確定性和時間信息。

      近年來, 在計算機(jī)視覺、 音頻和語音識別等應(yīng)用中, 深度學(xué)習(xí)技術(shù)已經(jīng)超過了其他機(jī)器學(xué)習(xí)算法[11]。 深度學(xué)習(xí)是神經(jīng)網(wǎng)絡(luò)方法的總稱, 它基于對原始數(shù)據(jù)的學(xué)習(xí)表示, 包含多個隱藏層。 針對序列化的數(shù)據(jù)常用的神經(jīng)網(wǎng)絡(luò)有RNN[5]、 LSTM 以及門控循環(huán)單元(GRU)[12], GRU 比LSTM 結(jié)構(gòu)更簡單, 訓(xùn)練速度更快, 因此本文提出一種基于GRU的神經(jīng)網(wǎng)絡(luò)模型來進(jìn)行用戶行為的識別。

      1 GRU 神經(jīng)網(wǎng)絡(luò)

      新一代的循環(huán)神經(jīng)網(wǎng)絡(luò)GRU, 是RNN 體系結(jié)構(gòu)的一種變體, 使用門控制機(jī)制來控制和管理神經(jīng)網(wǎng)絡(luò)中細(xì)胞之間的信息流, 解決了傳統(tǒng)RNN 的梯度消失或者爆炸問題。 GRU 的結(jié)構(gòu)允許網(wǎng)絡(luò)自適應(yīng)地從大量數(shù)據(jù)序列中捕獲依賴項,而不丟棄序列早期部分的信息。 GRU 與LSTM很相似, 但是去掉了細(xì)胞狀態(tài), 直接使用隱藏狀態(tài)來進(jìn)行信息的傳遞。 GRU 只包含重置門和更新門, 其單元網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。

      圖1 GRU 單元網(wǎng)絡(luò)結(jié)構(gòu)

      重置門用于決定遺忘先前信息的程度, 如圖1 中的rt, rt向前傳播的計算如式(1) 所示:

      式(1)中: σ 為激活函數(shù), 例如sigmoid 函數(shù), 用來將值壓縮到0 和1 之間, 為0 則表示這部分信息會被遺忘, 而為1 則表示信息會被保存下來;ht-1是前一步的隱藏狀態(tài)值, xt為當(dāng)前的輸入數(shù)據(jù), Wr為重置門的連接參數(shù)矩陣。

      更新門用于決定要忘記哪些信息和哪些新信息需要被保留, 如圖1 中的zt, zt向前傳播的計算如式(2)所示:

      式(2)中, Wz為更新門的連接參數(shù)矩陣。

      候選集ht?的計算方法如式(3) 所示:

      式(3)中, Wh為候選集連接參數(shù)矩陣, tanh 函數(shù)用來將值始終限制在-1 和1 之間。

      下一步的隱藏狀態(tài)值ht的計算方法如式(4)所示:

      式(5)中, Wo為輸出連接參數(shù)矩陣。

      2 智能家居用戶行為識別方法

      2.1 智能家居行為識別步驟

      智能家居用戶行為識別過程一般包括數(shù)據(jù)采集、 數(shù)據(jù)預(yù)處理、 模型建立與訓(xùn)練、 行為識別5個步驟。 數(shù)據(jù)集可以通過傳感器設(shè)備進(jìn)行采集,也可以采用公開的數(shù)據(jù)集。 原始數(shù)據(jù)需要經(jīng)過預(yù)處理, 解決數(shù)據(jù)冗余、 缺失、 格式非法等問題。此外, 由于使用模型的不同, 提取的數(shù)據(jù)特征也會不相同, 數(shù)據(jù)也必須經(jīng)過處理后才能輸入模型。 對于數(shù)據(jù)序列的分割處理, 常見的方法有基于行為的窗口、 基于時間的窗口以及基于傳感器的窗口[6], 本文采用了基于時間的窗口分割方法。

      2.2 數(shù)據(jù)集選取

      美國華盛頓大學(xué)的CASAS 數(shù)據(jù)集[13]( http:∥casas.wsu.edu / datasets/)是一種公開的基于傳感器的智能家居用戶行為數(shù)據(jù)集, 本文選取其中的Milan 數(shù)據(jù)集作為實驗數(shù)據(jù)。 該數(shù)據(jù)集記錄了一位女性志愿者和一條狗在公寓里面3 個月期間的日常行為傳感器數(shù)據(jù), 其中包含門、 運動以及溫度3 種類型的傳感器共33 個, 包含Master-Bedroom-Activity、 Bed-to-Toilet、 Sleep、 Morning-Meds、 Watch- TV、 Kitchen- Activity、 Chores、Leave- Home、 Read、 Guest- Bathroom、 Master-Bathroom、 Desk-Activity、 Eve- Meds、 Meditate 以及Dining-Rm-Activity 共15 種行為, 其數(shù)據(jù)格式如圖2 所示。

      圖2 Milan 數(shù)據(jù)集格式

      2.3 行為數(shù)據(jù)預(yù)處理

      數(shù)據(jù)集中的行為標(biāo)注為文本形式不利于分類處理, 因此對所有的行為依次采用0 到14 進(jìn)行編號。 每一種行為的標(biāo)注有開始和結(jié)束時間, 而行為識別重點關(guān)注的是行為何時開始執(zhí)行。 數(shù)據(jù)中所有包含“begin” 的行為標(biāo)注的時間點就是行為的觸發(fā)時刻, 提取出所有這些時刻的行為數(shù)據(jù), 并把行為編號作為樣本的標(biāo)簽值。

      2.4 傳感器數(shù)據(jù)預(yù)處理

      數(shù)據(jù)集中出現(xiàn)了3 種異常的傳感器數(shù)據(jù)“ON0” “ON`” “O”, 需要全部替換為“ON”。門和運動的傳感器記錄數(shù)據(jù)包含打開狀態(tài)的“ON” 和 “ OPEN”、 關(guān)閉狀態(tài)的 “ OFF” 和“CLOSE”, 全部轉(zhuǎn)為數(shù)值表示, 打開狀態(tài)用1表示, 關(guān)閉狀態(tài)用0 表示。 而溫度傳感器的數(shù)據(jù)是實際溫度值, 需要進(jìn)行歸一化處理, 采用式(6)進(jìn)行計算:

      式(6)中: t 為當(dāng)前時間的溫度值, tmax和tmin分別為數(shù)據(jù)集中的最大溫度值和最小溫度值。 換算后的溫度值再與閾值0.5 比較, 大于閾值的為1,否則為0。

      接著, 對于兩個行為之間的各個時間點的傳感器數(shù)據(jù)進(jìn)行合并處理, 以33 維的特征值來表示, 每個特征值為1 或者0。 合并后只保留行為觸發(fā)時刻的傳感器值, 與行為標(biāo)簽一一對應(yīng), 而其他時刻只做傳感器值的更新。 經(jīng)過處理后的某個時刻的傳感器數(shù)據(jù)用xt表示, 則xt={s0, s1,…, sm} , 其中0 ≤m ≤32, sm的值為1 或者0。樣本數(shù)據(jù)用at表示, 則at={xt, yt} , 其中0 ≤yt≤14, 表示該時刻對應(yīng)的行為編號。

      2.5 基于GRU 的行為識別神經(jīng)網(wǎng)絡(luò)模型

      基于GRU 的行為識別神經(jīng)網(wǎng)絡(luò)模型包含了2 層的GRU 神經(jīng)網(wǎng)絡(luò), 128 個隱藏節(jié)點, 以及一個全連接層, 如圖3 所示。 GRU 神經(jīng)網(wǎng)絡(luò)對序列數(shù)據(jù)進(jìn)行預(yù)測時, 可以設(shè)定序列數(shù)據(jù)的窗口大小, 本文選取的窗口大小為3。 如果用Xt表示當(dāng)前的輸入數(shù)據(jù), Yt表示當(dāng)前期望輸出, 則Xt={at-2, at-1, at}, Yt={yt} 。 因此, 輸入層的數(shù)據(jù)為1*3*33 的三維張量, 也就是每批一個樣本, 樣本里面有3 個時間點的33 維的傳感器特征值。 GRU 神經(jīng)網(wǎng)絡(luò)輸出的隱藏狀態(tài)的值作為下一步的部分輸入數(shù)據(jù), 實現(xiàn)網(wǎng)絡(luò)的記憶功能,而當(dāng)前的網(wǎng)絡(luò)輸出結(jié)果通過Softmax 函數(shù)實現(xiàn)離散化概率分布, 再通過全連接層輸出1*15 的二維張量。 輸出二維張量中的第二維的15 個數(shù)值,表示每一種行為的預(yù)測概率, 最大值的下標(biāo)即為預(yù)測結(jié)果, 也就是對應(yīng)行為的編號。

      圖3 基于GRU 的行為識別神經(jīng)網(wǎng)絡(luò)模型

      因為是多分類輸出, 所以網(wǎng)絡(luò)模型預(yù)測效果的衡量采用了交叉熵?fù)p失函數(shù), 該網(wǎng)絡(luò)模型訓(xùn)練2 000 步的loss 值的變化情況如圖4 所示, 可見網(wǎng)絡(luò)模型的loss 值在500 步左右就能很快地下降到較低點, 對于訓(xùn)練集已經(jīng)能夠達(dá)到較好的預(yù)測結(jié)果。 網(wǎng)絡(luò)的梯度更新規(guī)則采用了RMSProp 優(yōu)化器, 克服在更新中擺動幅度過大的問題, 進(jìn)一步加快收斂速度。

      圖4 loss 值變化曲線圖

      3 實驗與結(jié)果分析

      3.1 數(shù)據(jù)選取與評估方法

      通過對Milan 數(shù)據(jù)集的預(yù)處理, 并去掉剛開始時部分傳感器未有值的數(shù)據(jù), 得到22 278 個樣本數(shù)據(jù)。 按照時間順序選取其中的20%作為測試數(shù)據(jù), 剩下的80%作為訓(xùn)練數(shù)據(jù), 測試和訓(xùn)練的樣本個數(shù)分別為455 和1 823。

      為了測試行為識別的效果, 本文采用Precision、 Recall、 F-Measure 和Accuracy 等4 個指標(biāo)來衡量, 各個指標(biāo)的計算方法如下:

      式(6) ~(9) 中: TP 代表正確識別的個數(shù)、 FP代表錯誤識別的個數(shù)、 FN 代表沒有識別出的個數(shù), Total 為總的樣本數(shù)。 Precision、 Recall 和FMeasure3 個指標(biāo)是先對每一個行為的識別結(jié)果進(jìn)行計算, 然后再按照每一個行為的樣本比例進(jìn)行加權(quán)平均, 而Accuracy 指標(biāo)是對所有行為的識別結(jié)果進(jìn)行計算。

      3.2 結(jié)果分析

      實驗環(huán)境采用python 開發(fā)語言, 結(jié)合pytorch神經(jīng)網(wǎng)絡(luò)框架來實現(xiàn)基于GRU 的行為識別神經(jīng)網(wǎng)絡(luò)模型算法( 本文算法) 和RNN 算法, 使用Sklearn 機(jī)器學(xué)習(xí)工具包來實現(xiàn)Naive Bayes 與SVM 算法。 GRU 和RNN 算法的輸入窗口大小為3, 輸入特征維數(shù)input- size 為33, 批次大小batch-size 為1, dropout 為0.2, 隱層單元個數(shù)hidden-size 為128, 層數(shù)num- layers 為2, 輸入大小output- size 為15, 學(xué)習(xí)率learn- rate 為0.0003。 Naive Bayes 算法采用多項式模型, 參數(shù)alpha 設(shè)置為1.0。 SVM 算法采用高斯核函數(shù)和一對多策略, C 值為1.0, gamma 值為0.5。

      4 種算法對各種行為識別的F-Measure 值如圖5 所示, Naive Bayes 有5 種行為未能識別,SVM 有3 種行為未能識別, 而RNN 算法和GRU只有兩種行為不能識別。 本文算法有7 種行為的識別效果優(yōu)于其他方法, 而RNN 算法和SVM 算法都只有3 種行為的識別效果比其他方法好。 4種算法的平均識別效果如表 1 所示, 從Precision、 Recall、 F-Measure 和Accuracy 等4 個衡量指標(biāo)來看, 本文算法都比其他算法更好。

      表1 四種方法的識別效果對比

      圖5 4 種方法的各種行為識別的F-Measure 值對比

      4 結(jié)語

      基于GRU 的行為識別神經(jīng)網(wǎng)絡(luò)模型能夠記憶具有時序特征的傳感器數(shù)據(jù), 通過對預(yù)處理后的智能家居行為數(shù)據(jù)集的對比實驗, 本文算法的識別效果優(yōu)于Naive Bayes、 SVM 以及RNN 算法。采用神經(jīng)網(wǎng)絡(luò)方法可以不用通過先驗知識去分析和提取數(shù)據(jù)特征, 適應(yīng)性更強(qiáng), 但是也存在訓(xùn)練時間較長的問題。 本文算法和RNN 訓(xùn)練2000 步的用時分別為7 h 和9 h 左右, 而Naive Bayes 與SVM 在1 s 以內(nèi)就能完成。 此外, 本文只研究了智能家居環(huán)境中的單用戶行為的識別方法, 下一步將繼續(xù)改進(jìn)模型, 進(jìn)行多用戶行為以及異常行為等方面的識別研究。

      猜你喜歡
      智能家居預(yù)處理神經(jīng)網(wǎng)絡(luò)
      神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      基于Zigbee的無線通信技術(shù)在智能家居中的應(yīng)用
      電子制作(2018年1期)2018-04-04 01:48:28
      基于預(yù)處理MUSIC算法的分布式陣列DOA估計
      淺談PLC在預(yù)處理生產(chǎn)線自動化改造中的應(yīng)用
      關(guān)于智能家居真正需求的探討
      基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
      復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
      絡(luò)合萃取法預(yù)處理H酸廢水
      基于自適應(yīng)預(yù)處理的改進(jìn)CPF-GMRES算法
      基于支持向量機(jī)回歸和RBF神經(jīng)網(wǎng)絡(luò)的PID整定
      青冈县| 新乡市| 永和县| 民县| 嘉禾县| 周至县| 竹北市| 华池县| 图木舒克市| 兴国县| 盐源县| 河北区| 通化市| 浮山县| 德令哈市| 太仆寺旗| 乐清市| 神池县| 鹤岗市| 江源县| 阳高县| 通州市| 浮山县| 资源县| 横峰县| 海盐县| 侯马市| 砚山县| 平顶山市| 常州市| 乌鲁木齐市| 新野县| 顺义区| 年辖:市辖区| 河源市| 肇源县| 开阳县| 阿拉善左旗| 沙雅县| 湖州市| 博爱县|