亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種聯想記憶神經網絡的制作方法

文檔序號:6446546閱讀:557來源:國知局
專利名稱:一種聯想記憶神經網絡的制作方法
技術領域
本發(fā)明涉及人工神經網絡,具體來說就是涉及一種用于存儲信息的新型聯想記憶神經網絡及其記憶方法。
背景技術
聯想記憶神經網絡具有很好的容錯性,非常適合于不完整或畸變信息的識別與分類。已有多種不同形式的聯想記憶神經網絡,如Hopfield聯想記憶神經網絡、雙向聯想記憶神經網絡等。但現有聯想記憶神經網絡存在如下問題1)每記憶一個模式都要重新確定網絡中所有的連接權重,致使尋求合適連接權重的方法變得復雜而困難,從而導致聯想記憶性能不理想,如存儲容量小,存在假模式等,象Hopfield網絡,若聯想準確度大于99%時,則采用外積法的存儲容量為0.138N,雖然采用偽逆法的存儲容量可達0.5N,卻是以容錯能力下降為代價的。
2)所有的連接都參與每個模式的記憶,這雖然降低了記憶對每個連接的依賴,但并不能完全消除這種依賴,而且每個連接對存儲在網絡中的不同模式的影響程度也不同,所以如果斷掉一個連接,一部分存儲模式可能完全不受影響,而另一部分存儲模式則可能不能被正確回憶出來,而若斷掉多個連接,則可能使網絡完全喪失回憶能力,因此可靠性有待提高。
3)當輸入模式不曾被記憶在網絡中時,網絡中可能存在多個與輸入模式具有最小漢明(Hamming)距的模式,但上述聯想記憶網絡一般只能回憶出其中一個模式,顯然,通常人們總是希望網絡具有多模式回憶能力(即全部或部分地回憶出這些最小漢明距模式)。
4)回憶時,要求輸入模式必須是完全確定的,但就實際使用而言,總是希望用于回憶的模式可以是不完整的,即允許其中部分信息是不確定的,因為回憶的目的往往就是希望根據殘缺的信息來獲得完整的信息。
本發(fā)明的目的就是針對現有聯想記憶神經網絡的上述缺點提出一種新型的聯想記憶神經網絡及其記憶方法,與現有聯想記憶神經網絡相比,其優(yōu)點是存儲容量大、可完全消除假模式、具有多模式回憶能力、回憶時允許輸入不完整模式,記憶的可靠性高。

發(fā)明內容
本說明書中的網絡均指聯想記憶神經網絡。
本發(fā)明的主要思路可概括為1)采用Hopfield網絡拓撲結構,但將實數連接權重改為連接權向量(也稱連接狀態(tài)),連接權向量的分量為邏輯值;2)不同于現有網絡那樣讓所有連接參與存儲每個模式,而是每個模式都各自存儲在一個或多個所謂“模式環(huán)”的環(huán)路中;3)如果某個模式環(huán)中存儲的模式不是希望記憶的模式(即假模式),則在該模式環(huán)中設置“禁止路徑”,使該假模式不會被回憶出來;4)現有網絡的神經元對輸入求加權和,再將其減去一偏置量后作為激活函數的自變量,激活函數的輸出就是神經元的輸出,而本發(fā)明中神經元進行的是符號邏輯運算,輸入、輸出均為一組主要由神經元編號構成的序列。
下面結合附圖詳細說明本發(fā)明內容。
附圖簡單說明

