亚洲美女爱爱-夜夜添夜夜添夜夜摸夜夜摸-97碰成人国产免费公开视频-国产午夜大片-www黄av-国产94在线 | 亚洲-亚洲午夜久久久精品一区二区三剧-精品视频亚洲-久久久久国色av∨免费看-黄色片一区二区-69福利视频-国产老头和老头xxxxx免费-99精品视频一区在线观看-日韩三级黄色毛片-亚洲激情图片区-黄色a一级-99re6在线-91九色视频-日本欧美久久久-成人国产精品免费观看

你的位置:首頁(yè) > 傳感技術(shù) > 正文

FPGA“漫步云上” 構(gòu)建深度神經(jīng)網(wǎng)絡(luò)

發(fā)布時(shí)間:2015-10-07 責(zé)任編輯:echolady

【導(dǎo)讀】FPGA憑借其出色的性能、低功耗指標(biāo),已經(jīng)成為構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)不可或缺的部分。再加上新的軟件就更加如虎添翼。本文就由專家為我們講解一下 賽靈思FPGA是如何構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)的。

人工智能正在經(jīng)歷一場(chǎng)變革,這要得益于機(jī)器學(xué)習(xí)的快速進(jìn)步。在機(jī)器學(xué)習(xí)領(lǐng)域,人們正對(duì)一類名為“深度學(xué)習(xí)”算法產(chǎn)生濃厚的興趣,因?yàn)檫@類算法具有出色的大數(shù)據(jù)集性能。在深度學(xué)習(xí)中,機(jī)器可以在監(jiān)督或不受監(jiān)督的方式下從大量數(shù)據(jù)中學(xué)習(xí)一項(xiàng)任務(wù)。大規(guī)模監(jiān)督式學(xué)習(xí)已經(jīng)在圖像識(shí)別和語(yǔ)音識(shí)別等任務(wù)中取得巨大成功。

深度學(xué)習(xí)技術(shù)使用大量已知數(shù)據(jù)找到一組權(quán)重和偏差值,以匹配預(yù)期結(jié)果。這個(gè)過程被稱為訓(xùn)練,并會(huì)產(chǎn)生大型模式。這激勵(lì)工程師傾向于利用專用硬件(例如GPU)進(jìn)行訓(xùn)練和分類。

隨著數(shù)據(jù)量的進(jìn)一步增加,機(jī)器學(xué)習(xí)將轉(zhuǎn)移到云。大型機(jī)器學(xué)習(xí)模式實(shí)現(xiàn)在云端的CPU上。盡管GPU對(duì)深度學(xué)習(xí)算法而言在性能方面是一種更好的選擇,但功耗要求之高使其只能用于高性能計(jì)算集群。因此,亟需一種能夠加速算法又不會(huì)顯著增加功耗的處理平臺(tái)。在這樣的背景下,F(xiàn)PGA 似乎是一種理想的選擇,其固有特性有助于在低功耗條件下輕松啟動(dòng)眾多并行過程。

讓我們來(lái)詳細(xì)了解一下如何在賽靈思FPGA上實(shí)現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)(CNN)。CNN是一類深度神經(jīng)網(wǎng)絡(luò),在處理大規(guī)模圖像識(shí)別任務(wù)以及與機(jī)器學(xué)習(xí)類似的其他問題方面已大獲成功。在當(dāng)前案例中,針對(duì)在FPGA上實(shí)現(xiàn)CNN做一個(gè)可行性研究,看一下FPGA是否適用于解決大規(guī)模機(jī)器學(xué)習(xí)問題。

卷積神經(jīng)網(wǎng)絡(luò)是一種深度神經(jīng)網(wǎng)絡(luò)(DNN),工程師最近開始將該技術(shù)用于各種識(shí)別任務(wù)。圖像識(shí)別、語(yǔ)音識(shí)別和自然語(yǔ)言處理是CNN比較常見的幾大應(yīng)用。

什么是卷積神經(jīng)網(wǎng)絡(luò)?

卷積神經(jīng)網(wǎng)絡(luò)是一種深度神經(jīng)網(wǎng)絡(luò) (DNN),工程師最近開始將該技術(shù)用于各種識(shí)別任務(wù)。圖像識(shí)別、語(yǔ)音識(shí)別和自然語(yǔ)言處理是 CNN 比較常見的幾大應(yīng)用。

