衷衛(wèi)聲,羅力維,張強(qiáng)
(南昌大學(xué)a.信息工程學(xué)院,江西 南昌 330031;b.先進(jìn)制造學(xué)院,江西 南昌 330031)
隨著電子技術(shù)和無線通信的不斷發(fā)展,無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)應(yīng)運(yùn)而生,它廣泛應(yīng)用于定位、導(dǎo)航、工業(yè)和軍事等領(lǐng)域。由于WSN在系統(tǒng)穩(wěn)定性、可靠性、感知信息的準(zhǔn)確性等方面存在不少問題需要解決,這可能會(huì)導(dǎo)致傳感器數(shù)據(jù)不可靠、產(chǎn)生噪聲、數(shù)據(jù)丟失與冗余,從而影響到原始數(shù)據(jù)的質(zhì)量和匯總結(jié)果,所以需要離群值檢測(cè)算法[1-3]。
目前,WSN中離群值檢測(cè)方法大致分為基于統(tǒng)計(jì)的方法[4]、基于最近鄰的方法[5]、基于聚類的方法[6]以及基于分類的方法[7-9]等。其中,基于分類的方法是機(jī)器學(xué)習(xí)的重要領(lǐng)域,而一分類支持向量機(jī)(OCSVM)是其中最流行的方法之一。它不斷地將低維數(shù)據(jù)投影到高維空間中并且形成邊界,將邊界外部的數(shù)據(jù)判斷為離群值,通過最大化決策邊界的余量為分類提供最佳解決方案。此外它還能通過核函數(shù)簡(jiǎn)化投影計(jì)算從而避免維數(shù)詛咒的問題。為了更好地將OCSVM用于WSN中,Rajasegarar等[10]將OCSVM的邊界拓展為球和橢球,并以此為基礎(chǔ)形成了四分之一球支持向量機(jī)(QSSVM),以及中心橢球支持向量機(jī)(CESVM)。這兩種算法在運(yùn)行過程中將球心移到坐標(biāo)原點(diǎn)以計(jì)算支持向量,因此也增加了計(jì)算量,不適用于大規(guī)模的WSN。Miao等[11]將OCSVM應(yīng)用于大規(guī)模的WSN并且摒棄了融合中心(FC),從而形成分布式網(wǎng)絡(luò)。此外,Miao等[11]還在應(yīng)用過程中使用隨機(jī)近似函數(shù)代替核函數(shù),從而節(jié)省了計(jì)算資源。但隨著分布式網(wǎng)絡(luò)規(guī)模增大,每個(gè)節(jié)點(diǎn)的實(shí)際情況都各不相同,因此每個(gè)節(jié)點(diǎn)的OCSVM參數(shù)設(shè)置都應(yīng)該不同。在機(jī)器學(xué)習(xí)中,OCSVM的錯(cuò)誤容忍度參數(shù)υ和邊界調(diào)整參數(shù)γ是對(duì)其檢測(cè)效果影響最大的兩個(gè)參數(shù)。Wang等[12]通過找到最大和最小的γ參數(shù),并且將其平均值作為最佳的參數(shù)。但是以這種方式選擇γ參數(shù)可能會(huì)有很大的波動(dòng)。為了解決這個(gè)問題,Xiao等[13]提出計(jì)算從數(shù)據(jù)集到OCSVM封閉表面的距離,然后在此基礎(chǔ)上,提出了參數(shù)選擇的優(yōu)化目標(biāo)函數(shù)。Anaissi等[14]則對(duì)算法做了進(jìn)一步擴(kuò)展,使其更適合于高維數(shù)據(jù)集。
然而,上述參數(shù)設(shè)置方法可能不適用于WSN。因?yàn)樵赪SN中要考慮各種因數(shù)的影響,如節(jié)點(diǎn)之間的相關(guān)性、時(shí)空性等,所以每個(gè)節(jié)點(diǎn)的參數(shù)應(yīng)該自適應(yīng)地調(diào)整。本文提出一種基于錨節(jié)點(diǎn)的無線傳感網(wǎng)離群值檢測(cè)算法,將定位算法中的錨節(jié)點(diǎn)引入檢測(cè)算法中,以錨節(jié)點(diǎn)與節(jié)點(diǎn)屬性之間相關(guān)性為基礎(chǔ),利用大小根堆與標(biāo)準(zhǔn)差來動(dòng)態(tài)地調(diào)整普通節(jié)點(diǎn)的參數(shù),并將其轉(zhuǎn)換為錨節(jié)點(diǎn),循環(huán)往復(fù)地拓展到整個(gè)無線傳感網(wǎng),最終每個(gè)節(jié)點(diǎn)的參數(shù)都自適應(yīng)地調(diào)整為最佳。
Sch?lkopf等[15]提出了一種稱為OCSVM的分類方法,用于在高維現(xiàn)實(shí)世界數(shù)據(jù)集中進(jìn)行離群值檢測(cè)。對(duì)于給定的數(shù)據(jù)集,OCSVM算法將在正常數(shù)據(jù)的密集區(qū)域周圍找到邊界。位于邊界上或內(nèi)部的數(shù)據(jù)被稱為普通數(shù)據(jù),否則為離群數(shù)據(jù)。但是,在實(shí)際情況下,數(shù)據(jù)并不總是線性可分離的。此時(shí),我們可以選擇將低維數(shù)據(jù)集Rd投影到高維特征空間Rd'上,其中d< OCSVM分類器的原始二次問題[16]為: (1) 式中:ω∈Rd,ξ=[ξ1,…,ξn]是松弛變量,ρ是偏差項(xiàng),且0<υ≤1。 為了更好地進(jìn)行計(jì)算,使用拉格朗日乘數(shù)法將式(1)轉(zhuǎn)換為以下二次對(duì)偶問題: (2) 然而,持續(xù)的投影可能會(huì)導(dǎo)致大量的計(jì)算(甚至是不可能的)。此時(shí),可以使用核函數(shù)代替投影計(jì)算。在本文中,通過使用高斯徑向基函數(shù)(RBF)k(x,y)=e-γ||x-y||2來代替投影,從而減少計(jì)算量。 在OCSVM算法中,參數(shù)設(shè)置直接關(guān)系到整個(gè)模型的好壞,特別是容忍度參數(shù)υ跟決策參數(shù)γ。容忍度參數(shù)υ參數(shù)決定了OCSVM能識(shí)別的離群值比例,過大或者過小都會(huì)影響最終識(shí)別離群值的比例。而決策參數(shù)γ決定了整個(gè)OCSVM算法投影邊界的復(fù)雜度,γ值過大則會(huì)讓邊界過于復(fù)雜,使運(yùn)算復(fù)雜度增加,反之則會(huì)讓邊界變得簡(jiǎn)單,最后導(dǎo)致無法正確分離離群值。因此在導(dǎo)入OCSVM算法之前需要將υ與γ設(shè)置為合適的值。本文算法引入了定位算法中的錨節(jié)點(diǎn),并且充分考慮各個(gè)節(jié)點(diǎn)之間的相關(guān)性,利用大小根堆存儲(chǔ)周圍錨節(jié)點(diǎn)的υ值,并取這些數(shù)據(jù)中的中位數(shù)作為自身的υ值。最后利用數(shù)據(jù)本身的標(biāo)準(zhǔn)差與相關(guān)性調(diào)整參數(shù)γ。 在數(shù)理統(tǒng)計(jì)中,平均數(shù)是總體均值很好的估計(jì),中位數(shù)是對(duì)總體中心很好的估計(jì),如果數(shù)據(jù)是來自某對(duì)稱未知分布時(shí),估計(jì)均值和估計(jì)中心是等價(jià)的。但就穩(wěn)健性而言,中位數(shù)是較優(yōu)于平均數(shù)。因?yàn)閷?duì)于均值,只要有一個(gè)點(diǎn)無窮大,均值則會(huì)無窮大,但改變中位數(shù)至無窮大,則需要移動(dòng)一半的數(shù)據(jù),因此中位數(shù)要比均值穩(wěn)健。 堆是一顆完全二叉樹,在數(shù)據(jù)結(jié)構(gòu)中常常用數(shù)組模擬二叉樹,具體公式如式(3)所示。并且在堆中的某個(gè)結(jié)點(diǎn)的值總是大于等于(大根堆)或小于等于(小根堆)其子結(jié)點(diǎn)的值,并且堆中每個(gè)結(jié)點(diǎn)的子樹都是堆樹。 (3) 在建立堆的過程中,每來一個(gè)數(shù)據(jù)對(duì)應(yīng)地插入時(shí)間復(fù)雜度為O(log2N)。并且在建堆的過程中,設(shè)總共N個(gè)元素,可以在大根堆存放m個(gè)較小的數(shù),小根堆存放n個(gè)較大的數(shù),當(dāng)N為奇數(shù)時(shí),應(yīng)該滿足式(4) m=n+1=(N+1)/2 (4) 當(dāng)N為偶數(shù)時(shí),應(yīng)該滿足式(5) m=n=N/2 (5) 此時(shí),取中位數(shù)的公式如式(6)所示 (6) 各種常用取中位數(shù)數(shù)據(jù)結(jié)構(gòu)的復(fù)雜度如表1所示。 表1 時(shí)間復(fù)雜度 可知,無序數(shù)組插入時(shí)間復(fù)雜度最小,適合頻繁插入,但取中位數(shù)的時(shí)間復(fù)雜度較高。有序線性表查找快,但是數(shù)據(jù)結(jié)構(gòu)的維護(hù)困難。平衡二叉樹查找和維護(hù)相對(duì)均衡,但是存儲(chǔ)的額外信息多(指針,子節(jié)點(diǎn)數(shù)),查找其他元素也很快。因此大小根堆是非常適用于查找中位數(shù)的算法,但是查找其他元素效率低。 因此可以維護(hù)兩個(gè)堆,里面用來存放周圍節(jié)點(diǎn)的υ,從而能隨時(shí)隨地地取出中位數(shù)的υ用來改變自己算法模型的參數(shù)。 但這也隨之帶來一個(gè)問題,在無線傳感網(wǎng)中不一定需要周圍所有節(jié)點(diǎn)的數(shù)據(jù),可能需要不斷地更新迭代。為此,本文引入了滑動(dòng)窗口的概念,在無線傳感網(wǎng)中維護(hù)一個(gè)固定大小的窗口用來存放周圍節(jié)點(diǎn)的數(shù)據(jù)。當(dāng)有新的數(shù)據(jù)來時(shí),更新窗口,并且取出窗口中的中位數(shù),具體滑動(dòng)窗口的示意圖如圖1所示。 圖1 滑動(dòng)窗口示意圖 在大小根堆算法中,只能增加元素,而不刪除元素,因此需要增加刪除元素的操作和對(duì)添加元素的操作進(jìn)行修改。并且堆不支持隨意刪除除堆頂外的任何元素,所以本算法使用延遲刪除,即,若該元素不在堆頂,則記錄下該元素,等到該元素達(dá)到堆頂?shù)臅r(shí)候再進(jìn)行刪除。延遲刪除可以保證在任意操作之后保證大小根堆的堆頂元素是不需要?jiǎng)h除的,因此能保證隨時(shí)能取得中位數(shù)。改進(jìn)后的算法示意圖如圖2所示。 圖2 滑動(dòng)窗口算法流程圖 實(shí)現(xiàn)刪除與插入所需實(shí)現(xiàn)設(shè)計(jì)的函數(shù): (1)設(shè)計(jì)哈希表為hash=(n,num),用來表示元素n還需要?jiǎng)h除num次。 (2)設(shè)計(jì)modify(heap)函數(shù),不斷彈出需要?jiǎng)h除的堆頂元素,并減少對(duì)應(yīng)的num值。 (3)設(shè)計(jì)balance()函數(shù)來封裝modify(heap)函數(shù),用來調(diào)整大小根堆的元素個(gè)數(shù)。 在balance()函數(shù)中,假設(shè)小根堆為A,堆頂為a1元素,大根堆為B,堆頂為b1元素。當(dāng)需要調(diào)整大小時(shí): (1)如果A=B,不調(diào)整; (2)如果A-B>1,將a1放入B中,通過調(diào)用modify(A)判斷A的堆頂元素是否需要?jiǎng)h除; (3)如果A>B,將b1放入A中,調(diào)用modify(B)判斷B的堆頂元素是否需要?jiǎng)h除。 綜上,可以得到本算法所需erase(n)的步驟: 步驟1 如果n與大小根堆的堆頂不相同,將其在hash中的值加一,待其達(dá)到堆頂后便可將其刪除,實(shí)現(xiàn)了延遲刪除。 步驟2 若相同,可以通過延遲刪除模擬立即刪除,只需要將n在hash中對(duì)應(yīng)的值加一,并且調(diào)用modify(heap)函數(shù),就相當(dāng)于實(shí)現(xiàn)了立即刪除的功能 步驟3 在刪除元素后,要調(diào)用balance()函數(shù)用來調(diào)整堆的大小 因此最終可以得到大小根堆跟滑動(dòng)窗口的時(shí)間與空間復(fù)雜度如表2。 表2 復(fù)雜度 在OCSVM算法中,另一個(gè)重要的參數(shù)是γ,作為邊界決策參數(shù),它與數(shù)據(jù)的標(biāo)準(zhǔn)差存在一定關(guān)系。相關(guān)系數(shù)rXY的計(jì)算公式為: (7) 式中:Cov(X,Y)為X與Y的協(xié)方差;D(X)為X的方差;D(Y)為Y的方差,相關(guān)系數(shù)rXY越接近1則表示相關(guān)性越高,標(biāo)準(zhǔn)差S的公式為: (8) 定義3個(gè)錨節(jié)點(diǎn),每個(gè)錨節(jié)點(diǎn)的υ,γ都是最佳,其與待定節(jié)點(diǎn)的關(guān)系圖如圖3所示。 圖3 節(jié)點(diǎn)關(guān)系示意圖 在圖3中,N1,N2和N3為錨節(jié)點(diǎn),N4為普通節(jié)點(diǎn)。根據(jù)標(biāo)準(zhǔn)差公式計(jì)算出錨節(jié)點(diǎn)中每一類數(shù)據(jù)特征的標(biāo)準(zhǔn)差。由于生活中絕大多數(shù)受隨機(jī)因素影響的事物,基本上都符合正態(tài)分布,因此標(biāo)準(zhǔn)差越大,表示數(shù)據(jù)越離散。因?yàn)閰?shù)γ是邊界條件,所以γ越大,邊界會(huì)分得越細(xì),但γ值過大會(huì)造成過擬合。所以可以假設(shè)錨節(jié)點(diǎn)γ的取值公式為: (9) 式中:F為所收集數(shù)據(jù)特征數(shù)。 假設(shè)每個(gè)WSN節(jié)點(diǎn)只收集溫濕度兩種特征,使用θ代表攝氏溫度,H代表濕度,αi為i節(jié)點(diǎn)的平均相關(guān)系數(shù)。可得節(jié)點(diǎn)1和節(jié)點(diǎn)4之間的計(jì)算公式: (10) 式中:r為相關(guān)系數(shù),則可以通過下式計(jì)算出普通節(jié)點(diǎn)的γ值與周圍錨節(jié)點(diǎn)γ值: (11) 式中:m為錨節(jié)點(diǎn)數(shù)。 綜上,檢測(cè)算法的流程如下:錨節(jié)點(diǎn)預(yù)先設(shè)置υ值為最佳,并使用公式計(jì)算出γ值。普通節(jié)點(diǎn)通過尋找周圍節(jié)點(diǎn)υ的中位數(shù)設(shè)置υ值和利用節(jié)點(diǎn)之間的相關(guān)性設(shè)置γ值,并且參數(shù)設(shè)置完之后,自身也轉(zhuǎn)換成錨節(jié)點(diǎn)。節(jié)點(diǎn)通信示意圖如圖4所示。 圖4 節(jié)點(diǎn)通信示意圖 本文探討的數(shù)據(jù)來源于文獻(xiàn)[17],文章作者將其放入kaggle網(wǎng)站開源。整個(gè)數(shù)據(jù)集由9個(gè)ZigBee無線傳感器網(wǎng)絡(luò)收集溫濕度而成。整個(gè)收集時(shí)間從一月到五月,共137 d,溫濕度每10 min內(nèi)取一次平均值,每個(gè)節(jié)點(diǎn)各收集了19 735組溫濕度數(shù)據(jù)。從整個(gè)數(shù)據(jù)集來看,其涵蓋了4.5個(gè)月的范圍,使數(shù)據(jù)集有很好的完整性。并且其節(jié)點(diǎn)所處的環(huán)境具有差異性,有室內(nèi)室外,室內(nèi)還有不同的環(huán)境,如:浴室、臥室以及大廳等,這樣保障了數(shù)據(jù)的多元性,從而保證仿真實(shí)驗(yàn)的真實(shí)性與有效性。 整個(gè)仿真實(shí)驗(yàn)設(shè)備使用第5代Intel Core i5CPU,12 GB RAW,開發(fā)平臺(tái)使用JupyterLab,scikit-learn,語言使用Python。 在無線傳感網(wǎng)中,單個(gè)節(jié)點(diǎn)的內(nèi)存、運(yùn)算能力以及電池能量都是極為珍貴的,所以整個(gè)算法的運(yùn)算時(shí)間不宜太久,不然資源一直被占用會(huì)影響正常工作。 由于無線傳感網(wǎng)的節(jié)點(diǎn)數(shù)可以非常大,因此用模擬數(shù)據(jù)檢驗(yàn)查詢中位數(shù)的性能。本文選擇3種算法進(jìn)行比較,滑動(dòng)窗口、只尋求中位數(shù)的快速排序,以及大根堆與小根堆。隨機(jī)產(chǎn)生1 000,3 000,7 000,15 000,25 000,40 000個(gè)不同的數(shù),通過這3個(gè)算法尋找到中位數(shù)。而在滑動(dòng)窗口中,每次只保存一半的數(shù)據(jù)和更新10個(gè)數(shù)據(jù)。通過比較插入時(shí)間(滑動(dòng)窗口的時(shí)間取插入一半數(shù)據(jù)的時(shí)間加上更新的平均時(shí)間)與尋找中位數(shù)的時(shí)間,來綜合比較各個(gè)算法的性能,不同數(shù)據(jù)量N所需的時(shí)間t如圖5所示。 N/103 可以看出,隨著數(shù)據(jù)量N的增大,通過大小根堆取中位數(shù)所花費(fèi)的時(shí)間約為快速排序方法的一半。并且,引入了滑動(dòng)窗口機(jī)制后,整個(gè)算法的運(yùn)行時(shí)間進(jìn)一步減少。此外,從額外空間復(fù)雜度來看,大小根堆都沒有使用額外空間,都只是利用本來就存在的數(shù)據(jù)進(jìn)行取中位數(shù)的過程。而快速排序有O(log2N)的額外空間復(fù)雜度?;瑒?dòng)窗口則是在利用哈希表的時(shí)候會(huì)產(chǎn)生O(N)的額外空間復(fù)雜度,其與需要延遲刪除的元素有關(guān)。所以綜合比對(duì)下來,通過大小根堆和滑動(dòng)窗口取中位數(shù)的算法合適。 在數(shù)據(jù)集中,一共有9個(gè)節(jié)點(diǎn),稱節(jié)點(diǎn)1到節(jié)點(diǎn)9。其中,節(jié)點(diǎn)6處于戶外,其濕度晝夜溫差大與其余節(jié)點(diǎn)差異過大,為了避免出現(xiàn)較大偏差,所以將節(jié)點(diǎn)6去除,只分析余下8個(gè)節(jié)點(diǎn)。利用θ代表攝氏溫度,H代表濕度,建立數(shù)據(jù)分布圖,觀察是否為正態(tài)分布,結(jié)果如圖6、圖7所示。 θ/℃ H 從圖6與圖7可以得出大部分的數(shù)據(jù)都接近于正態(tài)分布,因此節(jié)點(diǎn)數(shù)據(jù)的相關(guān)性可以通過式(7)計(jì)算,并且整個(gè)相關(guān)性如圖8所示。 在圖8中,顏色越深代表越不相關(guān),越淺則代表越相關(guān),可以觀察出不同節(jié)點(diǎn)不同數(shù)據(jù)特征之間存在一定的相關(guān)性,只是這種相關(guān)性有強(qiáng)有弱。 圖8 相關(guān)性 在OCSVM中,容忍度參數(shù)υ跟決策參數(shù)γ決定了整個(gè)算法的好壞。因此,在容忍度參數(shù)υ中,預(yù)先設(shè)置錨節(jié)點(diǎn)的參數(shù)υ與參數(shù)γ為最佳,周圍的普通節(jié)點(diǎn)通過大小根堆與滑動(dòng)窗口來獲取自身的υ值。而參數(shù)γ,則是在驗(yàn)證相關(guān)性后之后,通過公式11自適應(yīng)進(jìn)行計(jì)算得出。獨(dú)立重復(fù)做仿真實(shí)驗(yàn)5次,每次選取3個(gè)不同的錨節(jié)點(diǎn),第1次錨節(jié)點(diǎn)為2,4,8,第2次錨節(jié)點(diǎn)為1,3,4,第3次錨節(jié)點(diǎn)為3,5,8,第4次錨節(jié)點(diǎn)為1,7,9,第5次錨節(jié)點(diǎn)為2,4,7,通過式(11)計(jì)算出的參數(shù)γ值如表3所示。 表3 γ參數(shù) 可以看出,在大部分的情況下,自適應(yīng)獲得的參數(shù)與最佳參數(shù)相比,只有20%~30%的誤差,其中有部分參數(shù)與最佳參數(shù)接近一致。其誤差大小與錨節(jié)點(diǎn)的選擇有關(guān),即事先要選取好錨節(jié)點(diǎn),且錨節(jié)點(diǎn)之間不能相距過近,以免出現(xiàn)參數(shù)設(shè)置過于相近的情況。 在獲取最佳參數(shù)設(shè)置后,還需要驗(yàn)證在所得參數(shù)設(shè)置下的算法是否將大部分正確的數(shù)據(jù)分離出來。混淆矩陣的定義如表4所示。 表4 混淆矩陣 為了檢驗(yàn)上述參數(shù)設(shè)計(jì)對(duì)數(shù)據(jù)分離的效果,使用真陽性率T與假陽性F來進(jìn)行比對(duì),其T定義是算法正確分類且本身為正例的比例,F(xiàn)定義是將負(fù)例預(yù)測(cè)為正例的比例,公式定義如下: (12) (13) 將參數(shù)導(dǎo)入OCSVM算法中,其中圓形的折線為最佳參數(shù),其余折線分別為1~5次獨(dú)立重復(fù)實(shí)驗(yàn)的結(jié)果,所得結(jié)果如圖9與圖10所示。 節(jié)點(diǎn)編號(hào) 從圖9中可以發(fā)現(xiàn),整個(gè)算法的真陽性率T基本上保持在84.3%以上,這意味著絕大部分正常數(shù)據(jù)都被正確分離出來,而假陽性率F則大部分都在20%以下,這表明可以將大部分的異常數(shù)據(jù)分離出來。最后可以得出,參數(shù)γ與數(shù)據(jù)的相關(guān)性有關(guān),并且可以良好通過滑動(dòng)窗口、大小根堆所選擇的參數(shù)υ將數(shù)據(jù)集的正常與異常的數(shù)據(jù)分離出來。 節(jié)點(diǎn)編號(hào) 本文以自適應(yīng)調(diào)整無線傳感網(wǎng)中離群值檢測(cè)算法的參數(shù)為目標(biāo),結(jié)合錨節(jié)點(diǎn)與相關(guān)性提出了基于錨節(jié)點(diǎn)的無線傳感網(wǎng)離群值檢測(cè)算法。該算法以錨節(jié)點(diǎn)與節(jié)點(diǎn)屬性之間相關(guān)性為基礎(chǔ),利用大小根堆、滑動(dòng)窗口和標(biāo)準(zhǔn)差來動(dòng)態(tài)地調(diào)整待定節(jié)點(diǎn)的參數(shù),并將其轉(zhuǎn)換為錨節(jié)點(diǎn),循環(huán)往復(fù)地拓展到整個(gè)無線傳感網(wǎng),最終每個(gè)節(jié)點(diǎn)都能自適應(yīng)地將參數(shù)調(diào)整為最佳。實(shí)驗(yàn)結(jié)果表明,在不使用額外的空間的情況下,利用大小根堆尋求中位數(shù)能夠保持較低的運(yùn)行時(shí)間。若可以使用一定的額外空間,利用滑動(dòng)窗口機(jī)制則能夠更進(jìn)一步降低運(yùn)行時(shí)間。并且也證實(shí)了標(biāo)準(zhǔn)差與參數(shù)γ存在一定的關(guān)系,可以通過相關(guān)性與標(biāo)準(zhǔn)差來設(shè)置參數(shù)γ,結(jié)果表示本文提出的算法能較好地辨識(shí)出正常數(shù)據(jù)。在自適應(yīng)調(diào)整方式下,檢測(cè)算法的真陽性率在84.3%以上,假陽性率在20%以下,并且能夠?qū)?shù)據(jù)正確的分離出來。并且該算法適用于許多小型室內(nèi)的無線傳感網(wǎng),這些網(wǎng)絡(luò)必須事先將算法模型導(dǎo)入進(jìn)去用來實(shí)時(shí)監(jiān)控,并且傳感器的CPU與內(nèi)存資源有限。因此可以通過本文所提出的算法來進(jìn)行設(shè)置參數(shù),以達(dá)到比較良好的數(shù)據(jù)監(jiān)測(cè)與分離的作用。2 無線傳感網(wǎng)離群值檢測(cè)算法
2.1 大小根堆算法設(shè)計(jì)
2.2 滑動(dòng)窗口算法設(shè)計(jì)
2.3 動(dòng)態(tài)參數(shù)設(shè)置算法設(shè)計(jì)
3 實(shí)驗(yàn)仿真
3.1 數(shù)據(jù)與仿真環(huán)境
3.2 時(shí)間性能分析
3.3 相關(guān)性驗(yàn)證與計(jì)算
3.4 綜合性能分析
4 結(jié)論