《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于MNIST的憶阻神經網絡穩(wěn)定性研究
基于MNIST的憶阻神經網絡穩(wěn)定性研究
2019年電子技術應用第4期
田 野,朱若華,湯知日,常 勝
武漢大學 物理科學與技術學院,湖北 武漢 430072
摘要: 為了探究憶阻器的穩(wěn)定性問題對憶阻神經網絡性能的影響,基于等效電阻拓撲結構的憶阻器模型,搭建了一個將憶阻器作為突觸的BP神經網絡,并利用MNIST數據集對該網絡進行訓練和測試。憶阻器的穩(wěn)定性問題通過設置憶阻器參數波動來模擬,最終發(fā)現憶阻器一定程度內的性能波動會促進神經網絡的收斂,但波動過大則會降低網絡的收斂速度。為了表征波動的臨界程度,測得了基于憶阻器模型的各參數的最大波動范圍,并進一步計算出憶阻器件工藝層次參量的取值范圍,為憶阻神經網絡硬件化中憶阻器件的工藝制造和選用提供了參考。
中圖分類號: TP391
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.190071
中文引用格式: 田野,朱若華,湯知日,等. 基于MNIST的憶阻神經網絡穩(wěn)定性研究[J].電子技術應用,2019,45(4):3-6,10.
英文引用格式: Tian Ye,Zhu Ruohua,Tang Zhiri,et al. Research on the stability of memristive neural network based on MNIST[J]. Application of Electronic Technique,2019,45(4):3-6,10.
Research on the stability of memristive neural network based on MNIST
Tian Ye,Zhu Ruohua,Tang Zhiri,Chang Sheng
School of Physics and Technology,Wuhan University,Wuhan 430072,China
Abstract: The stability problem of memristor may affect the performance of memristive neural network. In order to explore it, a memristive back propagation(BP) neural network, in which the memristors are the synapses, is constructed based on the equivalent resistance topology memristor model. And it’s trained and tested on the MNIST dataset. The stability problem of memristor is simulated by setting fluctuations of the parameters in the model. Finally, it is found that the performance fluctuation of the memristor to a certain extent will promote the convergence of the neural network, but the excessive fluctuation will reduce the convergence speed of the network. To characterize this criticality, the maximum fluctuation range of each parameter in the model is obtained. Meanwhile, the fluctuations’ ranges of device parameters are obtained by tracing back to the memristor model. The result provides a reference for the fabrication and selection of memristor devices during hardware application.
Key words : memristor;fluctuation;BP neural network;MNIST;stability

0 引言

    憶阻器是由物理學家蔡少棠教授在1971年提出的第四種電路基本元器件,其憶阻值聯系磁通量和電荷量兩個電路參量[1]。由于其非易失性(憶阻值可以存儲起來)、憶阻值可通過對器件端壓的調制實現連續(xù)變化等優(yōu)點,可作為神經元突觸來構建神經網絡[2]。

    研究發(fā)現同一個憶阻器在相同的驅動下測得的多條傳輸特性曲線之間存在差異;相同制造工藝下,不同憶阻器的性能也不一樣,即憶阻器件的性能并不穩(wěn)定[3]。這些穩(wěn)定性問題會對憶阻神經網絡的收斂速度和功能實現產生影響。

    本文的研究目的是基于一種具有等效電阻拓撲結構的憶阻器模型,探究憶阻器穩(wěn)定性問題對憶阻神經網絡性能的影響,從而得出在保證憶阻神經網絡性能的前提下模型參數的允許波動范圍。根據憶阻器模型參數的意義,映射到器件工藝層次的參量波動,為憶阻器件的工藝制造和選型提供參考。

1 憶阻器模型及穩(wěn)定性仿真

    本文采用了一種具有等效電阻拓撲結構的憶阻器模型,該模型不僅能描述憶阻器的傳輸特性,而且能準確描述憶阻器的不穩(wěn)定現象。通過設置波動的憶阻器參數,模擬憶阻器的不穩(wěn)定性,為憶阻神經網絡的搭建做準備。