2012年,Alex Krishevsky與來(lái)自多倫多大學(xué)(University of Toronto)的其他研究人員 [1] 提出了一種基于CNN的深度架構(gòu),贏得了當(dāng)年的“Imagenet 大規(guī)模視覺識(shí)別挑戰(zhàn)”獎(jiǎng)。他們的模型與競(jìng)爭(zhēng)對(duì)手以及之前幾年的模型相比在識(shí)別性能方面取得了實(shí)質(zhì)性的提升。自此,AlexNet成為了所有圖像識(shí)別任務(wù)中的對(duì)比基準(zhǔn)。

AlexNet有五個(gè)卷積層和三個(gè)致密層(圖1)。每個(gè)卷積層將一組輸入特征圖與一組權(quán)值濾波器進(jìn)行卷積,得到一組輸出特征圖。致密層是完全相連的一層,其中的每個(gè)輸出均為所有輸入的函數(shù)。

卷積層

AlexNet中的卷積層負(fù)責(zé)三大任務(wù),如圖2所示:3D卷積;使用校正線性單元(ReLu)實(shí)現(xiàn)激活函數(shù);子采樣(最大池化)。3D卷積可用以下公式表示:
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
其中Y(m,x,y)是輸出特征圖m位置(x,y)處的卷積輸出,S是(x,y)周圍的局部鄰域,W是卷積濾波器組,X(n,x,y)是從輸入特征圖n上的像素位置(x,y)獲得的卷積運(yùn)算的輸入。

所用的激活函數(shù)是一個(gè)校正線性單元,可執(zhí)行函數(shù)Max(x,0)。激活函數(shù)會(huì)在網(wǎng)絡(luò)的傳遞函數(shù)中引入非線性。最大池化是 AlexNet 中使用的子采樣技術(shù)。使用該技術(shù),只需選擇像素局部鄰域最大值傳播到下一層。

定義致密層

AlexNet中的致密層相當(dāng)于完全連接的層,其中每個(gè)輸入節(jié)點(diǎn)與每個(gè)輸出節(jié)點(diǎn)相連。AlexNet中的第一個(gè)致密層有9,216個(gè)輸入節(jié)點(diǎn)。將這個(gè)向量乘以權(quán)值矩陣,以在4,096個(gè)輸出節(jié)點(diǎn)中產(chǎn)生輸出。在下一個(gè)致密層中,將這個(gè) 4,096 節(jié)點(diǎn)向量與另一個(gè)權(quán)值矩陣相乘得到4,096個(gè)輸出。最后,使用4,096個(gè)輸出通過softmax regression為1,000個(gè)類創(chuàng)建概率。

在FPGA上實(shí)現(xiàn)CNN

隨著新型高級(jí)設(shè)計(jì)環(huán)境的推出,軟件開發(fā)人員可以更方便地將其設(shè)計(jì)移植到賽靈思FPGA中。軟件開發(fā)人員可通過從C/C++代碼調(diào)用函數(shù)來(lái)充分利用 FPGA與生俱來(lái)的架構(gòu)優(yōu)勢(shì)。Auviz Systems的庫(kù)(例如AuvizDNN)可為用戶提供最佳函數(shù),以便其針對(duì)各種應(yīng)用創(chuàng)建定制CNN。可在賽靈思SD-Accel這樣的設(shè)計(jì)環(huán)境中調(diào)用這些函數(shù),以在FPGA上啟動(dòng)內(nèi)核。

最簡(jiǎn)單的方法是以順序方式實(shí)現(xiàn)卷積和向量矩陣運(yùn)算。考慮到所涉及計(jì)算量,因此順序計(jì)算會(huì)產(chǎn)生較大時(shí)延。

順序?qū)崿F(xiàn)產(chǎn)生很大時(shí)遲的主要原因在于CNN所涉及的計(jì)算的絕對(duì)數(shù)量。圖3顯示了AlexNet中每層的計(jì)算量和數(shù)據(jù)傳輸情況,以說明其復(fù)雜性。

