時間:2022-01-28 14:31:12
序論:寫作是一種深度的自我表達。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內心深處的真相,好投稿為您帶來了七篇神經網絡論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創作。
關鍵詞:模糊神經網絡;擴展卡爾曼濾波;自組織學習
模糊神經網絡起源于20世紀80年代后期的日本,由于其簡單、實用,已經被廣泛應用在工業控制、系統辨識、模式識別、數據挖掘等許多領域[1~4]。然而,如何從可用的數據集和專家知識中獲取合適的規則數仍然是一個尚未解決的問題。為了獲取模糊規則,研究人員提出了不同的算法,如文獻[5]利用正交最小二乘算法確定徑向基函數的中心,但是該算法訓練速度比較慢;文獻[6]提出了基于徑向基函數的自適應模糊系統,其算法使用了分層自組織學習策略,但是逼近精度低。擴展卡爾曼濾波(EKF)算法作為一種非線性更新算法,在神經網絡中得到了廣泛應用。文獻[7]利用擴展卡爾曼濾波算法調整多層感知器的權值,文獻[8]利用擴展卡爾曼濾波算法調整徑向基函數網絡的權值。
本文提出了一種模糊神經網絡的快速自組織學習算法(SFNN)。該算法基于無須修剪過程的生長準則增加模糊規則,加速了網絡學習過程,同時使用EKF調整網絡的參數。在該算法中,模糊神經網絡結構不是預先設定的,而是在學習過程中動態變化的,即在學習開始前沒有一條模糊規則,在學習過程中逐漸增加模糊規則。與傳統的模糊神經網絡學習算法相比,本算法所得到的模糊規則數并不會隨著輸入變量的增加而呈指數增長,特別是本算法無須領域的專家知識就可以實現對系統的自動建模及抽取模糊規則。當然,如果設計者是領域專家,其知識也可以直接用于系統設計。本算法所得到的模糊神經網絡具有結構小、避免出現過擬合現象等特點。
1SFNN的結構
本文采用與文獻[9]相似的網絡結構,如圖1所示。其中,r是輸入變量個數;xi(i=1,2,…,r)是輸入語言變量;y是系統的輸出;MFij是第i個輸入變量的第j個隸屬函數;Rj表示第j條模糊規則;wj是第j條規則的結果參數;u是系統總的規則數。
下面是對該網絡各層含義的詳細描述。
第一層:輸入層。每個節點代表一個輸入語言變量。
第二層:隸屬函數層。每個節點代表一個隸屬函數,隸屬函數采用如下的高斯函數:
μij=exp(-(xi-cij)2σ2ij);i=1,2,…,r;j=1,2,…,u(1)
其中:r是輸入變量數;u是隸屬函數個數,也代表系統的總規則數;μij是xi的第j個高斯隸屬函數;cij是xi的第j個高斯隸屬函數的中心;σij是xi的第j個高斯隸屬函數的寬度。
第三層:T-范數層。每個節點代表一個可能的模糊規則的IF-部分,也代表一個RBF單元,該層節點個數反映了模糊規則數。如果計算每個規則觸發權的T-范數算子是乘法,則在第三層中第j條規則Rj的輸出為
φj=exp(-ri=1(xi-cij)2σ2ij);j=1,2,…,u(2)
第四層:輸出層。該層每個節點代表一個輸出變量,該輸出是所有輸入變量的疊加。
y(X)=uj=1wjφj(3)
其中:y是網絡的輸出;wj是Then-部分。
2SFNN的學習算法
如前文所述,第三層的每個節點代表一個可能的模糊規則的IF-部分或者一個RBF單元。如果需要辨識系統的模糊規則數,則不能預先選擇模糊神經網絡的結構。于是,本文提出一種新的學習算法,該算法可以自動確定系統的模糊規則并能達到系統的特定性能。
2.1模糊規則的產生準則
在模糊神經網絡中,如果模糊規則數太多,不僅增加系統的復雜性,而且增加計算負擔和降低網絡的泛化能力;如果規則數太少,系統將不能完全包含輸入/輸出狀態空間,將降低網絡的性能。是否加入新的模糊規則取決于系統誤差、可容納邊界和誤差下降率三個重要因素。
2.1.1系統誤差
誤差判據:對于第i個觀測數據(xi,ti),其中xi是輸入向量,ti是期望輸出,由式(3)計算網絡現有結構的全部輸出yi。
定義:ei=ti-yi;i=1,2,…,n(4)
如果ei>keke=max(5)
則說明網絡現有結構的性能比較差,要考慮增加一條新的規則;否則,不生成新規則。其中:ke是根據網絡期望的精度預先選擇的值;emax是預定義的最大誤差;emin是期望的輸出精度;β(0<β<1)是收斂因子。
2.1.2可容納邊界
從某種意義上來講,模糊神經網絡結構的學習是對輸入空間的高效劃分。模糊神經網絡的性能和結構與輸入隸屬函數緊密相關。本文使用的是高斯隸屬函數,高斯函數輸出隨著與中心距離的增加而單調遞減。當輸入變量采用高斯隸屬函數時,則認為整個輸入空間由一系列高斯隸屬函數所劃分。如果某個新樣本位于某個已存在的高斯隸屬函數覆蓋范圍內,則該新樣本可以用已存在的高斯隸屬函數表示,不需要網絡生成新的高斯單元。
可容納邊界:對于第i個觀測數據(xi,ti),計算第i個輸入值xi與已有RBF單元的中心cj之間的距離di(j),即
di(j)=xi-cj;i=1,2,…,n;j=1,2,…,u(6)
其中:u是現有的模糊規則或RBF單元的數量。令
di,min=argmin(di(j))(7)
如果di,min>kd,kd=max[dmax×γi,dmin](8)
則說明已存在的輸入隸屬函數不能有效地劃分輸入空間。因此,需要增加一條新的模糊規則,否則,觀測數據可以由已存在的距離它最近的RBF單元表示。其中:kd是可容納邊界的有效半徑;dmax是輸入空間的最大長度;dmin是所關心的最小長度;γ(0<γ<1)是衰減因子論文。
2.1.3誤差下降率
傳統的學習算法把誤差減少率(ERR)[5]用于網絡生長后的修剪過程,算法會因為修剪過程而增加計算負擔,降低學習速度。本文把誤差減少率用于生長過程形成一種新的生長準則,算法無須經過修剪過程,從而加速網絡的學習過程。
給定n個輸入/輸出數據對(xi,ti),t=1,2,…,n,把式(3)看做線性回歸模型的一種特殊情況,該線性回歸模型為
t(i)=uj=1hj(i)θj+ε(i)(9)
式(9)可簡寫為
D=H+E(10)
D=TT∈Rn是期望輸出,H=φT∈Rn×u是回歸量,=WT∈Ru是權值向量,并且假設E∈Rn是與回歸量不相關的誤差向量。
對于矩陣φ,如果它的行數大于列數,通過QR分解:
H=PQ(11)
可把H變換成一組正交基向量集P=[p1,p2,…,pu]∈Rn×u,其維數與H的維數相同,各列向量構成正交基,Q∈Ru×u是一個上三角矩陣。通過這一變換,有可能從每一基向量計算每一個分量對期望輸出能量的貢獻。把式(11)代入式(10)可得
D=PQ+E=PG+E(12)
G的線性最小二乘解為G=(PTP)-1PTD,或
gk=pTkDpTkpk;k=1,2,…,u(13)
Q和滿足下面的方程:
Q=G(14)
當k≠l時,pk和pl正交,D的平方和由式(15)給出:
DTD=uk=1g2kpTkpk+ETE(15)
去掉均值后,D的方差由式(16)給出:
n-1DTD=n-1uk=1g2kpTkpk+n-1ETE(16)
由式(16)可以看到,n-1uk=1g2kpTkpk是由回歸量pk所造成的期望輸出方差的一部分。因此,pk的誤差下降率可以定義如下:
errk=g2kpTkpkDTD,1≤k≤u(17)
把式(13)代入式(17)可得
errk=(pTkD)2pTkpkDTD,1≤k≤u(18)
式(18)為尋找重要回歸量子集提供了一種簡單而有效的方法,其意義在于errk揭示了pk和D的相似性。errk值越大,表示pk和D的相似度越大,且pk對于輸出影響越顯著。利用ERR定義泛化因子(GF),GF可以檢驗算法的泛化能力,并進一步簡化和加速學習過程。定義:
GF=uk=1errk(19)
如果GF
2.2參數調整
需要注意的是,不管是新生成的隱節點還是已存在的隱節點,都需要對網絡參數進行調整。傳統的方法是使用LLS[10]方法對網絡參數進行調整,本文提出使用EKF方法調節網絡的參數。由于LLS方法在確定最優參數時計算簡單、速度快,但該方法對噪聲敏感,其學習速度隨著信噪比的增加而下降。另外,與LLS方法相關的問題是其求解可能是病態的,這使得參數估計變得很困難。EKF方法由于其自適應過程比較復雜,計算速度沒有LLS方法快,但是EKF方法在噪聲環境下具有魯棒性,使用EKF方法可以實現一種健壯的在線學習算法。網絡參數可以用下面的EKF[11]方法進行調整。事實上,網絡的參數向量θ可以看做一個非線性系統的狀態,并用下面的方程描述:
θi=θi-1
ti=h(θi-1,Xi)+ei(20)
在當前的估計值i-1處將非線性函數h(θi-1,Xi)展開,則狀態模型可以重寫為
θi=θi-1
ti=Hiθi-1+εi+ei(21)
其中:εi=h(i-1,Xi)-Hii-1+ρi。Hi是如下的梯度向量:
Hi=h(θ,Xi)θ|θ=i-1(22)
參數向量θ使用下面的擴展卡爾曼濾波算法更新:
Ki=Pi-1HTi[HiPi-1HTi+Ri]-1
θi=θi-1+Ki(ti-h(θi-1,Xi))
Pi=Pi-1-KiHiPi-1+Qi(23)
其中:Ki是卡爾曼增益矩陣;Pi是逼近誤差方差陣;Ri是量測噪聲方差陣;Qi是過程噪聲方差陣。
全局擴展卡爾曼濾波算法會涉及大型矩陣運算,增加計算負擔,因此可以將全局問題劃分為一系列子問題從而簡化全局方法。網絡的前件部分具有非線性特性,利用擴展卡爾曼濾波算法對其進行調整;網絡的后件部分具有線性特性,利用卡爾曼濾波算法對其進行調整,該方法等同于將全局方法簡化為一系列解耦方法,可以降低計算負擔。由于高斯函數的中心對系統的性能影響不明顯,為了簡化計算,只對高斯隸屬函數的寬度進行調整。
前件參數使用如下的擴展卡爾曼濾波算法更新:
Kδi=Pδi-1GTi[Ri+GiPδi-1GTi]-1
δi=δi-1+Kδi(Ti-wi-1φi)
Pδi=Pδi-1-KδiGiPδi-1+Qi(24)
后件參數使用如下的卡爾曼濾波算法更新:
Kwi=Pwi-1φTi[Ri+φiPwi-1φTi]-1
wi=wi-1+Kwi(Ti-wi-1φi)
Pwi=Pwi-1-KwiφiPwi-1+Qi(25)
2.3模糊規則的增加過程
在SFNN學習算法中,模糊規則增加過程如下:
a)初始參數分配。當得到第一個觀測數據(X1,t1)時,此時的網絡還沒有建立起來,因此這個數據將被選為第一條模糊規則:c0=X0,δ1=δ0,w1=t1。其中δ0是預先設定的常數。
b)生長過程。當得到第i個觀測數據(Xi,ti)時,假設在第三層中已存在u個隱含神經元,根據式(4)(7)和(19),分別計算ei、di,min、GF。如果
ei>ke,di,min>kd,且GF
則增加一個新的隱含神經元。其中ke、kd分別在式(5)和(8)中給出。新增加的隱含神經元的中心、寬度和權值賦值為:Cu+1=Xi,δu+1=k0di,min,wu+1=ei,其中k0(k0>1)是重疊因子。
c)參數調整。當增加新神經元后,所有已有神經元的參數通過式(24)(25)描述的算法調整。
3仿真研究
時間序列預測在解決許多實際問題中是非常重要的。它在經濟預測、信號處理等很多領域都得到了廣泛應用。
本文采用的時間序列由Mackey-Glass差分延遲方程產生,其方程定義為[5]
x(t+1)=(1-a)x(t)+bx(t-τ)1+x10(t-τ)(27)
為了能夠與文獻[5,6]在相同的基礎上進行比較,取值Δt=P=6,式(27)中的參數選擇為:a=0.1,b=0.2,τ=17。預測模型表示為x(t+6)=f[x(t),x(t-6),x(t-12),x(t-18)](28)
為了獲得時間序列,利用式(27)生成2000個數據,式(27)的初始條件為:x(0)=1.2。為了訓練和測試,在t=124和t=1123之間選擇1000個樣本作為式(28)的輸入/輸出樣本數據。使用前500個數據對作為訓練數據集,后面的500個數據對驗證該模型的預測性能。圖2顯示了SFNN生成的模糊規則數;圖3顯示了從t=124到t=623的訓練結果;圖4顯示了SFNN良好的預測性能。表1列出了SFNN與其他算法的比較結果。表1顯示,與OLS、RBF-AFS算法相比,SFNN具有最少的規則數、最小的誤差和良好的泛化能力,同時具有快速的學習速度。SFNN的快速性就在于:采用無須修剪過程的生長準則,加速了網絡學習過程;利用擴展卡爾曼濾波調整網絡的參數,可以縮短網絡的學習周期。從上面的分析可以看出,SFNN具有緊湊的結構、快速的學習速度、良好的逼近精度和泛化能力。
4結束語
SFNN采用在線學習方法、參數估計和結構辨識同時進行,提高了網絡的學習速度。基于該方法生成的模糊神經網絡具有緊湊的結構,網絡結構不會持續增長,避免了過擬合及過訓練現象,確保了系統的泛化能力。
參考文獻:
[1]
HUANGHuan,WUCong-xin.Approximationcapabilitiesofmultilayerfuzzyneuralnetworksonthesetoffuzzy-valuedfunctions[J].InformationSciences,2009,179(16):2762-2773.
[2]DENGXing-sheng,WANGXin-zhou.Incrementallearningofdynamicfuzzyneuralnetworksforaccuratesystemmodeling[J].FuzzySetsandSystems,2009,160(7):972-987.
[3]韋玉科,汪仁煌,李江平,等.一種新的數據智能化處理算法[J].計算機應用研究,2008,25(5):1328-1329.
[4]CHENSheng,HONGXia,LUKBL,etal.Orthogonal-least-squaresregression:aunifiedapproachfordatamodeling[J].Neurocompu-ting,2009,72(10-12):2670-2681.
[5]CHENS,COWANCFN,GRANTPM.Orthogonalleastsquareslearningalgorithmforradialbasisfunctionnetworks[J].IEEETransonNeuralNetworks,1991,2(2):302-309.
[6]CHOKB,WANGBH.Radialbasisfunctionbasedadaptivefuzzysystemsandtheirapplicationstosystemidentificationandprediction[J].FuzzySetsandSystems,1996,83(3):325-339.
[7]RIVALSI,PERSONNAZL.ArecursivealgorithmbasedontheextendedKalmanfilterforthetrainingoffeedforwardneuralmodels[J].Neurocomputing,1998,20(1):279-294.
[8]SIMOND.TrainingradialbasisneuralnetworkswiththeextendedKalmanfilter[J].Neurocomputing,2002,48(1):455-475.
[9]WUShi-qian,ERMJ,GAOYang.Afastapproachforautomaticgenerationoffuzzyrulesbygeneralizeddynamicfuzzyneuralnetworks[J].IEEETransonFuzzySystems,2001,9(4):578-594.
由于數據的獲取難度較大,因此本文借用了相關文章的數據[4],選取了湖南省十一個省市的數據作為研究的樣本,為了確保輸入數據(包括訓練以及將來要預測的數據)在比較接近的范圍里,我們需要對數據進行歸一化處理。本文的數據主要包括輸入數據和期望輸出數據,輸入數據主要是湖南省十一個市的電子政務指標數據,包括16個輸入維度,輸出的是對電子政務系統的評價結果,主要包括:好、較好、一般、較差、差五個結果。利用下面的線性函數轉換方法完成數據的歸一化。公式中的P為歸一化處理后的數據,P1為原始數據,P1min為原始數據中的最小值,P1max為原始數據中的最大值。通常情況下,用于測試的輸入數據所對應的輸出數據不是量化數據,比如本文中所提到的好、較好、一般、較差、差五個結果。因此本文的輸出數據主要使用的是專家評價得出的分數,來對電子政務績效做出評價,分數評價結果的對應關系為:1-3為差,3-5為較差,5-7為一般,7-9為較好,9以上為好。經過歸一化處理過的指標數據和通過專家評價得出的評價結果如表2所示。
2輸入層、輸出層及隱層節點的設計
由于一個三層的前向網絡具有以任意精度逼近任意一個非線性函數的能力,因此,只需構造一個輸入層、一個隱層和一個輸出層的3層神經網絡。本文中的電子政務績效評價指標體系共包括成本效益、服務對象、內部運營及學習與發展四個指標維度,然后又將其細分成16項三級指標,也就是說神經網絡輸入層的維度為16,即輸入層神經元個數Pn=16。輸出層輸出的結果是我們對電子政務系統的評價,而我們把評價結果好、較好、一般、較差、差作為網絡的唯一輸出,因此,輸出層神經元個數為r=1。1988年Cybenko[11]大量的研究表明在三層神經網絡中一個隱藏層就可以實現任意分類的問題,以任何精度來實現任意非線性的輸入和輸出的映射。本文將隱藏層設置為一層。隱藏層節點的選擇也是一個復雜的問題,如果隱層節點數比較少的話,則有可能導致網絡訓練者性能很差;如果選擇較多的隱層節點數,雖然能夠降低系統誤差,但是會使網絡訓練的時間增加,而且也極易使訓練陷入局部極小點而得不到最優點,最終會導致訓練出現“過擬合”的現象。其中n為輸入層節點數,m為輸出層節點數,a為1~10之間的常數。
3基于BP神經網絡的電子政務績效評價模型的設計
利用BP神經網絡對電子政務績效進行評價的主要步驟有:第一步:根據電子政務發展過程中的相關影響因素,選取合適的電子政務績效評價的指標數據,利用相關的算法對指標數據進行標準化處理[5],將處理后的指標數據x1,x2,x3,⋯,xn作為輸入BP神經網絡的輸入值。第二步:在輸入層輸入數據以后,數據會在神經網絡中正向傳播,數據在隱藏層進行一層一層的處理,然后會把處理后的數據傳向輸出層,輸出層得到的數據就是實際的輸出值Y。第三步:當輸出層得到實際的輸出值以后,會和期望值進行比較,如果輸出值和期望值不相等,那么會根據相關的公式計算出誤差,然后把誤差信號按照原來的路徑進行反向的傳播,通過不斷的循環的傳播來調整隱藏層神經元的權重,從而使誤差越來越小。第四步:不斷的重復前面的第二步和第三步,一直到誤差可以小到某個閾值,然后停止訓練和學習,只有選擇的樣本足夠多時,神經網絡的訓練才更精確,輸入的樣本數據不同,得到的輸出向量也會不同,當所有的數據樣本的數據值和期望值誤差最小的時候,綜合評價結果更為接近,神經網絡的權重值Wij就是BP神經網絡通過訓練和自適應的學習得到的一個內部的表示。對選取的樣本進行訓練以后,我們就可以利用BP神經網絡的訓練模型對電子政務績效進行評價,而且可以對大規模的電子政務進行績效評價,因為神經網絡具有一定魯棒性[6],那么會導致出現主觀綜合評價值在一定的程度會與實際值存在少量偏差,但是這個偏差不會影響評價結果。
4應用粒子群算法優化BP神經網絡模型
1995年兩位美國學者對鳥群的群體遷徙和覓食的過程進行了模擬,從而提出了一種智能的優化算法-粒子群優化算法[7](ParticleSwarmOptimization,PSO),隨著近年來粒子群算法的不斷應用,已經逐漸成為一種新的優化算法。粒子相繼兩次位置的改變取決于粒子當前位置相對于其歷史最佳位置和群體歷史最佳位置的變化。因此,若把網絡的權值看作是PSO算法中粒子的位置,則在網絡訓練過程中,相繼兩次權值的改變可視作粒子的位置的改變。因而類比公式3,網絡的權值改變量計算公式。
5實例分析
關鍵詞:神經網絡;滯環;變流器
1引言
如何提高工業用電的效率和減小諧波污染已倍受關注。在工業用電中,大部分電能是要經過變換才能用于生產的。由于快速功率開關性能的進一步提高,基于脈寬調制功率變換電路已經日益成為人們提高供電系統功率因數,降低諧波污染的有力工具,因而成為人們研究的熱點。其中三相全控型電壓源功率變換裝置,主電路如圖1所示。經過十余年的研究,已經開始實用化[1,2]。三相變流器的最流行的控制方式是采用雙環控制。外環用于調整輸出電壓,快速的電流內環調節器常用來調節交流輸入電流使其跟蹤期望的電流軌跡,得到單位功率因數和低諧波的電流。
為提高系統的性能,采用神經網絡滯環調節器[4~6]。神經網絡控制作為一種極有潛力的控制手段吸引了眾多的學者,因神經網絡具有并行處理能力、自學習能力、容錯能力,很適合于處理非線性系統的控制問題。在相對變化較慢的速度、溫度、位置等物理量控制中取得成功的應用。但在速度較快的物理量的控制中,應用較少。
在電力電子學領域,神經網絡多用于系統模型辨識,故障診斷等。隨著DSP的運算速度的不斷增加,使神經網絡在快速量控制中應用成為可能。在各種變流器直接電流控制方式中,滯環控制是一種有效、簡單的控制方式,兩者的結合可以發揮各自的優勢。滯環電流控制方式不需要系統更多的參數,運行容易,具有快速的電流響應和限幅能力[7]。但系統開關頻率不固定,在嚴重的非平衡條件下,系統穩定性變差,產生大量的電流諧波,同時影響開關頻率的變化。本文所用調節器,可以提高系統的魯棒性。為了減少PWM技術在變換器中的損耗并獲得優化的輸出電流,減小EMI,采用矢量控制的基本思想[9],給出基于滯環空間矢量控制方式的電流控制器。若使系統數字化,開關頻率可由采樣時間控制。
2基于神經網絡的電流滯環控制器
電流滯環控制器運行時無需系統的儲能器件的具體參數信息。用BP神經網絡來替代傳統電流滯環調節器,在滯環控制的基本控制思路上訓練一個神經網絡控制器來實現滯環控制控制的功能,導師信號如表1所示。基于神經網絡滯環控制的系統控制結構框圖如圖2。三相電流的誤差信號送入神經網絡中,參與計算,輸出開關信號S1,S3,S5,經過邏輯合成后加到主電路的驅動電路上。
圖2所示神經網絡調節器,該網絡有3層(3-5-3結構)。節點的作用函數采用Sigmoid函數
式中是第r步迭代時第k層第i個神經元節點對于第h個樣本輸入時輸出;為第r步時第k層第i個神經元節點對于第h個樣本輸入時所接收到的上1層(第k-1層)的輸入總和
點的閾值。
各點的權值Wij和閾值θij通過MATLAB軟件求出,通過DSP編程數字實現。Wij
圖3為系統在神經網絡滯環控制器作用下系統仿真與實驗波形。
圖3a為給出階越給定時三相電流的響應過程,表明該調節器具有較快的響應速度。
圖3b,c,d給出了正常工況時的開關波形,電流波形,系統的單位功率因數波形顯示。
圖3e繪出了三相電壓不平衡時的三相電流。電源參數為Ea=Eb=Ec/0.85。變流器基本保持了每相電壓電流的同相位。
通過波形可以看出神經網絡滯環控制器較好地實現了滯環控制器所有的基本功能。電流控制魯棒性好,電流響應快的優點,同時可以限制器件的最高開關頻率,提高了滯環系統抗不平衡能力。滿足系統單位功率因數和低諧波的要求,同時它還具有一個新的優點:當某個電流誤差信號丟失情況下仍然能正常工作。
3反饋丟失時的控制研究
反饋信號不正常是一種較為常見系統故障。常規數字滯環控制方案下,如果檢測環節有故障,某一相電流反饋信號丟失,那么系統不能正常工作,系統線電流響應仿真曲線如圖4a。但在神經網絡控制電路中,由于神經網絡的參與,調節器對單路反饋信號丟失具有一定的抑制作用。控制器檢測電流反饋信號,如果連續3個周期檢測到電流反饋信號為0,那么可確認反饋信號丟失,此時將該通道電流誤差設為0,參與神經網絡滯環調節器的運算,輸出控制信號。系統實驗波形如圖4(b)~(d),系統仍可以得到較好的輸入電流與輸出電壓波形,這主要歸功于神經網絡的數據并行處理能力。從圖4(b)~(d)中可以看出系統的電壓電流響應還是較好的,對于單輸入信號丟失的穩態電流波形顯示出了很強的魯棒性。而在同樣參數的常規滯環電流控制下,當Dia丟失時,系統不能穩定工作。
4電流誤差增益在線修正
從控制的效果來講,如果滯環控制的容差帶越小,那么系統輸入電流的諧波成分就越小,THD值越接近于零。然而控制中由于系統參數的約束,如果容差帶設計過小,系統難以實現,反而使得諧波成分增加。可以就額定負載下可以實現的容差帶進行分析,然后留取一定的裕量,作為額定容差帶,保證系統的條件能力。在控制中選擇1.2倍的額定負載時允許的容差帶作為導師信號中的δ值。
假設主電路3相參數對稱,輸入為理想三相正弦電壓源,任意時刻總有三個開關處于開狀態,另三個處于關狀態。上下橋臂不能同時導通。這樣,變流器的開關狀態便形成8個開關函數。開關函數定義為如下:
di=(i=1,3,5)=1,當Si(i=1,3,5)導通,Sj(j=2,4,6)關斷。di=0,當Si關斷,Sj導通。
在1個開關周期內,假設占空比為Di。di=1時,輸入端向負載端輸出能量,電感電流減小;di=0時,輸入電感存儲能量,電感電流增加,電流波形如圖5。
階段1:
具有固定滯環帶的電流控制方式有一些缺點。在滯環帶范圍內,由峰-峰電流的波動而產生的PWM頻率的變化受基波波動的控制,同時,電流誤差沒有嚴格的控制。滯環控制系統中,滯環容差帶是根據系統交流電流的額定工作點定的。這樣,系統在低電流工作時,電流噪聲成分相對增加,系統頻譜變差。因此,根據靜態工作點的改變,相應改變系統的滯環容差帶,可以保證系統電流頻譜不隨功率變化而變,這種思想較為適合負載變動頻繁的工作場合。系統的靜態工作點的分析可以通過檢測直流輸出來得到,但不是最佳的方案,因為時間工作過程中系統負載特性可能較為復雜,阻性、感性、容性是不可預測的,暫態過程中輸出電流與電壓的相位難以維持相同。對于高頻實時控制來講,可以通過FFT算法來分析系統的功率輸出獲負載特性,但應用該方案負載程度增加。本文提出一種較為簡單的控制方案。
將可逆變流器的三相靜態電壓量變換到兩相旋轉dq坐標系中,有
由于滯環控制可以控制系統功率因數為1,因此經過3/2變換后,輸入有功功率是與d軸電流id成正比的,iq應該為0。設為id的標幺值,取額定負載時id的標幺值為1,所以在圖2所示的基本控制器中,令,其中k在實現時要加下限幅。
則輸入到神經網絡中的電流為
nin=ki(6)
5空間矢量調制神經網絡控制器
這里Vk是變流器的電壓矢量。
任意時刻變流器期望端電壓Vr的相角對應于了復平面上6個區域中的1個。Vr可由給定區域內的鄰近矢量來構成,從而降低電磁噪聲和開關次數[8]。
通過后面的仿真和實驗我們可以看到滯環神經網絡控制器結構簡單,由于系統屬于數字化實現,最高開關頻率是固定的,在這一點上使得系統參數易于設計。但滯環控制開關的狀態是難以確定的。因此變流器期望電壓矢量一般不是由相鄰的矢量構成Vr的,任意時刻開關的狀態不可預知。
在滯環控制過程中,結合空間矢量調制原理,根據系統滯環條件的需要及系統此時期望矢量的位置來修正開關波形,形成如表2所示導師信號。導師信號中z區確定如圖8a所示,經過這種修正后系統穩態時電流控制器所產生的開關隨時間而呈現空間矢量調制的特點,圖8b所示為空間矢量滯環調節穩態工作時開關波形,可以看出穩態時開關按照規律由同一區域的開關矢量來合成。
式中Vs是電壓源矢量;i*s參考電流矢量。
6仿真與實驗說明
系統中的參考電流可由下面的方程得到
I*=P*/E
這里E可由整流濾波取平均值的方式得到。
參考電壓Uref同輸出電壓Uo的差值經PI調節后,取其為電流峰值參考,再分別與三相的同步信號相乘,得到內環電流的參考信號I*,得到瞬時參考電流給定ijcom(j=a,b,c),再與實際相電流ij相比較得到電流誤差信號ij,與K相乘然后輸入神經網絡控制器,神經網絡的輸出即為開關信號算法由DSP(TiTMS320c240[9])來實現。主要參數及檢測設備如下:
7結論
本文研究了三相變流器的神經網絡控制方案。①將神經網絡控制技術與電力電子電路滯環控制結合起來,實現了神經網絡在快速變化量控制中的應用,可以提高系統魯棒性與控制的容錯能力,在三相輸入電源不平衡和某一相負載電流反饋丟失時,系統依然保持較好的控制性能;②評估系統負載特性,并根據負載的變化而改變電流誤差增益,有助于提高系統電流控制性能,全程優化諧波,算法較為簡單;③容差帶與負載特性、開關頻率有機結合,才能保證系統的調節能力;④為了減小開關頻率和開關損失,采用了將空間矢量調制運用到滯環控制中的技術,由于采用數字神經網絡進行調節,易于實現。
參考文獻
[1]鄔偉揚,鄭穎楠,劉彥民(WuWeiyang,ZhengYingnang,LiuYanmin).AC/DC功率變流技術的發展與現狀(AreviewofAC/DCpowerconversiontechnique)[R].西安:中國電力電子技術學會五屆一次理事會學術報告(xi’an:DissertationofChinapowerelectroniccouncilconference),1999.
[2]WeiyangWu,YingnanZheng,etal.Anovelindireetcurrentcontrolledrealizationforthethreephasevoltagesoureereversibleconverter[C].IPEMC’2000August2000,TsinghuaUniversityBeijing,China.
[3]KiTaePark,JunKooKang,SeungKiSul.AnalysisanddesignofthreephaseboostPWMconverteragainstpowerdisturbances[C].1997,774-776.
[4]FumioHarashima,etal.Applicationofneuralnetworkstopowerconvertercontrol[C].Conf.Rec.IEEE-IASAnnu.Meeting,Conf.Rxc,1989,1087-1091.
[5]KamranF.Animproveddead-beatrectifierregulatorusinganeuralnetpredictor[C].IEEE,PESC,1994,1431-1436.
[6]MalesaniL.AnovelhysteresiscontrolmethodforcurrentcontrolledvoltagesourcePWMinverterwithconstantmodulationfrequency[J].IEEETransationsonIA,1990,26(1):88-92.
1.1采用計算機模擬技術建立模擬模型
對BP神經網絡模擬模型建立的基礎,人們是這樣認為的,因為影響工程造價的因素,大多數人們都是沒辦法確定的,所以我們不需要把這個值具體是多少確定下來,而是從另一個方面考慮,根據這個項目的基本情況,估計實際的造價落在某個范圍的機會會大一些,這個思想就是計算機模擬技術建立模擬模型的理論基礎。
1.2人工智能模型
工程造價估算專家系統,是通過人工智能,加上知識庫技術而建立起來的,可是這種人工智能模型主要靠專家的知識,來對工程造價進行估計計算的,但是估算的結果是被估算人員的主觀意識所影響的,不同專家的性格,知識面的寬窄,經驗豐富與否、都是不確定因素,幾乎可以會所不一樣的估算專家所得出的結果都不會一樣。這種方法很容易帶有個人偏見和片面性。受專家的主觀偏見性較強。
2BP神經網絡模型構造與算法
2.1人工神經網絡的基本原理
1985,D•E•Rumelhart等人組成的PDP小組提出的一種神經網絡模型,這就是我們今天所說的BP神經網絡,BP神經網絡結構是利用誤差反向傳播來消除誤差的,它有三個層次,有一個輸入層,第二個是隱層,最后一個當然就是輸出層。在訓練估算中,我們可以通過計算輸出值和我們預期的期望值,他們之間所產生的誤差,逆向思維,去求解輸出層單元的一般化誤差,然后再把誤差進行反向傳播,把隱含層單元的一般化誤差求解出來,并最終調整輸出層和隱含層,包括輸入層之間的連接權,還有連接權與隱含層和輸出層的閾值,最終目的就是讓系統誤差達到我們可以接受為止。當先前的系統誤差達到我們所需求的時候,權值和閾值就變成了固定不變的了,這樣我們再通過反向逆推,就可以測出我們這個項目的未知信息。這就是人工神經網絡的基本原理。
2.2BP神經網絡模型建立的步驟
(1)我們首先確定模型輸入層,隱含層還有輸出層的神經元個數。并且以此為依據,確定BP神經網絡模型的結構參數;(2)神經網絡只能處理-l~l之間的數據,所以在輸入網絡時,我們不僅需要對原始數據進行規范化處理,還要對隱含單元和各個單元輸入信息進行求和;通過反向逆推之后得到本單元的輸入信息。所以對原始數據,隱含單元輸入模塊規范化細致化是非常重要的;(3)隱含單元的輸出值可以根據神經網絡操作模型得出,只要我們把net信號經過一次激發函數的處理,可以得到這個隱含單元的輸出值;(4)對于輸出單元節點,我們只要對前一層的隱含層單元輸入信息,并且加權求和后,就能得到該單元的輸入信息。操作起來非常方便快捷;(5)對權矩陣的調整,因為人工神經網絡可以近似實現任意空間的數學映射。所以我們假設,如果神經網絡輸入單元數為M,輸出單元為N,則在m維歐式空間尺中會有一個有界子集A,存在著一個到n維歐式空間,那么R中一個有界子集F(A)的映射。
3基于BP神經網絡的工程造價估算模型
3.1定量化描述工程特征的因素
什么是工程特征,在BP神經網絡中所說工程特征,就是指不但能表示工程特點,而且還能反映工程的主要成本構成的重要因素。,我們可以通過參照歷史工程資料的統計和分析,進行工程特征的選取工作。選取完成之后,再根據專家的經驗來確定,這樣就可以萬無一失了。首先我們可以通過典型住宅工程的造價組成進行分析,然后對建筑結構參數的變化和別的工程做一下對比,通過以上兩點得出的結果,分析這些因素對造價的影響,依照以上的理論方法,我們進行了實踐性的研究,最終把礎類型,結構形式,建筑層數,門窗類型,外墻裝飾還有墻體材料以及平面組合等,這7種因素作為工程的主要特征。不同的建筑工程有著不同的類型,比如說結構,可以是磚混結構和框架結構等;磚條基和鋼筋砼條基礎等都可以作為基礎特征,對于這樣的特征選取的多樣性我們稱之為特征類目,通過工程特征不同類目的列舉,再跟據定額水平,工程特征對造價影響的相關性,這些對平方米造價的改變,對工程定量化的描述可以主觀的給出對應的量化數據。
3.2建立估價模型
工程造價估算的指標體系到該項目的單位造價的非線性映射,就可以統稱為是建設項目工程造價的估算問題。BP網絡可以根據人們的需求以任意的精度去逼近任意映射關系,究其原因就是上文說的BP網絡采用的是三層BP神經網絡結構,不同于其他的電腦估算網絡。不僅是因為該模型的輸入單元為7個,還有他們的項目樣本特征也不盡相同。神經網絡可以根據已經經過我們優選的模型特征,做為參考估算要素,然后再通過項目工程造價估算中,我們所提供的一定數量的已知樣本,采取對樣本的神經網絡訓練,最后根據以往的大的數據庫,提取類似的項目估算值,然后才能對其它特征的項目進行估算。這樣我們只需要輸入指標體系的各指標值,BP神經網絡就可以在該項目的單位造價的非線性映射中給出該項目的單位造價。
3.3檢測結果的分析
上面我們通過大量的實際實驗得知了這兩個固定不變的數字,然后我們可以用程序值被收斂后的網絡,對現在要進行求解的數據進行檢測,在測試后,如果發現總體誤差比率較小,那么就滿足我們初步設計的概算需求了,同時對工程可行性研究的投資估算需求也已經基本符合了,這些結果能有好的保證,全是依賴我們所選擇的模型的寬度夠用,模型在所有的因素中具有廣泛的代表性。所以估價模型的計算才較為成功。幾個工程估算的好壞也不能代表所有的項目都是完美的,也有個別工程造價估算誤差大,因為電腦畢竟是人在給其輸入程序,電腦的經驗,還有就是對一些特征的學習不夠用,本身的知識儲備還是有局限性的。因為對樣本數量的學習始終是有限,不可能面面俱到,而且挑選的樣本也不可能針對這個工程而言都是符合這個項目的特性。雖然說BP神經網絡模型有這樣無法控制的缺點,但是和其他的造價估算模型相比,BP神經網絡模型的優點還是可圈可點的,其優點和其他的造價模型相比較優點還是非常明顯的。在以后的估算中,隨著樣本的不斷充實,數據的不斷積累,經驗的不但豐富,其估算的誤差也將不斷縮小,這些方面的補充,在以后的估算中,必定會取得非常完美的成績。
4總結
論文關鍵詞:咸潮,東江,神經網絡
東江為珠江三大干流之一,發源于江西省尋烏縣,由東向西流經龍川、惠州等地,于東莞橋頭鎮進入東莞市,流經約20公里至石龍分為南、北二大干流進入河網區,經東莞虎門出海。整個東江下游近入河口處,受徑流和潮汐共同影響,海水隨著海洋潮汐漲潮流沿著東江河口的主要潮汐通道向上推進,成為感潮河段。東江下游分布了東莞市主力水廠,咸水上溯將影響當地的供水水質。當水體含氯化物濃度超過250mg/L時數學建模論文,就不能滿足供水水質標準,影響城鎮生活供水。自2004年開始,每年的11月至次年2月易遭受咸潮的侵襲。2004年底東江徑流量比多年同期減少約五成,咸潮持續了近六個月,東莞部分水廠因為氯化物超標停止取水,對當地居民生活和工農業用水造成極大的影響。
咸潮發生的機制十分復雜,受徑流、潮汐、河口等多個因素共同影響,且各個因素之間有著復雜的聯系,同時所需的觀測資料不完整,因此難以用數學模型準確地描述咸潮的發生規律,而采用數理統計方法只能確定“點”到“點”的關系,不能描述咸潮空間變化的連續過程,具有一定的局限性。真正意義上的咸潮預報模型方面的研究與應用不多見,以基于偏最小二乘回歸與支持向量耦合建立的咸潮預報需要有較高的編程程序【1】,在實際應用中具有一定難度。人工神經網絡是近年來發展起來的一種受到人腦和神經系統啟發而創建的計算方法,根據以往的數據找到一種比較精確的方法使得預測結果與實際情況相符合,預測的結果具有很高的信任度【2】論文下載。因此,本文以東江下游2009年10月~12月的實測統計資料為基礎,建立通過人工神經網絡的耦合潮位、上游徑流量、咸度等因子建立咸潮預測模型,能為合理分配現有水資源、水廠抗咸提供可靠的依據。
1 BP神經網絡原理
統計模型中,常采用回歸分析方法,對事先擬定的因子進行篩選和系數求解,但當擬定的因子樣本數較少且因子之間存在嚴重的相關性時,會導致分析失效[2]。人工神經網絡能夠通過大量簡單的神經元廣泛互連形成的復雜的非線性系統。它不需要任何先驗公示,就能從環境變量和待預測水質指標的歷史數據之間中自動地歸納規則數學建模論文,獲得這些數據的內在規律,具有很強的非線性映射能力,特別適合于因果關系的非確定性推理、判斷、識別和分類等問題。其中的BP網絡算法使用反向傳播算法對網絡的權值和偏差進行反復的調整訓練,使輸出的向量與期望向量盡可能地接近,當網絡輸出層的誤差平方和小于指定的誤差時訓練完成,保存網絡的權值和偏差,是目前運用最廣泛、最為成功的一種算法【3】。
BP 算法“訓練”的過程可以分為向前傳輸和向后傳輸兩個階段:
1、向前傳輸階段
(1)從樣本集中取一個樣本,,將輸入網絡。
(2)運算過程中,對數據的取值采集的各數據單位不一致,可對數據采用歸一化方法處理。
(3)計算出誤差測度和實際輸出
(4)對權重值各做一次調整,重復這個循環,直到。
2、向后傳播階段――誤差傳播階段
(1)計算實際輸出O與理想輸出地差
(2)用輸出層的誤差調整輸出層權矩陣
(3)
(4)用此誤差估計輸出層的直接前到層的誤差,再輸出層前導層誤差估計更前一層的誤差。如此獲得所有其他各層的誤差估計。
(5)并用這些估計實現對矩陣的修改。形成講輸出端表現出的誤差沿著與輸出信號相反的方向逐級向輸出端傳遞的過程。
網絡關
于整個樣本集的誤差測度:
2 東江下游河道咸潮預測模型的建立
根據多年的歷史觀測資料,東江下游咸度一方面受上游徑流量大小的影響(上游來水量越小,咸度值偏高的可能性越大,反之亦然),另一方面還與漲落潮的潮位緊密相關[4-5]。因此,本文選取博羅水文站記錄的上游徑流量、東江河口潮位、東江下游大王洲橋的咸度作為本模型的自變量和因變量(見圖1)。根據2009年10月~12月的實測資料,首先選用2009年10月共60日的數據,對模型進行訓練和模擬,建立東江下游月時段水量預測模型。
在應用BP網絡運算過程中,輸入向量有2個元素數學建模論文,輸出向量有1個元素,所以網絡的輸入層有5個結點,輸出結點1個,采用3層BP網絡結構,即網絡只有1個隱含層,當隱含層節點為4個時,所建模型具有相對較小的模擬誤差,因而,隱含層節點設置為4個。網絡的訓練目標為0.001,最大訓練次數為20000次。為了防止網絡發生過度擬合,訓練方法采用泛化能力較強的貝葉斯正則化方法論文下載。整個過程通過大量的試驗計算獲得,這無形增加了研究工作量和編程計算工作量,Matlab軟件提供了一個現成的神經網絡工具箱,為解決這個矛盾提供了便利條件。
圖1 東江下游地理位置圖
3討論
為檢驗模型的預測效果,運用前面已訓練過的用2009年12月共18日的咸潮情況進行預測,預測值和實測值見表2,結果顯示數學建模論文,通過bp人工神經網絡模型,以徑流及潮差變化預測咸潮的方法是可行的,對咸潮的預測基本符合實際情況。
二十世紀九十年代,東江100m3/s的流量可以將咸潮壓制在東江萬江――中堂入海口處。2004年東江劍潭樞紐工程建設竣工后,上游徑流流速減慢,對東江河道輸砂量的攔截作用增大,下游河道的水位呈下降趨勢并降到海平面以下,水力坡降的壓咸作用消失【6】,海水入侵由原來的主要受流量影響轉變為受潮汐和流量共同影響。從實測數據來看,由于潮差的半月變化直接影響到潮流的強弱,大潮(為農歷十五至十八)時,咸潮強度大,上溯距離長,上游徑流量要增加。整個東江下游作為感潮河段,一般情況下,上游徑流量只要維持在270m3/s就能將咸潮線控制在萬江至中堂一線以下。但是,在初一、十五大潮時段,如果上游壓咸的需水量無法維持到360m3/s,咸潮有可能越過第二水廠,上溯到石龍段。2009年12月1-9日,大潮前后,潮位超過了1.00m,上游徑流量最大僅為348m3/s數學建模論文,東莞市第二水廠的取水口氯化物濃度出現峰值,曾一度停產,影響正常生產;2009年12月16日-20日,小潮前后,由于上游徑流量大幅度增加至370m3/s,咸潮無法達到第二水廠,保障了生產水廠的正常取水。
表1 2009年12月東江上游流量、河口潮位的實測值
日期
1日
2日
3日
4日
5日
6日
7日
8日
9日
東江河口最大潮位m
1.08
1.21
1.28
1.27
1.28
1.19
1.02
0.76
0.45
博羅水文站流量m3/s
279
271
302
317
312
348
340
299
258
日期
16日
17日
18日
19日
20日
21日
22日
23日
24日
東江河口最大潮位m
1.06
1.07
1.06
1.04
0.97
0.86
0.71
0.50
0.25
博羅水文站流量m3/s
370
370
330
342
338
284
285
BP神經網絡模型的應用范圍比較寬廣,它也是眾多神經網絡模型中的一種使用效率較好的方式。該種神經網絡利用存儲空間和不斷學習注入新的內容將工程造價中的輸入、輸出關系具體呈現出來,運行時,可以有效降低網絡使用的誤差幾率。這一過程中使用的算法為梯度下降法,利用反向傳播的理論對網絡中的權值和閥值進行靈活調整和運用。BP神經網絡中統計數據的輸入是由輸入層完成的,輸入層直接和隱層相聯系,隱層又直接和輸出層對接,而隱層可由單一層充當,也可以是多層結構,此時輸入層和輸入層之間神經個數的具體量可以根據系統公式來定,因此數據在輸入后的輸出過程比較便捷。實際運算中,每一神經元連接強度的權值存在差異性,輸入數據的影響程度也會隨著權值的增大而加深。BP神經網絡算法通常包括兩項內容,一是通過正向傳播的樣本輸入,二是通過反向傳播的誤差數據反饋修正權值。正向傳播主要是從輸入層完成樣本的輸入過程,接著經過隱層將數據信息傳遞到輸出層,此時若實際輸出結果和期望數值存在的差異,已經超過了事先設定的誤差,則為反向傳播。如果實際的輸出值和期望效果的差異比事前設定值要小,系統結束學習算法。該種算法可以利用反復學習與功能連續鍛煉的機會而促進運行過程的不斷更新,對權值和閥值的靈活調整要通過幾百次甚至幾萬次的映射,同時也要經過正向傳播和反向傳播的交替運行來完成,這樣才可以最大限度降低誤差。
2TOC理論概述和在工程造價預控中的應用
TOC理論也叫做約束理論,英文全稱是TheoryofContraint,起初是用在制造業中的管理思維方式。不同事物中或者客觀系統中,對事物發展方向產生重要影響的總是關鍵的極少數,而絕大多數處于被制約地位,這是TOC理論的假設基礎,因此在對系統進行控制和領導時,只要將關鍵部分管理好,則可以收到事半功倍的效果。這一理論在工程造價的預控中有著重要的實踐意義。通過將影響工程造價超支的各種因素找出來,并羅列出最為關鍵的因素,作為調節造價的杠桿,著重控制這些因素,盡力消除制約,提高控制效率,可以實現預期的建設目標。關鍵鏈法是在TOC理論上形成的常用操作方式,同時也提出了TOC在對待并行項目中如何有效實現資源共享的辦法,核心原則是遵循整體優化而非局部優化方針,也即要在工程項目中,每一環節都要秉持著整體優化準則,將完成每一工序的保守時間抽出來,用一個合理的概率乘以相應工序時間值來作為工序的估計時間,同時還要在其中考慮相關的資源約束性。關鍵鏈的思考方式就是將時間和資源的約束性加以管理,把關鍵鏈網絡化并對項目和資源進行合理的規劃與整合,對工程造價控制過程的管理具有實踐應用意義,一般采用五步法實施,一要找出制約系統運行的因素,二是將制約因素中存在的潛力充分挖掘出來,三是使系統中的其余任務都服從第二步的挖掘策略,四是不斷提升制約因素的能力,五是若已有的制約因素已經消除,回到第一步,否則回到第二步,但是在回到第一步時不要讓管理慣性成為新的制約因素。
3BP神經網絡與TOC理論聯合使用對工程造價預控作用
工程造價通常是指一般的建設工程從計劃籌建到竣工驗收交付這一過程中,各個環節運作需要投資的總和,兼具投資和成本的雙重性。工程造價通從政府部門角度衡量算作一種投資從開發商角度來說則屬于項目成本。利用BP神經網絡和TOC理論可以對工程造價起到準確的預測作用,同時可以有效控制工程造價成本,最關鍵的問題是要處理好BP神經網絡最終預測結果與TOC理論的有機結合方式。一般來說,當工程造價中的BP神經網絡模型投入使用時,選擇的樣本數據也滿足建模的需求,那么可以進行擬建工程的初步概算,同時,也可以將合同金額的有關數據信息當做預測分析應用數據加以利用,計算出預測結果,確定建設工程決算和合同金額相比,實際增加或者降低的比值,依據預測結果的正值,可以為項目工程成本的超支項和負值節約不必要的開銷,按照預測結果中的向量水平將與其對應的合同各條款項相乘得出最終的統一值,依據制約理論的原則將該項結果的一半作為工程施工預留金控制的一部分,根據實際的情況,對預留金中的每一項采取增加或者減少的方式,確保新合同中的金額數量能夠滿足工程造價的需求,或者以此為依托,再形成新的金額向量。在這份新合同中,所計算的金額不僅包括原來工程量的清單計算方式,并且是已經進行優化的,具有可操作意義的,同時也包括了未來擬建工程依據原先的預測結果而形成的工程決算金額計劃,是具有科學預測性和前瞻性的,也能夠考慮到當前的狀態。所以,單純擬建工程項目在最初成本預測方面并不具有顯著的優勢,這和影響成本增高的因素有關。例如工程量的大小、工期的延長時間不同等,所以僅僅采用傳統的計算和預測方式沒有辦法獲取更為準確的數據,利用BP神經網絡可以更為精確地計算和度量各種數據,同時也可以為工程預算過程和建設目標成本控制提供更為科學的依據。TOC理論則在工程建設監督管理中發揮重要的作用,過程控制水平也會對造價預控質量起到重要的影響,即便預測得再精確與科學,離開完善的過程控制和管理,造價預控水平依然達不到預期的目的。TOC理論的運用,能夠有效發現工程建設中合同金額出現的變動問題,新構建的合同在實行過程中難免會遇到實際阻力,如果工程成本管理中出現了與原計劃背離的跡象,或者工程的決算方向沒有依據BP神經網絡的預測規則,那么很容易造成工程運行的瓶頸問題,此時為了保證工程建設項目的順利進行,或者為將風險與損失控制在最小范圍內,就要當機立斷根據預留資金的數量對整個決算實施過程進行相應的調整,同時還要對工程總合同金額做出適當的調整,以便使得每一環節都能夠協調運作,確保瓶頸問題不會帶來無法彌補的損失,控制好工程建設朝著良性循環方向發展。TOC理論的應用是為BP理論在過程干預中進行的補充,使二者達到優勢互補的效果,BP神經網絡重在事前的控制,也即通過精確計算和預測,可以提高事前控制力度,而TOC理論對過程控制效果良好,是典型的事中控制理論,將工程造價的事前控制與事中控制有機統一在一起,造價預控水平大為提高,可為工程建設項目節約成本的同時創造利潤,也是實現資源優化配置的有效途徑。
4總結
本 科 生 畢 業 論 文(設計)
本 科 生 畢 業 論 文(設計)
題目 陣列化的非晶體納米硅神經突觸器件制備與數值模擬
姓名與學號 鄭浩 315104964
指導教師 皮孝東
合作導師
年級與專業 2015級 材料科學工程
所在學院 材料科學工程
提交日期
A Dissertation Submitted to Zhejiang University for
Bachelor Degree of Engineering
Preparation and Numerical Simulation of Arrayed Amorphous Nano Silicon Synaptic Devices
Submitted by
Hao Zheng
Supervised by
Prof. XiaoDong Pi
School of Materials Science and Engineering
Laboratory of Silicon Materials, Zhejiang University, Hangzhou
People’s Republic of China
May, 20th, 2019
浙江大學本科生畢業論文(設計)承諾書
1.本人鄭重地承諾所呈交的畢業論文(設計),是在指導教師的指導下嚴格按照學校和學院有關規定完成的。
2.本人在畢業論文(設計)中除了文別加以標注和致謝的地方外,論文中不包含其他人已經發表或撰寫過的研究成果,也不包含為獲得 浙江大學 或其他教育機構的學位或證書而使用過的材料。
3.與我一同工作的同志對本研究所做的任何貢獻均已在論文中作了明確的說明并表示謝意。
4. 本人承諾在畢業論文(設計)選題和研究內容過程中沒有偽造相關數據等行為。
5. 在畢業論文(設計)中對侵犯任何方面知識產權的行為,由本人承擔相應的法律責任。
6.本人完全了解 浙江大學 有權保留并向有關部門或機構送交本論文(設計)的復印件和磁盤,允許本論文(設計)被查閱和借閱。本人授權 浙江大學 可以將本論文(設計)的全部或部分內容編入有關數據庫進行檢索和傳播,可以采用影印、縮印或掃描等復制手段保存、匯編本論文(設計)。
作者簽名: 導師簽名:
簽字日期: 年 月 日 簽字日期: 年 月 日
致 謝
致謝內容。(仿宋字體或Times New Roman,小四號,兩端對齊,首行縮進兩個漢字符位,段前0磅,段后0磅,固定行距20磅。)
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
致謝內容。
摘 要
信息時代的來臨,人類在處理大數據與多信息的任務面前面臨著很大的挑戰,傳統的馮-諾依曼式計算機思想在處理這些問題時出現了本質上的不足,因此神經網絡的應用于硬件化變得十分迫切。隨著憶阻器的發現,類腦計算的實際應用變得可能。本文從硬件神經網絡的興起出發,闡述了硬件神經網絡的研究現狀與實現途徑,之后引入了生物神經元的特征,闡述了以往關于人類神經元建立的數學模型。之后本文提出了一種陣列化硅納米晶體神經突觸器件的制備方法與過程,并且在基于這樣的器件上,得到相應的LTP與STDP數據,將這些數據分別用于探究:神經元激活函數數值模擬,有監督脈沖神經網絡之tempotron算法數值模擬與STDP無監督學習網絡數值模擬,在得到結果的基礎上,提出了硬件化神經網絡所需要的器件的基本性質與要求。為未來的硬件化目標提出了可行性與基本方向。
關鍵詞:硬件神經網絡;神經元;神經突觸器件;激活函數;Tempotron算法;STDP;無監督學習
Abstract
With the advent of the information age, human beings face great challenges in dealing with the task of big data and multiple information. The traditional von Neumann-style computer thought has its essential shortcomings in dealing with these problems, so the application of Hardware
neural networks have become very urgent. The discovery of memristors made it possible for the practical application of brain-like calculations. Starting from the rise of hardware neural networks, this thesis firstly expounds the research status and implementation of hardware neural networks, and then introduces the characteristics of biological neurons, and expounds the previous mathematical models of human neuron establishment. After that, an arrayed hybrid silicon nanocrystal based synaptic devices have been prepared. Nervous function behaviors, e.g. LTP and STDP, have been obtained based on this device. These data are then separately used to explore neuron activation function values Simulation, numerical simulation of tempotron algorithm with supervised pulse neural network and numerical simulation of STDP unsupervised learning network. Based on the results, the basic properties and requirements of the hardware required for hardware neural network are proposed. The feasibility and basic direction for future hardware goals are proposed.
Keywords: Hardware neuron network; neurons; Synaptic device; activation function; Tempotron algorithm; STDP; unsupervised learning;
目 次
第一部分 畢業論文(設計)
A DiSubmitted to Zhejiang University for
I
III
V
VII
IX
第一章 緒論
1.1.1 硬件神經網絡的興起
1.1.2 硬件神經網絡的實現
1.3.1 生物神經元介紹
1.3.2 人工神經元介紹
1.3.3 人工神經網絡介紹
1.3.4 脈沖神經網絡介紹
3.1.1 神經網絡結構
3.1.2 神經元硬件化結論
3.2.1 脈沖編碼
3.2.2 權值更新
3.2.3 數值模擬結果
3.2.4 LTP權值改變法
3.2.5 STDP權值改變法
3.2.6 結論
3.3.1 理論背景與基礎
3.3.2 網絡設計
3.3.3 模擬結果
作者簡歷
攻讀學位期間發表的學術論文與取得的其他研究成果
第一部分
畢業論文(設計)
第一章 緒論
11.1 硬件神經網絡1.1.1 硬件神經網絡的興起
21世紀進入信息時代后,計算機的普及率大大上升,計算機本身也在計算力與邏輯處理上遠遠超過了人腦,然而不足的是,在數據的存取與記憶上,仍然是采用馮-洛伊曼式的串行方法,且功耗很大,而人類大腦擁有10^11 個神經元和10^15神經突觸。這使得人類處理信息的方式是高效的并行方式,并且功耗很低。例如人類大腦看到一種東西,識別它的過程往往使視覺神經信號與記憶信號同時作用的結果,功耗在fj量級。在使得馮-洛伊曼式計算機處理復雜指令與控制上體現出了根本性的缺陷。基于這一點,神經網絡的研究開始興起,在1943年,McCulloch 和 Pitts 提出了神經元的形式化模型后, 有關于神經網絡的討論也逐漸火熱起來,但其發展的中途受到很多科學家對其的質疑[19]。直到 1980年左右, Rumelhert 與他的研究伙伴[20]一起發表了著名的并行分布式處理( Parallel Distributed Processing)方法的工作 , 并且建立了 BP 算法和前向神經網絡,從數學上的形式,證明了這種算法的可行性,BP神經網絡是一種前饋式的誤差逆向傳播網絡,通過訓練集不斷縮小輸出值與目標值的差值從而達到非線性優化的目的。由此,神經網絡的數學原理得到證明,其實在1970年神經網絡存在一段低落期,也受到了很多懷疑。但是BP神經網絡的興起與提出,讓科學們對于神經網絡的態度再次火熱起來。21世紀隨著深度學習的提出,又掀起了一股關于人工智能的熱潮,Deep learning 是在多層感知機的基礎上,不斷增加隱含層的層數,這上面又出現了一些數學上的問題比如激活函數的梯度彌散問題,但是由于Relu激活函數替代sigmod函數的提出,這些問題逐步得到了解決,深度學習向前發展了一大步。比如IBM的“深藍”擊敗世界圍棋選手李智石等,但是實際上,“深藍”在擊敗李智石時消耗的電量等于一桶油的燃燒的焦耳值,但是李智石僅僅使用了兩個饅頭的熱量戰斗。也就是說,這場比賽其實并不公平。其實這反應的是人工智能的工作效率與真正人腦的學習效率仍然有很大的差距。神經網絡本質是由多個簡單的信號處理單元組成,這些簡單的信號單元之間由一種方式連接形成網絡,它意在模仿人類大腦處理信息的模式,從而實現圖像識別,音像識別,特征提取和記憶等功能。現在計算機能夠從軟件上對神經網絡進行實現,然而關于數據的存取方式仍然無法得到突破,數據的存取方式仍然是老式馮-諾依曼式的串行處理方式。但是人類識別圖像,獲得信息是并行的。因此硬件神經網絡的開發是必要的,硬件神經網絡能夠使用集成電路實現并行處理信息,并且能耗低,效率高,能夠更貼近人類大腦的工作方式。因此硬件神經網絡的開發受到很多的關注與研究,未來人工智能和類腦計算的發展前景中,硬件神經網絡的研究是必須的。
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T09:23:00'w
NOTE: '這部分放到前言部分比較好,或者干脆就不要了,放在這里是不合適的。']本文的第一章即緒論,主要是闡述當前關于硬件化神經網絡的突破,現狀與發展形勢。
第二章主要從人類的神經元開始,講述人類生物神經元的特點,講述現在人工神經元的數學模型,以及硬件化神經元需要的要求與方式
第三章主要講述制備實驗器件的技術路線,與制備的過程和使用的材料
第四章從數值模擬的角度,探究神經元硬件化的條件是怎么樣的,數值模擬選取MNIST數據集作為樣本數據集,通過使用實驗得到的激活函數替論激活函數,觀察網絡的準確率,得出相關結論,探究硬件需要滿足的條件
第五章從數值模擬的角度,探究突觸硬件需要滿足的條件,突觸與神經元不同,它是作為神經網絡中存儲權值,改變權值的存在,與神經元有本質上的區別,數值模擬采用26個英文字母的圖片作為數據集,進行編碼后發送脈沖,使用Tempotron 的有監督脈沖神經網絡進行數值模擬,通過實驗硬件得到的LTP與LTD圖像進行權值更新。得到預測率的圖像,證明了LTP的電或者光電器件能夠作為脈沖神經網絡硬件化的一個器件,為未來做出相關硬件網絡道出了一種可行性。
第六章主要是針對STDP的學習機制擴大網絡規模,將數據集擴展到MNIST手寫數據集,使用STDP無監督學習網絡[16]對數據進行訓練,之后再對訓練好的神經元進行分類。得到我們想要的結果。
第七章主要是總結本文的工作得到的結論,以及對于未來硬件神經網絡的發展的一些展望與看法
1.1.2 硬件神經網絡的實現
一般硬件神經網絡的實現方式有三種,即采用電子學方法——依靠微電子技術實現人工神經網絡, 采用光電方法——依靠半導體光電集成技術實現人工神經網絡, 采用光學方法實現人工神經網絡[18]。微電子技術應該是通過各種電路設計,例如放大電路,差分電路等集成電路,實現神經網絡的reference部分。依靠光電實現的硬件神經網絡是本文的重點,利用電學元器件,憶阻器器件,或者是光電器件,模擬生物神經元的膜電位變化曲線,與人類大腦的權重學習規則,從而實現神經網絡的硬件化。采用光學的方法實現網絡計算的方法十分有趣,UCLA大學的研究小組發明了一種全光的深層神經網絡,通過光的反射與折射傳遞信號,利用光入射的相位差記錄權值變化,實現了全光的神經網絡,而且由于光的傳播速度是光速,在整個網絡的效率與速度上都十分驚人,能耗也十分低[21]。神經網絡的電子學硬件實現方法主要有四種,其中分別是數字實現、模擬實現、混合數/模實現和脈沖技術實現等[18]。通過數字實現的神經網絡一般精度很高[1,2],權值易存儲也容易改變,并且能夠通過電路實現并行處理,克服傳統計算機串行處理數據的弊病,但是缺點是電路難以集成,體積很大,很難適用于計算機新型芯片這種地方。通過模擬實現的神經網絡能夠很好克服上面的缺點[3,4,5],但是由于突觸和神經元器件對參數敏感,準確度下降,更關鍵是對于權值的存儲存在困難。1987年是一個轉機,即脈沖技術第一次用于了神經網絡,使用VLSI技術作為實現,從這以后,神經網絡的脈沖技術受到了很多關注[9,12]。
脈沖技術,簡單來說就是將神經元的興奮或者抑制狀態通過一定的編碼方式轉化到脈沖的波形上,編碼的方法一般有高斯編碼,或者可以自定義的編碼方式。由于脈沖化的信號是離散的,因此一定程度上可以簡化運算電路:例如突觸電路。神經元與一般的電路元件不同,它本身的密度很高,正如人類神經元的密度很高一樣。這種緊密的排列方式使得脈沖信號把芯片和外圍設備的接口變得更容易連接。本文正是利用從脈沖神經網絡出發,制備出硬件化的元件,通過數值模擬硬件的實際可行性,并且對于未來硬件化神經網絡的方向提出一些看法
21.2 硬件神經網絡研究進展當前的人工神經網絡存在三種模式,第一種是非學習型神經網絡,即網絡的前饋過程與權值計算過程全部由軟件進行實現,權值是固定不變的,只用神經網絡的電路結構完成之后,再與實際電路結構匹配即可。另外一種是on-chip的模式,即前饋過程通過微電子電路進行實現,權值的更新與計算通過計算機實現。還有一種off-chip模式,即是一種全自動的自主性芯片,從神經網絡的前饋環節到神經網絡的BP算法實現都一并完成。目前的研究狀況,我們已經能夠熟練通過電路的設計實現非學習神經網絡。在on-chip式的人工神經網絡上,我們也能通過一定的模擬方式得到實現。現在的當務之急是開發off-chip式的神經網絡,使用硬件對權值的存儲與改進是必要的。自從20世紀60年代后期引入憶阻器概念以來,由于其簡單性和功能相似性,它們被認為是模擬突觸裝置的最有希望的候選者。2008年,惠普公司公布了基于TiO2的RRAM器件[6],開拓了RRAM和憶阻器之間聯系,做出了一定的應用之后以非易失性存儲器件和神經突觸晶體管為代表開始成為神經突觸器件的基礎。但將這些器件用于第二代神經網絡(也就是多層感知機)上,取得了一定的成就,現在關于這方法的也在如火如荼的進行著,但是由于第二代神經網絡的基礎仍然是基于計算機的算力達到的深度,也就是說,加深隱含層的數目提高準確度,知識因為有著強大的計算芯片作為支持。我們需要考慮一種完全類似于人腦思考問題的神經網絡與算法,于是脈沖神經網絡開始興起,并且被譽為第三代神經網絡,這是一種完全基于人腦計算模式的神經網絡,從長程記憶可塑性LTP,時間可塑依賴性STDP等研究的深入,這一網絡的硬件化也成為了可能
31.3 從生物神經元到人工神經網絡1.3.1 生物神經元介紹
人的大腦中有超過 1011個神經元,這些神經元之間的連接的突觸又大約有10^15個,這些突觸使得神經元互相連接,從而構成了復雜多變而又有條不紊的神經網絡[7]。這些神經元的單獨處理信息的速度并不算很快,但是人類的大腦能夠很有效的利用這些神經元并行處理。即大量神經元一起處理一個任務,這有些類似于計算機里的多線程并行操作算法。人類大腦的神經元數目雖然龐大,但是它的能耗低卻是特點,我們每日攝入的熱量與一些機器的能源是不能夠比擬的,然而我們的大腦就能夠實現很多計算功能,有數據顯示,腦神經系統一個動作每秒消耗的能量比最優秀的處理器能耗小1010個數量級。
人的生物神經元有兩個部分,分別是細胞體和突起。具有處理并且整合輸入的神經信號,然后傳出這些信息的作用。突起有樹突和軸突兩種。樹突相對較短但分枝很多,其作用是接受其他神經元軸突傳來的沖動并傳給細胞體。軸突長而分枝少,常常出現在軸丘,一般為粗細均勻的細長突起,其作用是接受外來刺激,再由細胞體傳出。神經元與神經元之間的連接被稱為神經突觸,兩個神經元之間連接強度或者關聯程度體現在突觸的連接強度。一般而言神經元有以下的特點[8]:
1):可塑性:即神經元之間的突觸可以連接,也可以取消,連接可以變強,也可以慢慢變弱,方便與人類去適應不同的環境。
2):興奮與抑制:神經元受到外界刺激之后,會產生膜內外滲透壓的差別從而導致Na+或者Ca2+的流入或者流出,這些離子的遷移會產生動作電位,導致膜電位的上升或者下降,也就對應了人類神經元的興奮和抑制過程。
3):學習與遺忘:由于可塑性的存在,當人類在長時間受到同一種刺激的時候,會產生我們的所說的學習功能,而這種功能其實是神經元之間的連接得到了加強,同理,如果我們慢慢遺忘了一些東西,是因為長期不去使用從而神經元之間的連接衰弱了。對應的有LTP,LTD圖像來進行表征。
4):突觸的延時和不應期。神經沖動的傳遞在突觸中是需要時間的,一般這個時間是1-150ms。另外,神經元也不會在短時間內接受兩次沖動,一般需要間隔一定的時間,這個被稱為不應期。
從上面可以看到,想要用神經元器件模擬人類的生物的神經元,一定要從生物本質和特征去進行模擬。本文后面的數值模擬會再把這些特征一一強調一次,從而達到一種仿真的目的。
1.3.2 人工神經元介紹
早在1943 年 McCulloch 和 Pitts 提出了神經元的形式化模型, 神經元可用簡單的zha值函數表示,并完成邏輯函數功能[19]。20世紀初期,美國心理學家Willian Jame 提出,一個神經元應該是同時接受來自不同神經元的信號后,由于不同神經元之間的突觸連接強度不同,神經元相當于是一個加權和,并且由于興奮存在一個閾值電壓,需要一定的電壓值才會fire,因此神經元可以用一個數學模型來勾畫,即著名的MP模型。
y=f(∑i=1nwixi+b)
(2-1)
其中,表征每個神經元的輸入值,表征神經元之間的連接強度,b代表閾值電壓。外界的f函數則是一種神經元的處理函數。
圖1-1 MP 神經元模型
Fig.1.1 Neurons model
可以看到,對于神經元的硬件實現實際上是一個乘法器的實現以及加權和非線性處理,這個可以通過放大電路等進行實現。后續本文也將探究一下神經元應該具備怎樣的條件,或者怎么樣的器件適合作為神經元器件。
1.3.3 人工神經網絡介紹20世界80年代,J.Hopfield 提出了 Hopfiel 神經網絡, 引起了神經網絡理論在優化學術界的轟動。然而熱潮還遠遠沒有結束。1986年,Rumelhart和McCelland提出了BP神經網絡,這種神經網絡是現在很多網絡算法的基礎,它是一種依靠逆向傳播輸出值與實際值誤差修正網絡權值的網絡,利用梯度下降算法或者隨機梯度下降法降低目標值與實際值的誤差,隨機梯度下降算法時為了加速算法收斂速度提出的更好的方式,現在很多網絡也應用這種方法
圖 1-2 經典的神經BP神經網絡模型
從圖中我們可以看到的是,網絡一般由輸入層,隱含層和輸出層三個部分構成,其中輸入層可以是圖像的像素值,音頻信號等等,因此神經網絡現在廣泛用于人臉識別,圖像識別,聲音識別等等領域。隱含層的多少是決定一個網絡是否是深層網絡的基本要素,隱含層如果越多,那么挖掘的信息,提取的特征就越難以用表面語言描述,訓練的精度也會逐步的提升。輸出層是網絡的輸出,網絡的輸出后往往會選擇一個損失函數,這個損失函數是用于衡量目標值與實際值的差值從而進行誤差反向傳播計算。常見的損失函數有MSE函數,Cross-Entorpy函數等等。
圖1-3 硬件神經網絡的一種實現[15]
基于經典的BP神經網絡MLP的硬件實現如上圖所示,使用電路模擬整個網絡的結構,在電路橫向與縱向的cross_bar 的地方放置突觸裝置,利用電流與電壓的比值進行權值的存儲與更新。這樣的網絡往往需要得到的I-V曲線是對稱的,就是說,權值的變化需要是隨著強度的增加而增加,減少而減少,呈現一種線性的變化,從而保證在進行BP算法時,誤差能夠不斷減小。
1.3.4 脈沖神經網絡介紹隨著在21世紀早期計算能力的顯現,DNN(多層感知器,深層信念網絡,傳統神經網絡等等)迅速發展,DNN的基本特征是有很多隱含層,這些神經網絡能夠實現監督與非監督學習,并且能夠優秀的完成有大量數據的任務。然而實際上,現在的DNN的優秀來源于GPU的并行加速機制,是在計算機多核算力上的體現,在其本身的算法上,其效率遠遠不如人腦高。SNN(脈沖神經網絡)最近引起了很多關注,因為它們與生物系統非常相似,在SNN中,輸入信號是尖峰,而不是傳統神經元中的恒定饋送。 人們普遍認為能夠處理尖峰是大腦在序列識別和記憶方面如此壯觀的主要原因之一[9]。序列識別是計算中更重要的主題之一,因為它直接影響系統處理強烈時序依賴的刺激的能力,例如語音識別和圖像檢測[10]
圖1-4 STDP圖像
對應STDP的最簡單理解是,如果前突觸神經元的信號在后突觸神經元的信號之前達到,有理由認為前突觸的信號導致后突觸神經元的信號產生,那么這兩者之間的突觸連接強度應該增加,反之就該減少。但如何保證這種訓練模式一定是有效的呢?Bengio 和 Fischer 兩人在2015發表的文章[11]指出具有對稱反饋權重的網絡將具有以下特性:“輸出單元”的小擾動將向更好的預測傳播到內部層,使得隱藏單元移動到大致遵循預測誤差J相對于隱藏單元的梯度。而STDP規則大致對應于預測誤差的梯度下降,即STDP的規則其實和SGD算法有著異曲同工之妙。Scellier和Bengio(2016)報告的實驗已經真實地表明這些近似值可以工作并且能夠訓練有監督的多層神經網絡[12]。
脈沖神經網絡被稱為新一代神經網絡,與經典的神經網絡不同在于它的輸入實際上不是一個連續值而是一系列脈沖,更為重要的是他的神經元膜電位,一旦達到了膜電位的峰值,那么這個神經元就被激活,后面的脈沖會進入一段不應期。關于神經元的模型,已經提出了HH模型,Izhikevich模型與LIF模型,其中以LIF模型為例,其微分方程的表示如下:
τdVdt=?(V?Vr)+RI
(2-2)
τ
是膜的時間常數,R為膜電阻,V是膜電位,Vr是復位電位,I是注入電流,當膜電壓超過一個閾值時,神經元會發送一個脈沖。如果后面沒有連續的刺激,這個產生的脈沖信號會不斷衰退,膜電位也會恢復到復位電位后穩定。之后再接受電流再刺激。
針對脈沖神經網絡的學習過程,也分為有監督學習和無監督學習,無監督學習主要以STDP為主[13,14],有監督學習包括Tempotron算法,ReSuMe算法和SpikeProp算法等等。本文主要采用Tempotron算法,下面做個詳細的介紹:
在Tempotron算法中,考慮在閾值下,突觸前神經元產生的脈沖信號,對突觸后膜電位(PSPs)的貢獻是來自所有脈沖輸入的加權和:
V(t)=∑iωi∑tiK(t?ti)+Vrest
(2-3)
ti
表示第i個神經元的脈沖發送時間,
K(t?ti)
表示第i個脈沖對于膜電位的貢獻,即突觸前神經元發出的脈沖對于突觸后神經元膜電位的影響。其標準形式如下:
K(t?ti)=V0(exp[?(t?ti)/τ]?exp[?(t?ti)/τs])
(2-4)
τ,τs
是時間常數,為了保證K(t)在(0,1)之內變動,我們需要用V_0進行歸一化處理,K(t)圖像繪制如下圖:
圖1-5 K(t)隨時間變化圖
由監督學習的重點是要將權重更新向著誤差減少的方向進行,獲得期望的輸出脈沖,更新規則如下:
Δωi=λ∑ti?tmaxK(tmax?ti)
(2-5)
即以二分類為例,ti
為突觸前神經元峰值的產生時間,這里的
tmax
設定為我們設置的時間序列的終點,默認為突觸后神經元的峰值的產生時間,但這和一般的STDP不一樣,因為STDP的神經網絡訓練規則實際是不需要有監督的,而這里有一個參數
λ
,用于控制輸出值與期望值的誤差方向,如果突觸前神經元產生峰值超過閾值電壓的神經脈沖,并且突觸后神經元指向分類標準與前神經元指向的分類相同,則不需要修改權值(說明這個連接正確),如果突觸前神經元峰值未超過閾值電壓,那么需要根據上式指定
λ
>0,并且計算需要增加的權值。反之當
λ
<0時,需要進行減小權值。總體看來,這是在借助有監督學習的條件下,在明白誤差修正方向下利用STDP中的LTP與LTD曲線獲得修正的幅度(可以認為是學習的速率),從而使我們獲得期望的輸出。注意上面提出一種概念:即在有監督學習的條件下,后突出神經元的峰值由標簽值決定,并且根據誤差值指明誤差修正放向(體現為
λ
的正負性),然后依靠STDP決定修正幅度。這也是一種將STDP曲線用于有監督學習的可行性展示。
第二章 實驗部分12.1 陣列化基于硅納米晶體雜化結構的神經突觸器件制備2.1.1 制備技術路線在本論文里面,采用了冷等離子方法制備了摻B的Si量子點,相比于其他的摻雜方法,冷等離子法是借助了動力學的原理,從而實現了對硅納米晶體的高效摻雜,一定程度上避免了利用熱力學原理來摻雜的過程中出現的“自潔凈”現象。相比之下能夠實現比較高濃度的摻雜。
圖2.1 使用冷等離子法制備摻雜硅納米晶體示意圖
使用冷等離子體法制備摻雜硅納米晶體的裝置設計示意如圖2.1所示。先準備每分鐘流量值12標準公升的硅烷氬氣混合氣(20% SiH4)、157 sccm的硼烷氬氣混合氣(其中含有0.5% B2H6)和105 sccm的高純氬氣通入到石英管中混合,調節系統尾部的真空泵,使腔體內的氣壓穩定在6 mbar。石英管中間部位套有兩個銅環,分別接匹配箱和射頻發生器的正負兩級。在射頻發生器(功率約為150 w)的激發下,銅環之間的石英管內將產生等離子體,混合氣體在通過等離子體區域時將會發生分解反應,這個反應的產生是因為氣體受到了高能粒子和電子的轟擊產生的,具體化學反應式如下:
SiH4?Si+H2B2H6?2B+3H2
在器件制備方面,本文利用硅納米顆粒的光電性能與以及表面缺陷對載流子具有俘獲的性質,首先與鈣鈦礦進行雜化形成混合容易。通過旋涂工藝制備成了太陽能電池結構的神經器件,器件的結構是:Ito/pcbm/鈣鈦礦與硅量子點雜化層/spiro/Au。在該結構里面,ITO是通過光學刻蝕得到。PCBM, 鈣鈦礦與硅量子點雜化層, Spiro是通過旋涂方法得到。其中鈣鈦礦CH3PbI3與硅量子在DMF溶液(461mg PbI2, 159mg MAI, 71uL DMSO, 630 ul DMF.。Si量子點在溶液里面的濃度為10mg/ml.雜化旋涂后就制備出了膜。)里面。硅量子點摻雜B,摻雜B的硅納米晶體尺寸是6nm, 鈣鈦礦膜厚大概在300nm左右,晶粒尺寸大概在200nm。Au電極采用熱蒸發工藝得到,厚度大約為100nm。
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T10:15:00'w
NOTE: '這一段是不是應該要刪掉?']2.1.1 器件制備路線
在器件制備方面,本文準備利用硅納米顆粒的光電性能與decay長的性質,與鈣鈦礦進行雜化形成自驅動電池,在制備電池的工藝上,選擇旋涂工藝做成太陽能電池的結構,器件結構分別是:Ito/pcbm/鈣鈦礦與硅量子點雜化層/spiro/Au,之后使用熱蒸發工藝將電極Au安裝上,設置厚度大約為100nm。鈣鈦礦CH3PbI3與硅量子在DMF溶液(461mg PbI2, 159mg MAI, 71uL DMSO, 630 ul DMF. Si以DMF為溶劑,濃度為10mg/ml. 雜化旋涂后就制備出了膜。)里面。硅量子點摻雜B,摻雜B的硅納米晶體尺寸是6nm, 鈣鈦礦膜厚大概在300nm左右,晶粒尺寸大概在200多納米。段落內容。
第三章 數值模擬13.1 神經元硬件化數值模擬3.1.1 神經網絡結構對于神經元的模擬,和突觸的模擬不同,神經元的功能由上文中的MP模型已經表述很清楚,他承擔一個乘法器和加權和、還有實現一個神經元函數的功能,這個功能也是我們下面模擬要探索的。
圖3-1 MINST數據集對于的神經網絡結構
采用常用的MNIST手寫識別數據集作為整個網絡的輸入,先將圖像的RGB值轉換成一個單位的灰度值,設計輸入層應該有784個節點,隱含層300個節點,輸出層設置10個節點,分別對應0-9個數字的pattern。在實際模擬時,采用兩種方式處理,第一種是利用STDP非線性函數直接對輸入的圖像像素值進行處理,意在將灰度值轉換為強度值。再用網絡進行訓練。第二張利用STDP非線性函數作為神經網絡中的激活函數,意在探究神經元的基本性質。
訓練模式采用SGD算法,樣本集總共55000個圖片,每張圖片28×28有784個輸入值,epoch設置掃描樣本集10次以上,損失函數使用交叉熵函數,激活函數選擇softmax函數進行激活分類,因為這個函數比較適合于多分類問題,在優化上也得到了理論的證明。首先我們先將實驗中得到的STDP數據擬合結果如下:
圖3-2 STDP Positive 擬合圖像
這里故意選擇了一個與常規激活函數相關性為負的激活函數,一般的激活函數比如sigmod,relu激活函數,其強度其實和輸入值是呈
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T10:23:00'w
NOTE: '什么意思']現正相關的,這里選取的作為負相關的原因是想探究是否能夠作為激活函數使用。其結果如下:
圖 3-3 擬合的Loss與Accuracy隨訓練次數的變化圖
可以看到上述的結果是可觀的,也就是說,激活函數的選取,與是否與輸入值正相關沒有關系。另外我比較了理論激活函數,實驗激活函數,與對輸入直接非線性處理得到結果的異同性:
圖3-4 三種不同方法得到Loss函數變化情況
圖3-5 三種方法得到的Accuracy變化情況
可以看到,理論激活函數(紅色)在準確率上仍然時最高的,最后的樣本內準確率有98.42%,但在loss的下降速度上,實驗激活函數體現的更好,但實驗的激活函數最后準確率只有96.69%。
3.1.2 神經元硬件化結論根據上面的模擬結果我們可以得到結論,對于神經元的硬件模擬,作為激活函數,只需完成非線性這個條件即可,但是在實現乘法器的過程中,需要電路由很好的線性度。這個線性度的要求實際是從BP算法的推導中獲得的,這里簡單的推導一下:
Δw=?Loss?w=?Loss?y??y?output??output?w
(3-1)
上式想說明的是,我們需要調節權值w使得我們計算出的loss函數達到最小值,因此我們需要求其導數從而獲得調整的方向,可以看到等式右邊第一項實際是損失函數對于輸入值的導數,第二項時激活函數對于輸入值的導數,這兩項在有輸入值的條件下是可以求出的。而根據神經網絡的矩陣運算:
output=w?x+b
(3-2)
可以看到,output值與輸入的值時存在線性關系的,那么也就是說,我們權值變化量Δw
與輸入的x需要滿足線性關系。因此神經元硬件化需要實現的線性度不僅僅影響了加權的效果,還影響到權值更新的效率性。很多關于神經網絡硬件化的論文一定會提到這個線性度,因為這個線性度時實現神經網絡算法達到收斂的基本保障。
圖3-6.a SET與RESET模式下的I-V曲線;b SET模式下的權值變化隨刺激次數的變化;c RESET模式下的權值變化隨刺激次數的變化[15]
如上圖清華大學完成的憶阻器神經突觸器件,選取電導作為權值時,需要I-V曲線在第一二想象有近似的對稱值,其導數值(即權值)隨著固定電壓的刺激次數線性增加或者減小。一般而言,在硬件神經網絡進行權值跟新的時候,會選擇一個固定更新電壓,在這個指定的電壓下,我們需要保證權值的正向更新與負向更新有近似的值,這個在圖像上體現為圖像的對稱。之前也有文章在圖像的對稱性上做了相關的材料探究。證明這樣的對稱性是必要的
23.2 有監督脈沖神經網絡數值模擬3.2.1 脈沖編碼脈沖神經網絡與第二代神經網絡最為不同的一點在于,它的輸入并不是一系列連續的值,不是像圖像像素一樣一個個數據連續計入,也沒有二值化的操作。而是離散的脈沖值,就圖像識別而言,簡單的多層感知器輸入是輸入圖像的RGB值或者是圖像的灰度值,將這些值進行標準化后作為網絡的輸入。而脈沖神經網絡需要對于輸入進行一定的脈沖編碼處理,這個處理可以自己選擇,但轉化的思想很重要。即將圖像的灰度值信息編程處理成一系列脈沖,并且將脈沖發出的時間作為網絡的輸入。下面介紹本文中tempotron算法的編碼方式。
選取26個英文字母A-Z作為需要識別的樣本集。每一個字母由一張16×16像素的圖像組成,且該圖像只有0和1兩種灰度,即非黑即白。因此我們輸入一張圖片后,它會編程一個16×16的二值矩陣,我們將這一的二維矩陣一維化,使其變成1×256的一維數組,然后我們對其進行編碼,每次隨機從256個數中隨機去8個數且不放回,組成一個32×8的新矩陣,對于每一行數,得到的是一個8位的二進制數,因此我們將其轉化成十進制數,得到一個0-255范圍的數,將原來的矩陣轉化成了32×1的矩陣。且每一行代表一個脈沖的發送時間,即將一張16×16的圖像矩陣轉化成了在不同時間一共發送32次脈沖的輸入值。
3.2.2 權值更新按照tempotron算法的權值更新規則:
Δωi=λ∑ti?tmaxK(tmax?ti)
(3-3)
我們需要設置一個時間軸,并且對于這個時間軸上進行時間窗口的劃分,等于說我們需要將這個時間軸切割成一份份來進行一個個的循環。由于之前在輸入編碼的時候,我們將16×16像素的黑白圖像轉換成了發送32次脈沖的輸入,這些輸入的脈沖的時間是0-255,也就是說,我們建立一個長度為256ms的時間軸,并且以1ms為一個時間窗口,每次檢查在當前時間窗口前是否有脈沖輸入,并且每次都選取在當前時間之前能夠發送脈沖的數據,認為他們發送一次脈沖,將這個脈沖與核函數相乘,作為我們膜電壓,如果膜電壓超過了我們設置的threshold電壓值,我們則認為該神經元處于fire狀態,并且會進入一段不應期,即shut down后面在256ms內的所有脈沖輸入。我們輸入是5個神經元,這是因為我們需要對26個英文字母分類,即用5個二進制數最大可以表示到0-31的每個數,于是我們用5個二進制數表示我們分類的pattern,例如字母A我們使用00001表示,字母B用00010表示。以此類推。當神經處于fire狀態時,它會表現出1的狀態,反之如果它沒有能夠達到閾值電壓,它會處于0的狀態,我們將網絡的輸入與我們準備好的標簽值進行對比,如果說產生了不同,即分類產生了誤差,我們就需要對其進行權值更新,從而在慢慢的訓練過程中,獲得我們期望得到的脈沖值。
即如果網絡發出了脈沖,但是實際沒有發送脈沖,我們降低該脈沖產生的權值,從而讓其在后面慢慢變得不發出脈沖。
如果網絡沒有發出脈沖,但是實際輸入應該發出脈沖,我們應該強化該脈沖的產生,即增大其權值。
圖3.7 訓練前脈沖與訓練后脈沖對比圖
我們設置1.0 v為閾值電壓,可以看到,隨著訓練次數的增大,一開始正的脈沖傾向于在后面發出超過閾值電壓的脈沖。但是一開始負的脈沖,雖然一開始超過了閾值電壓,但是由于隨著訓練次數的增大,變得不斷被抑制,不再發出脈沖。我們的網絡就是基于這樣一種思路去訓練與優化。
3.2.3 數值模擬結果數值模擬上,本文選取了兩組實驗數據進行了權值更新法則函數的模擬,即使用實驗得到的LTP與STDP數據進行了數值模擬,并且對比了兩者在應用于tempotron算法的差異,提出一定看法。
3.2.4 LTP權值改變法數值LTP曲線是模擬人類大腦學習時候的長程可塑性,在圖像上體現為,施加一段固定脈沖間距和脈沖峰值的脈沖,使突觸器件的模擬膜電壓升高,經過一段時間再進行了衰減。表現的圖像如下:
圖3.8 LTP擬合圖像
線是得到實驗的LTP數據后,使用神經網絡算法進行擬合,得到完美擬合的曲線,這樣保證了能夠使用完全的實驗數據。另外由于實驗的數據僅僅有LTP數據,然而對于我們的模擬也需要LTD數據,基于我們對于這兩個圖像的了解,他們在一定程度上是中心對稱的。我們通過對于LTP數據的神經網絡擬合,外推LTD的數據,將LTD的數據應用于模型的抑制環節,保證權值的增加與減少對稱。
將LTP的數據帶入,進行訓練,設置最大epoch數為100次,設置閾值電壓為1 v。訓練結果如下:
圖 3.9 準確率隨訓練次數的變化圖像(LTP)
可以看到,在100 epoch下,準確率在隨訓練次數的增加而增加,最終穩定在89%左右。
3.2.5 STDP權值改變法人腦的學習模式是STDP已經被大部分論文和實驗所證實,因此也許基于STDP的權值改變方法能夠更加促進學習的效率。STDP的本質定義是說:如果突出前神經元的峰值脈沖到達時間小于突觸后的神經元峰值脈沖,那么認為突觸前神經元脈沖的產生可能是有利于突觸后神經元的產生,即這兩者之間是存在一定的聯動關系的。于是加強這兩個神經元的連接。反之則減弱它們之間的連接。
利用實驗得到對的STDP Positive數據,波張選取375nm的光做刺激。得到光驅動下的STDP。但實驗與理論存在偏差的一點,是光刺激下的STDP圖像實際上是存在于一、二象限的,這樣意味著,無論是突出前神經元的脈沖先到達還是后到達,產生的權值更新過程,都是加強該兩個神經元之間的連接。在保證權值更新雙向對稱性的情況下,這樣的情況顯然是不允許。于是在三象限部分,本文選取了其他數據作為替代,這個數據是從電突觸元器件得到的。這里也可以得出一個設想,是否可以有光與電合并的突觸器件,使用光完成第一象限的STDP工作,由電器件完成第三象限STDP工作。為何要選擇光器件是因為,光學突觸器件的耗能相比于電學突觸器件要節省很多。如果能夠使用光電混合信號實現光電STDP,也不失為一種選擇。
擬合后正向STDP函數表達式如下:
y=?0.346ln(x)+2.708
負向STDP函數表達式如下:
y=0.302ln(?x)?2.546
根據上面的STDP函數更新法則,帶入我們的temportron算法進行求解。得到準確率變化情況如下,設置參數與LTP更新規則相同。
圖3.10 準確率隨訓練次數變化情況(STDP)
可以看到,經由STDP訓練的網絡,在epoch=60左右的時候,已經達到了準確率100%,在訓練的準確度與效率上,高于使用LTP訓練的結果。這也可能是為什么當前很多的研究都著眼于STDP權重更新機制。這可能也和STDP實際上與人類大腦的學習機制十分相似,本次模擬也證明了大腦學習模式在權值調整上的優越性,基于LTP的調制模式,更多是對于算法當中核函數K(t)的模擬,而并非是對于本質上人類大腦學習模式的仿真。
3.2.6 結論無論選取LTP,STDP作為權值更新的方式,神經網絡的權值更新一定要是對稱,這樣在梯度下降算法過程中,才能夠有正和負梯度,使得最后的結果收斂于局部最小點。另外,在學習機制上,STDP是存在一定優越性的。后面本文將針對SDTP學習機制,將網絡擴展到更大的規模,展現STDP學習機制的強大之處。
33.3 無監督脈沖神經網絡數值模擬3.3.1 理論背景與基礎這SNN的發展之所以廣受著名,是因為它網絡的元器件要求是有一定硬件基礎的,不論是在神經元的設計上,如LIF模型,HH模型,還是電導突觸,指數型的衰減機制,閾值電壓。都可以通過我們設計的電學或者光學器件進行實現。
本文基于2015年Peter發表的關于STDP無監督學習網絡的代碼基礎上,加上實驗得到的數據,進行數值模擬。模擬之前,先了解一下網絡的具體結構與基本理論。
對于神經元的設置,應用integrated -and-fire model模型:
τdVdt=(Erest?V)+ginh(Einh?V)+gexc(Eexc?V)
(3-6)
這里V是膜電壓,Erest
是神經元在沒有外界刺激下的一種靜息電壓。
τ
是抑制或者興奮神經元的時間時間常數,這個常數時間上就是用于控制各種不同的STDP圖像。
galignlink
和
gexc
是抑制性神經元和興奮性神經元的電導值,這個值在神經網絡中表現為權重,也是我們需要訓練的東西。訓練模式與tempotron算法類似,當膜電壓到達閾值電壓的時候,就會發送尖峰脈沖信號,然后膜電位復位到靜息電壓。如果有神經元的尖峰信號達到突觸,那么突觸就會提升權值,即電導,如果沒有,那么權值就會指數型的衰減。權值更新的模式仍然是取決于突觸前神經元與突觸后神經元的尖峰達到時間差。如圖3.11所示,由于前后神經元的脈沖尖峰抵達時間差不一樣,產生了興奮和抑制兩種模式
圖 3.11 STDP權值更新模式圖[17]
我們需要定義興奮性神經元與抑制性神經元的權值改變方式。對于興奮性神經元的電導更新模式如下:
τgedgedt=?ge
(3-7)
抑制性電導的更新模式其實只需要更換常數:
τgidgidt=?gi
(3-8)
時間常數得控制會影響STDP得學習曲線,人腦或者生物的時間常數一般是10 ms-20 ms量級。我們由實驗得到得時間常數數值也靠近這個值
然后是基于STDP的權值更新法則:
Δw=η(xpre?xtar)(wmax?w)u
(3-9)
實際上,STDP的更新規則很多,還有指數型的,這里選取一種更新規則,他們大多大同小異。這里的η
是學習的速率,
Xpre
是該脈沖產生時的上一次脈沖值,每當有一次脈沖到達突觸時,
Xpre
會增加1,如果沒有,它會按照指數型進行衰減。
Xtar
是前一次的突觸前神經元產生的脈沖,其反應在突觸后神經元的目標值。這其實也是在將突觸前神經元和后神經元產生的時間在進行比較,從而正確的更新權值。
3.3.2 網絡設計脈沖神經網絡的設計與普通的經典神經網絡有所不同,由圖5.2看到,Input輸入層圖像的像素編碼脈沖數據,脈沖的頻率由圖像像素點的灰度值,即成正比關系,28×28的像素值會變成一個784×1的一維序列,每一個值代表一定頻率的脈沖信號。
圖3.12 SNN神經網絡結構[16]
之后進入激活層,激活層放置激活神經元,然后再進入抑制層,放置抑制層神經元。這里可以看到,非監督學習網絡的結構是不存在標簽值的。更新完全依靠激活層與抑制層之間的關系。從圖3.12可以看到,輸入層與激活層實際上時全連接模式,即每一個像素點產生的脈沖序列都會再激活層有一個對應權重。激活層與抑制層之間時一一對應連接,但抑制層與激活層的連接卻是全連接模式,除了激活層已經與抑制層產生連接的神經元。這樣的網絡設計模式實際上是由理由的。這應用的winter take all法則,即當某個激活層的神經元產生興奮后,該興奮傳遞到抑制層后,抑制層會抑制其他所有神經元產生脈沖。也就是說,不斷的訓練后,能夠產生脈沖的神經元會趨向于越來越容易產生脈沖,而其他神經元會越來越無法產生脈沖。從而達到訓練的目的。這和傳統的K-means算法也有異曲同工之妙,但不同的是STDP 非監督學習存在抑制層,從而避免了某幾個神經元一直占據某個pattern。
3.3.3 模擬結果數值模擬將MNIST 六萬個訓練數據編碼后作為脈沖輸入,整個訓練集進行了6次迭代,一共是36萬張圖片,訓練結束后學習慮被置為零,動態閾值被鎖定。之后輸入每一類的數字圖片,記錄每個神經元對應該類圖片的激活次數,并且選取其中激活次數最多的為該神經元的標簽。之后使用測試集的一萬張圖片作為脈沖輸入,觀察每當一張圖片輸入時,哪個神經元的激活頻率最高,如果該神經元的標簽與輸入圖片屬于同一pattern,那么認為分類正確。統計10000萬張圖片的平均準確率,得到網絡的訓練的評價值即Accuracy。
圖3.13 神經網絡權值矩陣圖
這里訓練后激活層的權值矩陣。之前提到了,當網絡訓練完成后,我們會輸入每一個圖片的pattern,以激活次數最高的神經元作為該pattern的標簽,在這樣經過改進后,圖5.3是激活層神經元重組后的權值分布,可以看到,不同神經元對于不同pattern的適應程度不同,體現在顏色的深淺上。
圖3.14 輸入層到激活層權值矩陣可視化圖
圖3.15 激活層到抑制層權值矩陣可視化圖
從圖3.14我們可以看到,只有很少部分的權值很高,即呈現黃色小點模式,體現即只有少數pattern才能夠產生脈沖,其他的脈沖都被抑制,這個圖像很好體現了我們在學習過程中的winer-take-all的模式。圖3.15體現的更加明顯的是,因為網絡的設計是激活層與抑制層一對一連接,抑制層與激活層反向全連接,但除去了從激活層連接過來的神經元,因此在權值的對角線上都是winer,而其他的神經元都被抑制,從而達到了我們從眾多神經元中選取出適合當前輸入的正確pattern。
之后我們輸入10000個MNIST的test集圖片進行外推,結果是:Sum response - accuracy: 91.43 number incorrect: 857。即我們在驗證集上達到了91.43%的準確度。總的來說還是比較可觀的。
結 論本文用了三個數值模擬的方法,分別對于神經元硬件化條件,神經突觸硬件化條件,神經元學習規則優越性做了探究。在神經元硬件化上,通過使用不同的非線性函數進行數值模擬,得到了其實在當選取激活函數時,函數與輸入值的正相關性并不是必要的,非線性才是最為重要的基準。并且作者使用簡單的鏈式求導法則,證明了神經元的硬件化需要有加權乘法器的功能,并且強調了乘法器的線性程度。也就推出了權值更新時,權值該變量與輸入值的正相關性的重要性,也可以說是正負變化的對稱性是對隨機梯度下降法達到收斂的充分條件。在SNN數值模擬上,本文先嘗試了tempotron有監督SNN算法,并且對其權值改變的方程做出了LTP與STDP法則的兩種試探,發現STDP的效果更好,也不愧是貼近人類大腦的學習模式。這里也需要指出tempotron算法的缺點在于該算法只能針對單神經元,即脈沖只能判斷單個神經元能不能發出脈沖,泛用性不是特別強,但是將輸入改成離散的脈沖輸入,在神經網絡的結構和理念上是一個很大的突破。接著文章以STDP學習機制更為優秀的基礎上,在基于2015年Peter教授的無監督STDP學習網絡[16]這篇論文的基礎上,使用實驗相關的數據進行了數值模擬,指出了該網絡的結構,采用winter-take-all模式與IF神經元結構,實現了在沒有任何標簽和領域知識的無監督學習網絡的模擬,并且在MNIST的test數據集上達到了91.43%的正確率。從實驗上證實了STDP學習機制可以用于無監督學習,指出了其在未來發展的巨大潛力。
最后本文提出一些對于當前硬件神經網絡研究的看法,目前實現硬件神經網絡的方法在緒論也有提出,主要有微電子方法、半導體突觸和光學實現。作者認為想要實現真正的類腦計算。我們就需要研究更與人類達到貼切的器件。盡管在微電子方面,目前的技術可以實現精度很高的數字模擬電路。但是實際上那也只是靠我們強大的算力與耗費了很多資源達到的結果。再說全光學的神經網絡,這樣的設想只能夠用天才來形容,這樣的網絡耗能少,效率高,速度快。但這并不能夠算是類腦計算,只是從物理的角度對于神經網絡進行了實現。真正的類腦計算我相信應該是基于STDP,LTP, LTD這些與人腦大腦對于信號實際反映做出的模型之上的。近年來已經發展了很多基于STDP或者類腦計算的算法,并且在數值模擬上都證實了其實現的可能性。目前的當務之急應該是制備出與這些理論符合的突觸器件或者神經元元件,然后進行集成,實現一個結合微電子設計電路與編碼處理,從而實現一個從輸入,到reference,再到自動Back Propagation修改誤差的自主型芯片,真正達到off-chip模式的神經網絡計算與硬件化。
參考文獻[1]Takao Watanabe, Katdutaka Kimura, Masakazu Aoki, et al. A Sinngle 1.5-V Digital Chip for a 106 Synapse Neural Network. IEEE Transactions on Neural Networks. May 1993,4(3): 387-39
[2]Matthew S Melttn, Tan Phan, Douglas S Reeves, et al. The TInMANN VLSI Chip. 1993, 4(3): 394 -340
[3]Hendrik C A M, Withagen. Neural Networks: Analog VLSI Implementation and Learning Algorithms. Ph.D thesis, Eindhoven,1997
[4]高麗娜 邱關源. 一種連續可調權值 CMOS 神經網絡. 電子學報, 1998, 26(2): 120-122
[5]Bernabé Linares-Barranco et al. A Modular T-Mode Design Approach for Analog Neural Network Hardware Implementations. IEEE Journal of Solid-State Circuits,1992, 27(5): 701-712
[6]Strukov, Dmitri B, Snider, Gregory S, Stewart, Duncan R and Williams, Stanley R. The missing memristor found. Nature. 2008, 453: 80–83. doi:10.1038/nature06932.
[7]賀靜, 基于CMOS 模擬技術的多種前饋人工神經網絡硬件的研究與實現 [D]. 湘潭大學, 2014
[8]侯媛彬,杜京義,汪梅. 神經網絡 [M]. 西安:西安電子科技大學出版社, 2007: 16-19.
[9]Q. Yu, S. Member, R. Yan, H. Tang, K. C. Tan, H. Li, IEEE Trans. Neural Networks Learn. Syst. 2016, 27, 621.
[10]M. Giulioni, X. Lagorce, F. Galluppi, R. B. Benosman, Front. Neurosci. 2016, 10, 1
[11]Bengio, Y. and Fischer, A. (2015). Early inference in energy-based models approximates back-propagation. Technical Report arXiv:1510.02777, Universite de Montreal.
[12]Scellier. B. and Bengio, Y. (2016).Towards a biologically plausible backprop. arXiv:1602.05179 .
[13]Markram H, Lübke J, Frotscher M, et al. Regulation of synaptic efficacy by coincidence of postsynaptic APs and EPSPs[J]. Science, 1997, 275(5297): 213-215.
[14]Bi G, Poo M. Synaptic modifications in cultured hippocampal neurons: dependence on spike timing, synaptic strength, and postsynaptic cell type[J]. Journal of neuroscience, 1998, 18(24): 10464-10472.
[15]Peng Yao, Xueyao Huang, Wenqiang Zhang,Qingtian Zhang.Face classification using electronic synapses.2017.5.12.DOI: 10.1038
[16]Peter U. Diehl, Matthew Cook.Unsupervised learning of digit recognition using spike-timing-dependent plasticity.Front. Comput. Neurosci., 03 August 2015 | DOI:10.3389
[17]Qingzhou Wan, Mohammad T. Sharbati, John R. Erickson, Yanhao Du, and Feng Xiong.Emerging Artificial Synaptic Devices for Neuromorphic Computing
[18]陳瓊. 鄭啟倫.人工神經網絡系統硬件實現的研究進展.[J].電路與系統學報.2000 年 3 月
[19]Cowan J D . Discussion:McCulloch-Pitts and related neural nets from 1943 to 1989[J]. Bulletin of Mathematical Biology, 1990, 52(1-2):73-97.
[20]Mcclelland J . Reflections on Cognition and Parallel Distributed Processing[J]. 1986.
[21]Xing Lin, Yair Rivenson, Nezih T. Yardimci, Muhammed Veli, Yi Luo, Mona Jarrahi and Aydogan Ozcan.All-optical machine learning using diffractive deep neural networks[J].Science.DOI:10.1126.July 26.2018
附 錄代碼具體說明請參考github.com/zhenghaobaby/graduated_design
作者簡歷姓名:鄭浩 性別:男 民族:漢族 出生年月:1997-04-11 籍貫:四川成都
教育背景:
2012.09-2015.07 成都七中
2015.09-2019.07 浙江大學攻讀材料科學工程學士學位
攻讀學位期間發表的學術論文與取得的其他研究成果已:
[1]XXXXXXX
[2]XXXX
待:
[1]XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[2]XXXX
已授權專利:
[1]XXXXXX