1.1 憶阻器模型

    隨著憶阻器研究的發(fā)展,很多證據表明憶阻器的電阻轉換現象是由于器件中作為導電通道的導電絲的形成和消失造成的[4],外加電壓控制著導電絲的形成和消失,這樣就可以把憶阻器劃分為通道區(qū)域和無通道區(qū)域,導電通道則包括高阻和低阻區(qū)域,然后再通過一個合適的拓撲結構將這若干個通道結合起來,這就是本文使用的憶阻器模型[5]。其示意圖及數學模型簡化過程如圖1所示。圖(a)為憶阻器件結構圖,可等效為圖(b),其中由斜劃線填充的柱體表示無通道區(qū)域,阻值遠大于有通道區(qū)域(其他柱體),故由于并聯可進一步簡化為圖(c)。

xhcl1-t1.gif

    基于上述模型的數學表達式如下,假設在憶阻器中存在N個導電通道,即圖1(c)中的通道數,Rl表示低阻區(qū)域完全占據通道時一個導電通道的阻值;Rh表示高阻區(qū)域完全占據通道時一個導電通道的阻值。D為導電通道的總長度,Xi為低阻區(qū)域占據通道的長度(Xi≤D)。

    所以,第i個導電通道的憶阻值為:

xhcl1-gs1-7.gif

其中,Ci指定一個統計分布來描述在憶阻器中導電通道長度的不均勻性,θ和α決定通道的初始狀態(tài),θ用來調制Ci以給出合適的初值,α則對其進行進一步的調控;γ0用來對通道初始長度進行微調;β和λ則描述隨著磁通量(偏壓v(t)對時間t的積分)的積累,導電通道的動態(tài)變化過程。

    將式(5)、式(6)、式(7)帶入式(4)得憶阻值M:

    xhcl1-gs8.gif

1.2 憶阻器穩(wěn)定性仿真

    將上述模型應用于一個Pt/TiO2/TiO2+x/Pt結構的實際憶阻器件中,對各項參數設值為:D=20 nm,Roff=1.39 kΩ,Ron=25 Ω,N=20。θ=0.05和α=1決定初始導電通道長度及其分布,γ0=-5.9對初始長度進行微調。λ=5.76和β=1將狀態(tài)轉換速度限制在一個比較低的水平,這種情況下憶阻值只能在25 Ω~220.71 Ω的范圍內變化,通過MATLAB仿真得到該模型在周期性電壓下I-V特性曲線,即如圖2中所示β=1對應的曲線。

xhcl1-t2.gif

    該伏安特性曲線的形狀表現為滯回曲線,而且憶阻值隨時間變化的趨勢與憶阻器相同,在后文中,以該憶阻器模型各參數的取值變化來模擬憶阻器的不穩(wěn)定性。圖2為參數β不同取值時憶阻器的傳輸特性曲線,其他參數α、γ0、λ不同取值時與之類似。這種對憶阻器不穩(wěn)定性的模擬結果與YANG J J等人搭建的憶阻器測試得到的不穩(wěn)定性表現類似[6],說明該模型可以作為憶阻器件的仿真模型。

2 憶阻BP神經網絡設計與實現

    為了探究憶阻器的穩(wěn)定性對憶阻神經網絡的收斂速度和準確性的影響,搭建了一個三層的憶阻BP神經網絡,并用手寫數據集MNIST進行訓練和測試。

2.1 憶阻BP神經網絡MATLAB實現

    本文中使用MNIST數據集[7]搭建3層全連接憶阻BP神經網絡,網絡結構為:輸入層785個節(jié)點(圖片28×28個輸入節(jié)點和一個偏置點),隱藏層130個節(jié)點,輸出層10個節(jié)點,網絡結構如圖3所示,隱藏層節(jié)點及輸出層節(jié)點激活函數均為logistic函數[8]

xhcl1-t3.gif

xhcl1-gs9.gif

    即用權值變化量等效磁通量積累(磁通量積累由電壓v(t)隨時間t的積分得到),對憶阻值即權值進行更新。

2.2 憶阻BP神經網絡訓練與測試

    不考慮憶阻器模型中的參數波動,設參數α=1,β=1,γ0=-5.9,λ=5.76,對神經網絡進行訓練及測試,圖4為基于MNIST數據集訓練的收斂過程,識別率在訓練次數超過600次之后變化不顯著;訓練1 500次之后測試識別率為94.32%。由訓練記錄數據知,訓練次數超過573次之后,模型能夠對訓練集中超過56 000組數據進行正確的分類,此時測試識別率為93.35%左右,這個結果將作為后續(xù)考慮憶阻器性能波動時的對照組。

xhcl1-t4.gif