因此,很有必要采用并行計(jì)算。有很多方法可將實(shí)現(xiàn)過程并行化。圖6給出了其中一種。在這里,將11x11的權(quán)值矩陣與一個(gè)11x11的輸入特征圖并行求卷積,以產(chǎn)生一個(gè)輸出值。這個(gè)過程涉及121個(gè)并行的乘法-累加運(yùn)算。根據(jù)FPGA的可用資源,我們可以并行對(duì)512抑或768個(gè)值求卷積。

為了進(jìn)一步提升吞吐量,我們可以將實(shí)現(xiàn)過程進(jìn)行流水線化。流水線能為需要一個(gè)周期以上才能完成的運(yùn)算實(shí)現(xiàn)更高的吞吐量,例如浮點(diǎn)數(shù)乘法和加法。通過流水線處理,第一個(gè)輸出的時(shí)延略有增加,但每個(gè)周期我們都可獲得一個(gè)輸出。

使用AuvizDNN在FPGA上實(shí)現(xiàn)的完整CNN就像從C/C++程序中調(diào)用一連串函數(shù)。在建立對(duì)象和數(shù)據(jù)容器后,首先通過函數(shù)調(diào)用來(lái)創(chuàng)建每個(gè)卷積層,然后創(chuàng)建致密層,最后是創(chuàng)建softmax層,如圖 4 所示。

AuvizDNN是Auviz Systems公司提供的一種函數(shù)庫(kù),用于在FPGA上實(shí)現(xiàn)CNN。該函數(shù)庫(kù)提供輕松實(shí)現(xiàn)CNN所需的所有對(duì)象、類和函數(shù)。用戶只需要提供所需的參數(shù)來(lái)創(chuàng)建不同的層。例如,圖5中的代碼片段顯示了如何創(chuàng)建AlexNet中的第一層。

AuvizDNN提供配置函數(shù),用以創(chuàng)建CNN的任何類型和配置參數(shù)。AlexNet僅用于演示說明。CNN 實(shí)現(xiàn)內(nèi)容作為完整比特流載入FPGA并從C/C++程序中調(diào)用,這使開發(fā)人員無(wú)需運(yùn)行實(shí)現(xiàn)軟件即可使用AuvizDNN。

FPGA具有大量的查找表(LUT)、DSP模塊和片上存儲(chǔ)器,因此是實(shí)現(xiàn)深度CNN的最佳選擇。在數(shù)據(jù)中心,單位功耗性能比原始性能更為重要。數(shù)據(jù)中心需要高性能,但功耗要在數(shù)據(jù)中心服務(wù)器要求限值之內(nèi)。

像賽靈思Kintex UltraScale 這樣的FPGA器件可提供高于14張圖像/秒/瓦特的性能,使其成為數(shù)據(jù)中心應(yīng)用的理想選擇。圖6介紹了使用不同類型的FPGA所能實(shí)現(xiàn)的性能。
[page]

一切始于C/C++

卷積神經(jīng)網(wǎng)絡(luò)備受青睞,并大規(guī)模部署用于處理圖像識(shí)別、自然語(yǔ)言處理等眾多任務(wù)。隨著CNN從高性能計(jì)算應(yīng)用(HPC)向數(shù)據(jù)中心遷移,需要采用高效方法來(lái)實(shí)現(xiàn)它們。

FPGA可高效實(shí)現(xiàn)CNN。FPGA的具有出色的單位功耗性能,因此非常適用于數(shù)據(jù)中心。

AuvizDNN函數(shù)庫(kù)可用來(lái)在FPGA上實(shí)現(xiàn)CNN。AuvizDNN能降低FPGA的使用復(fù)雜性,并提供用戶可從其C/C++程序中調(diào)用的簡(jiǎn)單函數(shù),用以在FPGA上實(shí)現(xiàn)加速。使用AuvizDNN時(shí),可在AuvizDNN 庫(kù)中調(diào)用函數(shù),因此實(shí)現(xiàn)FPGA加速與編寫C/C++程序沒有太大區(qū)別。

FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 1 –  AlexNet是一種圖像識(shí)別基準(zhǔn),包含五個(gè)卷積層(藍(lán)框)和三個(gè)致密層(黃)。
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 2 – AlexNet中的卷積層執(zhí)行3D卷積、激活和子采樣。
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 3  – 圖表展示了AlexNet中涉及的計(jì)算復(fù)雜性和數(shù)據(jù)傳輸數(shù)量。
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 4 - 實(shí)現(xiàn)CNN時(shí)的函數(shù)調(diào)用順序。
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 5 – 使用AuvizDNN創(chuàng)建AlexNet的L1的代碼片段。
FPGA“漫步云上”  構(gòu)建深度神經(jīng)網(wǎng)絡(luò)
圖 6 – AlexNets的性能因FPGA類型不同而不同。

