999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于分布式計算框架的機器學(xué)習(xí)系統(tǒng)分析

2022-01-07 12:52:26胡常禮邵劍飛
電視技術(shù) 2021年11期
關(guān)鍵詞:模型系統(tǒng)設(shè)計

胡常禮,邵劍飛

(昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650500)

0 引言

大數(shù)據(jù)技術(shù)的不斷發(fā)展,促進了大數(shù)據(jù)在機器學(xué)習(xí)領(lǐng)域的使用。基于大數(shù)據(jù)技術(shù)的機器學(xué)習(xí)能夠精準(zhǔn)實現(xiàn)訓(xùn)練機器學(xué)習(xí)的能力,對機器學(xué)習(xí)的研究是當(dāng)前人工智能系統(tǒng)重要的研究方向。在機器學(xué)習(xí)的基礎(chǔ)上對大數(shù)據(jù)進行智能分析處理,可以得到有價值的信息[1]。使用數(shù)據(jù)規(guī)模越大,機器從數(shù)據(jù)學(xué)習(xí)到的有用信息就越多,學(xué)習(xí)的效果就越好,就不容易出現(xiàn)欠擬合和過擬合問題。創(chuàng)建分布式機器學(xué)習(xí)系統(tǒng),涉及大數(shù)據(jù)處理和機器學(xué)習(xí)兩方面,多種不同因素的影響提高了系統(tǒng)設(shè)計的復(fù)雜性和穩(wěn)定性,為設(shè)計人員開發(fā)系統(tǒng)帶來了挑戰(zhàn)。因此,在機器學(xué)習(xí)系統(tǒng)的設(shè)計過程中,設(shè)計人員要重視分布式與并行化大數(shù)據(jù)技術(shù),從而在可接受的時間內(nèi)實現(xiàn)計算[2]。

1 機器學(xué)習(xí)模型的設(shè)計概念

1.1 Spark 方法

Spark 是使用scala 實現(xiàn)的基于內(nèi)存計算的大數(shù)據(jù)開源集群計算環(huán)境。Spark 設(shè)計方法具有以下特點:其一,計算方式比較迅速,通過有向無環(huán)圖支持循環(huán)數(shù)據(jù)流,在內(nèi)存存儲中間數(shù)據(jù),運行效率更快;其二,通用性較強,具有豐富的組件;其三,使用比較方便,可實現(xiàn)多開發(fā)語言的兼容。Spark 設(shè)計工作相關(guān)流程如圖1 所示。

圖1 Spark 設(shè)計工作流程

Spark 工作流程中,利用分布式數(shù)據(jù)集RDD 的可分區(qū)特性將數(shù)據(jù)集進行劃分,并通過RDD 之間的關(guān)聯(lián)形成DAG 有向無環(huán)圖。有向無環(huán)圖DAG 被劃分成多個stage,每個stage 含有多個任務(wù),而Driver設(shè)置好任務(wù)調(diào)度組件,將任務(wù)分配到Workers。Spark 通過模型參數(shù)在driver 節(jié)點中存儲,并且與workers進行信息交互,通過不斷迭代更新相關(guān)參數(shù)。在大模型的數(shù)據(jù)處理過程中,由于模型的相關(guān)參數(shù)無法完全存儲在driver 里,使得RDD 數(shù)據(jù)存儲成為問題。將參數(shù)以分布式方式存儲數(shù)據(jù)集RDD 里,通過并行計算可以使參數(shù)同時更新[3]。

1.2 機器學(xué)習(xí)模型

機器學(xué)習(xí)模型指的是利用人工智能技術(shù)讓計算機能夠完成類似人的主動學(xué)習(xí),智能地完成相關(guān)計算,提高計算速度。計算機對數(shù)據(jù)進行分析處理,并從分析處理后相關(guān)有價值的信息中進行學(xué)習(xí),在學(xué)習(xí)中形成自己的知識體系。機器學(xué)習(xí)從學(xué)習(xí)環(huán)境中獲取原始信息即數(shù)據(jù),通過從原始信息中學(xué)習(xí)構(gòu)建學(xué)習(xí)元,然后在學(xué)習(xí)中不斷更新知識庫,通過形成的知識體系指導(dǎo)和糾正學(xué)習(xí)。本文設(shè)計的機器學(xué)習(xí)模型結(jié)構(gòu)如圖2 所示。

圖2 機器學(xué)習(xí)模型的結(jié)構(gòu)

2 基于分布式計算的機器學(xué)習(xí)系統(tǒng)的設(shè)計

2.1 系統(tǒng)總體框架

