• 沒有找到結果。

感測資料之收集、處理及探勘技術之研究及其應用 (III)

N/A
N/A
Protected

Academic year: 2021

Share "感測資料之收集、處理及探勘技術之研究及其應用 (III)"

Copied!
27
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會補助專題研究計畫

■成果報告

□期中進度報告

感測資料之收集、處理及探勘技術之研究及其應用

計畫類別:

個別型計畫 □整合型計畫

計畫編號:

NSC  97  2221  E  004  006  MY3

執行期間:

2008 年 08 月 01 日至 2011 年 07 月 31 日

執行機構及系所:

國立政治大學資訊科學系

計畫主持人:

陳良弼

計畫參與人員:范耀中、王恩慈、林真伊、林俊學、王文琦、蘇惠珠、

林王智瑞、曾仲瑋

成果報告類型(依經費核定清單規定繳交):□精簡報告

完整報告

本計畫除繳交成果報告外,另須繳交以下出國心得報告:

□赴國外出差或研習心得報告

□赴大陸地區出差或研習心得報告

出席國際學術會議心得報告

□國際合作研究計畫國外研究報告

處理方式:

除列管計畫及下列情形者外,得立即公開查詢

□涉及專利或其他智慧財產權,□一年□二年後可公開查詢

中 華 民 國 100 年 10 月 31 日

(2)

中文摘要 隨著感測器技術的成熟與普及。在可想見的未來,智慧型感測器系統將融入人們的生活環境, 提供多樣的感測器資料,因此如何管理與應用感測器所蒐集的資料,即成為極具價值的研究 課題。本研究計畫從智慧型感測器資料應用的角度切入,發展領先技術涵蓋下述兩大範疇:『感 測器資料收集技術』及『感測器資料探勘/查詢處理技術』。在此一三年期計畫執行過程中, 我們已陸續於知名國際會議及期刊發表相關論文共八篇,以及二項申請中的專利,研究成果 十分豐碩,本期末報告將完整詳述所有研究成果。 Abstract

As the advance of wireless sensor network technologies, sensor network applications have received considerable attention in recent years. In the near future, sensor network systems will gradually and seamlessly weave into human’s living space and provide mass and streaming sensor data in various types. In this project, based on a scenario of an intelligent store management system, we consider using sensor data for business decision supports and personalized recommendation and therefore develop the core techniques needed for this scenario. In the past three years, our research results have been published in some international conferences and journals; each of the results will be detailed in this report.

一、前言 隨著科技的發展,內嵌無線通訊、精密感測、計算等功能之智慧型感測器裝置的使用已 日漸地成熟與普及。有別於傳統感測器,具通訊與計算能力的智慧型感測器裝置,提供了一 個全新的資料收集模式,也創造出各式各樣多元化的應用。在可想見的未來,智慧型感測器 系統將大規模地融入人們的生活環境,提供大量、即時、且各式各樣的感測器資料,因此如 何駕馭、管理與應用智慧型感測器系統所蒐集的資料,即成為一個極具挑戰性的研究課題。 侷限目前智慧型感測器發展的主因來自於感測器系統相關資料管理與資料應用技術上之 不足。在感測器系統佈建後,如何妥善地應用感測器系統資料,才是目前相關感測器系統發 展的關鍵所在,也是目前國際領先研究群爭相投入之課題。有鑑於此,本研究計畫從智慧型 感測器資料應用的角度切入,發展領先技術涵蓋下述兩大範疇:『感測器資料收集技術』及『感 測器資料探勘/查詢處理技術』。 一、 感測器資料收集 由於感測器裝置的硬體設計以成本為考量,因此感測器裝置本身所配備資源,諸如能源供 應等均受限制。如何在資源受限的條件下,設計具高效率的資料收集與傳輸技術,成為相關 研究的焦點所在。本計畫的在此一研究主軸探討議題包含:具高效率之感測器資料擷取、高 可靠度感測器資料收集、和可擴充性感測器資料收集。 二、 感測器資料探勘/查詢處理 而在感測器資料收集完成後,如何妥善地應用感測器系統資料,是感測器系統發展的關 鍵與未來趨勢。本研究在此一研究主軸探討議題包含:段落規則探勘、交易串流高頻樣型探 勘、事件段落比對、感測器資料結合查詢、交易串流高頻樣型分散式探勘。 各項研究成果將於下一節中進行探討,以下為與本年度三項研究項目相關之國內外研究。

(3)

國內外相關研究 1、感測器感測頻率管理技術 在無線感測系統下,許多研究都以省電為其主要目標。[DG04]提出的 BBQ,以高斯分布 的統計模型輔助來找出各個感測器讀數之間的關係。在處理查詢時,配合成本模型(Cost Model) 找出能符合查詢目標所需花費最少的感測目標,再透過統計模型來推測出查詢目標的數值, 以達到全域的最佳化(Global Optimization)。然而過度追求全域最佳化可能使感測花費集中在 少數感測器上,造成部份感測器提早耗盡能源。[CD06]提出的方法 Ken 與 BBQ 相當類似, 一樣是藉由統計模型的輔助來推測時間或空間上之資料趨勢,不同之處在於Ken 進一步地提 出了資料準確率上的保證。

[JC04]使用了 Kalman Filter 輔助。Kalman Filter 是一種遞迴式的預測模型,以一組內部的 狀態數值來預測外部的數值,再以外部數值更新內部的狀態數值。應用在感測器網路系統中, 可以將感測器所感測到的讀數做為外部狀態,而在感測器記憶體內記錄一組內部參數,再利 用該模型來達到預測讀數的目的,是屬於時間上的資料趨勢預測。同樣屬於時間上的資料趨 勢預測的研究還有[TMP06]與[DK04]。前者提出 PAQ (Probabilistic Adaptable Query system)的 方法,在每個感測器上保留一份以供預測的AR (autoregressive) model,並且在伺服器端亦保 留一份相同的AR model,以供是否傳送感測數值之參考,這個研究主要是用以節省資料傳輸 的次數,而後者則是從資料序列中分析出許多基本信號,在傳送感測資料時以這些信號做為 代表,再加入信號的壓縮技術,其主要目的在減少資料的傳輸量。

[TMA06]與[TMP06]類似。在[TMA06]中,無線感測器網路的資料傳輸是使用叢集結構 (Clustering Structure),依地理位置將感測器叢集化(Clustering),由擔任叢集頭(Cluster Head) 的感測器來負責將該叢集中各個感測器的資料往伺服器傳送。而在[TMA06]中加入了感測器 相似度(Sensor Node Similarity)的分析,定義了預測距離(Prediction Distance)來決定兩個感測器 的相似度,等於加入了空間上的資料趨勢分析,主要目的亦是在減少資料的傳輸次數。 [SB06]提出以抑制(Suppression)的技術來達到節能的效果。在每次傳輸以前檢查傳輸的資 料與上一次傳輸是否相同,若相同就不做傳輸,就是所謂的抑制。在這個研究中提出了空間 與時間上的抑制(Spatial-Temporal Suppression)。這樣的節能技術建構在資料本身的相似度 上,完全沒有摻雜預測的成分,因此資料的準確度幾乎是百分之百。但相對地若資料本身變 動幅度很大,也可能造成完全無法節省任何傳輸能源。同樣的作者在[SB07]提出抑制結構 (Suppression Scheme),將多個抑制的行為整合在一起,一次考慮多個感測器之間的資料分析, 以達到更進一步的節省傳輸能源。 以上的研究都是將節能的重點放在傳輸資料,對於感測器在感測行為上的節能並沒有幫 助。為了達到感測的節能,我們參考了一些相關的研究。在[EA05]的研究中所提供的週期偵 測,幫助我們進行資料趨勢的分析,而能夠在一定的信心水準之上做到感測的節能。 2、感測器資料聚合處理技術 在高可靠度無線感測資料聚合計算技術相關研究中,[MF02]首先提出兩個策略,分別為 子節點快取(child cache)與分數式傳遞(fractional parent),來提升聚合計算的準確度。在子節點 快取策略中,每個節點皆儲存其子節點先前傳遞過的部份聚合值,當某個感測器節點之子節 點資料遺失時,該感測器節點便利用先前儲存之對應部份聚合值進行資料聚合運算。在分數 式傳遞,作者提出多路徑式資料傳遞(multi-path routing)的概念,廣播部分聚合值至其上一層

(4)