相關(guān)閱讀:

專為設(shè)計(jì)人員打造:節(jié)能靈活性高的閃存FPGA
名家解析,單片機(jī)、ARM、FPGA的特點(diǎn)及區(qū)別要領(lǐng)
專家精講:使用FPGA器件就可以降低DSP系統(tǒng)功耗?!
要采購(gòu)濾波器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索

關(guān)閉

?

關(guān)閉

主站蜘蛛池模板: 免费在线看黄网址 | 欧美日韩亚洲综合 | 超级碰97直线国产免费公开 | 粉嫩无套白浆第一次 | 亚洲综合熟女久久久40p | 亚洲高清一区二区三区不卡 | 日本不卡一区在线观看 | 91精品国产乱码久久久久 | 成人aaaaa日本黄绝录象片 | 精品久久久爽爽久久男人和男人 | 国产性生活毛片 | 国产精品美女久久久久久久网站 | 三级黄色毛片视频 | 成人免费看片'在线观看 | 懂色av粉嫩av色老板 | 国内精品美女a∨在线播放 杨幂一区二区三区免费看视频 | 日本久久网| 欧美在线播放一区二区 | a级毛片在线免费看 | 久久久久久中文 | 免费a级黄色片 | 真正免费毛片在线播放 | 国模精品一区 | 免费精品视频在线观看 | 国产精品视频合集 | 快色污 | 丰满熟妇被猛烈进入高清片 | 有码视频在线观看 | 久色影视| 欧美日国产| 国产男男无套激情11069 | 2022久久国产露脸精品国产 | 欧洲grand老妇人bbw | 国产精品视频 | 免费在线黄网 | 久久久亚洲欧洲日产国码是av | 国产日比视频 | 日韩精品无码专区免费播放 | 青娱乐超碰 | 免费看国产成人无码a片 | 不卡无在线一区二区三区观 | 久久人人爽人人爽av片 | 色综合色欲色综合色综合色乛 | 欧美性生活网址 | 国产午夜理论不卡在线观看 | 国产亚洲国际精品福利 | 91国语 | 一级aa毛片 | 国产91视频在线 | 91美女高潮出水 | 精品无码久久久久久久动漫 | 亚洲国产成人久久综合同性 | 国产色妞影院wwwxxx | 久久精品人人做人人爽电影蜜月 | 国产毛a片久久久久无码 | 精精国产xxx在线观看 | 免费av在线播放网址 | 成人开心激情 | 麻豆精品久久久久久中文字幕无码 | 久草色在线 | 亚洲一区综合图区 | 国产欧美日韩在线视频 | 永久av免费在线观看 | 日韩v欧美v中文在线 | 国产一区91 | 在线观看中文字幕码 | 樱桃视频影视在线观看免费 | 伊甸园成人入口 | 国产精品夫妇激情 | 亚洲中文字幕丝祙制服 | 日本韩国亚洲欧美在线 | 高清视频一区二区 | 日韩久久激情综合啪啪 | 人人干人人噪人人摸 | 亚洲二区视频 | 五月天堂婷婷 | 3d动漫精品h区xxxxx区 | 欧美国产精品久久 | 一区二区精品 | 亚洲国产精品乱码一区二区 | 午夜精品极品粉嫩国产尤物 | 中文字幕手机在线视频 | 欧美性生活网址 | 黄瓜视频污在线观看 | 一色综合 | 亚洲成熟丰满熟妇高潮xxxxx | 欧洲熟妇色xxxx欧美老妇 | 国产欧美日韩亚洲 | 人人妻人人爽人人做夜欢视频 | 纯肉无遮挡h肉动漫在线观看国产 | 久久天天躁狠狠躁夜夜avapp | 日韩av有码 | 97超碰人人澡人人爱学生 | 国产97超碰人人做人人爱 | 亚洲国产精品美女久久久久 | 国产成人资源 | 曰批女人视频在线观看 | 欧美国产国产综合视频 | 久久躁狠狠躁夜夜av |