機器學(xué)習(xí)系統(tǒng)設(shè)計為R 語言中包(Package)的方式,通過上層用戶加載此包實現(xiàn)系統(tǒng)提供矩陣運算的功能。圖3 為機器學(xué)習(xí)系統(tǒng)的矩陣編程模型統(tǒng)一接口,包括矩陣API 接口設(shè)計與運行模式。對于此運行模式,用戶在R 語言編程環(huán)境中采用交互式運行和批量解釋運行方式使用系統(tǒng)[4]。

圖3 機器學(xué)習(xí)系統(tǒng)的矩陣編程模型統(tǒng)一接口

針對矩陣API 接口設(shè)計,為了區(qū)分矩陣運算編程接口的性質(zhì),實現(xiàn)底層計算平臺接口,將API 接口劃分為3 個模塊。

(1)矩陣生成接口模塊。實現(xiàn)生成矩陣接口,比如內(nèi)存生成矩陣、分布式文件生成矩陣以及隨機初始矩陣。

(2)矩陣輸出接口模塊。實現(xiàn)矩陣的保存和展示,比如矩陣數(shù)據(jù)打印和保存在分布式文件系統(tǒng)中。

(3)矩陣運算接口模塊。包括矩陣操作接口,比如用戶自定義函數(shù)執(zhí)行、四則運算等。

為了使上層程序在多種底層計算機平臺中執(zhí)行,系統(tǒng)要對所有計算平臺使用矩陣庫實現(xiàn)以上矩陣模型接口,并且通過用戶矩陣接口封裝多種底層計算平臺矩陣函數(shù)實現(xiàn)[5]。

2.2 網(wǎng)絡(luò)模型構(gòu)建

此模型是機器學(xué)習(xí)和大數(shù)據(jù)的結(jié)合,運用SymboMaxtrix 接口是為了簡化矩陣表達式,DAG邏輯優(yōu)化優(yōu)化分布式數(shù)據(jù)集RDD 之間的關(guān)系,OctMatrix 使得在不同的平臺都可以進行矩陣操作,通過定義Spark、MPI、R 等矩陣庫的在不同平臺優(yōu)先級,之后再通過Alluxio 文件系統(tǒng)實現(xiàn)在不同平臺矩陣運算[6]。網(wǎng)絡(luò)模型的結(jié)構(gòu)如圖4 所示。

圖4 網(wǎng)絡(luò)模型的結(jié)構(gòu)

2.3 功能設(shè)計

2.3.1 用戶自定義函數(shù)

MPI 的矩陣庫iPLAR 是將R 的pbdr 包實現(xiàn),通過MPI 執(zhí)行用戶自定義R 函數(shù)。OctMatrix 是以Spark 為基礎(chǔ)實現(xiàn)的分布式矩陣庫,能夠提供Scala接口,機器學(xué)習(xí)系統(tǒng)只是利用JVM 反射機制應(yīng)用,所以用戶自定義R函數(shù)不能夠通過Spark平臺執(zhí)行。R 中用戶自定義函數(shù)(UDP)通過Spark 執(zhí)行,利用apply(m,margin,func)函數(shù)實現(xiàn)。在apply 函數(shù)中,m 為矩陣,func 為用戶自定義函數(shù)或者R 原生函數(shù)。margin 包含c(1,2),指的是使func 在矩陣每個元素中使用。假如m 類型為R,由于func 為R 的函數(shù),能夠使func 在矩陣m 中使用。通過R 包的pbdR實現(xiàn)MPI,所以能夠使func 直接在矩陣中使用。在矩陣為Spark 類型的時候,JVM 無法對R 函數(shù)進行識別。

圖5 為apply 調(diào)用實現(xiàn)結(jié)構(gòu),在Spark 集群中的slave 中運行Rserve 守護進程,此進程能夠使java傳輸數(shù)據(jù)在R 中操作,在java 中返回結(jié)果。利用func 函數(shù)和依賴序列化構(gòu)成數(shù)組Array[Byte]傳輸?shù)紻river 端,之后在Worker 進行廣播,每個Worker和本地Rserve 通信,使結(jié)果在Worker 中傳輸,執(zhí)行apply 函數(shù)[7]。

圖5 Spark 執(zhí)行R 函數(shù)

2.3.2 跨平臺矩陣調(diào)用