的節點,並採用均分式切割;舉例來說,若某一節點有 5 個母節點則該節點將其部份聚合值 除於5,來解決多路徑式資料聚合所衍生的重複記數問題(double counting problem)。在[NG04] 中作者提出利用複本無影響性之速寫結構(duplicate-insensitive sketches)的概念,來解決多路徑 式資料聚合計算中重複記數問題。透過利用複本無影響性之速寫結構來表示感測器所將廣播 之資料,相同的一筆資料最終將只會被計算一次。基於複本無影響性之速寫結構概念,[CL04] 提出使用FM-Sketches [FM85],來解決多路徑式資料聚合所產生的重複記數問題。 在[MN05]中,作者提出同時使用多路徑式資料聚合與樹狀式資料聚合來進行高可靠度無線感 測資料聚合;在網路通訊失敗率較高的地方使用以FM-Sketches 為基礎之多路徑式資料聚合, 而在網路通訊失敗率較低的地方使用一般的樹狀式資料聚合。然而,使用此方法需主動管理 並動態切換資料聚合模式,頻繁地切換各區域所維持的資料聚合模式,將造成額外的能源消 耗與能源利用率下降。在[SB04]中,作者則探討較複雜的資料聚合函式計算,如中位數(median) 與統計條狀圖(histogram),此文獻中假設並無網路通訊失敗的情形,並將焦點置於感測器觀 測值的統計資料儲存結構之設計。在[CP06]中,作者提出利用重複的隨機資料交換程序(data exchanging process)的方法來計算無線感測器網路中資料聚合值。在一次隨機資料交換程序 中,網路中的感測器節點隨機的成為主導節點。成為主導節點的感測器節點利用廣播邀請其 鄰居來形成感測器群組,群組中的節點將其所儲存的部分資料聚合值傳遞給主導節點。主導 節點接收其群組所傳遞之部分資料聚合值後,計算新的部分資料聚合值,並廣播予群組中之 節點。利用如此的隨機資料交換程序,各感測器節點所儲存的部分資料聚合值將逐漸收斂至 正確的資料聚合值。然而使用這樣方法的缺點為需要多次的隨機資料交換程序,造成感測器 能源的消耗與查詢結果回報的延遲。 3、可擴充式之感測器區域資料聚合查詢處理 近年來有許多論文在處理分散式資料串流系統中,多個聚合查詢最佳化,以下列出較新 的論文所致力的方向。[SY07]提到在資料串流系統上做聚合式查詢時,由於資料經過聚合過 後便無法還原,所以節點在轉傳資料的過程中,必須選擇先將轉傳的資料做聚合,或是僅傳 遞原始資料至下一個節點以減少資料的重複傳輸,讓此節點的傳輸量達到最小。這篇論文也 證明對系統做最佳化處理同等於對每一個節點做的最佳化。 [XL06]利用條件式、時間區段和選擇性(selectivity)對查詢做評分(分數越低越好),將原 本使用者提出的多個查詢兩兩配對,將兩個分數總和較高的查詢合併成一個等價且分數較低 的查詢,以較少的查詢達成使用者的需求,減少整個系統的傳輸成本。[TJ05][TG06]是在無 線感測器網路中,處理多個有互相重疊區域的聚和式查詢時的最佳化。[TJ05]在固定的樹狀 結構下,盡量做同區域節點的聚合;[TG06]進一步以動態建立樹狀結構的方式,將同區域的 節點放在同一個子樹下。[KW06]利用分割條件式(Fragment)和分割時間區段(Time Shred)來回 答聚合式查詢的方法,先將資料利用分割區段分類,最後再將存在查詢所對應分割區段中的 資料聚集起來作為查詢的答案。 [HG07]引伸[KW06] 分割條件式的部份來處理在分散式資料串流環境中有效的處理多個 聚集式查詢的問題。這篇論文將 m 個分割區段和 n 個查詢的關係以位圖(Bitmap)的形式表示 成m x n 的矩陣,矩陣中若第 i 個分割區段的資料符合第 j 個查詢,則矩陣的(i , j)位置設成 1, 此矩陣稱為分割矩陣(Fragment Matrix),而其一個分類(矩陣的一行)稱為一個分割(Fragment)。 每個分散式的節點根據此m x n 的分割矩陣,將收到的串流資料分類成 m 類,產生 m 筆部份

(5)

聚合值傳回根節點。用此方法,整個系統傳輸成本正比於 m,所以這篇論文進一步提出方法 壓縮分割矩陣,降低m 的大小。 4、多重事件串流之段落規則探勘 一個段落可用一有向非循環圖來表示之。在此圖中,每個點(Node)表示一個事件。假設 點A 和點 B 存在於段落 E 中,若存在一個邊(Edge)由 A 指向 B,則表示事件 A 在事件 B 之 前發生;相反的,若點A 和點 B 之間沒有邊存在,則表示事件 A 和事件 B 發生的先後順序 不重要。對於一個段落,我們通常會定義一個時間界線(Time bound),規定該段落裡的所有事 件,都必須在此時間區間裡面發生;接著,便可在時序資料上統計滿足時間界線的段落發生 (Occurrence)次數,用以判定此段落是否為經常發生的段落,然後再從高頻段落(Frequent Episode)來推導至段落規則。統計滿足時間界線的段落發生次數,主要可分為兩種類型:視窗 基礎型策略(Window-based Strategy)及最小發生策略(Minimal Occurrence Strategy)。在視窗基 礎型策略中,主要是利用一長度等於時間界線的視窗,於時序資料上滑動,並計算包含某一 段落的視窗總量。在此策略中,一個特定的段落發生可能會多次計算,原因來自於該段落發 生可能會包含於不同的視窗中。而另一方面,在最小發生策略中,針對某一段落而言,則是 計算其滿足時間界線的段落發生次數,且此段落發生中必不包含其他段落發生。舉例而言, 假設時間界線為3,我們要計算特定段落 E 的發生次數,那麼 E 在時間段[1, 3]中的段落發生, 會因為E 在[1, 2]中的段落發生而不被計數。 Mannila et al.於[MT96] [MT97][MV95]中分別針對視窗基礎計數策略及最小發生計數策 略提供了 WINEPI 及 MINEPI 演算法,來探勘高頻段落。在這些研究中,主要皆分別考慮序 列段落(Serial Episode)與平行段落(Parallel Episode),起因於其他所有段落皆可由序列段落及 平行段落所組成,而這些相對應的演算法則都是利用 Apriori 基礎[AS94]的方式所設計。 Mannila et al.於[MT97]中則將高頻段落探勘的研究觸角延伸至段落規則探勘研究。所謂段落 規則,其實是描述當一段落發生後,另一段落可能會發生的法則。Harm 等人則是更明確的限 制了段落規則中兩個段落的發生時間,進而發表了一MOWCATL 演算法於多重序列中探勘段 落規則[HD04] [HD02]。在[HD04]中所提及的序列規則(Serial Rule)是一特別的段落規則,限 制規則裡的段落皆為序列段落。一序列段落可表示成下面的形式:X→LY 其中 X 和 Y 皆是序 列段落,而L 則是一固定的時間延遲(Time Lag),規則前述的序列段落稱之前導(Precursor)而 後述的序列段落則稱之後繼(Successor)。此種規則描述當 X 發生時,Y 很可能會在 L 個時間 單元後發生。另外,在[Mie04]中將序列段落探勘的問題,延伸至事件串流的環境中, 而 Laxman 等人在[LS07]中,同樣也是考慮於事件串流的環境中,探勘高頻段落,但他們則是同時從序 列段落及平行段落下手,進行相關探勘演算法設計。 5、事件串流之段落比對技術

事件串流之段落比對的相關研究包括主動式資料庫管理系統(active database management systems),發行訂閱系統(publish/subscribe systems),以及在資料串流上的複雜事件處理系統 (complex event processing systems) 。 在 主 動 式 資 料 庫 管 理 系 統 中 , 當 滿 足 ECA 規 則 (Event-Condition-Action-Rules)的述語(predicate)描述出現時,即觸發即時性回覆。一般而言, ECA 規則的述語為合成事件(composite event) [DB88],而合成事件又由較簡易的合成事件或 是原始事件(primitive events)所組合而成。在過去的數十年間,如 HiPAC [DB88]、Ode [GJ92] [GJ92a]、Snoop [CK94]、SAMOS [GD92] [GD94]和 NAOS [CC96]等計畫已發展出多個主動式 資料庫管理系統。

(6)

