国产亚洲精品AA片在线观看,丰满熟妇HD,亚洲成色www成人网站妖精,丁香五月天婷婷五月天男人天堂

新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的人工神經(jīng)網(wǎng)絡實現(xiàn)方法的研究

基于FPGA的人工神經(jīng)網(wǎng)絡實現(xiàn)方法的研究

作者: 時間:2009-11-17 來源:網(wǎng)絡 收藏
引 言
(Artificial Neural Network,ANN)是一種類似生物神經(jīng)網(wǎng)絡的信息處理結構,它的提出是為了解決一些非線性,非平穩(wěn),復雜的實際問題。目前實現(xiàn)ANN還主要依靠軟件程序.但是依靠程序很難達到實時性的要求。
神經(jīng)網(wǎng)絡在上實現(xiàn)是獨立于馮?諾依曼架構,利用的并行性,在一些實時性要求很強的領域應用。通用計算機雖然編程容易,但是很多時間浪費在分析指令,讀出寫入數(shù)據(jù)等。于是人們想利用ASIC(專用計算芯片)完成神經(jīng)網(wǎng)絡的計算任務,但是由于資源有限,這種芯片只限于實現(xiàn)特定的算法結構和小規(guī)模網(wǎng)絡,而且專用芯片的制作成本很高,只適合大批量生產(chǎn)。
可編程邏輯器件的出現(xiàn)給IC設計行業(yè)一個很強的工具,它可以小成本的開發(fā)一些專用芯片,如果開發(fā)是成功的可以考慮流片生產(chǎn)。用FPGA實現(xiàn)神經(jīng)網(wǎng)絡比ASIC神經(jīng)計算單元更容易實現(xiàn),利用可編程邏輯,F(xiàn)PGA可以實現(xiàn)像軟件一樣的設計靈活性,特別是對于復雜網(wǎng)絡,設計周期大大縮短,其內(nèi)部的重構邏輯模塊(Configurable Logic Blocks,CLBs)包含若干邏輯單元,利用固有的可重構路徑結構可以實現(xiàn)高效率的連接。此外,現(xiàn)在正在開發(fā)中的一種神經(jīng)計算芯片為神經(jīng)網(wǎng)絡的實現(xiàn)提出了一種新的有效方法。

1 FPGA實現(xiàn)神經(jīng)網(wǎng)絡關鍵問題分析
(1)選擇合適的神經(jīng)網(wǎng)絡及其拓撲結構
不同的神經(jīng)網(wǎng)絡有不同的應用,而且不同的網(wǎng)絡完成知識表達的機理是不同的,某一個神經(jīng)網(wǎng)絡不是萬能的.對于實際問題,首先要做的就是選擇針對性的神經(jīng)網(wǎng)絡,如線性分類問題可以用簡單的感知器,對于復雜的分類問題,函數(shù)逼近問題可以使用BP網(wǎng)絡,對于一些聚類問題可以使用徑向基(RBF)網(wǎng)絡等。以BP網(wǎng)絡結構為例,這種被廣泛采用的架構由具有錯誤反向傳播算法的多層感知器構成(Multilayer Perceptrons u-sing Back-Propagation,MLP-BP),訓練一個BP網(wǎng)絡主要的問題就在于:訓練開始之前,對于網(wǎng)絡拓撲結構缺乏一種明確的確定方法。而進行各種拓撲結構的實驗并不那么容易,因為對于每一個訓練周期都要消耗很長的時間,特別是復雜的網(wǎng)絡,更是如此;其次,對于硬件而言,最合適的網(wǎng)絡運算法則不僅在于它達到收斂有多么快,還要考慮是否容易在硬件上實現(xiàn)且這種實現(xiàn)代價和性能如何;另外,對于同一種NN(Neural Net-work)。其拓撲結構對網(wǎng)絡的收斂特性以及知識表達特性都有影響,一般增加網(wǎng)絡的神經(jīng)元或者神經(jīng)元的層數(shù),是可以增加網(wǎng)絡的逼近能力,但是可能會影響網(wǎng)絡的學習收斂情況,而且還可能會因為過適應(Overfit)而失去泛化能力。
(2)正確選擇數(shù)值表達形式
精度的選擇對處理密度(與耗費的硬件資源成反比)有直接影響。其中浮點數(shù)可以在計算機中表達實數(shù),它有相對高的精度和大的動態(tài)范圍,使用浮點數(shù)使得計算更為精確,但是在FPGA上實現(xiàn)浮點數(shù)運算是一個很大的挑戰(zhàn),而且會耗費很多硬件資源。盡管如此,加拿大研究人員Medhat Moussa and Shawki Arei-bi仍然實現(xiàn)了浮點數(shù)的運算,并進行了詳細的對比分析。
對于MLP-BP而言,Holt and Baker憑借仿真和理論分析指出16為定點(1位標志位,3位整數(shù)位和12位小數(shù)位)是最小可允許的精度表示(指可以達到收斂)。以邏輯XOR問題為例,文獻[1]中表格2.5(見表1)表明與基于FPGA的MLP-BP浮點法實現(xiàn)相比,定點法實現(xiàn)在速度上高出12倍,面積上是浮點實現(xiàn)的1/13,而且有更高的處理密度。

本文引用地址:http://www.ljygm.com/article/191889.htm

同時數(shù)據(jù)也說明基于FPGA的16位定點MLP-BP實現(xiàn)在處理密度上高于基于軟件方法的MLP-BP實現(xiàn),這最好地證明可重構計算方法的處理密度優(yōu)勢。應該說,在這種應用中浮點數(shù)遠不如定點數(shù)合適。但是定點數(shù)表示的缺點在于有限精度,盡管如此,對于不同的應用選擇合適的字長精度,仍然可以得到收斂。因此,目前基于FPGA的ANN大多數(shù)是使用定點數(shù)進行計算的。
(3)門限非線性激活函數(shù)(Non-linear activationFunction)的實現(xiàn)
ANN的知識表達特性與非線性逼近能力,有很大部分源自門限函數(shù)。在MLP網(wǎng)絡中,門限函數(shù)大部分是非線性函數(shù)(少數(shù)是線性函數(shù),如輸出層的門限函數(shù)),但是非線性傳遞函數(shù)的直接硬件實現(xiàn)太昂貴,目前實現(xiàn)門限函數(shù)的方法主要有:查表法(look-up ta-ble)、分段線性逼近、多項式近似法、有理近似法以及協(xié)調(diào)旋轉(zhuǎn)數(shù)字計算機(Coordinated Rotation Digital Com-puter,CORDIC)法則,CORDIC法則實現(xiàn)函數(shù)的優(yōu)點在于同一硬件資源能被若干個函數(shù)使用,但是性能相當差,因此較少使用。而高次多項式近似法盡管可以實現(xiàn)低誤差近似,但是實現(xiàn)需要耗費較高硬件資源。相對而言,查找表法和分段線性逼近法(注意:查找表不易太大,否則速度會慢且代價也大)更適合FPGA技術實現(xiàn)。其中分段線性近似法以y=c1+c2x的形式描述一種線性連接組合(如圖1所示),如果線性函數(shù)的系數(shù)值為2的冪次,則激活函數(shù)可以由一系列移位和加法操作實現(xiàn),許多神經(jīng)元的傳遞函數(shù)就是這樣實現(xiàn)的,而查找表法則是將事先計算的數(shù)值依次存儲在需要查詢的存儲器中來實現(xiàn)。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