由于矩陣計算平臺包括Spark、MRI、R,所以將矩陣劃分為這3 種類型。在矩陣類型轉(zhuǎn)變的過程中,要實現(xiàn)矩陣跨平臺調(diào)用。跨平臺矩陣調(diào)用模塊結(jié)構(gòu)如圖6 所示,利用矩陣讀寫Alluxio 兩個模塊。在矩陣寫模塊中,平臺能夠?qū)慉lluxio 函數(shù);在矩陣讀模塊中,平臺能夠讀Alluxio 函數(shù)。利用矩陣先寫到Alluxio 中調(diào)用矩陣,之后通過Alluxio 讀取矩陣進行實現(xiàn)。

圖6 跨平臺矩陣調(diào)用結(jié)構(gòu)

2.3.3 不同平臺矩陣函數(shù)的計算

用戶在使用OctMatrix 時,不會只是使用同個平臺,矩陣操作中的計算平臺不同。比如,乘法的兩個矩陣包括R 平臺和Spark 平臺。對于此情況,系統(tǒng)設(shè)計統(tǒng)一化處理規(guī)則。首先對平臺優(yōu)先級進行定義,Spark >MPI >Hadoop >R。在矩陣操作過程包括多個矩陣時,假如底層計算平臺一致,使用此計算平臺對矩陣操作進行執(zhí)行;假如底層計算平臺不同,使低優(yōu)先級計算平臺矩陣朝著高優(yōu)先級轉(zhuǎn)變,之后通過高優(yōu)先級計算平臺對矩陣執(zhí)行操作。比如A%*%B,流程如圖7 所示。

圖7 工作流程

3 機器學(xué)習(xí)系統(tǒng)的評估

3.1 實驗環(huán)境

本文利用VMware 虛擬軟件進行實驗,虛擬5臺機器,集群配置如表1 所示。

表1 集群配置

3.1 模型評估

此實驗基于QJM 中的HM 大數(shù)據(jù)平臺,利用HDFS 和Aookeeper 兩大工具,實現(xiàn)對本文中集群配置分布式管理。本文有5 個節(jié)點配置,如表1 所示,利用yarn 模型和局域網(wǎng)接入本平臺,完成對平臺的線管資源分配和分布執(zhí)行任務(wù)。

3.1.1 和數(shù)據(jù)Partition 的關(guān)系

為了對訓(xùn)練中不同模型對訓(xùn)練時間的影響進行評估,使用MovieLens 數(shù)據(jù)集(1 000 萬)進行分區(qū)計算實驗,分區(qū)數(shù)和運行時間之間的影響關(guān)系如圖8 所示。

圖8 分區(qū)數(shù)和運行時間

通過圖8 可以看出,隨著分區(qū)數(shù)目的增多,對模型訓(xùn)練的運行時間也減少;然后隨著分區(qū)數(shù)的增加,運行時間并沒有隨著減少,而是在一定程度上增多。這是因為分區(qū)使得計算機可以并行執(zhí)行,運行時間會隨著分區(qū)數(shù)的增多而下降;但是隨著分區(qū)數(shù)的增多,負(fù)責(zé)傳輸?shù)耐ㄐ啪W(wǎng)絡(luò)的負(fù)擔(dān)會增加,導(dǎo)致對機器的訓(xùn)練時間增加,因此運行時間沒有繼續(xù)下降反而小幅度上升。

3.1.2 算法運行時間

通過算法在不同節(jié)點下的訓(xùn)練效果測試以及執(zhí)行時間測試展現(xiàn)算法的分布計算的效果,在MovieLens 數(shù)據(jù)集的m1-100k(1 萬~10 萬)、m1-1m(100 萬)、m1-10m100k(1 000 萬)情況下開展實驗,最終實驗結(jié)果如圖9 所示。

圖9 最終實驗結(jié)果

圖9 中Spark 下Kmeans 算法在不同規(guī)模的節(jié)點數(shù)和不同大小的數(shù)據(jù)規(guī)模的運行時間結(jié)果對比,發(fā)現(xiàn)在數(shù)據(jù)集在較小規(guī)模時使用KMeans 分類訓(xùn)練時間比較少,是因為集群計算要對任務(wù)進行初始化,會消耗大量的時間和成本。在數(shù)據(jù)規(guī)模不斷增加的過程中,節(jié)點規(guī)模也會同時增加。另外發(fā)現(xiàn)在Spark 下的KMearns 算法下訓(xùn)練執(zhí)行并行計算有一定程度的優(yōu)勢,主要是因為在Spark 下Kmeans 算法在信息交互和任務(wù)調(diào)度相關(guān)初始化所用時間比較少,使得機器對數(shù)據(jù)載入學(xué)習(xí)的時間減少,且Spark下Kmeans 算法能夠?qū)?shù)據(jù)集均勻分成Data Block塊,在Worker 中開展并行計算,降低訓(xùn)練時間。實驗結(jié)果表明,本文所設(shè)計系統(tǒng)的運行時間、訓(xùn)練時間都比較優(yōu),并且在數(shù)據(jù)處理延遲方面表現(xiàn)良好。