圖1是本發(fā)明提出的聯想記憶神經網絡的拓撲結構;圖2是本發(fā)明的五神經元聯想記憶網絡舉例;圖3是說明圖2中模式存儲方式的樹狀圖;圖4是設置禁止路徑的方法示意圖,用于說明記存過程中將一個空連接轉變?yōu)榉强者B接時在由此而產生的存儲非希望記憶的模式的模式環(huán)中設置禁止路徑的方法;圖5是設置禁止路徑的方法示意圖,用于說明記存過程中撤銷一條禁止路徑時在由此而產生的存儲非希望記憶的模式的模式環(huán)中設置禁止路徑的方法;圖6是本發(fā)明的一個實施例;圖7是圖6中神經元的內部結構及與其他神經元的連接示意圖;圖8、圖9是實施例中負責監(jiān)控神經元及作為與外部設備接口的微處理器CI的工作程序框圖;圖10、圖11、圖12、圖13是實施例中神經元微處理單元NK的工作程序框圖。
本發(fā)明聯想記憶神經網絡結構詳細說明圖1所示是本發(fā)明的連想記憶神經網絡拓撲結構,它與無自反饋的Hopfield網絡完全相同,其中si=[si1,si2,…,siM]是神經元i的狀態(tài)(向量),i=1,2,…,N,N為網絡中神經元的個數,sik∈{-1,0,1},其中-1、1是sik的邏輯狀態(tài),sik=0表示該分量的狀態(tài)不確定,k=1,2,…,M,M表示神經元狀態(tài)(向量)所包含的狀態(tài)分量個數,lij為神經元i到神經元j的連接,i,j=1,2,…,N,lii總是斷開的,Xi(t)是神經元i的輸出。下面參照圖1對本發(fā)明網絡結構作進一步的描述。
1)存儲在網絡中的信息用模式表示,模式形式為P=[p1,p2,…,pM],pi=[pi1,pi2,…,piN], Pik∈{-1,1},i=1,2,…,M,k=1,2,…,N。
為便于敘述,稱P為一級模式,pi為P的第i個二級模式。
2)神經元i到神經元j的連接lij中存儲著向量qij和一組禁止路徑wij,表示為lij=[qij,wij](1)其中qij=[qij1,qij2,···,qijM],qijk∈{-1,1},]]>k=1,2,…,M,Wij=[wij1,wij2,···,wijζ]]]>表示lij中存儲了ζ條禁止路徑,wijη表示其中的第η條禁止路徑,稱qij=0的連接為空連接,它是連接的初始狀態(tài),表示該連接還沒有被用來存儲向量,lij=qij表示lij中沒有存儲禁止路徑。
為了便于敘述,稱qij為lij的狀態(tài)或權向量。
網絡中每個連接都有一個時間單位的延遲,即信號通過一個連接需花一個時間單位。
3)禁止路徑是網絡中按順序排列的一串神經元編號所表示的一段路徑,這段路徑不允許信號通過,禁止路徑的表示方法如下設n1,n2,…,nl為神經元的編號,則wijη=n1]]>表示n1→i→j為禁止路徑,即由神經元n1出發(fā)經連接lnli到神經元i再經連接lij到神經元j的這段路徑為禁止路徑,同理,wijη=n1n2···nl]]>表示的禁止路徑為n1→n2→…→nl→i→j。
4)網絡中每個模式存儲在一個或多個稱為“模式環(huán)”的回路中,模式環(huán)是由網絡中N個連接和所有神經元組成的單向單環(huán)回路,其中“單向”是指回路中信號只能向一個方向傳遞,“單環(huán)”表示回路通過網絡中每個神經元一次。設p,q,r,s,…,t是神經元編號,且{p,q,r,s,…,t}={1,2,…,N},即等式兩邊的集合相等,顯然p≠q≠r≠s≠…≠t,則模式環(huán)用連接表示為lpqlqrlrs…ltp模式環(huán)也可以直接用神經元編號表示為pqrs…tp。
若pqrs…tp不包含空連接,則存儲在其中的模式P=[p1,p2,…,pM]可由式(2)得到 其中第二個等式左邊集合是將右邊集合中的元素按下標第一個數字由小到大重排的結果。
5)網絡中所有神經元的狀態(tài)所構成的狀態(tài)(向量)表示為S=[s1,s2,…,sN]。
由上述模式環(huán)的含義可見,對于有N個神經元的聯想記憶神經網絡,從任意神經元出發(fā)的信號可以到達的第一個神經元是其它N-1個神經元之一,而可以到達的第二個神經元是剩余的N-2個神經元之一,依此類推,可見網絡中最多有(N-1)!個模式環(huán)。N個神經元所能表示的模式數最多為2MN個,由式(2)可見,如果所有源自同一神經元的連接的狀態(tài)互不相同,即對于任意神經元i,若j≠k,有qij≠qik(顯然要求2M≥(N-1)),則每個模式環(huán)所存儲的模式都是不同的,故網絡所能記憶的不同模式數最多為(N-1)!,且只要N>2,則2MN=(2M)N≥(N-1)N>(N-1)!,可見網絡的存儲容量可達(N-1)!。例如,N=16,M=4時,則最多可存儲15!≈1.3×1012個不同模式。另外,若M固定,則limN→∞(N-1)!/2MN=∞,]]>如M=1,當N≥6時,(N-1)?。?N,若N=16,則(N-1)!/2N≈1.995×107,而2N是N個神經元所能表示的最大模式數,這就意味著要存儲一個模式時,網絡可能有非常多的模式環(huán)可用,這樣便可以選擇合適的模式環(huán)以照顧網絡的其他性能要求,從而提出網絡的整體性能,也可以用多個模式環(huán)來存儲同一個模式,從而提高網絡記憶該模式的可靠性。
當在某些空連接中存儲適當的權向量,使它們成為非空連接,并與已存在的部分非空連接共同構成新的模式環(huán)來存儲希望記憶的模式時,這些新的非空連接還可能與網絡中的其他非空連接構成另外的模式環(huán),而這些模式環(huán)所存儲的模式并非希望記憶的模式(稱為假模式),從而在存儲希望記憶的模式的同時也存儲了假模式(簡稱存儲假模式的模式環(huán)為假模式環(huán)),為此,在存儲假模式的模式環(huán)中設置禁止路徑,利用信號不能在包含禁止路徑的模式環(huán)中構成回路來避免回憶出假模式,可見包含禁止路徑的模式環(huán)是假模式環(huán)。
本發(fā)明聯想記憶神經網絡舉例圖2是本發(fā)明的五神經元聯想記憶網絡(N=5,M=2)舉例,其中連接用中間有箭號的弧線表示,箭號方向為信號傳遞方向,Xi是神經元i(i=1,2,3,4,5)的輸出,每個非空連接存儲一個包含兩個分量的權向量,圖中的數字是模式環(huán)編號,此編號是模式環(huán)所存儲的模式的十進制數,標有相同編號的連接構成一個模式環(huán),可見一個連接屬于多個模式環(huán),用虛線表示的連接l24、l53是空連接,圖中有3條禁止路徑(用帶箭號的點劃線表示)1→3→4、2→3→4→5、4→3→2→5,假模式環(huán)用帶刪除線的編號表示。
圖3是由圖2中全部模式環(huán)組成的樹狀圖,每根豎直線表示一個連接,虛線表示空連接,與同一橫線相連的連接源自同一神經元,每個連接上、下端的數字分別是源、目標神經元的編號,圖中每條從最上面的‘1’到最下面的‘1’的路徑都是一個模式環(huán),最下面一排數字是相應模式環(huán)的編號,圖中的點劃線表示禁止路徑,每個連接旁邊是存儲在該連接中的二級模式。
式(3)是圖2所示聯想記憶網絡的連接矩陣,其中最上面一行數字1-5和最左邊一列數字1-5分別是矩陣的列編號和行編號,它們也分別是目標神經元編號和源神經元編號;每個連接所存儲的二級模式位于矩陣中相應行、列編號交點處,位于其下的數字或數字串是禁止路徑,如第2行第5列為連接l25中存儲的內容q25=[-1,1],w25=[43]。
表1是此連接矩陣存儲的模式及假模式,跟在模式后的第一個數字是相應模式的十進制表示,第二個數字串是存儲該模式的模式環(huán),根據此模式環(huán)及式(2)很容易在連接矩陣中找出相應的存儲模式。在存儲假模式的模式環(huán)中帶下劃線部分是禁止路徑。
表1 本發(fā)明聯想記憶神經網絡記憶方法詳細說明本發(fā)明提出的記憶方法要求網絡中傳遞的信號是序列,每個神經元接收其它神經元輸出的序列,并按下述記憶方法中的要求處理這些序列,然后輸出一組新的序列,并規(guī)定其中序列的個數不能超過某個規(guī)定上限,為了便于敘述,下面稱此上限為L,至于上限的設置見下述關于L的討論。
序列表示為h(t)n0n1…nt其中t是離散時間,ni(i=0,1,…,t)是神經元的編號,h(t)是附加信息,表示該序列所經過的路徑中具有不同于源神經元狀態(tài)的連接的個數,序列的長度定義為序列中神經元編號的個數,即t+1,此序列的含義是神經元n0在t=0時刻輸出序列h(0)n0,神經元n1在t=1時刻經由ln0n1接收到序列h(1)n0并輸出序列h(1)n0n1,然后神經元n2在t=2時刻經由ln1n2接收到序列h(2)n0n1并輸出序列h(2)n0n1n2,如此下去,直到神經元nt輸出h(t)n0n1…nt。由于神經元在接收到的序列之后加上神經元自身的編號,從而將其變?yōu)橐粋€新的序列,然后再輸出此新的序列,可見序列表示了它自身所經歷的路徑。
本發(fā)明所述的記憶方法包括回憶和記存兩個部分。
回憶回憶是找出網絡中存儲的與輸入模式漢明(Hamming)距最小的模式?;貞浄譃?≤t<N和N≤t<2N兩個階段。
0≤t<N階段1)根據輸入模式P設置所有神經元的狀態(tài)S,即令sij=pji,i=1,2,…,N,j=1,2,…,M,回憶時允許pji=0,即pji∈{-1,0,1}。
pji=0表示該狀態(tài)分量不確定或不必確定是取-1還是取1,這樣可以通過輸入不完整的模式來回憶出存儲在網絡中的相應的一個或多個完整模式,尤其是當我們希望在網絡中找出具有某種特征的模式時,將特征作為不完整模式輸入的方法就顯得非常有用了,稱含pji=0的模式為不完整模式。
2)網絡從t=0時刻開始運行,每個神經元發(fā)出一個僅含神經元自身編號的初始序列,且附加信息為0,即神經元i發(fā)出的初始序列為h(0)i,h(0)=0,i=1,2,…,N。
3)任何序列只能到達同一個神經元不超過一次,例外情況是,當t=N-1時,序列中的第一個編號正好是所要到達的神經元的編號,即序列第二次到達該神經元時將構成一個模式環(huán)。
4)序列不能通過禁止路徑。
5)序列不能通過空連接。
6)如果連接的狀態(tài)與源神經元的狀態(tài)不同(比較二者狀態(tài)是否相同時,總是視源神經元中狀態(tài)不確定的分量與相應連接的狀態(tài)分量相同),則序列經過該連接時附加信息加1。
7)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇L個序列(如果接收到的序列不足L個,則選擇全部這些序列),并在其中每個序列之后加上自身的編號從而將它們變?yōu)樾碌男蛄?,然后輸出這些新的序列。
N≤t<2N階段1)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇并輸出L個序列(如果接收到的序列不足L個,則選擇并輸出全部這些序列),如果是t=N,則在其中每個序列之后加上神經元自身的編號再輸出。
2)序列只能在自身所表示的模式環(huán)中傳遞,即序列通過連接lij(i,j∈{1,2,…,N})的條件是序列所表示的模式環(huán)中包含‘ninj’,即該序列曾經通過lij,同時序列所表示的模式環(huán)不包含存儲在lij中的任何禁止路徑。
當t=N時,每個神經元接收到的每個序列所包含的第一個編號必然是該神經元自身的編號,也就是說序列經歷了N-1個神經元后到達了其最初出發(fā)的神經元,它包含網絡中全部神經元的編號,這些序列的形式可表示為x(N)=h(N)n0n1…nN-1nN,其中nN=n0,顯然,n0n1…nN-1n0或ln0n1ln1n2…lnN-1n0表示一個模式環(huán),然而,它可能是假模式環(huán),因為t=N時,序列的頭尾相連,而一段包含序列頭尾的路徑有可能是一段禁止路徑,因此有必要通過N≤t<2N階段的網絡運算來消除這部分假模式環(huán)。
t=2N時,在神經元輸出的序列中,h(2N)最小者所表示的模式環(huán)中存儲的模式與輸入模式的漢明(Hamming)距最短,這就是我們希望回憶出來的模式,此模式可由式(2)得到。顯然,當輸入模式不是已存儲在網絡中的模式,而網絡中可能有多個不同模式與輸入模式的漢明(Hamming)距同為最小時,神經元輸出的序列中,h(2N)最小者一般不止一個,因此網絡具有多模式回憶能力。
記存記存是在網絡中尋找一個合適的模式環(huán)來存儲希望記憶的模式(以下稱待記存模式),記存按以下要求進行1)根據待記存模式P設置所有神經元的狀態(tài)S,即令sij=pji,i=1,2,…,N,j=1,2,…,M。
2)網絡開始運行的時刻規(guī)定為t=0,此時每個神經元發(fā)出一個僅含神經元自身編號的初始序列,且附加信息為0,即神經元i發(fā)出的初始序列為h(0)i,h(0)=0,i=1,2,…,N。
3)序列不能通過與源神經元不同狀態(tài)的非空連接。
4)任何序列只能到達同一個神經元不超過一次,例外情況是,當t=N-1時,序列中的第一個編號正好是所要到達的神經元的編號,即序列第二次到達該神經元時將構成一個模式環(huán)。
5)通過空連接的序列附加信息加1。
6)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇L個序列(如果接收到的序列不足L個,則選擇全部這些序列),并在其中每個序列之后加上神經元自身的編號從而將它們變?yōu)樾碌男蛄?,如果t<N,則輸出這些新的序列。
7)填充空連接及撤銷禁止路徑a)當t=N時,神經元接收到的序列均表示一個模式環(huán),相應的附加信息大小等于它所經歷的空連接的個數,任取其中附加信息最小者作為存儲待記存模式的模式環(huán);b)若此模式環(huán)中不存在空連接和禁止路徑,則說明網絡中已經存儲了待記存模式,因此終止記存過程;c)填充此模式環(huán)中的空連接,即將其中空連接的狀態(tài)逐一改變?yōu)橄鄳瓷窠浽臓顟B(tài),也就是將其中所有qij=0改變?yōu)閝ij=si;d)逐一撤銷該模式環(huán)包含的所有禁止路徑;e)每撤銷一條禁止路徑或每填充一個空連接之后,都要進行8),9)項要求的工作。
8)搜索因填充空連接或撤銷禁止路徑而產生的所存儲的模式不是待記存模式P的模式環(huán)(為便于敘述,將其中存儲的模式表示為Ps),下面詳細說明具體搜索方法。
如果是搜索因填充某個空連接而產生的存儲Ps的模式環(huán),則暫時清空與該連接有相同目的神經元的其它連接,即設lnl-1nl是被填充狀態(tài)的連接,則令qknl=0,k=1,2,···,nl-2,nl+1,···,nN---(4)]]>式(4)使得網絡中只存在包含連接lnl-1n1的模式環(huán)。
如果是搜索因撤銷禁止路徑而產生的存儲Ps的模式環(huán),則暫時清空所有與該禁止路徑中的連接有相同目的神經元的其他連接,即設被撤銷的禁止路徑為nl-γnl-γ+1…nl-2nl-1nl,則令
其中 表示k取1~N中除nl-γ、nl-γ+1外的所有整數,α、β及δ的表示方式與k一樣,顯然式(5)使得網絡只存在包含路徑nl-γnl-γ+1…nl-2nl-1nl的模式環(huán)。
令S=P,進入回憶過程,由回憶得到的所有h(2N)≠0的序列所表示的模式環(huán)就是存儲Ps的模式環(huán),然后恢復被式(4)、(5)改變的連接狀態(tài)。
9)在存儲Ps的模式環(huán)中設置禁止路徑,新設置的禁止路徑必須包含被填充狀態(tài)的連接或被撤銷的禁止路徑,因為網絡中已經存在的模式環(huán)不包含新被填充狀態(tài)的連接,已經存在的假模式環(huán)不包含被撤銷的禁止路徑,從而使得它們不會受新設置的禁止路徑的影響。下面結合圖4和圖5來說明禁止路徑的設置方法圖4和圖5中圓圈表示神經元,帶箭頭的直線表示連接及信號的傳遞方向,λ,γ為非負整數。圖4是在因填充空連接而產生的存儲Ps的模式環(huán)中設置禁止路徑的情況,lnl-1n1是被填充狀態(tài)的連接,nl-1nl…nl+λnl+λ+11是存儲模式P的模式環(huán)中的部分路徑,nl-1nl…nl+λnl+λ+12是存儲Ps的模式環(huán)中的部分路徑,則禁止路徑設置為wnl+λnl+λ+12q+1=nl-1nl···nl+λ-1]]>其中q表示連接lnl+λnl+λ+12]]>中已經存儲的禁止路徑條數。
圖5是在因撤銷禁止路徑而產生的存儲Ps的模式環(huán)中設置禁止路徑的情況,被撤銷的禁止路徑為存儲在lnl-1nl中的nl-γnl-γ+1…nl-2nl-1nl,nl-γnl-γ+1…nl-2nl-1nl…nl+λnl+λ+11是存儲待記存模式P的模式環(huán)中的部分路徑,存儲Ps的模式環(huán)中的部分路徑是nl-γnl-γ+1…nl-2nl-1nl…nl+λnl+λ+12,則禁止路徑設置為wnl+λnl+λ+12q+1=nl-γnl-γ+1···nl-2nl-1nl···nl+λ-1]]>其中q表示連接lnl+λnl+λ+12]]>中已經存儲的禁止路徑條數。
至此,實現了一個模式的記存。
關于L的討論L越大,即神經元輸出的序列越多,則神經元接收到的序列也越多,最終搜索到的模式環(huán)也越多,可見為了不漏掉網絡中存儲的模式與輸入模式漢明(Hamming)距最短的模式環(huán),希望L盡可能地大,但神經元也要花費更多的時間來處理輸入、輸出序列,在神經元的處理速度確定的情況下,只能在L的大小(即搜索模式環(huán)能力的大小)與完成一次記存或回憶過程所需的時間之間取得某種平衡,具體要根據使用者對這兩者的不同重視程度來確定L。
實施例本發(fā)明既可以用硬件實現也可以用軟件實現,還可以混合采用硬件和軟件實現。
硬件結構圖6是本發(fā)明的一個混合采用軟件和硬件的實施例,為了便于敘述,圖6中將神經元排序為neuron 1,neuron 2,…,neuron N;所有神經元的內部結構都是一樣的;神經元neuroni(i=1,2,…,N)的輸出經信號線Li送至其他N-1個神經元,Li由數據線、地址線及寫控制線組成,微處理器CI(內部自帶ROM和RAM)通過總線B1監(jiān)控各神經元的運行及通過通信線B2作為接口與外部設備通信,SYNi是神經元i發(fā)出的同步信號,邏輯“與”運算電路的輸出SYN是網絡同步信號,同步信號的作用是保證所有神經元在相同時刻的工作狀態(tài)相同,ESYN用于CI控制SYN信號的允許或強制無效,SYN為邏輯“1”表示同步信號有效,此時意味著ESYN及所有SYNi(i=1,2,…,N)均為“1”。
圖7以神經元neuron i為例表示神經元內部結構及與其他神經元的連接關系。神經元核心NK是一微處理單元,NK內部自帶或外接用于存儲運行程序的只讀存儲器(ROM)和暫存數據的隨機存儲器(RAM)。來自其他N-1個神經元的輸出數據分別存儲在N-1組雙端口存儲器(DPRAM)中,每組雙端口存儲器可存儲L個序列及一個神經元狀態(tài),N-1組存儲器的輸入端口相互獨立,可以同時寫入數據,各組存儲器輸出端口的數據線并聯構成數據線Xi,供NK讀取其中的內容,AS是用于NK選擇具體存儲單元的地址線及讀控制線。電可擦除可編程只讀存儲器(E2PROM)用于存儲所有以神經元i為目標神經元的連接的狀態(tài)及禁止路徑,NK通過數據線與讀、寫控制線SI訪問E2PROM。由上可見,Li(i=1,2,…,N)和E2PROM共同承擔連接的功能,前者傳遞信號,后者存儲連接狀態(tài)和禁止路徑。
記存/回憶方法的實現微處理器CI經通信線B2接收外部設備送來的記存/回憶命令及模式,然后通過命令代碼及相應數據控制所有神經元的NK執(zhí)行相應的記存/回憶操作,最后將結果回送給外設。
每個神經元的NK中設有神經元狀態(tài)寄存器Rs和源神經元寄存器Rn,Rs用于暫存CI指定的本神經元的狀態(tài),Rn用于暫存CI指定的一個神經元編號,如果某個神經元的Rn不是空的,則該神經元的NK只處理Rn中神經元的輸出,其目的是在記存/回憶過程中使搜索到的模式環(huán)包含特定的連接;NK的輸出(即寫入其他N-1個神經元雙端口存儲器中的數據)包括兩部分神經元自身的狀態(tài)及一組序列。
NK開始工作時總是先使同步信號有效,即讓SYNi=“1”,然后接收來自CI的命令及數據,并執(zhí)行命令規(guī)定的操作,為了便于說明,這些命令以代碼形式表示如下F1—設置神經元的狀態(tài)(向量),即將CI指定的本神經元狀態(tài)(向量)存儲在Rs中;F2—在CI指定的空連接中存儲源神經元的狀態(tài),即NK到DPRAM中讀取CI指定的空連接的源神經元狀態(tài),并將其寫入E2PROM中該空連接的狀態(tài)存儲單元;F3—到E2PROM中讀取CI指定的連接的狀態(tài)并將其傳遞給CI;F4—將NK內部RAM中的模式環(huán)傳遞給CI;F5—將CI指定的神經元編號存入Rn;F6—清空Rn;F7—到E2PROM中讀取CI指定連接中的禁止路徑并將其傳遞給CI;F8—清除E2PROM中CI指定的禁止路徑;F9—將CI指定的禁止路徑存儲到E2PROM中該禁止路徑最后一個連接的禁止路徑存儲區(qū);F10—搜索記存模式環(huán)(見圖11及相關說明);F11—搜索回憶模式環(huán)(見圖13及相關說明)。
下面詳細介紹網絡在CI控制下記存/回憶的工作過程。圖8是CI的工作程序框圖,方框中的命令代碼是要求所有神經元NK執(zhí)行的操作;開始時CI總是發(fā)出同步允許信號(1),即ESYN=“1”,然后處于等待與外設通信狀態(tài)(2)(3),當接收到外設記存/回憶命令及模式時,就轉入相應的記存/回憶模式環(huán)搜索(4)(見圖9及其說明),從而得到一組表示模式環(huán)的序列;然后分兩種情況(5)1)如果是回憶,則在搜索到的模式環(huán)中選取L個附加信息最小的不同的模式環(huán)(6),根據式(2)及利用命令F3查出存儲在這些模式環(huán)中的模式(7),并將所得模式作為回憶結果輸出給外設(8)。
2)如果是記存,則在搜索到的模式環(huán)中任選一個附加信息最小的模式環(huán)(9),為便于說明,將其記作PL,用l表示PL中神經元的排列序號(序列中第一個神經元序號為1)并令l等于2(10),通過命令F3向PL中第l個神經元查詢源自PL中第(l-1)個神經元的連接是否為空連接(11)、(12);①對于非空連接,利用F7向PL中第l個神經元獲取源自PL中第(l-1)個神經元的連接中的禁止路徑(13),如果其中有一條禁止路徑被包含在PL中,則利用F8命令PL中第l個神經元撤銷該禁止路徑(14),通過F5將該禁止路徑中第一個神經元以外每個神經元的Rn設置為該神經元的前一個神經元編號(15),然后進行回憶模式環(huán)的搜索(16),通過F6清空所有Rn(17),在每個搜索到的模式環(huán)(PL除外)中設置禁止路徑(18)(見圖5及其說明);②對于空連接,則通過命令F2在該空連接中存儲其源神經元狀態(tài)(19),并通過F5令PL中第l個神經元的Rn等于第(l-1)個神經元的編號(20),從而使得利用F11搜索到的模式環(huán)必然包含PL中第(l-1)個神經元到第l個神經元的連接(21),通過F6清空Rn(22),在每個搜索到的模式環(huán)(PL除外)中設置禁止路徑(23)(見圖4及其說明);利用F9將表示禁止路徑的數據存儲在該禁止路徑的最后一個連接中(24);至此完成了PL中一個連接的處理,然后令l增加1(25),進行下一個連接的處理直至處理完所有PL中的連接(即l=N+2)(26),最后將PL作為記存結果輸出給外設(27);CI在完成上述工作后,總是回到等待與外設通信狀態(tài)。
圖9是CI控制神經元實現記存/回憶模式環(huán)搜索的程序框圖,CI首先強制同步信號無效(28),使所有神經元不能開始模式環(huán)的搜索,然后根據要記存/回憶的模式通過F1設置各神經元的狀態(tài)(29),向所有神經元發(fā)出記存(F10)/回憶(F11)模式環(huán)搜索命令(30),再使同步信號允許有效(ESYN=“1”)(31),以便NK可以開始搜索模式環(huán),然后通過中間帶延時(33)的兩次查詢(32)(34)同步信號是否有效(SYN=“1”)來判斷NK的模式環(huán)搜索是否結束,延時時間必須大于神經元NK使同步信號從有效變?yōu)闊o效所需的時間,這樣就不會在神經元搜索模式環(huán)未結束時與神經元通信,最后通過F4讀取搜索到的模式環(huán)(35),即讀取各NK內部或外接RAM中的序列,每個序列都表示一個模式環(huán)。
圖10是NK的程序框圖,工作時首先使同步信號有效(36),即SYNi=1,然后處于等待接收CI命令及數據狀態(tài)(37),此處的數據是指NK執(zhí)行相應命令時需要CI提供的有關信息,接收到CI的命令及數據之后立即執(zhí)行相應的操作,(38)-(48)分別表示命令F1-F11規(guī)定的操作,詳見上述關于命令代碼的說明,NK在執(zhí)行完命令后總是回到等待接收CI命令及數據狀態(tài)(37)。
圖11是NK在搜索記存模式環(huán)時所執(zhí)行的程序框圖,與記存方法所描述的模式環(huán)搜索方法相對應。模式環(huán)搜索總是從離散時間t=0(49)開始,首先是初始化工作(50),這是記存方法中第2)項的要求,即清空本神經元輸出端的N-1組DPRAM,將本神經元狀態(tài)(向量)及初始序列h(0)i寫入其中,i為本神經元編號,h(0)=0;同步信號設置與查詢(51)是保證只有所有神經元都完成各自輸出端N-1組DPRAM的寫入后,才開始處理本神經元N-1組DPRAM中的序列;(52)、(53)、(54)分別實現記存方法中的第3)、4)、5)項,(55)、(56)、(57)實現記存方法中的第6)項,其中的RAM是指微處理單元NK內部或外接的隨機存儲器,(56)是保證只有所有神經元都處理完各自接收到的全部序列之后,才開始輸出端DPRAM的清空與寫入工作;(58)表示離散時間加1,(59)中如果t=N,則意味著序列已構成模式環(huán),故結束搜索,否則回到(51)進行下一次循環(huán);(60)使同步信號有效以便CI讀取索搜到的模式環(huán)。
圖12中使同步信號有效(61)、同步信號查詢(62)、使同步信號無效(63)的過程保證所有神經元的NK同步工作,即只有CI發(fā)出同步允許信號有效(ESYN=“1”),以及所有NK都使各自的同步信號有效(SYNi=“1”),圖6中的“與”運算電路輸出的網絡同步信號才會有效(SYN=“1”),(62)才會查詢到有效同步信號,使得NK只有在查詢到同步信號有效后,才能開始輸出端的DPRAM寫入或處理自身DPRAM中的內容,而(63)使同步信號無效的作用是為下一次同步作準備;必須指出,由于NK通過執(zhí)行程序來使同步信號從有效到無效需要一定的時間,故只要所有NK的運行速度相差不大,則每個NK都能夠及時查詢到有效同步信號,而不必擔心在此之前同步信號已變?yōu)闊o效。
圖13是回憶時NK搜索模式環(huán)所執(zhí)行的程序框圖,實現回憶方法中所描述的模式環(huán)搜索任務,(64)-(66)、(68)、(72)-(77)、(80)-(82)、(84)與圖11中相同方框的說明完全一樣,只是用于回憶過程而已;(64)、(65)實現回憶方法中0≤t<N階段的第2)項;(67)中只在設置禁止路徑時的回憶過程中,才有Rn≠0,目的是搜索存儲Ps的模式環(huán),因為此模式環(huán)必然包含以Rn表示的神經元為源神經元,以本神經元為目的神經元的連接;(68)實現回憶方法中0≤t<N階段的第3)項;(69)、(70)、(71)分別實現回憶方法中0≤t<N階段的第4)、5)、6)項;(72)-(74)實現回憶方法中0≤t<N階段的第7)項;(78)-(81)實現回憶方法中N≤t<2N階段的第1)、2)項;(83)中t=2N意味著神經元輸出序列所表示的模式環(huán)中不包含禁止路徑,其中存儲的模式不會是假模式,從而完成了模式環(huán)的搜索。
必須指出,圖6、圖7的硬件實現只涉及計算機硬件設計領域的常用技術,從事該領域的技術人員完全不需另外的創(chuàng)造性工作就能根據實施例完成本發(fā)明的硬件實現。無論是CI還是NK雖然是微處理單元,但其功能顯然比普通微處理器要簡單的多,因為它們只要求具備邏輯運算和整數加減運算能力,也就是說完全可以采用一般的微處理器;E2PROM可以用RAM替代,其中的數據可以長期存儲在外部設備中,需要時由CI一次性讀入即可;由于圖4中DPRAM的讀寫不是同時進行的,故也可以用普通RAM通過適當的邏輯組合來實現。
權利要求
1.一種聯想記憶神經網絡,采用Hopfield網絡拓撲結構,其特征在于神經元的狀態(tài)包含多個狀態(tài)分量,可表示為si=[si1,si2,…,siM]其中i=1,2,…,N,N為網絡中神經元的個數,si為神經元i的狀態(tài),sik∈{-1,0,1},其中-1、1是sik的狀態(tài),sik=0表示該分量的狀態(tài)不確定,k=1,2,…,M,M表示神經元狀態(tài)所包含的狀態(tài)分量個數,網絡中的每個連接存儲一個向量和一組禁止路徑,可表示為lij=[qij,wij]其中l(wèi)ij是神經元i到神經元j的連接,qij=[qij1,qij2,···,qijM]]]>是存儲在lij中的向量,qijk∈{-1,1},]]>k=1,2,…,M,Wij=[wij1,wij2,···,wijξ]]]>表示lij中存儲了ζ條禁止路徑,wijη表示其中的第η條禁止路徑,qij=0的連接為空連接,它是連接的初始狀態(tài),表示該連接還沒有被用來存儲向量,lij=qij表示lij中沒有存儲禁止路徑。
2.權利要求1中所述禁止路徑的表示方法如下設n1,n2,…,nl為神經元的編號,則wijη=n1]]>表示n1→i→j為禁止路徑,即由神經元n1出發(fā)經連接ln1i到神經元i再經連接lij到神經元j的這段路徑為禁止路徑,同理,wijη=n1n2···nl]]>表示的禁止路徑為n1→n2→…→nl→i→j。
3.權利要求1所述網絡的特征在于每個模式存儲在一個或多個模式環(huán)中,模式環(huán)是由網絡中N個連接和所有神經元組成的單向單環(huán)回路,其中“單向”是指回路中信號只能向一個方向傳遞,“單環(huán)”表示回路通過網絡中每個神經元一次,設p,q,r,s,…,t是神經元編號,且{p,q,r,s,…,t}={1,2,…,N},即等式兩邊的集合相等,則模式環(huán)可用連接表示為lpqlqrlrs…ltp模式環(huán)也可以直接用神經元編號表示為pqrs…tp,存儲在pqrs…tp中的模式P=[p1,p2,…,pM]可由下式得到 其中第二個等式左邊集合是將右邊集合中的元素按下標第一個數字由小到大重排的結果。
4.一種聯想記憶方法,這種方法由回憶方法和記存方法兩個部分組成,其特征在于要求網絡中傳遞和處理的信號是序列。
5.權利要求4所述序列的特征在于序列可表示為h(t)n0n1…nt,其中t是離散時間,ni(i=0,1,…,t)是神經元的編號,h(t)是附加信息,它表示該序列所經過的路徑中具有不同于源神經元狀態(tài)的連接的個數。
6.權利要求4所述回憶方法的特征在于回憶包括0≤t<N和N≤t<2N兩個階段;0≤t<N階段1)根據輸入模式P設置所有神經元的狀態(tài)S,即令sij=pji,i=1,2,…,N,j=1,2,…,M;2)網絡從t=0時刻開始運行,每個神經元發(fā)出一個僅含神經元自身編號的初始序列,且附加信息為0,即神經元i發(fā)出的初始序列為h(0)i,h(0)=0,i=1,2,…,N;3)任何序列只能到達同一個神經元不超過一次,例外情況是,當t=N-1時,序列中的第一個編號正好是所要到達的神經元的編號,即序列第二次到達該神經元時將構成一個模式環(huán);4)序列不能通過禁止路徑;5)序列不能通過空連接;6)如果連接的狀態(tài)與源神經元的狀態(tài)不同(比較二者狀態(tài)是否相同時,總是視源神經元中狀態(tài)不確定的分量與相應連接的狀態(tài)分量相同),則序列經過該連接時附加信息加1;7)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇L個序列(如果接收到的序列不足L個,則選擇全部這些序列),并在其中每個序列之后加上自身的編號從而將它們變?yōu)樾碌男蛄?,然后輸出這些新的序列;N≤t<2N階段1)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇并輸出L個序列(如果接收的序列不足L個,則選擇并輸出全部這些序列),如果是t=N,則在其中每個序列之后加上神經元自身的編號再輸出;2)序列只能在自身所表示的模式環(huán)中傳遞,即序列通過連接lij的條件是序列所表示的模式環(huán)中包含‘ninj’,即該序列曾經通過lij,同時序列所表示的模式環(huán)不包含存儲在lij中的任何禁止路徑。
7.權利要求4所述回憶方法的特征在于回憶時允許輸入不完整的模式。
8.權利要求4所述記存方法的特征在于包含以下9項規(guī)定1)根據待記存模式P設置所有神經元的狀態(tài)S,即令sij=pji,i=1,2,…,N,j=1,2,…,M;2)網絡開始運行的時刻規(guī)定為t=0,此時每個神經元發(fā)出一個僅含神經元自身編號的初始序列,且附加信息為0,即神經元i發(fā)出的初始序列為h(0)i,h(0)=0,i=1,2,…,N;3)序列不能通過與源神經元不同狀態(tài)的非空連接;4)任何序列只能到達同一個神經元不超過一次,例外情況是,當t=N-1時,序列中的第一個編號正好是所要到達的神經元的編號,即序列第二次到達該神經元時將構成一個模式環(huán);5)通過空連接的序列附加信息加1;6)每個神經元在接收到的序列中,按附加信息由小到大的順序選擇L個序列(如果接收到的序列不足L個,則選擇全部這些序列),并在其中每個序列之后加上神經元自身的編號從而將它們變?yōu)樾碌男蛄?,如果t<N,則輸出這些新的序列;7)填充空連接及撤銷禁止路徑a)當t=N時,任取其中附加信息最小者作為存儲待記存模式的模式環(huán);b)若此模式環(huán)中不存在空連接和禁止路徑,則終止記存過程;c)填充此模式環(huán)中的空連接,即將其中空連接的狀態(tài)逐一改變?yōu)橄鄳瓷窠浽臓顟B(tài),也就是將其中所有qij=0改變?yōu)閝ij=si;d)逐一撤銷該模式環(huán)包含的所有禁止路徑;e)每撤銷一條禁止路徑或每填充一個空連接之后,都要進行8),9)項要求的工作;8)搜索因填充空連接或撤銷禁止路徑而產生的所存儲的模式不是待記存模式P的模式環(huán)(為便于敘述,將其中存儲的模式表示為Ps),如果是搜索因填充某個空連接而產生的存儲Ps的模式環(huán),則暫時清空與該連接有相同目的神經元的其它連接,即設lnl-1nl是被填充狀態(tài)的連接,則令qknl=0,k=1,2,···,nl-2,nl+1,···,nN;]]>如果是搜索因撤銷禁止路徑而產生的存儲Ps的模式環(huán),則暫時清空所有與該禁止路徑中的連接有相同目的神經元的其他連接,即設被撤銷的禁止路徑為nl-γnl-γ+1…nl-2nl-1nl,則令 其中 表示k取1~N中除nl-γ、nl-γ+1外的所有整數,α、β及δ的表示方式與k一樣;令S=P,進入回憶過程,由回憶得到的所有力(2N)≠O的序列所表示的模式環(huán)就是存儲Ps的模式環(huán),然后恢復上述被清空的連接狀態(tài)9)在存儲Ps的模式環(huán)中設置禁止路徑,新設置的禁止路徑必須包含被填充狀態(tài)的連接或被撤銷的禁止路徑,具體方法如下設lnl-1nl是被填充狀態(tài)的連接,nl-1nl···nl+λnl+λ+11]]>是存儲二模式P的模式環(huán)中的部分路徑,nl-1nl···nl+λnl+λ+12]]>是存儲Ps的模式環(huán)中的部分二咯徑,則禁止路徑設置為wnl+λnl+λ+12q+1=nl-1nl···nl+λ-1]]>其中g表示連接lnl+λnl+λ+12]]>中已經存儲的禁止路徑條數;設被撤銷的禁止路徑為存儲在lnl-1nl中的nl-γnl-γ+l?!璶l-2nl-1nl,存儲待記存模式P的模式環(huán)中的部分路徑為nl-γnl-γ+1…nl-2nl-1nl…nl+λnl+λ+11。,存儲Ps的模式環(huán)中的部分路徑為nl-γnl-γ+1…nl-2nl-1nl…nl+λnl+λ+12門山門乙川,則禁止路徑設置為wnl+λnl+λ+12q+1=nl-γnl-γ+1···nl-2nl-1nl···nl+λ-1]]>其中g表示連接lnl+λnl+λ+12]]>中已經存儲的禁止路徑條數。
全文摘要
本發(fā)明涉及人工神經網絡,是一種聯想記憶神經網絡,此網絡實現了大存儲容量、完全消除了假模式、具有多模式回憶能力,同時具有較高的記憶可靠性;希望記憶的模式被存儲在網絡的一組連接中,這些連接構成一個通過網絡中所有神經元的單環(huán)回路;網絡中處理和傳遞的信號為主要由神經元編號組成的序列,神經元執(zhí)行一組處理這種序列的符號和邏輯運算;連接包括“連接狀態(tài)”和“禁止路徑”,前者用于存儲信息,后者用于抑制網絡中出現的假模式。
文檔編號G06N3/00GK1516070SQ0311352
公開日2004年7月28日 申請日期2003年1月8日 優(yōu)先權日2003年1月8日
發(fā)明者王劍, 毛宗源, 王 劍 申請人:王劍, 王 劍
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1