在傳統的發行訂閱系統中[AS99] [DG06] [FJ01],傳送者會發行一事件、或訊息和新聞給 接收者。此事件是由一對屬性值(attribute-value pair)所組合而成。而接收者則可經由給定一對 屬性值運算子(attribute-value-operator pair)來訂閱其感興趣之相關內容。[AS99]利用樹狀結構 來建立所有使用者的訂閱資訊之索引,在此結構中,一條從根結點(root)至葉結點(leaf)的路徑 可代表一使用者訂閱。由不同使用者所發出之相同訂閱,皆會與此路徑相連結。假如一發行 事件能夠由此結構的根結點到達某一葉結點,則代表此事件滿足對應於此路徑的訂閱。[FJ01] 是在有限的記憶體資源下,建立訂閱群組(subscription cluster),並利用雜湊函數(hashing function)來降低存取群組的成本。在[DG06]中,訂閱內容可由多個事件來組成,而作者以非 決定的有限狀態自動機(nondeterministic finite state automata)為基礎,發展一有效率訂閱索引 結構。在此結構之下,可同時處理多個使用者訂閱資料。隨著 XML 的風行,進階的發行定 閱機制[AF00] [CF02] [DF03] [PC03]多半應用於擷取使用者感興趣的 XML 文章。在這些文獻 中,它們利用X 路徑表示式(XPaths expression) [CD99]來描述使用者訂閱。當 XML 文章以串 流方式進入系統時,它們便根據使用者給定的X 路徑表示式,對 XML 文章進行比對。在此 領域中,大部份的研究[AF00] [DF03] [PC03]都以有限狀態自動機(finite state automata)為基 礎,發展各自的比對演算法,用以解決複雜的X 路徑表示式。此外,[CF02]和[DF03]則是從 使用者的X 路徑表示式中擷取共同的子表示式(common sub-expression),用以建立索引來同時 處理多個查詢。 在資料串流上的複雜事件處理系統中,[WD06]針對射頻辨識(RFID)的資料串流提出了一 事件序列查詢模組,用以處理帶有屬性值的事件。在射頻辨識的環境下,也有其他的資料串 流管理系統如[FJ05] [WL06]。在這些研究中,它們各自提出自己的查詢模組和系統架構。至 於在以關聯式運算子為主的資料串流管理系統中[AN04] [BM04] [VN02],多半著眼於有限資 源下,如何達到最佳化查詢計劃(query plan)。 6、感測器交易串流之高頻樣型探勘技術 近幾年來高頻樣型探勘在資料串流上的相關研究,主要可以依據使用者所決定的新近資 料重要程度,概略分為三種模型分別為:滑動視窗模型(Sliding Window Model),隨時間淡出 模 型(Time-fading Model)及地標模型(Landmark Model)。在滑動視窗模型中的相關研究 [CKN06][LCW05][LK06] [MTZ08],強調的是位於滑動視窗中資料的重要性。當一筆交易移 出滑動視窗之後,該交易對其相關樣型支持度的貢獻就會跟著移除。為避免滑動視窗模型中 視窗參數的設定不當可能會流失部分季節性樣型(Seasonal Pattern)的隱憂,Calders 等人於 [CDG07]中定義另一種支持度的算法,也就是計算最大頻率(Max-Frequency)用以當作樣型支 持度。所謂最大頻率的概念即是:從目前時間點到過去任一時間點皆可形成一視窗,且我們 可以算出某樣型在此視窗內的支持度,當所有視窗對應的支持度皆被求出之後,這些支持度 中的最大值,即為最大頻率。在隨時間淡出模型中的相關研究[CL03][GHP04],強調的是時間 敏感度,也就是新資料的重要性會較越早期的資料來的高。 在地標模型中,會利用一地標時間點(Landmark),來表示系統起始時間,而使用者想獲 得的高頻樣型,即是落在地標時間點到目前時間點之間的那些高頻樣型。在地標模型中的相 關研究主要可分為虛假導向型(False Negative Oriented) [YC04]及虛真導向型(False Positive Oriented)[JA05][LLS04] [MM02]之演算法。虛假導向型之演算法強調的是,由此類演算法所 探勘而得的高頻樣型,一定是真正的高頻樣型,但並非全部真正的高頻樣型都包含在探勘結 果中。另一方面,虛真導向型之演算法強調的是,此類演算法一定能探勘出所有真正的高頻 樣型,但其結果可能同時包含非高頻樣型。Manku et al.在[MM02]中發展了一少算(Lossy Counting)演算法來探勘高頻樣型。此演算法主要的原理是,僅在系統中記錄較高頻的樣型,

(7)

而且盡量快速地將低頻樣型給移除。然而,由於為了達到樣型之真正支持度和估計支持度之 差值能小於使用者所定義的錯誤參數值(Error Parameter);因此,該演算法必須將支持度超過 錯誤參數的樣型全部儲存,而造成系統記憶體大幅被佔用。建構於Lossy Counting 演算法的 精神之上,[LLS04]利用直接儲存交易資料及投影子交易資料(projected sub-transactions)來減少 記憶體使用,但此法卻使得探勘時間大幅增加。在[JA05]中,Jin 等人是將多數演算法(Majority Algorithm) [FS82]的觀念用於探勘高頻樣型,發展了一個入核心(In-core)演算法。在此演算法 中,長度為一的樣型,也就是項目,是全部儲存於記憶體中,而多數演算法是用來處理長度 為二的樣型,至於長度為三以上之樣型,則利用Apriori 特性[AS94]來產生。但在此方法中, 必須利用一無限制大小的緩衝器(Buffer)來儲存串流中的交易,以便於產生長度較長之樣型 時 , 能 透 過 多 次 掃 瞄 這 些 交 易 來 得 到 其 支 持 度 , 較 不 適 用 於 串 流 資 料 的 線 上 探 勘 (Online-mining)。Dang 等人則是在[DNO08]中提出了線上處理模式(online-processing mode)來 探勘高頻樣型,相對於[MM02][YCL04]中所提之批次處理模式(batch-processing mode),在 [DNO08]中所提之 EStream 演算法會即時處理每筆新產生之交易;然而,該演算法中卻限制 了高頻樣型的最大長度,而無法探勘出所有高頻樣型。 7、感測資料結合查詢處理技術 在資料串流環境中,結合查詢處理為近年來熱門的研究課題。然而,在資料串流環境中 處理結合查詢的技術皆使用的集中式處理架構,並不適合直接引用至感測器資料串流的環 境。感測器資料的結合查詢處理的相關研究近年來也漸受注目。在[YG03]中,作者將感測器 網路視作一個大型分散式資料庫,提出使用SQL 類似的查詢,來管理感測器資料的蒐集。並 使用內網路查詢處理機制(in-network processing)來處理選拔查詢與資料聚合查詢。對於結合查 詢,[YG03]則採取將所有資料收集到感測器網路主機,並在該主機上進行資料間的結合操作。 [HA04]則進一步探討處理感測器資料結合查詢時,感測器資料由於網路傳遞間的延遲所衍生 的查詢處理問題。然而,這兩個方法亦使用集中式處理架構,故消耗大量的感測器能源,造 成感測器應用上使用效率的低落。 [CG05]探討兩群感測器節點的讀數要進行內網路結合操作時,尋找感測器網路中最佳結 合操作之執行地點的問題。文中主要焦點著重於理論上探討,並做了許多強烈的假設,如感 測器網路佈置區域中任何地點皆擁有感測器節點等,使得文中所提出的技術在實際應用上並 不可行。[YL07]則在感測器網路中利用自我結合(self join)的查詢,進行感測器觀測值趨勢與 變化之監測。作者提出查詢重寫技術(query rewriting),將使用者所下達的自我結合查詢,改 寫成兩個選拔查詢以利查詢處理之進行。作者並針對多個查詢連續下達時,設計一個查詢執 行排程的機制來避免不必要或重複的查詢處理。[SM05]則在一個特殊階層式感測器網路架構 下(越上層的感測器節點擁有越低的查詢處理花費與越低的網路傳輸成本)執行一個選拔查詢 的多個選拔語句(selection predicate)。資料由階層式感測器網路最底層的節點產生所產生,經 過層層的感測器節點的轉傳與處理,最終完成與傳遞查詢結果於階層式網路之最上層節點。 當資料於階層式網路最下層產生時,有兩種選擇來進行查詢處理。第一個選擇為,先將資料 在階層式網路較下層的節點進行部分的處理,以減少資料的傳遞成本。第二個選擇為,將資 料傳遞到階層式網路較上層節點處理,以減少資料處理的成本。很明顯地,兩個選擇彼此間 有衝突,因此如何尋找一個最佳的查詢處理工作節點配置,成為[SM05]查詢執行的效率關鍵 所在。

(8)

8、多重交易串流之高頻樣型分散式探勘技術 有鑑於前述多重交易串流之分散式高頻樣型探勘研究的背景目的,我們擬將欲設計之分 散式系統建構成一連續分散式模型;因此,在此部分相關研究討論中,我們將探討目前於連 續分散式模型上的相關研究。所謂連續分散式模型[CM07]其架構如下:有多個遠端網點 (Remote Site),且每個遠端網點會監控一資料串流,而另有一伺服器(Server)其主要的功能是 來作為所有遠端網點的協調者(Coordinator),在此一分散式系統架構下,伺服器端會在所有資 料串流的聯集上,持續監控一特定任務(Task),我們可將之視為伺服器端會於所有資料串流的 聯集上執行一特定計算函數(Computational Function),如分群(Clustering) [CM07]、越門檻計 數(Thresholded Counts) [KC06]、複本回復(Duplication Resilient) [CM06]、前 k 監控(Top-k Monitoring) [BO03]、追蹤集合表示(Tracking Set Expressions) [DG04]及分位數(Quantiles)監控 [CG05]等。