4 結(jié)語

對分布式計算框架和機器學(xué)習(xí)模型對不同分區(qū)數(shù)的學(xué)習(xí)效率的分析和研究表明,分布式計算對于機器學(xué)習(xí)有效地處理大數(shù)據(jù),對于人工智能的領(lǐng)域研究具有實際意義。本文的仿真實驗和對比分析表明,基于分布式計算框架的機器學(xué)習(xí)系統(tǒng)可以提高訓(xùn)練樣本的大小,即增強了機器對大數(shù)據(jù)集的學(xué)習(xí)和充分挖掘有用信息的處理能力。機器學(xué)習(xí)利用大量數(shù)據(jù)樣本實現(xiàn)訓(xùn)練,通過不斷的優(yōu)化融合機器學(xué)習(xí)和大數(shù)據(jù)、分布式計算框架,提高兩者關(guān)聯(lián)性,實現(xiàn)數(shù)據(jù)挖掘過程與機器訓(xùn)練。在未來發(fā)展中,需要重點研究的內(nèi)容是以常用機器學(xué)習(xí)和數(shù)據(jù)分析算法針對矩陣函數(shù)實現(xiàn)更多功能,以應(yīng)用特性與平臺特性提煉更多物理與邏輯的優(yōu)化方法,針對已有多平臺調(diào)度優(yōu)化創(chuàng)建理論、精準(zhǔn)的實踐模型,使模型誤差得到降低。

猜你喜歡
模型系統(tǒng)設(shè)計
一半模型
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
瞞天過海——仿生設(shè)計萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
主站蜘蛛池模板: 67194在线午夜亚洲| 国产成人禁片在线观看| 久久久久久久久久国产精品| 国产成人资源| 国产精品人成在线播放| 中文字幕一区二区人妻电影| 精品一区二区三区自慰喷水| 欧美另类一区| 五月婷婷伊人网| 欧美高清国产| 日韩区欧美国产区在线观看| 91在线无码精品秘九色APP | 亚洲AV成人一区二区三区AV| 在线播放真实国产乱子伦| 亚洲精品va| 国产精品福利导航| 91精品国产情侣高潮露脸| 日a本亚洲中文在线观看| 性色一区| 国产在线专区| 高清不卡毛片| 四虎永久在线精品影院| 欧美v在线| 91久久偷偷做嫩草影院电| 国产呦精品一区二区三区下载| 成人精品视频一区二区在线| 福利小视频在线播放| 又大又硬又爽免费视频| 欧美日韩精品综合在线一区| 日本一区高清| 欧美成人精品一级在线观看| 中文字幕人妻av一区二区| 亚洲免费黄色网| 欧美综合区自拍亚洲综合绿色 | 自偷自拍三级全三级视频| www.99精品视频在线播放| 制服丝袜在线视频香蕉| 伊人天堂网| 一区二区在线视频免费观看| 国产原创第一页在线观看| 91欧美亚洲国产五月天| 亚洲美女久久| 网友自拍视频精品区| 国产99视频在线| 国产精品亚洲天堂| 国产精品自拍露脸视频| 国产精品蜜芽在线观看| 亚洲国产日韩在线成人蜜芽| 国产精品林美惠子在线播放| 五月天综合婷婷| 国产浮力第一页永久地址| 久久久久亚洲Av片无码观看| 天天躁夜夜躁狠狠躁躁88| 日本AⅤ精品一区二区三区日| 亚洲一区二区三区麻豆| 日韩av电影一区二区三区四区 | 色偷偷综合网| 国产主播在线一区| 久久中文字幕2021精品| 乱人伦99久久| 日韩欧美在线观看| 成人免费黄色小视频| 日韩精品久久久久久久电影蜜臀| 青青草原国产| 日韩毛片免费视频| 免费一级毛片不卡在线播放| 日韩毛片免费观看| 亚洲中文字幕久久精品无码一区| 国产成年女人特黄特色大片免费| 精品少妇人妻无码久久| 国产又爽又黄无遮挡免费观看| YW尤物AV无码国产在线观看| 欧美区在线播放| 毛片卡一卡二| 午夜视频在线观看区二区| 亚洲欧美不卡视频| 久久久久亚洲AV成人网站软件| 日韩在线2020专区| 欧美人与性动交a欧美精品| 欧美日韩在线亚洲国产人| 真人免费一级毛片一区二区| 国产手机在线ΑⅤ片无码观看|