基于反向傳播神經網絡的無線火災預警系統
隨機反向傳播神經網絡模型主要由輸入層、隱含層和輸出層三部分組成,如圖2所示。
選取x1,x2,x3,x4四個節(jié)點組成輸入層,由y1,y2,y3,y4組成隱含層(中間層),輸出層則由z1,z2,z3三個輸出端組成。其中,x1,x2,x3,x4四個節(jié)點分別代表溫度、火焰、煙霧濃度和CO濃度四個傳感器信息,進行模糊歸一化處理后的數據輸入,z1,Z2.z3三個輸出端則分別代表常溫無火、發(fā)生陰燃和明火火災三種狀態(tài)。
根據火災預警系統的特征,選取神經網絡各層之間的映射函數如下:
(1)輸入層到隱含層節(jié)點j的值為:
式中:ωji為輸入層到隱含層的權值;d為輸入樣本維數,d=4,即輸入層節(jié)點數。
(2)輸入層到隱含層的激活函數為S型函數,即:
式中:a,b為常數,a=1.716,b=2/3,a,b的取值保證f’(0)≈0.5,并且線性范圍為-1net+1,以及二階導數的極值大致發(fā)生在net≈±2處。
(3)隱含層的輸出yj為:
yj=f/(netj) (4)
(4)隱含層到輸出層節(jié)點k的值為:
netk=yjωkj,j=1,2,3,4;k=1,2,3,4 (5)
式中ωkj,為輸入層到隱含層的權值。
(5)隱含層到輸出層的激函數亦為S型函數:
f(netk)=atanh(b*netk) (6)
式中tanh(x)如式(3)所示;a,b為常數,取值同式(2)。
(6)輸出層的最后輸出zj為:
zk=f(netk) (7)
2.2 借助Matlab平臺模擬仿真
本研究在Matlab平臺上對基于三層反向傳播神經網絡結構的火災預警系統模型進行仿真模擬。
根據火災實際發(fā)生時,選取各種傳感器實際數據中的600組典型數據作為訓練樣本對網絡模型進行訓練。訓練過程中通過不斷調整神經網絡模型的相關常數取值,經過多次反復訓練后,使得神經網絡模型的輸出值與測試樣本輸出值之問的誤差小于某一預置值。得到的訓練誤差下降曲線如圖3所示。本文引用地址:http://2s4d.com/article/153987.htm
評論