在此模型下,多半不考慮由網路所造成的訊息延遲(Message Delay)、封包遺失(Packet Loss) 或是同步(Synchronization)議題等,而假設在傳輸過程中,傳送者將資料送出的瞬間,接收者 便可收到,進而將問題化簡成,監控結果正確性(Correctness)及準確性(Accuracy)完全取決與 所設計之相關演算法。在此模型下,監控特定任務的分散式演算法之設計,大約可歸納為下 述考量[CM07]: 1、在此分散式演算法下的溝通花費(Communication Overhead):此溝通花費多半和演算法的 準確性及使用者容忍的誤差有絕對關係。 2、遠端網點和伺服器之空間使用量:針對降低遠端網點和伺服器空間使用量的考量,通常遠 端網點和伺服器可透過對串流資料建立摘要的方式,避免儲存完整串流而過於浪費空間。 3、溝通時機的決定:溝通時機通常可透過使用者所容忍的誤差範圍,訂立遠端網點和伺服器 間之溝通規則(Communication Constraints)來決定之。 4、遠端網點及伺服器間之資訊共享(Information Sharing)情形:此情形關係到整個分散式架構 是單向傳輸,即由遠端網點至伺服器,或是雙向傳輸,亦影響了演算法之溝通花費計算。 另外有別於連續分散式模型,在[MS05]中,則是考慮於在多層樹狀架構下的分散式環系 統境中,套用Lossy Counting 演算法[MM02]來探勘高頻項目。此研究著眼於建立溝通花費的 計費模型,來評估各層架構間之誤差參數。 二、研究方法、進行步驟及執行進度報告 我們於過去三年中所發展之兩項關鍵技術:『感測器資料收集技術』及『感測器資料探勘 /查詢處理技術』,成果報告如下所示: 感測器資料收集之成果報告 1、感測器感測頻率管理技術 研究目的 在智慧型感測器應用中,通常由多個智慧型感測器構成一個感測器網路系統,系統中的 感測器透過感測模組,偵測感測器的周圍環境或者某個特定目標。由於感測器的硬體設計以 成本與體積為主要考量,因此感測器本身所配備記憶體以及運算能力均受到極大的限制。此 外,感測器系統多用於過去資料難以收集或收集需付出極高成本之應用,因此現行的感測器

(9)

主要利用電池供電。然而,利用電池供電的方式,即使電池技術再進步,所能提供的能源終 究有限,當感測器電池耗盡時,感測器電池的更換或充電通常是不可行或需昂貴的人力操作。 因此,在感測器系統相關研究中,如何在系統資源受限的環境下,進行具高效率的資料收集 與傳輸操作,成為此類研究的焦點所在。 一個感測器的行為通常可分為感測資料、運算資料、接收資料和傳送資料等,其中又以 傳送資料最為消耗電力,我們希望在以監控為目的的感測器環境之下,發展一有效節能的資 料 獲 取 方 法 。 現 有 的 方 法 有 兩 大 種 類 分 別 為 Model-based Suppression 和 Value-based Suppression。前者缺點在於:於一大型的感測器網路中,model 的建立和維持,對資源有限的 感測器節點來說較為昂貴且不實際;而後者缺點在於仍然需要去執行感測動作,才能進行讀 數的比較並評估讀數是否傳送。在某些應用中,感測動作所消耗的能源極可能與傳遞所需的 能源相同,換言之,在某些應用中,Value-based Suppression 方法並不適用。有鑑於此,我們 提出一個僅需要基本運算且維持少量資訊即可以達到節省感測器資料收集節能目的的方法。 研究方法 我們發現在許多的感測器應用環境底下,所收集的資料都會呈現一種具有周期性的資料 分布趨勢。很多情況下感測器讀數展現出時間的周期性,例如光度讀數通常都是白天開始增 加直到過了中午之後開始下降,因此在我們的研究中著重在於利用時間週期性的樣型,改進 在 無 線 感 測 器 網 路 中 連 續 性 資 料 收 集 應 用 的 效 能 。 我 們 提 出 一 個 新 的 方 法 PSDA (Periodicity-based Sensor Data Acquisitions) , 此 方 法 包 含 了 兩 個 主 要 的 元 件 : PSDA model-constructer 與 PSDA reporter。 前者會從過去的感測器節點讀數中學習到周期性並產生 某個周期的各時間點的PSDA model。後者於 PSDA models 產生後會告訴一個感測器節點何時 要獲取資料且要傳送何種資訊給base station。 假設一個無線感測器網路是由一群感測器節點的集合還有一台沒有能源及記憶體限制的 base station 所組成。首先我們可從感測器節點讀取連續的讀數來當作歷史資料,然後利用已 知其他演算法來找出個別在感測器節點讀數中產生之周期。PSDA 方法的主要想法為:在資 料不可被預測時,才進行感測器資料的擷取動作。因此,必須有分辨週期內的各時間點的可 預測性。如果某時間點的讀數獲取是在被保證準確性底下可以被估計的,那麼就是可以預測 的。如果說PSDA model 指出讀數的獲取是可以預測的,則感測器節點讀數的平均值就被當 成估計獲取的讀數值。反之,感測器節點就要真的去執行感測動作。

PSDA reporter 的基本概念是隨著 PSDA model,我們可以決定感測器節點讀數的可預測

性。基本想法為:當某個感測器節點的PSDA model 建立好後,PSDA reporter 傳送一個序列 給對應的感測器節點,然後該感測器節點根據此一序列去執行感測動作。然而,這方法的主 要缺點在於,我們無法察覺 model 的改變。因此,我們額外定義一個由使用者決定的最大延 遲容忍參數τ,來指出使用者對異常值警戒的最大延遲。所謂異常的發生就是指某個時間點 的PSDA model 應該做更新操作。隨著參數τ,在每個周期的開始,base station 都會計算各 感測器節點的PSDA report 給個別的感測器節點用來指出在各時間點,是否該執行感測動作。

2、感測器資料聚合處理技術

研究目的

(10)

詢,如平均、總和、記數、最大值等,也廣為使用,如應用在平均雨量回報及活動中之感測 器節點數回報等。現階段常見的資料聚合方式乃是採用樹狀式資料聚合計算。首先,建構一 以主機為根節點(root)的擴張樹(spanning tree),用以連接各感測器節點。而資料聚合則由葉節 點(leaf)開始層層進行:各節點接收其子節點所傳送之部份聚合值,結合本身所觀測之資料, 計算出新的部份聚合值,再往母節點傳送,如此一來最終便可於根節點計算出完整聚合值。 此聚合方式的缺點,主要為通訊容錯能力不佳;造成許多節點的部份聚合值可能因通訊失敗 而遺失。若該通訊失敗之節點位於根節點附近,將造成大量資料遺失,使得最終計算所得之 聚合值遠遠偏離實際聚合值。 欲提升感測器資料聚合計算上的通訊容錯能力,可選擇採用高可靠率的通訊協定,但卻 因此增加感測器能源上的消耗。因此,在使用簡易通訊協定前提下,以多路徑式資料傳遞為 基礎來提升其通訊容錯力,廣為相關研究所使用。在多路徑式資料聚合計算中,感測器系統 以有向非循環圖,來連結各感測器節點,而感測器節點則經由廣播將其部分聚合值傳至其上 層節點。由於一筆部分聚合值有多筆複本在網路中傳遞,唯有在所有複本皆遺失的狀況下, 才會造成部分聚合值的遺失,因此提升了聚合計算之通訊容錯能力。但也因此造成相同資料 可能被多次接收,衍生出重複計數的問題。重覆計數在某些查詢下,並不會影響查詢結果, 例如求取擁有最大溫度值的感測器編號;但對於某些聚合查詢,例如回報活動中之感測器節 點數,將造成錯誤的查詢結果。有鑒於此,我們以多路徑式資料遞送方式為基礎,設計一具 高可靠度、高準確率與高能源效率之感測器資料聚合計算方法。 研究方法 我們延伸線性計算速寫技術(linear-counting sketches)[WV90]來避免多路徑式資料聚合中 重複計數問題。此技術主要包含一隨機雜湊資料結構。給定一多重集合,其使用方法如下: 首先,配置一長度為 m,初始值為 0 的位元陣列(bit array)。同時,使用一均勻雜湊函式(hash function)將多重集合中的所有元素對應至位元陣列,並將所對應到的位址值設定為 1。最後計 算位元陣列中,所有位址值非 0 的位址數目(Vn),透過 ˆn  m ln( )Vn 公式即可估算多重集合 中相異元素數量。透過此技術,在多重集合中之相同元素會被對應至相同位址,避免重複 計算。基於線性計算速寫技術我們可設計一資料結構,根據使用者的允許誤差與誤差值變異 數,來設定資料結構長度;可以想見,此資料結構的長度應與真正的資料聚合值有關。然而, 最終的資料聚合值在決定資料結構長度時是未知的,因此過去常使用真正資料聚合值的上限 來決定資料結構長度。此法之副作用有二:1、資料結構長度過長及 2、離網路主機較遠之節 點所傳遞之位元陣列大部分位址值為0,造成大量能源消耗。因此我們提出一個新式演算法, 動態調整資料結構長度,以避免上述二缺點。我們的方法進行步驟如下: 步驟一: 使用動態計數速寫結構表示感測器資料 首先,令所有參與資料聚合的節點 ui,根據其感測資料值 vi,配置一長度為 mi之動態計 數速寫資料結構。一個節點的動態計數速寫資料結構 DC(BI, CV)包含一個定址索引元件 BI (border Index)與一個計數向量 CV (counting Vector)。圖一為我們所設計之動態計數速寫資料 結構之概念圖。定址索引提供不同節點之計數向量長度索引位置,而計數向量則為一初始值 為 0 之位元陣列。接著,所有節點 ui將其計數向量隨機均勻地設定 vi個元素為1,並將定址

