亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ANN的改進(jìn)Spark系統(tǒng)在空管大數(shù)據(jù)處理中的應(yīng)用

        2020-12-31 03:24:30潘衛(wèi)軍劉皓晨王潤東胡博文
        計算機與現(xiàn)代化 2020年12期
        關(guān)鍵詞:模型系統(tǒng)

        潘衛(wèi)軍,劉皓晨,王潤東,胡博文

        (中國民用航空飛行學(xué)院空中交通管理學(xué)院,四川 廣漢 618307)

        0 引 言

        隨著網(wǎng)絡(luò)、移動數(shù)據(jù)和電子通訊技術(shù)的發(fā)展,用戶數(shù)據(jù)量正以驚人的速度增長。經(jīng)互聯(lián)網(wǎng)數(shù)據(jù)中心(Internet Data Center, IDC)預(yù)測,2022年后數(shù)字空間的容量將超過44澤字節(jié)(ZettaByte, ZB)[1]。因此,在當(dāng)今數(shù)據(jù)發(fā)展的時代,大數(shù)據(jù)技術(shù)是不容忽視的。

        近年來,各行各業(yè)包括空中交通管理(簡稱空管)部門都將數(shù)據(jù)處理的重點放在大數(shù)據(jù)技術(shù)上。空管大數(shù)據(jù)往往包含了多個不同數(shù)據(jù)源的多范圍、多層次、多維度信息[2],包含來自空管、機場、航空公司和軍航等多個方向的結(jié)構(gòu)和非結(jié)構(gòu)化數(shù)據(jù)。由于傳統(tǒng)計算系統(tǒng)不足以滿足處理大數(shù)據(jù)時所需的性能和效率,因此開發(fā)了不同的分布式框架,即Hadoop[3]、Apache Spark[4]、Storm[5],以滿足對大數(shù)據(jù)處理的需求。在上述框架中,由于Apache Spark框架具有處理大數(shù)據(jù)的性能機制且容錯性高[6],Apache Spark成為使用最廣泛的框架[7]。此外,其經(jīng)過優(yōu)化的引擎還可以通過執(zhí)行通用計算和圖形說明來進(jìn)行大數(shù)據(jù)分析[8]。Apache Spark還為數(shù)據(jù)分析提供了豐富的工具集[9],其中包括各種庫,例如交互式查詢(Spark SQL)、實時流處理(Spark Streaming)、圖計算(GraphX)、數(shù)據(jù)框架(Data Frames)和機器學(xué)習(xí)(MLib)。

        隨著近年來全球大數(shù)據(jù)分析平臺適應(yīng)性和實踐需求的不斷增長,大數(shù)據(jù)系統(tǒng)性能優(yōu)化研究已成為熱門領(lǐng)域之一。但是現(xiàn)階段幾乎所有研究都集中在Hadoop平臺或MapReduce計算框架上[10-11]。例如,李果等人[12]基于MapReduce的人工蜂群算法在大數(shù)據(jù)中的應(yīng)用;夏靖波等人[13]對基于云計算中Hadoop進(jìn)行研究來提高其性能;李耘書等人[14]提出了一種基于微操作的Hadoop參數(shù)自動調(diào)優(yōu)方法;韋澤鯤等人[15]通過引入K最近鄰算法(KNN)來實現(xiàn)MapReduce框架的最優(yōu)配置。

        但是,關(guān)于Apache Spark性能優(yōu)化的研究仍處于原始階段[16]。用戶需要通過為每個單獨的應(yīng)用程序調(diào)整180多個配置參數(shù),進(jìn)而增強其性能[17]。一方面,Apache Spark中大量可調(diào)的參數(shù)為用戶提供了增強性能的可能。另一方面,調(diào)整大量參數(shù)并處理好它們之間的復(fù)雜交互不僅耗時而且效率低下。因此,本文采用基于人工神經(jīng)網(wǎng)絡(luò)的方法,最大程度地提高參數(shù)調(diào)整效率,保障空管大數(shù)據(jù)處理的性能。

        1 Apache Spark和ANN介紹

        1.1 Apache Spark

        Apache Spark是大數(shù)據(jù)時代最成熟的開源平臺[18]。基于該系統(tǒng)提出的彈性分布式數(shù)據(jù)集(Resilient Distributed Dataset, RDD)的概念,利用分布式內(nèi)存快速處理大量數(shù)據(jù)集,并且方便數(shù)據(jù)多次重復(fù)使用。

        RDD是分布式只讀且已分區(qū)集合對象,是Spark系統(tǒng)的核心功能。每次對RDD數(shù)據(jù)集的操作之后的結(jié)果,都可以緩存到內(nèi)存中,下一個操作可以直接從內(nèi)存中輸入,省去了MapReduce大量的磁盤I/O操作[19]。同時RDD具有“容錯能力”,使它能夠重建丟失或已刪除的分區(qū)。因此,RDD普遍適用于機器學(xué)習(xí)和交互式數(shù)據(jù)挖掘[20]。Spark數(shù)據(jù)集的典型框架如圖1所示,Spark由一個主(Driver)節(jié)點和幾個從屬(Worker)節(jié)點組成。主節(jié)點負(fù)責(zé)通過“守護(hù)進(jìn)程(Worker Daemon)”過程管理從屬節(jié)點,從屬節(jié)點負(fù)責(zé)通過相同的過程與主節(jié)點進(jìn)行通信并管理本地Executor。應(yīng)用程序的主要任務(wù)由創(chuàng)建SparkContext的Driver運行,雖然每個Worker程序都執(zhí)行一項或多項Executorbackend進(jìn)程,但是只有其中一個Executorbackend進(jìn)程可以管理該Executor。有多種因素會影響Apache Spark平臺中特定任務(wù)的執(zhí)行時間,其中包括CPU速度、內(nèi)存、輸入數(shù)據(jù)的大小、輸入數(shù)據(jù)的數(shù)量、節(jié)點數(shù)和配置參數(shù)。

        圖1 Spark數(shù)據(jù)集框架圖

        1.2 ANN

        ANN是一種數(shù)學(xué)處理方法,用于處理數(shù)據(jù)并完成數(shù)據(jù)回歸和數(shù)據(jù)分類。ANN是功能強大的學(xué)習(xí)模型,這使其成為在多個數(shù)據(jù)輸入和輸出之間進(jìn)行回歸分析的最佳選擇。此外,ANN包含如下特點:1)在沒有足夠的數(shù)據(jù)假設(shè)信息的情況下,ANN感知器會調(diào)整內(nèi)部狀態(tài)。2)它可以通過將任意函數(shù)表示為隨機精度的方法來確定通用函數(shù)近似值。3)它還可以識別輸入和輸出變量之間的復(fù)雜相關(guān)性。ANN適用于各種領(lǐng)域,包括預(yù)測、圖像處理、自然語言處理以及語音識別等[21]。

        2 Spark的改進(jìn)方法

        2.1 ANN模型

        ANN模型由輸入層、隱含層和輸出層組成[22],如圖2所示。其中,輸入層和隱含層使用的激活函數(shù)為線性整流函數(shù)(ReLU),輸出層使用的為Softmax激活函數(shù),而前饋和反向傳播使用的為Adam優(yōu)化器。

        圖2 包含隱含層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖

        圖2中x1、x2代表輸入層,h1、h2代表隱含層,y1、y2代表輸出層,b1、b2代表偏差,w代表權(quán)重。使用公式(1)和公式(2)計算神經(jīng)網(wǎng)絡(luò)中的正向傳播。公式(3)和公式(4)分別用于ReLU和Softmax激活函數(shù)。

        h1=x1w1+x2w2+b1

        (1)

        h2=x2w4+x1w3+b1

        (2)

        f(x)=max (0,x)

        (3)

        (4)

        2.2 改進(jìn)方法實現(xiàn)的流程

        本文通過2個過程的研究來實現(xiàn)這種改進(jìn)方法。首先是模型的建立過程,然后是最佳參數(shù)的預(yù)測過程。模型的建立過程如圖3所示。

        該流程圖包含:輸入的機器學(xué)習(xí)庫、加載訓(xùn)練數(shù)據(jù)、測試數(shù)據(jù)、定義的模型、模型編譯、與訓(xùn)練數(shù)據(jù)擬合的模型、通過測試數(shù)據(jù)預(yù)測模型和保存模型。

        圖3 模型生成流程圖

        圖4顯示了如何使用先前生成的模型預(yù)測最佳參數(shù)值。它包含:加載所需的數(shù)據(jù)集;提供預(yù)定義目標(biāo)時間和輸入數(shù)據(jù)集大??;加載生成的模型;使用模型預(yù)測最佳參數(shù)范圍;接收并更新Spark系統(tǒng)中的最佳參數(shù)值;開始處理期望數(shù)據(jù)集,執(zhí)行完成后,重置Spark中的默認(rèn)值。

        圖4 預(yù)測流程圖

        2.3 參數(shù)選擇和輸入數(shù)據(jù)收集

        為了使改進(jìn)的Spark系統(tǒng)可以自動調(diào)整到最優(yōu)參數(shù)而達(dá)到最佳性能,需要對ANN進(jìn)行訓(xùn)練,而有針對的參數(shù)選擇也是一項至關(guān)重要的任務(wù),本文選擇的5個參數(shù)可以覆蓋所有的現(xiàn)有資源,包括內(nèi)存、CPU和硬盤。如表1所示,包含7個參數(shù),其中前5個參數(shù)是系統(tǒng)配置參數(shù),后2個參數(shù)表示為輸入數(shù)據(jù)集大小和預(yù)計執(zhí)行時間。表1中顯示了每個參數(shù)的默認(rèn)值和參數(shù)值的范圍。如果可以實現(xiàn)自動調(diào)整參數(shù),將使Spark系統(tǒng)的處理時間大大減少并提高其性能[23]。

        表1 參數(shù)信息表

        如前所述,收集了2種輸入數(shù)據(jù),即數(shù)據(jù)集的大小和預(yù)計執(zhí)行時間,以訓(xùn)練和測試基于ANN的改進(jìn)Spark系統(tǒng)。最終,通過溫州空管站的空管大數(shù)據(jù)系統(tǒng),共收集了3000個樣本數(shù)據(jù)來進(jìn)行訓(xùn)練和測試,并且在訓(xùn)練之前將數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,以確保較高的準(zhǔn)確性。

        2.4 訓(xùn)練與測試

        ANN訓(xùn)練所需的周期是指當(dāng)一個完整的數(shù)據(jù)集通過神經(jīng)網(wǎng)絡(luò)一次并且返回一次的過程,是需要根據(jù)經(jīng)驗確定的。Epoch訓(xùn)練是指輸入數(shù)據(jù)在不能一次性通過神經(jīng)網(wǎng)絡(luò)時,就需要將數(shù)據(jù)集分成幾批,并且這些數(shù)據(jù)每次通過學(xué)習(xí)算法時都會更新權(quán)重。

        首先,隨機篩選了80%的原始數(shù)據(jù)用于訓(xùn)練模型。原始數(shù)據(jù)中優(yōu)秀的20%用于評估模型的準(zhǔn)確性。通過不斷地重復(fù)訓(xùn)練以獲得最佳效果。

        3 仿真實驗

        用于本文的硬件測試平臺為Dell PowerEdge T430服務(wù)器,該服務(wù)器的主要參數(shù)為CPU Intel? Xeon? E5-2680 v4,RAM 為32 GB。軟件系統(tǒng)使用Ubuntu Linux17.10版、Spark 2.2.0版和Hadoop 2.8.1版,可以使用獨立或不同的VM軟件運行自動調(diào)整任務(wù)。

        如表2所示,從溫州空管站的空管大數(shù)據(jù)系統(tǒng)中收集了5個不同的數(shù)據(jù)集來在系統(tǒng)中運行Wordcount任務(wù),數(shù)據(jù)集大小分別為50 GB、100 GB、150 GB、200 GB和250 GB。

        表2 數(shù)據(jù)集信息表

        本文從Keras導(dǎo)入了所需的機器學(xué)習(xí)庫。Keras是Tensorflow的庫,使用Keras框架比直接使用Tensorflow更容易。訓(xùn)練和測試數(shù)據(jù)分別加載并保存在X_train、Y_train和X_test變量中。X_train包含2個訓(xùn)練值,分別是數(shù)據(jù)大小和執(zhí)行時間;X_test包含測試數(shù)據(jù)的大小和執(zhí)行時間。本文所需的隱含層是依據(jù)基本模型構(gòu)造的,此外還添加了激活函數(shù)功能。為了防止模型過度擬合,基本模型中集成了dropout功能。本文使用損失函數(shù)(mean_squared_error)和Adam優(yōu)化器編譯基本模型。將X_train和Y_train的數(shù)據(jù)與尺度函數(shù)擬合后,基本模型可以將Batch Size和Epoch相結(jié)合,并預(yù)測X_test的數(shù)據(jù)精確度。如果精度低于預(yù)期,則將增加Epoch的數(shù)量。隨著Epoch數(shù)增加到250,訓(xùn)練中的準(zhǔn)確度為97.1%,測試中的準(zhǔn)確度為96.7%。可以看到,隨著Epoch的增加,訓(xùn)練和測試的準(zhǔn)確性會提高。如圖5所示,Epoch數(shù)超過250時精度趨于穩(wěn)定,模型最優(yōu)。

        圖5 訓(xùn)練和測試實例中的模型準(zhǔn)確性

        一旦訓(xùn)練完成,模型將會保存在硬盤上,并且每個參數(shù)都會保存一個模型。因此如圖6所示,總共建立5個模型,分別通過更改5個不同的參數(shù)的Y_train來構(gòu)建。

        圖6 生成的ANN模型

        本文通過一種預(yù)測算法來實現(xiàn)調(diào)用上述存儲的模型預(yù)測最佳參數(shù)值。如圖7所示,首先導(dǎo)入機器學(xué)習(xí)庫并加載所需的數(shù)據(jù)集,之后將2個輸入(數(shù)據(jù)集大小和預(yù)計執(zhí)行時間)作為參數(shù)值給出,然后加載存儲的模型,并將輸入數(shù)據(jù)擬合到模型中以預(yù)測最佳參數(shù)值。在此過程中,每次僅可預(yù)測一個參數(shù)值,因此將對其余參數(shù)重復(fù)相同的過程。

        圖7 使用已存儲的ANN模型預(yù)測參數(shù)值示意圖

        一旦獲得最優(yōu)參數(shù)值,Spark系統(tǒng)中的相應(yīng)默認(rèn)值將使用該值進(jìn)行更新(如圖8),然后,Spark系統(tǒng)開始使用預(yù)測所得的最佳參數(shù)值處理給定的數(shù)據(jù)集,之后系統(tǒng)會將獲得參數(shù)重置為Spark中的默認(rèn)值。

        圖8 在Spark中更新預(yù)測的最佳參數(shù)值示意圖

        最終生成的基于ANN的改進(jìn)Spark系統(tǒng)結(jié)構(gòu)如圖9所示。訓(xùn)練數(shù)據(jù)來自溫州空管站的空管大數(shù)據(jù)系統(tǒng),這些數(shù)據(jù)通過“訓(xùn)練”模塊生成模型,模型通過“測試”模塊后經(jīng)“存儲模型”模塊保存在預(yù)定的位置并通過“預(yù)測的參數(shù)范圍”模塊進(jìn)行參數(shù)范圍預(yù)測和輸出,之后系統(tǒng)將接收到的參數(shù)作為新的默認(rèn)值并更新到Spark系統(tǒng)中。

        圖9 基于ANN的改進(jìn)Spark系統(tǒng)結(jié)構(gòu)圖

        4 結(jié)果與分析

        為了評估改進(jìn)的Spark系統(tǒng)對參數(shù)進(jìn)行自我調(diào)整的能力,本文主要將5種不同大小的空管大數(shù)據(jù)(分別為50 GB、100 GB、150 GB、200 GB和250 GB)通過默認(rèn)參數(shù)配置和改進(jìn)Spark系統(tǒng)分別執(zhí)行Wordcount任務(wù)。

        圖10 數(shù)據(jù)處理時間對比圖

        從圖10可以看出,無論輸入的數(shù)據(jù)集大或小,與使用默認(rèn)參數(shù)配置相比,使用改進(jìn)Spark系統(tǒng)執(zhí)行Wordcount任務(wù)所需的時間明顯更少。

        表3分別列出了5個不同大小的輸入數(shù)據(jù)集中的每一個的Wordcount任務(wù)的執(zhí)行時間以及最佳參數(shù)組合。通過表3和表4可以看出,默認(rèn)配置下,處理大小為50 GB、100 GB、150 GB、200 GB和250 GB的數(shù)據(jù)分別需要41.27 min、80.99 min、119.43 min、155.48 min和194.66 min,而改進(jìn)的Spark系統(tǒng)分別只需要28.62 min、55.51 min、74.29 min、96.44 min和119.07 min。結(jié)果表明,無論數(shù)據(jù)集的大小是多少,使用默認(rèn)參數(shù)配置的執(zhí)行時間都明顯高于使用改進(jìn)Spark系統(tǒng)得到的執(zhí)行時間,并且平均可以節(jié)約35.34%的時間。

        表3 每個數(shù)據(jù)集對應(yīng)的預(yù)測最佳參數(shù)值

        表4 處理每個數(shù)據(jù)集的時間

        5 結(jié)束語

        本文提出了基于人工神經(jīng)網(wǎng)絡(luò)的方法來改進(jìn)Spark系統(tǒng),以實現(xiàn)Spark配置參數(shù)的自動調(diào)整,保障空管大數(shù)據(jù)的處理效率和處理性能。通過該方法可以得到5個選定參數(shù)的最佳范圍并在開始處理任務(wù)之前,更新Spark系統(tǒng)參數(shù)。通過5種不同大小的數(shù)據(jù)集對該方法進(jìn)行驗證,結(jié)果表明,與默認(rèn)參數(shù)配置相比,改進(jìn)的Spark系統(tǒng)的性能平均提高了約35.34%。除此之外,隨著數(shù)據(jù)集大小和個數(shù)的增加,改進(jìn)的Spark系統(tǒng)的數(shù)據(jù)處理速度可以進(jìn)一步被優(yōu)化。未來的研究會選擇更合適的參數(shù)數(shù)量,并使用更好的服務(wù)器以獲得更好的結(jié)果。

        猜你喜歡
        模型系統(tǒng)
        一半模型
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        3D打印中的模型分割與打包
        亚洲一码二码在线观看| 中文字幕东京热一区二区人妻少妇| 亚洲精品成人久久av| 精品人妻一区二区三区在线观看| 情人伊人久久综合亚洲| 四虎国产精品永久在线国在线| 亚洲综合久久精品无码色欲| 欧美日韩在线观看免费| 国产成人免费高清激情明星| 国产精品女同学| 亚洲成人一区二区av| 一二三区无线乱码中文在线| 麻豆影视视频高清在线观看| 91麻豆精品激情在线观看最新| 久久精品国产72国产精福利| 日本成人三级视频网站| 国产自拍一区二区三区| 色欲欲www成人网站| 无码精品a∨在线观看十八禁| 另类欧美亚洲| 特一级熟女毛片免费观看| 美女被搞在线观看一区二区三区 | 亚洲AV无码精品呻吟| av天堂手机一区在线| 精品人妻av一区二区三区| 日本50岁丰满熟妇xxxx | 国产欧美日韩在线观看一区二区三区| 久久久婷婷综合五月天| 亚洲国产精品国自拍av| 中文字幕av一区二区三区人妻少妇| 国产精品6| 国产一级av理论手机在线| 人妖啪啪综合av一区| 精品无码国产一区二区三区麻豆| 人妻少妇精品专区性色av| 久久这里都是精品一区| 国产av天堂一区二区二区| 野花香社区在线视频观看播放| 天堂无码人妻精品av一区| 国产精品三级一区二区按摩| 中文字幕视频一区二区|