房悅



摘要:目前,物聯網產生的繁雜的數據,缺乏有效的管理方法。云和集群技術提供了解決這些問題的思路。文章旨在建立數據挖掘與物聯網的關系本文討論了一種基于actors模型和物聯網概念的數據挖掘算法的分布式執行方法。該方法允許將數據挖掘算法分解為參與者,并在分布式環境中執行。該模型將應用在物聯網的集中系統(云計算)和分布式系統中提供數據分析。實驗表明,文章所提出的模型提高了數據分析的性能,減少了終端設備和云之間的網絡流量。
關鍵詞:物聯網;數據挖掘;模型;流量
中圖分類號:TP311.13;TP391.44;TN929.5 文獻標識碼:A 文章編號:1001-5922(2021)01-0163-04
物聯網(Internet of Things,loT)代表了下一代互聯網,它包含數百萬個節點,這些節點將代表從不同設備到web服務器的對象。它協調了計算機和通信的新進展,制造了因特網的改進。物聯網識別和控制現有網絡中的對象,為將物理世界直接混合到基于計算機的系統中創造機會,從而提高效率、準確性和經濟效益
物聯網中的數據可分為地址/唯一標識符、RFID數據流、位置數據描述數據、傳感器網絡數據、環境數據等。數據挖掘是從不同角度分析數據并將其壓縮為有用信息的過程。它結合了從大數據中發現新的、創新的、有趣的和有用的模式,并應用算法挖掘隱藏的數據。圖1顯示數據挖掘的過程。數據挖掘使用了許多不同的術語,如數據庫中的知識發現(KDD)、從原始數據中提取知識、模式分析和信息獲取。任何數據挖掘過程的目的都是建立一個模型,該模型能夠有效地預測或描述最適合它的大數據,并且還可以推廣到新數據。
目前,物聯網產生的繁雜的數據,缺乏有效的管理方法。云和集群技術提供了解決這些問題的思路。因此,數據挖掘和云計算技術的集成是非常現實可行的。
本文提出了一種針對不同物聯網體系結構構建數據挖掘系統的方法。將數據挖掘算法表示為功能塊序列和分布式計算模型。論文的結構如下:第一節將回顧物聯網數據挖掘系統的體系結構。第二部分描述了一種通用方法,該方法允許將算法分解成模型上的塊進行映射。第三部分描述了多層體系結構的實現方法。最后一部分討論了將該方法的實驗與結果分析。
1物聯網數據挖掘系統的體系結構
目前。廣泛用于解釋物聯網方法的物聯網基本架構為三層結構:
其中,感知層是進行數據采集的底層,可以看作是硬件層或物理層;網絡層(中間層)負責連接感知層和應用層,使數據能夠在它們之間傳遞;應用層通常扮演提供服務或應用程序的角色,這些服務或應用程序集成或分析從其他兩層接收的數據。
一些研究人員提議擴展這些層m,添加了新層,如圖1所示。
接人網關層負責消息路由、發布和訂閱,并在需要時執行跨平臺通信;中間件層是底層硬件層和上層應用層之間的接口,負責設備管理、信息管理等關鍵功能,并負責數據過濾、數據聚合、語義分析、訪問控制、信息發現等問題。
通常,應用程序和中間件層的實現都使用云計算技術。云提供可伸縮的存儲、計算時間和其他工具來構建應用程序服務。在這種情況下,網絡層負責連接物聯網設備(如傳感器、RFID、攝像頭和其他設備)和云。它通過互聯網產生很大的流量。這個問題的解決方案可以是Fog計算。霧將云擴展到更靠近產生和作用于物聯網數據的設備。Fog節點提供本地化,因此支持低延遲和上下文感知,云提供全局集中。許多應用程序既需要霧定位,也需要云全球化,特別是對于分析和大數據。
為了構建物聯網的數據挖掘服務,現行通常的方法是使用readmake云(如Azure機器學習)或大數據的數據挖掘系統。
微軟Azure機器學習(Azure ML)為一個基于SaaS云的預測分析服務。它提供付費服務,允許我們進行一個完整的數據分析周期(獲取數據、預處理數據、定義特征、選擇和應用算法、評估模型、發布模型)。用戶只能在Azure ML機器學習算法中應用:分類、回歸、異常檢測和聚類。用戶只能添加機器學習市場上可用的算法。它包含可以通過Azure API發布集成的其他模塊和服務。
Apache Spark機器學習庫(MLlib)是ApacheSpark平臺上可擴展的機器學習庫。它由常用的學習算法和工具組成,包括分類、回歸、聚類、協同過濾、降維,以及低級優化原語和高級流水線api。它有自己的MapReduce范例實現,它使用內存來存儲數據(而ApacheHadoop使用磁盤存儲)。它使我們能夠提高算法性能的效率。用戶可以通過自己的實現擴展一組機器學習算法。但是,用戶應該在地圖上分解算法,減少和其他Spark的特定功能。它極大地限制了數據挖掘算法的并行化能力。
Weka4WS是著名的開源數據挖掘庫Weka(用于知識分析的Waikato環境)的擴展。擴展實現了支持WSRF網格中數據挖掘算法執行的框架。weka4ws允許在遠程網格節點上執行其所有數據挖掘算法。為了支持遠程調用,Weka庫提供的數據挖掘算法作為Web服務公開,可以很容易地部署在可用的網格節點上。Weka4WS只能處理單個存儲節點包含的數據集。然后將該數據集傳輸到要挖掘的計算節點。很遺憾,現在不支持此庫(2008年7月的最新版本)。
這些系統在大型計算集群上的集中式云上運行良好。但是,它們不能用于將計算移近數據(例如,在霧節點上)。因此本文使用actors模型作為分布式計算平臺來解決這個問題。
2分布式模型算法描述
本文使用了將數據挖掘算法表示為功能塊序列的方法(基于功能語言原理)。在函數語言中的經典函
實驗使用Azure ML中的數據集。其參數如表1所示。對于采用集中式架構的系統,我們將執行時間計算為數據加載和數據分析的時間。所有這些系統的數據加載時間設置為相同。對于采用分布式結構的系統,我們將數據集分為2、4和8個光纖陀螺節點。這些節點中的每一個都保存數據集的相等部分。
實驗結果如圖5所示,對于大型數據集(當數據量大于挖掘模型的大小時),基于actors模型(DXel.poes)的分布式體系結構物聯網中的算與傳統算法(Data loading、zure ML、Spark MLb)的執行時間更快,因為它不需要時間將數據加載到集中存儲中。在這種情況下,向量的數量比數據量更重要,因為文件不通過網絡傳輸,但向量是并行處理的。因此,采用分布式體系結構的物聯網分析數據集更快。因此,將計算移近數據可以提高物聯網系統的性能。
5結語
物聯網可以采用集中式或分布式架構。大多數現有的物聯網數據挖掘解決方案只能使用集中式體系結構。然而,分布式體系結構(Fog計算)由于能夠減少大量終端設備在Internet上的網絡流量而變得越來越流行。文章提出的方法使數據挖掘算法在不同的物聯網體系結構中的應用成為可能。我們使用的方法是將數據挖掘算法分解為功能塊,并將它們映射到參與者上。所提出的模型提高了數據分析的性能,減少了終端設備和云之間的網絡流量。