(11)

圖一:動態計數速寫資料結構

步驟二: 內網路動態計數速寫資料結構聚合計算

接著,由網路最底層的節點開始,將其資料結構廣播到其上層節點。收到動態計數速寫 資料結構之節點,將其本身之資料結構與接收到之資料結構進行內網路資料聚合(in-network aggregation)。此聚合動作定義如下:給定兩個動態計數速寫資料結構 DC1 (BI1, CV1)與 DC2 (BI2,

CV2),若|CV2| ≥ |CV1|,則 DC1與 DC2之總和 DC3 (BI3, CV3)滿足 1、BI3 = BI1  BI2與2、CV3[i]

= CV1[i]  CV2[i],  i = 0, …, |CV1|  1,且 CV3[i] = CV2[i],  i = |CV1|, …, |CV2|  1。接著該節

點將聚合過後的資料結構以此類推地往其上層節點傳送,直至所有動態計數速寫資料結構集 合於網路主機節點。 步驟三: 近似資料聚合結果計算 待所有動態計數速寫資料結構集合於網路主機節點後,主機會將所有動態計數速寫資料 結構聚合,產生一最終動態計數速寫資料結構,並根據此結構之定址索引與計數向量所提供 之資訊,估算近似資料聚合結果並回傳予使用者。 實驗結果 在本研究中我們實作所提出之方法(DCS)並與 LC[FC08]及 FM[CL04]進行比較。圖二為近似 資料聚合結果準確率的比較圖表,在使用相同空間時,動態計數速寫資料結構提供較高準確 率,同時也兼顧能源效率。同時,由圖三可得知, DCS 使用較少的傳輸量來達成使用者所 給定的誤差需求。 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 Loss Rate DCS LC FM Average R elative Error 圖二:準確率實驗比較 0 500 1000 1500 2000 2500 3000 3500 4000 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 Confidence Probability R equi re d M es sa ge S iz e (b it s) FM DCS 圖三:所需空間實驗比較 定址索引 計數向量

(12)

3、可擴充式之感測器區域資料聚合查詢處理 研究目的 感測器本身具有資料傳輸與資料運算的能力,這些感測器因為是以電池供應電力,所以 存在電力與儲存空間的限制。其中,以感測器之間的資料傳輸消耗最多的電力成本,所以如 何減少感測器之間的資料傳遞已成為一重要的問題。在感測器網路中經常會同時處理多個查 詢,且這些查詢之間通常有重複的計算,因此感測器節點之間可以彼此分享計算結果,然而 在此同時,感測器節點必須負擔分享計算結果之傳輸成本,有鑑於此,如何在感測器網路內 決定感測器之間是否要共享計算為本研究的重點。 研究方法 為了有效率的處理查詢,我們先對空間區域(Spatial Region)與傳輸拓撲(Communication Topology)的關係進行分析,且利用分支定界法(Branch and Bound)將查詢中部份重疊的區域做 適當的重組,以降低感測器網路中的傳輸成本。此外,我們提出了一個貪婪演算法(Greedy Method),在常數時間內回傳一個近似於最佳解的答案。由實驗結果得知,採用上述的做法確 實可以在同時處理多個查詢時,能有效地降低整體傳輸成本。 在本研究中,是以矩陣方式儲存感測器所感測到的讀數,我們將該問題分成兩個部份: 只有兩個查詢有部分重疊、及多個查詢(三個以上)之間有部分重疊。就只有兩個查詢有部分 重疊而言-將兩個查詢各自包含的區域與重疊的區域分開,分別去計算每一感測器節點往上

傳輸的成本,該成本的評估方式分成In-region cost 和 Relay cost 兩種成本,In-region cost 表示

所有感測器節點傳輸給該區域所需要花費的成本;Relay cost 則是代表中間節點傳輸的成本。 另一方面,就多個查詢(三個以上)之間有部分重疊而言-計算當每多一個查詢所增加的 計算成本之上限,在此過程中,會對所有可能性的方法計算上限。接著,我們提出一個分支 定界法,對已計算好的各個區域矩陣之 In-region cost,利用各矩陣本身的成本和其相減,得 出一最小的Relay cost,再利用其結果計算各種情況的下限,選擇各自計算與計算共享哪一個 有較小的計算成本,若是在某些情況下,其計算成本已超出該值則刪除不予考慮。根據觀察 發現,在區域大小不超過總面積的40%*40%時,應該選擇各自計算的成本花費較小;相反地, 當區域大小超過總面積的40%*40%時,共享計算所花費的成本相對較小,因此利用上述的觀 察,最後使用貪婪演算法得到一近似於最佳解的答案。 實驗結果 圖四:分支定界法與貪婪演算法之執行時間比較

(13)

圖五:在不同大小的查詢區域下各種情況的比重 在實驗部份中,我們將100*100 感測器環境的密度設定為 50%,查詢區域數為 3 至 4 個, 區域大小分別為 70*70, 80*80 和 90*90,換言之,區域和區域之間存在很大的重疊部分。圖 四呈現貪婪演算法和分支定界法在不同查詢區域所花費的執行時間,其中,貪婪演算法明顯 優於分支定界法,尤其在四個查詢區域時,分支定界法所花費的時間約是貪婪演算法的一千 倍。此外,圖五呈現在不同大小的查詢區域中,分享計算、個別計算與其他情況分別所佔的 比重。 在本研究中,我們探討在感測器網路中,多個查詢彼此之間存在部分重疊的區域時,應 該如何節省傳輸與計算成本,且亦分析如何切割區域和矩陣之間的關係,以得知所有感測器 節點的最小傳輸成本。使用分支定界法來找到最佳的區域矩陣組合,且利用貪婪演算法求得 近似於最佳解的答案。由實驗結果得知,我們提出的演算法在重疊區域愈多時,愈能顯示其 優點。 感測器資料探勘/查詢處理之成果報告 1、多重事件之段落規則探勘研究 研究目的 在靜態資料庫中探勘段落規則的研究,早已發展多時,主要皆起因於段落規則能廣泛地 應用於預測上。然而在多數應用環境,例如:交通管理系統或無線感測器網路等應用中,伴 隨著高速通訊及運算能力,多半資料皆以串流形式進入系統。在串流環境中,若系統無法立 即偵測出這些事件,它們可能一閃即逝。若我們能將某些特殊事件應用在預測上的確是別具 意義的,特殊事件的發生可能意味著在時間延遲內,未來某些其他特定事件將會發生。但由 於快速的資料生成速度及資料不間斷地產生之特性,使得於串流資料上探勘段落規則的困難 度,更勝於靜態資料庫。 研究方法 在本研究中,我們將探勘段落規則的研究,縮小至探勘具時間延遲性序列段落規則(serial episode rules with time lags)。我們假設多重串流資料皆為同步發生,因此,序列段落(serial episode)則可視為一連串的項目集(itemset)。首先我們利用字首樹(prefix-tree)結構來儲存序列 段落,以利儲存空間之節省。同時,因為在產生序列段落規則時必須檢查是否滿足時間延遲 之條件,故除了記錄序列段落之發生次數(support count)外,也需要把時間資訊記錄下來,以 利產生序列段落規則。在本研究中所提出的方法,乃是採用最小發生策略(minimal occurrence strategy)之計數方式來計算序列段落之發生次數。針對於不同的序列段落規則產生方式,我們 提出了LossyDL 和 TLT 演算法,分述如下:

(14)

LossyDL 演算法的精神主要是將序列段落的所有最小發生(minimal occurrence)資訊記錄 在字首樹中。當使用者要求產生序列段落規則時,則將序列段落支持度(support)大於門檻值 的任兩項序列段落之最小發生資訊取出,互相比較、結合,以評估該序列段落規則的支持度 及信心水準(confidence)是否有超過門檻值。隨著時間過去,此字首樹所佔用之記憶體將會越 來越多,其中包含了許多低頻(low support)的序列段落。為了避免佔用過多記憶體空間,我們 利用少算演算法(lossy counting) [MM02]來降低記憶體使用,其作法乃是給定一個錯誤參數值  (error parameter),當資料串流的長度可整除 1/時,則對字首樹中的每個節點皆移除其時間 最久之最小發生記錄。 TLT 演算法不同於 LossyDL 演算法的地方在於,每個節點中僅記錄最後兩筆最小發生資 訊,以利更新序列段落之發生次數,且利用時間延遲表格(time lag table),來記錄時間資訊之 摘要。時間延遲表格為一兩維表格,其內容記錄所有在時間延遲內簡化序列規則(reduced serial rule)的發生次數。當使用者要求產生序列段落規則時,任兩個支持度滿足門檻值的序列段落 即產生一候選序列段落規則,接著我們再利用支持度與信心水準的關連性所產生出來的刪除 法則,檢驗該候選規則是否可被刪除,若無法被刪除的規則,即視為有意義的序列段落規則, 回報給使用者。 從圖六來看,由於TLT 中僅記錄時間摘要,且利用支持度與信心水準之間的關連性來產 生刪除法則,因此 TLT 的準確度較 LossyDL 為低,但在圖七中卻顯現出 TLT 所需的記憶體 空間較LossyDL 所需之記憶體大為節省。 Precision (Traffic) 0 20 40 60 80 100 0.1 0.2 0.3 0.4 0.5 minconf P rec is io n ( % ) precision(LossyDL):minsup=0.07 precision(TLT):minsup=0.07 precision(LossyDL):minsup=0.08 precision(TLT):minsup=0.08 precision(LossyDL):minsup=0.09 precision(TLT):minsup=0.09 圖六:LossyDL 及 TLT 之準確度比較 Memory Space (Traffic) 0 500 1000 1500 2000 2500 3000 3500 0 0.05 0.1 0.15 0.2 minsup Me m or y ( K B ) space(LossyDL) space(TLT) 圖七:LossyDL 及 TLT 所需之記憶體比較 2、事件串流之段落比對 研究目的 在多數應用中,資料多半被表示成事件(events),例如:股價的波動、電信網路中的警報 訊息、使用者瀏覽網頁的紀錄、以及在交通管理系統中道路的狀況等等。通常特殊事件的發 生可能意味著未來某些特定事件即將發生,因此我們可將此一特性應用在預測(prediction)功 能上。明確而言,在段落規則(episode rule)已知的前提下,我們可發展段落比對(episode matching)技術來預測事件發生。

