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

        ?

        基于全國產(chǎn)軟硬件的深度學(xué)習(xí)平臺設(shè)計

        2022-02-21 01:46:52呂昊靳文兵郝志超郭瀟劉瑞澤
        科技信息·學(xué)術(shù)版 2022年5期

        呂昊 靳文兵 郝志超 郭瀟 劉瑞澤

        摘要:隨著國內(nèi)外形勢的日益緊張,實(shí)現(xiàn)核心技術(shù)的自主可控就尤為重要。目前深度學(xué)習(xí)被應(yīng)用到生活以及軍事領(lǐng)域中,實(shí)現(xiàn)深度學(xué)習(xí)訓(xùn)練及推理的國產(chǎn)化具有重要意義。本課題主要設(shè)計一種基于全國產(chǎn)軟硬件的深度學(xué)習(xí)平臺,并打通目標(biāo)檢測領(lǐng)域模型的訓(xùn)練和推理,對平臺的實(shí)用性進(jìn)行驗證。

        關(guān)鍵詞:全國產(chǎn)軟硬件 深度學(xué)習(xí)平臺 目標(biāo)檢測

        0 引言:

        在深度學(xué)習(xí)的發(fā)展研究過程中,數(shù)據(jù)的訓(xùn)練是非常重要的組成部分,如何高效的進(jìn)行對數(shù)據(jù)的訓(xùn)練,并提供足夠的計算資源,對深度學(xué)習(xí)的研究有非常重要的意義。國內(nèi)外都展開了針對深度學(xué)習(xí)硬件加速平臺的研發(fā),如NVIDIA公司的GPU以及針對推理端的TX2[1],谷歌的TPU[2]等,以及國內(nèi)百度推出了XPU[3],寒武紀(jì)的加速卡[4]以及華為的昇騰系列AI處理器[4]等。但是這些設(shè)備多數(shù)是針對推理端的硬件加速平臺,在訓(xùn)練端,目前主要采用的還是x86體系的CPU+GPU的形式在進(jìn)行,也有少數(shù)采用ARM平臺進(jìn)行訓(xùn)練的。在深度學(xué)習(xí)框架的應(yīng)用上,目前應(yīng)用較多的開源深度學(xué)習(xí)框架有谷歌的tensorflow,臉書的pytorch以及百度的Paddle等。在深度學(xué)習(xí)的訓(xùn)練以及推理平臺上,我國進(jìn)行深度學(xué)習(xí)訓(xùn)練的主流平臺主要還是采用x86體系的CPU+GPU的形式,并在該硬件平臺上搭載tensorflow或pytorch的深度學(xué)習(xí)框架。近年來,隨著國內(nèi)外形式的日益緊張,美國對我國高新技術(shù)的部分企業(yè)進(jìn)行了限制和制裁,并對部分企業(yè)的部分設(shè)備和器件的采購進(jìn)行了限制,因此發(fā)展基于國產(chǎn)化硬件平臺并且可以實(shí)現(xiàn)軟件·框架自主可控的深度學(xué)習(xí)平臺具有重要意義。由于深度學(xué)習(xí)在圖像處理,文本識別,數(shù)據(jù)挖掘以及個性化推薦等領(lǐng)域都取得了很多成果。因此想要直接實(shí)現(xiàn)軟硬件自主可控的通用深度學(xué)習(xí)平臺是不現(xiàn)實(shí)的。因此本文設(shè)計了針對目標(biāo)檢測領(lǐng)域,設(shè)計一種基于深度學(xué)習(xí)的全國產(chǎn)平臺下的目標(biāo)檢測系統(tǒng),利用軟硬件自主可控平臺,初步完成在目標(biāo)檢測領(lǐng)域部分模型的訓(xùn)練與推理的全流程的實(shí)現(xiàn)。

        1 系統(tǒng)概述:

        本文所設(shè)計的基于深度學(xué)習(xí)的全國產(chǎn)平臺下的目標(biāo)檢測系統(tǒng)包括了在深度學(xué)習(xí)中訓(xùn)練+推理的全流程,完成從訓(xùn)練到推理全過程的硬件模塊及應(yīng)用軟件的全國產(chǎn)化。其中硬件部分主要由使用FT-2000/64為CPU的硬件電路組成,利用XPU架構(gòu)AI芯片[3]的算力進(jìn)行深度學(xué)習(xí)的訓(xùn)練過程。軟件部分則是在搭載銀河麒麟操作系統(tǒng)的基礎(chǔ)上,適配國產(chǎn)深度學(xué)習(xí)框架PaddlePaddle,完成深度學(xué)習(xí)的模型訓(xùn)練以及推理驗證。

        本文采用的FT-2000/64是飛騰推出的通用計算處理芯片。FT2000/64是基于ARMV8架構(gòu)的國產(chǎn)服務(wù)器CPU,集成64個飛騰自主研發(fā)的內(nèi)核,兼容64位ARMV8指令集并支持ARM64和ARM32兩種執(zhí)行模式,并且支持單精度和雙精度浮點(diǎn)運(yùn)算指令,在硬件層面增強(qiáng)了芯片的安全性,滿足復(fù)雜應(yīng)用場景下對性能和安全的需求??梢栽跐M足國產(chǎn)化硬件的需求上,為深度學(xué)習(xí)的訓(xùn)練和推理過程提供穩(wěn)定的運(yùn)行環(huán)境。

        根據(jù)本文選用的硬件環(huán)境,本文要針對ARMV8架構(gòu)的CPU進(jìn)行深度學(xué)習(xí)框架的適配。國產(chǎn)深度學(xué)習(xí)框架PaddlePaddle是由百度推出的中國國首個自主研發(fā)、功能完備并且開源開發(fā)的深度學(xué)習(xí)框架。PaddlePaddle支持在多種硬件設(shè)備以及多操作系統(tǒng)下的使用,由高兼容性,高性能的多端部署能力[3]。由于目前在ARM平臺上進(jìn)行深度學(xué)習(xí)訓(xùn)練的應(yīng)用案例較少,考慮到PaddlePaddle對飛騰處理器的適應(yīng)性以及支持的模型函數(shù)可能有一定不足,我們僅選用YOLOv3作為本系統(tǒng)所選用的模型,進(jìn)行對系統(tǒng)設(shè)計的驗證。

        2 硬件方案:

        在硬件設(shè)計上,本文主要采用了以FT-2000/4為CPU,并掛載百昆侖AI加速卡XPU,實(shí)現(xiàn)對深度學(xué)習(xí)訓(xùn)練過程的加速。在以FT-2000/4為CPU的主板上,通過PCIE總線搭載百度XPU神經(jīng)處理器架構(gòu)k100來實(shí)現(xiàn)硬件設(shè)計。

        FT-2000/4集成4個飛騰自主研發(fā)的內(nèi)核,兼容64位ARMV8指令集并支持ARM64和ARM32兩種執(zhí)行模式。最高主頻為2.6GHz,擁有2個DDR4接口,2個x16PCIE接口,2路10/100/1000Mbps自適應(yīng)以太網(wǎng)接口,除此以外,還擁有1個SD2.0、4個UART、32個GPIO、1個LPC以及4個I2C等接口??梢蕴峁└咝暾挠嬎懔鞒讨巍?/p>

        XPU的處理器采用14nm工藝,擁有16B HBM高帶寬內(nèi)存,提高最高512GB/s的內(nèi)存帶寬。采用標(biāo)準(zhǔn)的PCIe Gen4接口使加速卡可以被快速安裝到不同類型的設(shè)備上。XPU在著重于計算密集型、基于規(guī)則的任務(wù)的同時, 確保效率、性能和靈活性的最大化,并且原生支持深度學(xué)習(xí)框架PaddlePaddle的推理和訓(xùn)練任務(wù),并實(shí)現(xiàn)對矩陣運(yùn)算等的性能加速。其中SDNN(Software-defined Neural Network engine),即軟件定義神經(jīng)網(wǎng)絡(luò)引擎是用來處理張量和向量運(yùn)算??梢砸攒浖问届`活實(shí)現(xiàn)卷積,矩陣計算等操作,支持8位及16位的整型運(yùn)算;Cluster是通用計算核,用來處理標(biāo)量和向量計算。有良好的通用性和可編程性,可以根據(jù)需求靈活實(shí)現(xiàn)多種函數(shù);Shared Memory即片上內(nèi)存,為每個計算單元共享??梢蕴峁┍绕釪DR更低延時和高帶寬的訪問;每個HBM高帶寬內(nèi)存的容量為8GB,采用的PCIe Gen4的總線,兼容3.0/2.0/1.0協(xié)議,提供單向16GB/s,雙向共32GB/s的帶寬,可以滿足高速率的數(shù)據(jù)交互。

        3 軟件設(shè)計

        在軟件層面,本文選用百度推出的PaddlePaddle作為訓(xùn)練和推理的深度學(xué)習(xí)框架。整個PaddlePaddle的生態(tài)主要分為開發(fā)訓(xùn)練框架,模型以及部署三個部分。開發(fā)訓(xùn)練框架是Paddle全生態(tài)的最底層。在這部分,Paddle核心框架是Paddle深度學(xué)習(xí)框架的核心,集成了深度學(xué)習(xí)所需要利用的基本函數(shù)庫,其余不同的訓(xùn)練框架是為了適應(yīng)不同環(huán)境體系下進(jìn)行訓(xùn)練而準(zhǔn)備的。模型主要作用是方便利用核心框架進(jìn)行訓(xùn)練開發(fā)的工具,在這一部分主要根據(jù)應(yīng)用方向分出來了不同的模型庫,并在這幾個方向,根據(jù)不同的應(yīng)用領(lǐng)域提供不同的開發(fā)套件。根據(jù)需要,利用模型庫或開發(fā)套件進(jìn)行訓(xùn)練開發(fā)。壓縮工具是為了針對訓(xùn)練完的模型進(jìn)行壓縮優(yōu)化,方便模型進(jìn)行更好的部署。PaddleSlim主要目的是對模型進(jìn)行優(yōu)化,提供剪裁、量化、蒸餾、和模型結(jié)構(gòu)搜索等模型壓縮策略。部署部分主要是將進(jìn)行推理的部分。Paddle Inference是原生推理庫,主要面向服務(wù)器端進(jìn)行推理預(yù)測的部屬;Paddlelite是輕量化的推理引擎,主要用在手機(jī)以及嵌入式的硬件設(shè)備上。

        本文在利用該框架的過程中,在訓(xùn)練和推理的過程中采用不同的組件進(jìn)行開發(fā)。在訓(xùn)練端,本文采用Paddle核心框架+Paddledetection開發(fā)套件的形式。其中Paddle核心框架提供在深度學(xué)習(xí)過程中會調(diào)用的基本運(yùn)算函數(shù)以及提供各種接口函數(shù)。為了便于Paddle能夠調(diào)用足夠的硬件資源,我們在新的硬件環(huán)境,即FT-2000/4+百度XPU的硬件環(huán)境下,對Paddle進(jìn)行源碼編譯。這使Paddle可以有效調(diào)用XPU以及ARM的硬件資源進(jìn)行運(yùn)算。Paddledetection是目標(biāo)檢測開發(fā)套件,用于目標(biāo)檢測任務(wù)的模型訓(xùn)練、優(yōu)化工作。通過配置yml參數(shù)文件,通過max_iters對最大迭代次數(shù)進(jìn)行設(shè)置,通過pretrain_weights指定預(yù)訓(xùn)練模型地址,并通過dataset_dir以及anno_path對標(biāo)定完成的數(shù)據(jù)集進(jìn)行定義。完成對yml參數(shù)文件進(jìn)行配置和修改后,調(diào)用train.py可以進(jìn)行訓(xùn)練。通過訓(xùn)練可以獲得model_final以及xxxxxx_final,之后通過inference.py對訓(xùn)練結(jié)果進(jìn)行驗證。在推理端,本文采用Paddlelite推理框架+在訓(xùn)練過程中獲得的model及參數(shù)文件的形式來進(jìn)行。Paddlelite重點(diǎn)支持在移動端設(shè)備上的推理預(yù)測,相比起一般的推理框架,可以以更輕量級的框架做到更加高性能的推理過程,并已經(jīng)在多種硬件上進(jìn)行了測試運(yùn)行。因此本文選用Paddlelite在FT-2000/4上進(jìn)行推理的部署,為后期將Paddlelite適配到ARM體系下的系統(tǒng)以及其他AI加速芯片提供技術(shù)儲備。在Paddlelite適配過程中,本文針對編譯運(yùn)行環(huán)境進(jìn)行配置,包括python3,arm-gcc交叉編譯庫以及cmake等,編譯環(huán)境是進(jìn)行源碼編譯的基礎(chǔ)。在實(shí)際編譯過程中,在確認(rèn)框架所需要的三方庫并進(jìn)行安裝配置后,調(diào)用build_linux.sh進(jìn)行編譯,根據(jù)硬件環(huán)境需要,設(shè)定為ARMV8的體系結(jié)構(gòu),并設(shè)定編譯python版本的Paddlelite庫。在編譯完成后,在生成文件夾build.lite.linux.armv8.gcc中,生成了c++靜態(tài)編譯庫以及動態(tài)編譯庫,以及python的安裝庫。Python版本的Paddlelite庫還負(fù)責(zé)模型轉(zhuǎn)換工具opt的運(yùn)用,模型轉(zhuǎn)換工具opt優(yōu)化原始的訓(xùn)練模型,其中包括量化、子圖融合、混合調(diào)度、Kernel優(yōu)選等方法,將訓(xùn)練過程中生成的模型及參數(shù)文件轉(zhuǎn)化為在訓(xùn)練端Paddlelite可以輸入的模型參數(shù)格式。在獲取Paddlelite可以輸入的模型參數(shù)格式后,將模型輸入到推理的腳本,并調(diào)用opencv將預(yù)測目標(biāo)的坐標(biāo)以及錨框顯示在源圖像中,完成目標(biāo)檢測的任務(wù)。

        在具體軟件設(shè)計與驗證的過程中,我們根據(jù)任務(wù)性質(zhì)的不同可以將任務(wù)分為訓(xùn)練段和推理端進(jìn)行。在訓(xùn)練端,我們主要是通過以Paddle核心框架作為訓(xùn)練的核心,之后調(diào)用PaddleDetction開發(fā)組件開展訓(xùn)練任務(wù),之后通過訓(xùn)練腳本進(jìn)行具體訓(xùn)練,在訓(xùn)練完成后,通過測試腳本對訓(xùn)練結(jié)果進(jìn)行測試。在推理端,我們主要通過Paddlelite輕量化推理框架展開推理任務(wù),并利用具體的推理腳本+Opencv繪圖,完成推理,并輸出結(jié)果。根據(jù)任務(wù)的走向,首先本文在獲取訓(xùn)練所需的訓(xùn)練數(shù)據(jù)以后,在搭載好的訓(xùn)練平臺上進(jìn)行訓(xùn)練,并將訓(xùn)練好的模型進(jìn)行優(yōu)化裁剪,之后利用優(yōu)化好后的模型進(jìn)行推理,并完成驗證。

        4 系統(tǒng)驗證

        在上述的硬件和軟件設(shè)計中,本文已經(jīng)搭建了基于深度學(xué)習(xí)的全國產(chǎn)平臺的軟件硬件系統(tǒng)。之后本文選用主干網(wǎng)絡(luò)為SSD_MobileNet_v1模型文件以及公開的預(yù)訓(xùn)練模型參數(shù)進(jìn)行模型訓(xùn)練,使用pascalvoc VOC 2007公開數(shù)據(jù)集進(jìn)行訓(xùn)練,并通過配置yml文件進(jìn)行參數(shù)設(shè)置,指定模型及數(shù)據(jù)集路徑,設(shè)定迭代次數(shù)為400000次,之后利用PaddleDetection中的train.py開始訓(xùn)練,在訓(xùn)練過程中損失擬合曲線,基本符合訓(xùn)練要求。訓(xùn)練完成后,利用test.py針對測試圖片進(jìn)行驗證,可以對圖片中目標(biāo)進(jìn)行檢測,通過導(dǎo)出模型文件,對模型文件進(jìn)行壓縮優(yōu)化為model.nb文件并運(yùn)用Paddlelite框架進(jìn)行推理,如圖7所示,成功實(shí)現(xiàn)推理,完成目標(biāo)檢測任務(wù)。

        5 結(jié)論

        本文針對目標(biāo)檢測領(lǐng)域,設(shè)計了一種基于深度學(xué)習(xí)的全國產(chǎn)平臺下的目標(biāo)檢測系統(tǒng),利用軟硬件自主可控平臺,初步完成在目標(biāo)檢測領(lǐng)域部分模型的訓(xùn)練與推理的全流程的實(shí)現(xiàn)。經(jīng)過驗證,本文所設(shè)計的基于深度學(xué)習(xí)的全國產(chǎn)平臺下的目標(biāo)檢測系統(tǒng)包括了在深度學(xué)習(xí)中訓(xùn)練+推理的全流程,完成從訓(xùn)練到推理全過程的硬件模塊及應(yīng)用軟件的全國產(chǎn)化設(shè)計。

        參考文獻(xiàn):

        [1]齊健.NVIDIA Jetson TX2平臺:加速發(fā)展小型化人工智能終端[J].智能制造,2017(05):20-21.

        [2]樂學(xué).谷歌推出定制化機(jī)器學(xué)習(xí)芯片速度是傳統(tǒng)GPU的15到30倍[J].信息與電腦(理論版),2017(08):7-8.

        [3]張依依. 7nm昆侖二代量產(chǎn)? 百度芯片直面通用化商用化大考[N]. 中國電子報,2021-08-24(008).DOI:10.28065/n.cnki.ncdzb.2021.001050.

        [4]王哲,馮曉輝.AI芯片:加速智能時代的發(fā)動機(jī)[J].人工智能,2018(02):20-33.DOI:10.16453/j.cnki.issn2096-5036.2018.02.002.

        女人被躁到高潮嗷嗷叫| 中文字幕精品久久久久人妻红杏ⅰ | 色综合久久无码中文字幕app| 中文字幕AⅤ人妻一区二区| 亚洲成人av一区二区麻豆蜜桃| 亚洲av综合色一区二区| 97碰碰碰人妻无码视频| 精品无码国产污污污免费网站| 日韩少妇无码一区二区免费视频 | 自慰高潮网站在线观看| 精品久久一品二品三品| 午夜亚洲av日韩av无码大全| 久久精品国产亚洲av麻豆| 乱码一二区在线亚洲| 精品少妇后入一区二区三区| 亚洲av男人的天堂一区| 国产乡下妇女做爰| 国产精品va在线观看无码| 国产日韩在线播放观看| 亚洲中文字幕不卡一区二区三区| 国产精品一区二区av麻豆日韩 | 婷婷亚洲久悠悠色悠在线播放| 国产一区二区三区小说| 色佬易精品视频免费在线观看| 日韩人妻精品视频一区二区三区 | 人人爽人人爱| 国产高清国内精品福利99久久| 日本在线免费不卡一区二区三区| 日本av一区二区三区在线| 中文乱码字慕人妻熟女人妻| 亚洲AV秘 无码一区二区三区1| 久久青青草原亚洲av| 无码喷潮a片无码高潮| 老司机亚洲精品影院| 7878成人国产在线观看| 中文字幕偷拍亚洲九色| 国产在线一区二区三区乱码| 国产98在线 | 日韩| 国产午夜激情视频自拍| 人妻系列少妇极品熟妇| 久久久久成人精品免费播放动漫|