葉 貴,楊 洋,張林靜,朱 敏
(安徽警官職業(yè)學(xué)院 信息管理系,合肥 230031 )
根據(jù)第七次全國人口普查的數(shù)據(jù)可以發(fā)現(xiàn),我國60歲及以上的老年人口為26 402萬人,占18.70%,且65歲及以上老年人口為19 064萬人,占總?cè)丝诘?3.50%。應(yīng)對我國老年化程度進(jìn)一步加深,養(yǎng)老問題成為社會研究的熱點[1]。當(dāng)前養(yǎng)老院的老人體征健康信息通過傳統(tǒng)的方式進(jìn)行測量,如血壓,心率等。為解決養(yǎng)老院的老年人體征監(jiān)測問題,實現(xiàn)一個便攜式、實時性的體征健康監(jiān)測系統(tǒng)是有必要的[2-4]。國內(nèi)外也有相當(dāng)多的測試系統(tǒng),例如飛利浦公司對老年人的心血管慢病管理提供一套便攜式移動醫(yī)療設(shè)備,可以在家檢測到血壓、心律等身體體征。美國的霍尼韋爾提出的ILSA(Independent Lifestyle Assistant)系統(tǒng),采用無線傳感器技術(shù)可以幫助老年人的日常生活。
為了監(jiān)測和預(yù)防老年人的身體健康,設(shè)計一種可以實時監(jiān)測和算法預(yù)測的便攜式的無線網(wǎng)絡(luò)傳感智能系統(tǒng)。該系統(tǒng)是基于ZigBee無線傳感器網(wǎng)絡(luò)技術(shù)采集和傳輸老年人的體征數(shù)據(jù),同時將數(shù)據(jù)傳送到云端服務(wù)器進(jìn)行算法分析和預(yù)測[5-7]。從而實現(xiàn)對養(yǎng)老院的老年人的日常體征數(shù)據(jù)的全程監(jiān)測和處理分析,為保障老年人的突發(fā)性疾病的發(fā)生和預(yù)防提供了一種解決思路。
對養(yǎng)老院的老年人進(jìn)行數(shù)據(jù)采集、傳輸、分析需要一個可靠性好、攜帶便捷、實時性高以及網(wǎng)絡(luò)傳輸可靠的完整系統(tǒng)。該系統(tǒng)針對主要是進(jìn)行終端傳感器的數(shù)據(jù)采集、無線網(wǎng)絡(luò)節(jié)點的數(shù)據(jù)傳輸和云端的算法分析3個部分組成。如圖1是系統(tǒng)的結(jié)構(gòu)示意圖。
圖1 系統(tǒng)結(jié)構(gòu)示意圖
老年人需要攜帶便攜式的終端設(shè)備以及各類傳感器進(jìn)行其體征數(shù)據(jù)的采集,將采集得到的體征數(shù)據(jù)通過無線網(wǎng)絡(luò)通信技術(shù)將體征數(shù)據(jù)傳輸?shù)椒?wù)器端,并在云端服務(wù)器進(jìn)行相關(guān)算法分析和監(jiān)測,最終得到相應(yīng)的分析結(jié)果及時反饋給用戶。通過該系統(tǒng)可以實現(xiàn)對養(yǎng)老院的老年人的體征健康狀況進(jìn)行實時監(jiān)測,有效地預(yù)防突發(fā)疾病的發(fā)生,保證了老年人的身體健康。
本系統(tǒng)是采用ZigBee技術(shù)進(jìn)行無線網(wǎng)絡(luò)構(gòu)建,其具有的特點如下。
網(wǎng)絡(luò)的可靠性:ZigBee的無線通信技術(shù)是采用了IEEE802.15.4 的通信協(xié)議,使用2.4 G頻率,該網(wǎng)絡(luò)通信技術(shù)具備高可靠性[8-10]。
傳輸距離:相對于常用的無線通信技術(shù)藍(lán)牙和wifi,其具備更遠(yuǎn)的通信距離,并且還具備多個節(jié)點之間進(jìn)行路由傳輸功能,可以使得傳輸距離更遠(yuǎn)。
低功耗:無線節(jié)點會每隔一段時間自動監(jiān)測收發(fā)狀態(tài),如果監(jiān)測沒有收發(fā)請求任務(wù),就會進(jìn)入休眠狀態(tài)。
組網(wǎng)方式靈活:在組網(wǎng)過程中,ZigBee無線通信技術(shù)的組網(wǎng)方式具有多樣形式,其具備樹狀拓?fù)浣Y(jié)構(gòu)、星狀拓?fù)浣Y(jié)構(gòu)以及網(wǎng)狀拓?fù)浣Y(jié)構(gòu)。
網(wǎng)絡(luò)魯棒性高:整個自組網(wǎng)絡(luò)中,如果某一個節(jié)點損壞或者斷電,其網(wǎng)絡(luò)會具備自動修復(fù)功能,與損壞節(jié)點連接的路有節(jié)點會與其它的路有節(jié)點進(jìn)行組網(wǎng)連接。
為滿足基于ZigBee的養(yǎng)老院老人體征監(jiān)測系統(tǒng)的軟硬件測試需求,系統(tǒng)設(shè)計需實現(xiàn)以下幾點目標(biāo):
1)實時性:監(jiān)測老年人的身體體征信息,需要被實時的采集數(shù)據(jù)并處理,并通過算法分析對以往的數(shù)據(jù)和當(dāng)前的數(shù)據(jù)進(jìn)行疾病的預(yù)測,從而推斷出當(dāng)前發(fā)生疾病的概率。
2)實用性:本系體征數(shù)據(jù)的實時采集,為了獲取數(shù)據(jù)需要設(shè)計一套便于攜帶的采集設(shè)備。同時為了監(jiān)測養(yǎng)老院所有病人的信息,需要一套可靠性高、穩(wěn)定性好的無線傳感器網(wǎng)絡(luò)系統(tǒng)。并且可以對數(shù)據(jù)進(jìn)行算法分析,得到老年人的健康狀況。
3)魯棒性:由于需要實時采集大規(guī)模的數(shù)據(jù),因此對整個無線通信網(wǎng)絡(luò)的魯棒性要求極高。因此,對采集到的數(shù)據(jù),在終端設(shè)備通過基本的數(shù)據(jù)處理和分析采集一部分?jǐn)?shù)據(jù)進(jìn)行傳輸?shù)皆贫朔?wù)器進(jìn)行分析。既保證了網(wǎng)絡(luò)傳輸?shù)膲毫?,又對?shù)據(jù)進(jìn)行了預(yù)處理,保證了數(shù)據(jù)的有效性。
為了在養(yǎng)老院監(jiān)測到老年人的體征信息,需要通過各種體征傳感器對數(shù)據(jù)的采集、傳輸、算法分析預(yù)測。
1)實時體征數(shù)據(jù)的采集,這里主要是采集心電傳感器ECG、呼吸頻率傳感器、體溫傳感器和心率傳感器。
2)數(shù)據(jù)傳輸,通過對采集到的數(shù)據(jù)進(jìn)行處理得到有效的數(shù)據(jù)通過ZigBee無線通信技術(shù)將數(shù)據(jù)進(jìn)行上傳到云端服務(wù)器中。
3)算法分析與預(yù)測,通過對采集到的數(shù)據(jù)進(jìn)行算法設(shè)計,這里主要采用了人工神經(jīng)網(wǎng)絡(luò)Transformer為基礎(chǔ)的算法模型,對數(shù)據(jù)進(jìn)行預(yù)測[11-13]。
該系統(tǒng)將采用模塊化的設(shè)計思路進(jìn)行設(shè)計,從功能上分主要包括3個模塊,分別是傳感器的數(shù)據(jù)采集模塊、數(shù)據(jù)的無線網(wǎng)絡(luò)傳輸模塊以及數(shù)據(jù)處理算法模塊,每一種模塊的介紹如下。
1)數(shù)據(jù)采集模塊:數(shù)據(jù)采集通過老年人穿戴各種體征傳感器,心電和呼吸頻率傳感器每一個傳感器都與無線終端節(jié)點連接和控制,從而實現(xiàn)數(shù)據(jù)采集、處理和傳輸?shù)墓δ堋?/p>
2)無線網(wǎng)絡(luò)傳輸模塊:數(shù)據(jù)采集后需要將數(shù)據(jù)數(shù)據(jù)傳輸?shù)皆贫朔?wù)器,因此采用ZigBee無線通信技術(shù),使用德州儀器生產(chǎn)的CC2530芯片作為微控制器,并采用S-tack通信協(xié)議進(jìn)行管理和控制[14-15],進(jìn)行網(wǎng)絡(luò)的構(gòu)建和傳輸。
3)算法分析模塊:算法分析是對采集到的數(shù)據(jù)進(jìn)行監(jiān)測的同時,并對當(dāng)前的數(shù)據(jù)進(jìn)行預(yù)測潛在的突發(fā)疾病的發(fā)生。這里的算法采用了人工神經(jīng)網(wǎng)絡(luò)的transformer為算法模型基礎(chǔ)來對時間序列的數(shù)據(jù)進(jìn)行有效的預(yù)測。
該系統(tǒng)采用的是ZigBee無線通信技術(shù)能夠保證系統(tǒng)的低功耗、可靠性高、組網(wǎng)方式靈活等。目前,物聯(lián)網(wǎng)領(lǐng)域中ZigBee技術(shù)被廣泛應(yīng)用,因此技術(shù)成熟,穩(wěn)定性好。 該系統(tǒng)使用的是美國TI公司的CC2530F256類型的芯片作為該系統(tǒng)的微控制器和通信功能的芯片。并且該芯片使用Z-Stack的通信協(xié)議棧為基礎(chǔ)進(jìn)行有效的開發(fā)[16-17]。
從芯片開發(fā)手冊可以看到CC2530F256是8-bit微控制器,其內(nèi)核是采用8051類型微控制器的單片機,并且擁有RAM存儲為8 kB和Flash存儲為256 kB的容量。同時還配合CC2592的射頻芯片的使用,可以使得具有更遠(yuǎn)的傳輸距離,具備功率放大的作用[18]。在該芯片的基礎(chǔ)上對外圍應(yīng)用電路進(jìn)行設(shè)計和開發(fā)。
如圖2所示,在CC2530芯片周圍設(shè)計的無線網(wǎng)絡(luò)節(jié)點的硬件示意圖,其中包括了微控制器芯片單元CC2530F256、電源電路、功率放大模塊的CC2592芯片模塊、時鐘電路、外圍擴(kuò)展輸入輸出引腳連接到傳感器等。
圖2 硬件設(shè)計示意圖
該硬件設(shè)計的設(shè)計是以CC2530作為微控制器,其進(jìn)行程序運行、控制、組網(wǎng)等功能。JTAG接口模塊是用于開發(fā)過程中代碼的debug調(diào)試過程。
圖3是硬件設(shè)計中各模塊的電路設(shè)計原理圖,分別是電源模塊、JTAG接口以及時鐘電路。
圖3 各模塊的硬件設(shè)計電路原理圖
電源電路是采用了穩(wěn)壓芯片HT7322芯片,并采用了兩個10 μF的電容進(jìn)行電源濾波。該穩(wěn)壓芯片的輸入是電源,將電壓穩(wěn)壓到系統(tǒng)需要的穩(wěn)定電壓3.3 V,其輸出電流可以高達(dá)300 mA,能夠滿足整個系統(tǒng)負(fù)載的正常使用。
對于JTAG接口是電路設(shè)計,參考CC2530芯片手冊,該芯片的GPIO端口P2.1與P2.2端口和復(fù)位端口以及電源端口組成的調(diào)試接口,方便開發(fā)人員在開發(fā)過程中debug使用。
時鐘電路的設(shè)計是微控制器CC2530芯片的外圍電路的重要組成部分,根據(jù)該芯片的手冊需要兩個不同的晶振頻率的時鐘電路,分別是32 MHz和32.768 KHz兩種類型的晶振,兩種晶振分別使用兩個12 pF和22 pF的電容,從而構(gòu)成振蕩電路。
傳感器模型是心電傳感器、呼吸傳感器、體溫傳感器和心率傳感器。電源電路是提供給微控制器,以及功率放大心率和各種傳感器使用,不同的傳感器其工作電壓有所區(qū)別,因此電源電路設(shè)計過程中需要通過不同的穩(wěn)壓芯片對電壓進(jìn)行穩(wěn)壓到能夠正常使用的電壓。時鐘電路是通過晶振和電容的配合使用,給芯片按照某一頻率工作。
功率放大芯片的CC2592芯片是增加射頻鏈路的輸出功率,并且還可以低噪聲放大器來實現(xiàn)接收機的靈敏度。
圖2的硬件設(shè)計示意圖是終端設(shè)備的原理圖,整個網(wǎng)絡(luò)還包括中間的無線網(wǎng)絡(luò)節(jié)點和協(xié)調(diào)器節(jié)點。其中無線網(wǎng)絡(luò)節(jié)點和協(xié)調(diào)器節(jié)點原理圖是一樣的,不一樣的是不需要傳感器模塊。
在終端設(shè)備中,其需要連接各種傳感器模塊。該系統(tǒng)的體征數(shù)據(jù)包括了心電數(shù)據(jù)、呼吸頻率數(shù)據(jù)、體溫數(shù)據(jù)和心率數(shù)據(jù)。
因此每一種數(shù)據(jù)采集都需要對應(yīng)的傳感器。每一種傳感器的型號、正常工作電壓及特點如表1所示。
表1 各類傳感器信息
接下來對本系統(tǒng)所用到的數(shù)各類傳感器進(jìn)行具體介紹。
心電傳感器采用型號為AD8232,該傳感器對心臟生物電信號的采集,并采用雙極高通濾波器對噪聲消除,其工作的電壓為2.0~3.5 V之間。在系統(tǒng)中,其工作頻率為500 Hz的采樣頻率。
心率傳感器采用的型號為MAX30100,可以便攜式佩戴在手腕進(jìn)行心率測量,其工作電壓是3.0~5.0 V之間。在系統(tǒng)中,其工作采樣頻率為10 kHz。
測量體溫傳感器采用AD8494CRMZ型號,其可以測量溫度范圍是0~50 ℃,并且該傳感器精度高、引腳輸出靈活和對電壓過壓保護(hù)的功能,從而保障了安全性。在系統(tǒng)中,其工作是200 Hz的采樣頻率。
呼吸傳感器的型號為HKH-11B,其采用的是壓電式敏感器件可以采集人體呼吸時腹部產(chǎn)生的變化情況,經(jīng)過濾波、信號放大可以得到模擬信號的輸出,其輸出的電壓范圍是0.2~1.0 V。在系統(tǒng)中,其工作是50 kHz的采樣頻率。
整個無線通信網(wǎng)絡(luò)是通過各個節(jié)點構(gòu)建的,每一個節(jié)點都扮演著信息傳輸和數(shù)據(jù)采集的功能。數(shù)據(jù)傳輸是由終端節(jié)點,經(jīng)過路由器節(jié)點,最終都傳輸給協(xié)調(diào)器節(jié)點,有協(xié)調(diào)器接收到的數(shù)據(jù)傳到云端服務(wù)器。如圖4是整個網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。
圖4 系統(tǒng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)示意圖
系統(tǒng)使用無線通信技術(shù)ZigBee作為無線通信基礎(chǔ),再使用各類傳感器,對養(yǎng)老院老年人的體征信息進(jìn)行數(shù)據(jù)采集,并將獲取的數(shù)據(jù)通過無線傳感網(wǎng)傳送到云端服務(wù)器進(jìn)行數(shù)據(jù)的算法分析。系統(tǒng)的軟件設(shè)計主要包括兩部分,一部分是利用Z-stack協(xié)議棧完成數(shù)據(jù)傳輸,系統(tǒng)組網(wǎng)等功能。另一部分就是系統(tǒng)的應(yīng)用軟件,主要包括在機遇Z-Stack協(xié)議棧進(jìn)行應(yīng)用軟件開發(fā)[19-20],包括數(shù)據(jù)采集處理分析,以及包括服務(wù)器端的數(shù)據(jù)的算法分析。軟件的整個偽代碼算法如下所示。
PROCEDUER
Begin
Osal_init_system();
HW_INIT();
Sensor_API_Init();
While(true) do
Sample_APP_Func();
AF_DataRequest();
zb_SendDataRequest ();
End while;
End;
系統(tǒng)的無線同學(xué)與數(shù)據(jù)采集的軟件代碼的實現(xiàn),是采用Z-Stack協(xié)議棧的基礎(chǔ)上進(jìn)行開發(fā)實現(xiàn)各種功能。對協(xié)議棧的軟件硬件層、網(wǎng)絡(luò)層、任務(wù)管理層等各部分進(jìn)行初始化軟件的操作。
對每個傳感器的數(shù)據(jù)采集和數(shù)據(jù)處理等應(yīng)用程序的軟件設(shè)計部分是在Sample_APP_Func()函數(shù)中被調(diào)用和實現(xiàn)的應(yīng)用函數(shù)。將得到的數(shù)據(jù)進(jìn)行數(shù)據(jù)格式封裝,不同字段打包不同的數(shù)據(jù)類型,通過協(xié)議棧中AF_DataRequest()函數(shù)將封裝好的數(shù)據(jù)發(fā)送消息,并把將需要傳輸?shù)臄?shù)據(jù)報文發(fā)送出去,對于AF_DataRequest()函數(shù)在使用的時候是被zb_SendDataRequest()函數(shù)調(diào)用,將數(shù)據(jù)發(fā)送給指定目的地址的路由器節(jié)點,從而可以實現(xiàn)數(shù)據(jù)在整個多跳自組網(wǎng)絡(luò)中一跳一跳的傳輸數(shù)據(jù)報文。在該過程中,可以通過系統(tǒng)的定時器定時發(fā)送數(shù)據(jù)。這樣就可以實現(xiàn)從終端節(jié)點的各個傳感器采集數(shù)據(jù),并通過協(xié)議棧控制和管理數(shù)據(jù)的格式和發(fā)送到云端服務(wù)器中。
通過傳感器采集到的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析和算法模型的構(gòu)建,通過模型對輸入的數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)測。本文的算法模型是基于人工神經(jīng)網(wǎng)絡(luò)Transformer的結(jié)構(gòu)對時間序列的對元數(shù)據(jù)的融合,從而對數(shù)據(jù)進(jìn)行預(yù)測,可以預(yù)防和監(jiān)測老年人突發(fā)疾病。
人工神經(jīng)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,對時間序列的數(shù)據(jù)進(jìn)行預(yù)測,其中最為重要的一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)是Transformer結(jié)構(gòu)[21],如圖5是其結(jié)構(gòu)示意圖。其中transformer的編碼器和解碼器的網(wǎng)絡(luò)組成如圖6所示。
圖5 Transformer網(wǎng)絡(luò)結(jié)構(gòu)示意圖
圖6 Encoder與Decoder的網(wǎng)絡(luò)結(jié)構(gòu)
在編碼器和解碼器中,其中使用的多頭注意力機制模塊、Add與normalize(Layer Normalization)操作以及FFN(feed forward neural network)組成,對于解碼器還包括Masked多頭注意力模塊,是將掩蓋某些值,使其在更新參數(shù)時不產(chǎn)生影響。
每一個編碼器和解碼器中都包含多頭自注意力模塊。假設(shè)輸入信息為X=[x1,x2,…,xN]表示N個時間序列信息。則可以得到注意力的輸出如下式:
(1)
其中,輸入特征會生產(chǎn)3個向量,分別是查詢向量Q,鍵向量K,值向量V,防止通過點積過大添加一個尺度因子dk,其是矩陣QKT的維度。再通過多頭注意力機制,就是即將上式通過多個模塊組合而成,其計算公式如下式:
MultiHead(Q,K,V)=Concat(head1,head2,…,headi)WO
(2)
模型的輸入數(shù)據(jù)需要進(jìn)行embedding的操作,對采集得到的四類體征信息數(shù)據(jù)進(jìn)行預(yù)處理,得到輸入維度為16的embedding數(shù)據(jù),分別是四類傳感器采集的平均值、方差、最大值和最小值,且以均值為預(yù)測值,進(jìn)行模型預(yù)測。對輸入數(shù)據(jù)進(jìn)行歸一化操作,并對數(shù)據(jù)進(jìn)行Positional Encoding處理[25],使得模型可以利用序列特征,其中采用正余弦函數(shù)編碼,即保留了相對位置信息,又保留了絕對位置信息。
將embedding數(shù)據(jù)與位置編碼數(shù)據(jù)進(jìn)行相加,得到了一個維度為[batch,L,D]的三維向量,其中batch是batch size大小,L為序列長度這里是120,這里的120長度是每一天的采樣次數(shù),D是特征的維度這里是16,因此其輸入維[batch,120,16]這樣的特征向量,并送入到編碼器進(jìn)行編碼,經(jīng)過多頭注意力模型。由于Multi-Head Attention是3個輸入分別是Query、Key以及Value,都是由上述的特征向量,分別送到全連接層,其中這里的全連接層是有96個神經(jīng)元組成,因此每一個輸出向量維度為[batch,120,96],然后需要得到自注意力通過softmax計算,并對Value的輸出進(jìn)行點積運算,這樣就得到了自注意力的輸出。網(wǎng)絡(luò)模型通過多個這樣的操作再經(jīng)過concat操作,然后經(jīng)過全連接就可以得到多頭注意力的輸出,然后經(jīng)過droput層、Layer Normalization、FFN層以及對Query輸入加進(jìn)去,形成殘差連接,這里的FFN是兩層全連接層,其中第一層有激活函數(shù)ReLu,第二層沒有,再經(jīng)過層歸一化操作,上述過程是編碼過程。
對于解碼過程,也是類似于編碼的過程,其多加入了掩碼多頭注意力,其分別對Key、Query以及多頭注意力進(jìn)行mask操作。這樣操作有助于網(wǎng)絡(luò)在學(xué)習(xí)過程中,訓(xùn)練在預(yù)測當(dāng)前信息時候不會注意到之后的信息。
系統(tǒng)的實驗結(jié)果與分析,主要介紹本實驗平臺和數(shù)據(jù)采集處理,并對該系統(tǒng)的有效性和可靠性進(jìn)行相關(guān)實驗,得出本系統(tǒng)是可靠的,且功能滿足需求。同時通過系統(tǒng)的算法設(shè)計訓(xùn)練和測試模型,得到較好的模型,并在測試集測試該算法的有效性,能夠被應(yīng)用在該系統(tǒng)中。
實驗平臺是如表2所示,涉及到實驗的軟件、硬件設(shè)備信息、操作系統(tǒng)、開發(fā)環(huán)境等信息。
表2 實驗平臺
數(shù)據(jù)采集是在30位老年人佩戴傳感器進(jìn)行體征信息監(jiān)測采集,并通過ZigBee無線傳感網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸,并在服務(wù)器端進(jìn)行算法分析。每一位老年人采集了兩個月的數(shù)據(jù),每隔2分鐘采集一次,并上傳體征信息數(shù)據(jù)。分別得到心率數(shù)據(jù)、心電數(shù)據(jù)、呼吸數(shù)據(jù)以及體溫數(shù)據(jù)。
本系統(tǒng)利用無線傳感器網(wǎng)絡(luò)技術(shù)為基礎(chǔ)平臺,通過ZigBee通信技術(shù)作為系統(tǒng)的數(shù)據(jù)傳輸基礎(chǔ)。本系統(tǒng)的樣例示意圖如圖7所示。從左到右分別是終端設(shè)備與傳感器采集、路由器、協(xié)調(diào)器傳輸?shù)絽f(xié)調(diào)器和系統(tǒng)在設(shè)計調(diào)試現(xiàn)場過程。終端設(shè)備是攜帶在人體,采集收集心率、心電、呼吸頻率和溫度,其也具備和路由器一樣的功能,與路由器進(jìn)行組網(wǎng)通信,并傳輸采樣的數(shù)據(jù)。
圖7 系統(tǒng)設(shè)計的硬件和調(diào)試過程
系統(tǒng)的功能驗證和可靠性驗證是查看系統(tǒng)是否具備完整的功能,且系統(tǒng)運行時是否穩(wěn)定。系統(tǒng)的功能性與可靠性測試用例如表3所示。
表3 系統(tǒng)功能與可靠性測試用例
通過測試集的數(shù)據(jù),輸入到算法模型中進(jìn)行測試,并使用均方根誤差(RMSE)的指標(biāo)來衡量模型的好壞[26]。首先,通過采集得到的數(shù)據(jù)進(jìn)行Transformer模型的訓(xùn)練,從而得到訓(xùn)練好的模型,進(jìn)行部署到云端服務(wù)器中,對數(shù)據(jù)進(jìn)行推理預(yù)測[27]。本實驗的訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集都是從30位老年人佩戴的傳感器采集得到的體征信息數(shù)據(jù)。按照9∶1的數(shù)據(jù)隨機劃分成訓(xùn)練集和測試集。
網(wǎng)絡(luò)訓(xùn)練偽代碼如表4所示。
表4 算法模型的訓(xùn)練與測試接口
表4主要是Transformer算法模型的訓(xùn)練的應(yīng)用API(Application Programming Interface)接口。從數(shù)據(jù)的加載,數(shù)據(jù)embedding的操作、模型構(gòu)建、損失函數(shù)的設(shè)計、優(yōu)化器設(shè)計到每一個epoch訓(xùn)練的,最后驗證測試。如圖8所示是算法模型在訓(xùn)練過程中的每一次迭代對應(yīng)損失函數(shù)值的曲線圖。
圖8 訓(xùn)練過程中損失函數(shù)變化曲線圖
如圖9是得到的模型在測試集中推理預(yù)測得到的結(jié)果,與真實結(jié)果的曲線圖。其中的值是一天內(nèi)體征信息變化情況,縱坐標(biāo)四類傳感器數(shù)據(jù)做了embedding操作后的數(shù)據(jù)的均值,橫坐標(biāo)是時間單位是分鐘并以12分鐘一次間隔采樣得到的。
圖9 在測試集中模型預(yù)測值與真實值比較
通過訓(xùn)練得到的算法模型,部署在該系統(tǒng)中。對采集得到的體征數(shù)據(jù)進(jìn)行預(yù)測,可以得到預(yù)測的結(jié)果與真實采集的數(shù)值較為一致,其在測試集中的RMSE指標(biāo)為0.037 1,因此該算法模型可以較好地對體征信息的預(yù)測。
對養(yǎng)老院老人體征信息的監(jiān)測與管理,并利用無線傳感器網(wǎng)絡(luò)節(jié)點對心率、心電、體溫以及呼吸信息采集,并將數(shù)據(jù)傳輸?shù)皆贫朔?wù)器,并采用人工神經(jīng)網(wǎng)絡(luò)Transformer算法對數(shù)據(jù)進(jìn)行分析訓(xùn)練并預(yù)測。該系統(tǒng)是基于ZigBee無線通信技術(shù),其具有自組網(wǎng)、傳輸距離遠(yuǎn)、低功耗以及組網(wǎng)靈活的特點,保證了系統(tǒng)的穩(wěn)定性和可靠性。
通過在測試集中,對訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型Transformer進(jìn)行測試,得到的評價指標(biāo)RMSE為0.037 1。因此,采用該算法能夠滿足對體質(zhì)信息的預(yù)測。