(15)

為其後項(consequent),且此一述語及後項皆屬段落(episode)。段落是由一群事件組合而成, 可以一有向非循環圖(directed acyclic graph)表示之。此外,我們設定一述語框架(predicate window)用以規範述語中的事件必須在一限定之時間區間內發生;同時亦設定另一規則框架 (rule window),用以規範整個段落規則中的所有事件必須在另一限定的時間區間內發生。圖 八即為一段落規則之實例,此規則表示若在10 個時間單位內,述語內的所有事件皆按其特定 的發生次序發生,那麼,在後項內的事件,將有很高的機率會發生於15 個時間單位內。由於 前述多數的應用所涉及之事件多半以串流且不間斷的型態進入系統,因此在此研究中,我們 希望能持續監控串流事件,並利用已知的段落規則在事件串流中進行快速比對,以達到線上 預測(online-prediction)功能。

a = high flow & low occupancy

b = high flow & low occupancy

c = high flow & high occupancy

d = low flow & high occupancy 10 mins 15 mins W X Y Z

a = high flow & low occupancy

b = high flow & low occupancy

c = high flow & high occupancy

d = low flow & high occupancy 10 mins 15 mins W X Y Z 圖八:一段落規則之實例 研究方法 為達線上預測的功能,我們將已知段落規則的述語,跟串流資料進行持續性比對,當發 現在某個時間區段內,此述語中的全部事件已按照規範於述語內的順序發生,則此時便會提 出警報(alarm),告知使用者此段落規則的後項極可能會在某一時間範圍內出現。為了有效率 地回報所有可能會發生之後項事件的預測區間,因此我們記錄了述語的最小發生(minimal occurrence)。對於一段落規則而言,在事件串流中的某段時間區間內,有可能會有多個述語 發生;在這之中,不為其他述語的時間區間所包含的一述語發生,即稱之此述語之最小發生。 我們只需擷取出述語的最小發生之開始和結束時間,即可估算出警報所需包含的時間區段, 故本研究提出四個演算法來偵測述語的最小發生,分述如下: DirectMatch:為一非常直接且簡單的方法,透過預存(buffering)方式,我們將新近的事件儲存 在一緩衝器(buffer)中,透過反向掃瞄(backward scanning)緩衝器的方式來找到最新的述語最小 發生 ToFel:為一往前搜尋(forward retrieval)的方法,對於述語中所描述的每個事件都建立一佇列 (queue),用已儲存相對應之事件的發生時間;隨著進入系統的事件,我們不斷更新事件相對 應的佇列。佇列中所記錄的事件發生時間會根據述語中對事件順序的描述,彼此用鍊結相連, 一旦當述語中所描述的最後事件發生時,我們便可透過佇列間的鍊結往前搜尋其他佇列,檢 查是否能產生一完整的述語最小發生。

CBS-Tree:將串流中新近的事件以完全二元樹(complete binary tree)的索引方式記錄,若記錄 在完全二元樹中的事件有L 筆,則此二元樹則有 L 個葉節點,每個葉節點存放一事件和相對 發生時間,每個內部節點(internal node)的資料則是兩個子節點資料的集合。隨著串流資料進 入系統,此結構以由下往上的方式將所有樹節點資料進行更新。CBS-Tree 是個往後搜尋 (backward retrieval)的方法,藉由二元樹狀資料結構所記錄的事件發生時間,能有效率找出述

(16)

語最近的最小發生,避免檢查全部儲存在樹狀結構中事件資訊。 DeMo:亦為往前搜尋(forward retrieval)的一種演算法,此演算法是記錄最近發生(latest occurrence)的開始時間。此法主要是將每個串流中的事件之開始時間記錄於一述語中的最後 一事件上,若目前串流中的事件恰好是一述語中的最後事件,則此時便會檢查此述語的最後 事件上所記錄的所有時間點,判斷能否產生一合法的最小發生。 實驗結果 我們將四個方法實作,進行多項測試比較,僅列出較具代表性的數據如下:圖九的數據 是利用真實交通資料庫測試而得,顯示不同框架大小的情況下,四個方法執行時間之比較。 由於在此資料庫中,事件大都發生在相近的時間點內,因此往後搜尋的方法較為耗時。圖十 的數據則是利用人造資料庫測試而得,在此數據中,四個方法執行時間皆隨框架增大而遞增, 但由於往前搜尋的方法不需再檢查過去的事件,因此對於框架增大影響相對較小。 圖九:交通資料庫測試 圖十:人造資料庫測試 3、感測器交易串流之高頻樣型探勘研究 研究目的 在許多的應用上,如網路監控,無線感測器網路之資料收集等,都必須處理串流型態的 資料。同時,如同以往在傳統資料庫上的資料探勘一般,在串流型態的資料中作資料探勘, 也可能發現許多有用的知識;因此,在資料串流中的資料探勘研究,儼然成為資料探勘領域

(17)

中,非常熱門的研究之一。現存於串流環境中探勘高頻樣型的研究主要包含兩個步驟:持續 更新資料串流的概要結構及從儲存的概要結構中探勘出高頻樣型;然而,大多數的方法都假 設其概要能儲存於系統中,而忽略了非高頻式樣(non-frequent itemset)所佔用的空間,會造成 系統資源大幅度地降低,因此,我們在此研究中,結合了 Lossy Counting [MM02]和 hCount [JQS03]的原理,提出了一新式概要結構,使得原始的資料串流可以儲存於此一固定空間的概 要結構中。 研究方法 如圖十一所示,我們所提出的新式概要結構 hSynopsis,由兩部分組成,分述如下:1、 雜湊表格(hash table):利用一雜湊函數將原始串流資料中每個樣型的資訊,完整記錄在此雜 湊表格中。雜湊表格中的每個位置(entry)皆有三個欄位,分別為該位置被存取的次數、最後 一次存取該位置時的資料串流長度和指向高頻節點(frequent node)的指標。2、高頻節點 (frequent node):將所有高頻樣型的資訊,另外儲存在高頻節點中,以期加速高頻樣型的探勘 過程,在此節點會包含四個欄位,分別紀錄樣型、樣型的真實支持度、預測的樣型支持度和 一指標用以指向下一個高頻節點。 圖十一:新式概要結構hSynopsis 0 1 2 3 4 5 6 7 100K 300K 500K 700K 1000K number of transactions me mor y ( M B) LC, σ = 0.02 LC, σ = 0.006 hM, σ = 0.02 hM, σ = 0.006 ES, σ = 0.02, k = 5 ES, σ = 0.02, k = 15 ES, σ = 0.006, k = 5 ES, σ = 0.006, k = 15 圖十二:hM 與其他演算法所需之記憶體比較 當有新的交易產生時,若該交易中所包含的特定樣型儲存於高頻節點中,則我們可立即 更新其相對應之高頻節點上的相關資訊。倘若該交易中所包含的特定樣型沒有被紀錄於任何 高頻節點中,我們則必須根據雜湊表格中所記載之資訊,回估此特定樣型的過去支持度。若 預估之過去支持度加上目前此交易所提供的支持度高於門檻值,則在相對應的雜湊表位置上 會加入該樣型的高頻節點。另一方面,隨著串流長度的增加,某些高頻節點中所記載的高頻 樣型之支持度也可能相對減小,漸漸地由高頻樣型轉變為非高頻樣型,如此一來,其相對應 的高頻節點則需被移除。 透過hSynopsis 概要結構和支持度估計演算法的設計,我們發展一 hMiner 探勘演算法能

(18)