3 憶阻神經網絡穩(wěn)定性分析

    本節(jié)主要分析憶阻器模型中的各個參數波動模擬的憶阻器穩(wěn)定性問題對憶阻神經網絡訓練及測試結果的影響,并從憶阻器模型的參數波動回溯到器件結構或性能層次的變化,得到模型參數及器件參量的允許波動范圍。

3.1 模型參數與憶阻器件的聯系

    本文中憶阻器的憶阻值主要由N=20個相互獨立的導電絲中低阻區(qū)域和高阻區(qū)域的相對長度決定,而低阻區(qū)域的初始長度Xi由式(5)、式(6)、式(7)決定:

    xhcl1-gs10.gif

    參數α、β、γ0決定Xi的初始長度,但由于γ0為負指數,β對其調控作用很小,故只考慮參數α和γ0對Xi的調控。由式(10)可以算出Xi的分布范圍為[0.429 4D~0.947 5D]。分析式(8)可知,參數β、λ決定了憶阻器通電之后憶阻值隨磁通量的變化速度,參數β、λ越大,憶阻值變化的越快。

3.2 憶阻器參數波動對神經網絡的影響

    為了定量地討論憶阻器穩(wěn)定性問題對憶阻神經網絡的影響,對各個參數設置了不同的波動范圍,參數在給定范圍內隨機取值,記錄各種情況下訓練中能夠對訓練集中56 000組數據正確分類時需要的訓練次數,并在訓練后用測試集數據進行測試。認為訓練次數較無參數波動時的573次增加10%,即630次以上時,憶阻器性能波動對網絡收斂速度產生顯著影響;測試識別率降到90%以下時對網絡功能產生顯著影響,那么憶阻器的波動就應該限制在該波動程度范圍內。

3.2.1 參數α的波動對網絡的影響

    參數α是模型中調制導電通道初始長度的參量,初始值為1,對其設置了從±0.001α至±0.3α等多種程度的波動,分別訓練多次之后得到各種波動程度下的平均訓練次數如圖5所示,圖中也用散點表示了各種波動時的部分訓練次數分布情況。訓練完之后對所有情況進行了測試,準確率均在93%左右。

xhcl1-t5.gif

    由圖5可以發(fā)現參數α的波動程度較小時,訓練次數均小于573次,甚至小于450次,也就是說α的小范圍波動加快了憶阻神經網絡的訓練收斂,而且不損失測試準確率。而隨著波動程度的增大,訓練需要的次數也慢慢增大,最終超過630次,雖然測試準確率仍然是93%左右,但嚴重影響了網絡的收斂速度。

    所以可以得到在不影響憶阻神經網絡穩(wěn)定性的情況下,允許參數α的最大波動范圍為±0.22α,即參數α取值應該在0.78~1.22之間。而參數α控制導電絲中低阻部分初始長度Xi,由式(10)可以得到一個憶阻器中Xi值的范圍在0.335 2D~1D之間,基于實際憶阻器件即6.704 nm~20 nm之間。

3.2.2 參數β的波動對網絡的影響

    參數β是模型中控制憶阻值隨磁通量變化速度的參量,也就是影響憶阻神經網絡突觸權值更新幅度的參量,初始值為1,對其設置了從±0.005β至±8β等多種程度的波動,分別訓練多次之后得到各種波動程度下的平均訓練次數如圖6所示,對各種情況進行了測試,準確率也均在93%左右。

xhcl1-t6.gif

    由圖6可以看出,參數β較小程度波動時憶阻神經網絡的收斂速度較無波動時快,而波動程度大于±5β之后,訓練次數則普遍高于630次,對網絡收斂速度產生顯著影響,所以β取值范圍應該在0~6之間。β主要調控憶阻值隨磁通量的變化速度,只能從傳輸曲線表征,圖2為β從小到大變化時憶阻器的傳輸曲線,憶阻器的傳輸曲線應該落在β=0和β=6對應曲線之間(其中β=0意味著憶阻器變成定值電阻)。

3.2.3 參數γ0的波動對網絡的影響

    參數γ0是模型中對導電通道初始長度進行微調的參量,初始值設為-5.9,對其設置了從±γ0/20、±γ0/10至±γ0/2等多個波動范圍,各種情況下憶阻神經網絡訓練次數如圖7所示;訓練完之后對所有情況進行了測試,準確率均在93%左右,幾乎無損失。

xhcl1-t7.gif

    由圖7仍然可以發(fā)現參數γ0的波動程度較小時,憶阻神經網絡訓練收斂速度較無波動時更快,而且不損失測試準確率;波動程度達到±0.34γ0以上時,網絡訓練速度過慢,所以其波動應該控制±0.34γ0以內,即γ0取值應該在-7.906~-3.894之間。其調控的Xi的初始值范圍應該在0.4283D~0.9641D之間,基于實際憶阻器件Xi的值為:8.566 nm~19.282 nm。

3.2.4 參數λ的波動對網絡的影響

    參數λ是模型中最直接控制憶阻值隨磁通量變化速度的參量,與參數β的意義相似。初始值為5.76,對其設置了從±λ/10至±9λ等多種波動范圍,憶阻神經網絡訓練次數如圖8所示,在波動超過±8.4λ之后訓練次數均超過1 000,在圖8中用1 000表示。測試準確率保持在92%~93%,幾乎無損失。

xhcl1-t8.gif

    不難看出,參數λ一定程度內的波動仍然會加快訓練收斂速度,但是當波動程度過大之后,訓練次數會急劇增加,很快超過1 000次。由訓練數據得到:參數λ波動范圍在±8.35λ時,平均訓練次數為618次,所以參數λ的波動應該控制在±8.35λ以內,這樣才能保證憶阻神經網絡的穩(wěn)定性,即參數λ取值在0~53.856之間。λ對憶阻器特性的調控與β相似,從傳輸曲線上表征。其不同取值時憶阻器傳輸特性曲線如圖9所示,即用作突觸的憶阻器的傳輸曲線應該落在λ=0和λ=53.856對應的曲線之間(其中λ=0意味著憶阻器變成定值電阻)。

xhcl1-t9.gif

4 結論

    本文基于一種等效電阻拓撲結構的憶阻器模型,探究了憶阻器作為神經網絡突觸時,其不穩(wěn)定現象對憶阻神經網絡的穩(wěn)定性及功能實現的影響,并得出了基于MNIST手寫數據集的憶阻神經網絡中憶阻器性能參數在初始設置基礎上的最大波動范圍:參數α:±0.22α;參數β:±5β;參數γ0:±0.34γ0;參數λ:±8.35λ。反映到憶阻器模型中對應的器件參數上,即導電絲(總長度D=20 nm)中低阻部分初始長度Xi應該控制在0.428 3 D~0.964 1 D之間,即8.566 nm~19.282 nm;憶阻值隨磁通量的變化速度則從傳輸曲線上表征。本文的實驗結果不僅證實了憶阻器作為神經網絡突觸結構的可行性,還發(fā)現作為突觸的憶阻器一定程度內的性能波動會促進神經網絡的收斂;此外,器件參量結果也為憶阻神經網絡硬件化中憶阻器件的工藝制造和選用提供了一種參考。

參考文獻

[1] CHUA L.Memristor-the missing circuit element[J].IEEE Transactions on Circuit Theory,1971,18(5):507-519.

[2] 王麗丹,段美濤,段書凱.基于STDP規(guī)則的憶阻神經網絡在圖像存儲中的應用[J].電子科技大學學報,2013(5):642-647.

[3] QUERLIOZ D,BICHLER O,GAMRAT C.Simulation of a memristor-based spiking neural network immune to device variations[C].The 2011 International Joint Conference on Neural Networks(IJCNN).IEEE,2011:1775-1781.

[4] KWON D H,KIM K M,JANG J H,et al.Atomic structure of conducting nanofilaments in TiO2 resistive switching memory[J].Nature nanotechnology,2010,5(2):148.

[5] ZHU R,CHANG S,WANG H,et al.A versatile and accurate compact model of memristor with equivalent resistor topology[J].IEEE Electron Device Letters,2017,38(10):1367-1370.

[6] YANG J J,PICKETT M D,LI X,et al.Memristive switching mechanism for metal/oxide/metal nanodevices[J].Nature Nanotechnology,2008,3(7):429.

[7] 黃睿,陸許明,鄔依林.基于TensorFlow深度學習手寫體數字識別及應用[J].電子技術應用,2018,44(10):6-10.

[8] 王蒙,常勝,王豪.一種自適應訓練的BP神經網絡FPGA設計[J].現代電子技術,2016,39(15):115-118.



作者信息:

田  野,朱若華,湯知日,常  勝

(武漢大學 物理科學與技術學院,湖北 武漢 430072)

此內容為AET網站原創(chuàng),未經授權禁止轉載。