提供:當使用者要求探勘高頻樣型時,經由檢查高頻節點所記載之樣型,達到立即回報的效 果,同時亦擁有相關的準確度保證。根據實驗結果,hMiner 演算法(hM)的確較為節省記憶體 空間,如圖十二所示。 4、感測資料結合查詢處理技術 研究目的 過去感測器資料查詢處理技術,大部分皆著眼於選拔查詢(selection query)或資料聚合查 詢(aggregation query)。然而,隨著感測器網路技術的成長與應用的普遍,在許多感測器網路 的高階應用中,如物件追蹤、感測器控制、事件偵測等應用,通常需對多個感測器節點觀測 值,進行彼此間之資料關連處理。以物件追蹤為例,考量一賣場中佈置的感測器系統,如圖 十三所示:假設感測器網路中的感測器節點承載被動式無線射頻感應模組(passive radio frequency identification reader),且進入賣場中的顧客購物車上皆配有無線射頻辨識標籤,當 顧客經過感應器時,感應器感應到購物車上的無線射頻辨識標籤時,會產生一筆包含顧客辨 識編號的感測資料,表示該顧客曾經過該感測器所佈置的位置。在這樣的無線射頻感測器環 境下,有這樣的感測資料,我們可利用不同感測器節點所感測出來之資料間關連,進一步得 知使用者在賣場中的行走路徑。 A B C F E D H G I 圖十三:物件追蹤應用 在上述的應用中,我們需對多個感測器節點觀測值彼此間進行資料關連處理。在過去我 們稱這樣不同資料間關連上的處理為結合操作(join processing);然而,現階段感測器查詢處 理技術,並無法有效率地支援與處理感測器資料間結合操作。此外,在過去分散式資料庫環 境中,雖有許多設計良善的資料結合處理技術,然而,有別於過去靜態的資料環境,感測器 系統上的資料處理面臨的是具高即時性的動態資料串流環境,也使得過去的技術無法直接使 用。為避免利用集中處理方式,將所有感測值集中蒐集於感測器網路主機,並在主機上直接 進行感測器資料結合的處理,造成許多不必要的感測器能源消耗,在本研究中,我們針對感 測器資料串流環境的特性,量身設計一套感測器資料結合查詢策略與最佳化技術。 研究方法 我們的感測器資料結合查詢策略與最佳化技術分為幾個部分,分述如下: 步驟一:單一結合查詢處理機制與最佳化演算法設計 當使用者下達查詢時,我們需要一套感測器結合查詢處理機制來處理使用者查詢。一個 結合查詢通常會有許多等價的執行規劃,不同的執行排程順序,會造成不同的處理花費、執 行效率,及資料處理延遲。因此,我們設計一感測器結合查詢之最佳化演算法,該演算法根 據現下的感測器資料串流統計資料,分析所有可能的查詢規劃,產生一個最佳的結合查詢規

(19)

劃。例如,如圖八中所示,針對路徑查詢DCBA,我們可選擇先將於 D 節點所新產生 出來的資訊,送至C 節點進行比對,看是否有結合結果產生,若於 C 節點並無結合結果產生, 則該資料之查詢處理將可中止。但若於C 節點有結合結果產生,則我們將所產生之結合結果 再送至節點 B 而後節點 A 進行相同運算。尤以上觀察可知,針對圖八中之路徑查詢 DCBA,我們將有(DCBA)、(DCAB)、(DBCA)、(DBAC)、 (DACB)與(DABC)共六種可行之查詢規劃。如何從中挑選或避免最差之查詢規 劃,成為單一結合查詢處理機制之關鍵所在。我們提出一個花費模型來模擬各種查詢規劃之 預期花費,並且近一步地以該花費模型設計一最佳查詢規劃挑選演算法,該演算法根據貪婪 法則(greedy method)於每步驟挑選結合對象時,挑選最不可能產生結果之對象進行進行結合比 對,以求若最終無查詢結果產生時,能儘早將查詢處理給終止,減少不必要的感測器能源消 耗。 步驟二:多個結合查詢規劃之合併執行策略設計 當感測器網路朝向大規模建置發展時,可以想見,感測器網路面臨的將是一個同一時刻 有多個不同查詢下達的應用環境。在這樣的環境下,除了有效率的執行單一查詢外,若我們 能從眾多查詢中找出可共用的子查詢,依此規劃查詢執行策略,並分享這些子查詢所得到的 結果,將有助於提升感測器網路資源的整體使用率。再以圖八中之查詢為例。於圖八中,我 們給定兩個路徑查詢分別為 DCBA 與 DEBA。由於兩個查詢間有相同的子查 詢,獨立執行的方法除了無法分享相同子查詢結果外,由於感測器節點間的通訊依賴無線傳 輸協定,鄰近區域的節點間會面臨彼此間的通訊干擾與衝突,造成感測器能源利用率的下降 與查詢處理效率的低落。有鑑於此,我們系統化歸納最佳的多個結合查詢之合併執行模式, 利用多個結合查詢彼此間的相同子查詢,來提升感測器資料結合的操作效率與感測器能源的 利用率。我們提出一搜尋空間設定演算法,將所有有可能之共同查詢執行系統化地歸納與整 理。此外,我們進一步地提出多種最佳共同查詢執行策略來有效率且準確地於所建立之搜尋 空間找尋最佳共同查詢執行規劃。 實驗結果 如圖十四中所示,我們將提出之共同查詢執行策略與單獨執行各查詢之策略相比,明顯可見 到我們所提出的共同查詢執行方法,有效率的增進查詢處理之處理效率並降低查詢處理所需 之能源消耗。其中,我們的最佳查詢搜尋演算法,將可提供約一倍之查詢效率增進。 圖十四:實驗結果

(20)

5、感測器交易串流之高頻樣型分散式探勘技術 研究目的 探勘頻繁項目集(frequent itemsets)是資料探勘研究中已經存在很久的議題,[AS94]是在交 易式資料庫(transaction database)中探勘出頻繁項目集,當某些項目集(itemsets)出現的頻率大 於等於最小支持度(minimum support)時,其稱為頻繁項目集,藉由頻繁項目集的資訊,找到 關聯性規則(Association Rule),即可幫助我們瞭解一些難以發現的資訊。

在連續性的資料流(continuous data streams)上做資料探勘是一個非常重要的議題,有別於 資料固定存在資料庫的環境,資料流是連續、沒有限制且立即的產生,一次性對資料做處理 是不可能的,所以產生了概要(synopsis)或是概略(sketch)的方法去對所有資料做一個整合處 理,且可以保證在某個誤差值之內。

因應現今高資料量的運算所造成的高耗時,我們在一分散式系統環境下對資料進行平行 處理,連續地將各個遠端(Remote Site)接收到的資料流(Data Stream)彙整而得到一全域的頻繁 項目集,利用我們所提出的技術以大幅降低運算及傳送到協調伺服器(Coordinator)的連線次數 和傳送量,使其能夠持續地維持高正確性保證的頻繁項目集,讓使用者可以在快速地查詢到 正確的資訊。在目前的分散式系統環境下,各個遠端何時須連線到協調伺服器的常見方式為: (1)每當遠端的資訊改變時,所有遠端傳送自己本身的資訊到協調伺服器以得到正確的資訊。 (2)設定每過一段固定時間,所有遠端都會傳送自己的資訊到協調伺服器,無論資訊有無改 變。第一種方法雖然可以得到正確的資訊但會造成連線頻繁,而第二種方法則是會造成資訊 錯誤,因為未判斷遠端的資訊是否改變,若為了提高正確性而降低週期時間,會使連線的次 數頻繁且依然無法保證資訊正確性。基於這些缺點,本研究可以達到倘若部分遠端的資訊改 變,且其改變量足以影響整體的答案時,僅需傳送資料流的部分資訊,並於整合後,其與實 際的資訊差異極低。 研究方法 我們的研究重點是如何快速地將各個遠端的資料流整合之後仍然可以保持高正確性的全 域資訊,此研究的難度在於(1)何時遠端需要傳送資料到協調伺服器、(2)要傳送哪些資訊、及 (3)多個資訊傳送到協調伺服器時要如何結合這些資訊仍然可以達到高正確性的保證。我們延 伸之前提出的方法hMiner(WC09),利用雜湊結構(Hash structure)依照項目集的長度置入雜湊 表內,快速的將各個資料流中需要計算的項目集資訊蒐集成概要,進而可以快速找到頻繁項 目集。 我們發現並不是每當遠端的資料改變就必須傳送,我們提出不同的連線策略,當資料超 過這個限制就會傳送資料,且並不是所有資料都必須傳送,我們只要傳送那些超過一定的限 制條件的部分資料就可以維持全域資訊的正確性。如圖十五所示,b即為違反此限制條件的 資料,最後再適當的利用錯誤率比較哪些資料需要結合,快速地維持一個全域的概要(Global synopsis),進而求得高正確性的全域頻繁項目集。在遠端與協調伺服器的整合上,我們提出 了 一 個 結 合 運 算 (Merging operation) 和 兩 個 連 線 策 略 (Communication strategies) , LCO(Less-communication-oriented strategy)及SCA(status-changing-alarm strategy),在LCO的方 法中,倘若在遠端存取到的欄位大小距離上一次連線已經超過我們所限制的誤差數,也就是 有可能產生限制之外的誤差,那我們就會連線到協調伺服器做處理,反之則不做任何動作。 此方法會產生兩種問題,其一就是在遠端的項目集是不是夠頻繁,或是頻繁項目集已經改變

(21)

為不頻繁,這些狀態的改變會影響到全域的資訊但我們無法得知,其二就是倘若我們只想知 道某一遠端的頻繁項目集,但會因為持續的更新造成錯誤。因此我們提出了SCA的策略,除 了判斷產生的誤差之外,在誤差之內的欄位我們也要進行判斷,連續的更新遠端的頻繁項目 集。這些資料到了協調伺服器,在藉由結合運算將相同的項目集整合並做判斷出全域的頻繁 項目集。 圖十五、遠端(Remote site)傳送指定資料到協調伺服器(Coordinator)整合 實驗結果 我們用[AW96]實際的網站記錄,Calgary-HTTP(C-HTTP)及IBM的資料產生器(Synthetic data generator) [AS94]所做出的人造資料集來做實驗。由於和我們研究較相關的[MS05]是定時 更新全域的概要,如果要連續的維持全域資訊會造成連線太高,所以在此我們是根據我們提 出的兩種連線機制LCO及SCA來做實驗而不與[MS05]做比較,圖十六是以錯誤率為變數分別 看看不同機制下的準確率的變化,我們可以看得出在錯誤率低的情況下準確率都有很好的表 現,隨著錯誤率的增加,不同連線機制的差異越來越大,且相較於只對單一資料流的方法hM, LCO及SCA具有很好的準確率。圖十七我們則可以很清楚地看出在結合的時間上LCO皆優於 SCA,因為SCA比LCO加上更多的判斷運算以提高正確性,我們也可以觀察出此差距並不大, 由此次實驗我們可以證明我們所提出的方法在分散式連續的資料流環境下除了具有高準確率 的找尋出全域的頻繁項目集之外,也具有夠快速的處理速度讓使用者線上查詢。 圖十六、不同錯誤率下各個方法準確率比較

(22)

圖十七、不同錯誤率下各個方法結合所需時間

三、成果自評

本計畫之研究成果包含相關研究論文八篇,皆公開發表於國際知名期刊及會議,以及二項申 請中的專利。

研究論文

1. T. Y. Lee, E. T. Wang, and A. L. P. Chen, “Mining Serial Episode Rules with Time Lags over Multiple Data Streams,” DaWaK 2008: 227-240.

2. Y. C. Fan and A. L. P. Chen, “An Approximation Algorithm for Optimizing Multiple Path Tracking Queries over Sensor Data Streams,” DEXA 2009: 532-546.

3. G. R. Lin, Y. C. Fan, E. T. Wang, T. Zou, and A. L. P. Chen, “Energy-Efficient Sensor Data Acquisitions based on Periodic Patterns,” IEEE ICPADS 2009: 487-494.

4. E. T. Wang and A. L. P. Chen, “A Novel Hash-based Approach for Mining Frequent Itemsets over Data Streams Requiring Less Memory Space,” Data Min. Knowl. Discov. 19(1): 132-172 (2009)

5. Y. C. Fan and A. L. P. Chen, “Efficient and Robust Schemes for Sensor Data Aggregation Based on Linear Counting,” IEEE Trans. Parallel Distrib. Syst. 21(11): 1675-1691 (2010) 6. C. W. Cho, Y. H. Wu, S. J. Yen, Y. Zheng, and A. L. P. Chen, “On-Line Rule Matching for

Event Prediction,” VLDB J. 20(3): 303-334 (2011)

7. E. T. Wang and A. L. P. Chen, “Mining Frequent Itemsets over Distributed Data Streams by Continuously Maintaining a Global Synopsis,” Data Min. Knowl. Discov. 23(2): 252-299 (2011)

8. Y. C. Fan and A. L. P. Chen, “Energy Efficient Schemes for Accuracy-Guaranteed Sensor Data Aggregation using Scalable Counting,” IEEE Trans. Knowledge and Data Engineering. (to appear)

專利

1. 林冠榮, 陳良弼, 郭倫嘉, 范耀中, 王恩慈, “無線感測系統與其方法/Wireless Sensing System and Method Thereof,” 中、美、日、大陸專利 (pending), 2008.

(23)

2. 范耀中, 陳良弼, 林冠榮, 郭倫嘉, “以動態計數為基礎之感測資料聚合處理系統與方法 /System and Method for Sensor Data Aggregation using Dynamic Counting Techniques,” 中、 美專利 (pending), 2009.

參考文獻

[AF00] M. Altinel and M. J. Franklin, “Efficient Filtering of XML Documents for Selective Dissemination of Information,” In Proc. of Intl. Conf. on Very Large Data Bases, pp. 53-64, 2000.

[AN04]A. M. Ayad and J.F. Naughton, “Static Optimization of Conjunctive Queries with Sliding Windows over Infinite Streams,” In Proc. of the ACM SIGMOD Conf. on Management of Data, pp. 419-430, 2004.

[AS94] R. Agrawal and R. Srikant, “Fast Algorithms for Mining Association Rules in Large Databases,” In Proc. of Intl.

Conf. on Very Large Databases, pp. 487-499, 1994.

[AS99] M. K. Aguilera, R. E. Strom, D. C. Sturman, M. Astley, T. D. Chandra, “Matching Events in a Content-Based Subscription System,” In Proc. of the ACM Symposium on Principles of Distributed Computing, pp. 53-61, 1999. [BM04] S. Babu, R. Motwani, K. Munagala, I. Nishizawa, and J. Widom, “Adaptive Ordering of Pipelined Stream Filters,” In Proc. of the ACM SIGMOD Conf. on Management of Data, pp. 407-418, 2004.

[BO03] B. Babcock and C. Olston, "Distributed top-k monitoring," In Proc. of the ACM SIGMOD Conf. on Management of Data, pp. 28-39, 2003.

[CC96] C. Collet and Coupaye T., “Composite Events in NAOS,” In Proc. of Intl. Conf. on Database and Expert

Systems Applications, pp. 244-253, 1996.

[CD06] T. Calders, N. Dexters, and B. Goethals, "Mining Frequent Items in a Stream Using Flexible Windows," In Proc.

of ECML/PKDD-2006 Intl. Workshop on Knowledge Discovery from Data Streams, pp. 87-96, 2006.

[CD99] J. Clark and S. DeRose. “XML Path Language (XPath) Version 1.0”, W3C Recommendation, http://www.w3.org/TR/xpath, 1999.

[CDG07] T. Calders, N. Dexters, and B. Goethals, “Mining Frequent Itemsets in a Stream,” In Proc. of the seventh

IEEE Intl. Conf. on Data Mining, pp. 83-92, 2007.

[CF02] C. Y. Chan, P. Felber, M. N. Garofalakis, R. Rastogi, “Efficient filtering of XML documents with XPath expressions,” VLDB Journal 11(4), pp. 354-379, 2002.

[CG05] V. Chowdhary and H. Gupta. Communication-efficient implementation of join in sensor networks. In Proc. of

Intl. Conf. on Database System for Advanced Applications, 2005.

[CK94] S. Chakravarthy, V. Krishnaprasad, A. Eman, and S. K. Kim, “Composite Events for Active Databases: Semantics, Contexts and Detection,” In Proc. of Intl. Conf. on Very Large Data Bases, pp. 606-617, 1994.

[CKN06] J. Cheng, Y. Ke, and W. Ng, “Maintaining Frequent Itemsets over High-Speed Data Streams,” In Proc. of the

10th Pacific-Asia Conf. on Knowledge Discovery and Data Mining, pp. 462-467, 2006.

[CL03] J. H. Chang and W. S. Lee, “Finding Recent Frequent Itemsets Adaptively over Online Data Streams,” In Proc.

of the ninth ACM SIGKDD Intl. Conf. on Knowledge Discovery in Databases and Data Mining, pp. 487-492, 2003.

參考文獻

相關文件

"Extensions to the k-Means Algorithm for Clustering Large Data Sets with Categorical Values," Data Mining and Knowledge Discovery, Vol. “Density-Based Clustering in

Ongoing Projects in Image/Video Analytics with Deep Convolutional Neural Networks. § Goal – Devise effective and efficient learning methods for scalable visual analytic

Discovering the City by Mining Diverse and Multimodal Data Streams – IBM Grand Challenge: New York City 360. §  Exploring and Integrating Multiple Contents and Sources for

In our AI term project, all chosen machine learning tools will be use to diagnose cancer Wisconsin dataset.. To be consistent with the literature [1, 2] we removed the 16

Our main goal is to give a much simpler and completely self-contained proof of the decidability of satisfiability of the two-variable logic over data words.. We do it for the case

Ramesh: An algorithm for generating all spann ing trees of directed graphs, Proceedings of the Workshop on Algorithms an d Data Structures, LNCS, Vol.. Ramesh: Algorithms for

Since the FP-tree reduces the number of database scans and uses less memory to represent the necessary information, many frequent pattern mining algorithms are based on its

Furthermore, in order to achieve the best utilization of the budget of individual department/institute, this study also performs data mining on the book borrowing data