本發(fā)明涉及人工智能領(lǐng)域,特別涉及一種基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門設(shè)計(jì)方法。
背景技術(shù):
神經(jīng)計(jì)算是自然計(jì)算的重要分支之一,旨在將人類大腦神經(jīng)系統(tǒng)中存儲信息和智能處理信息的方式抽象為可執(zhí)行計(jì)算的模型。脈沖神經(jīng)膜系統(tǒng)是一類脈沖神經(jīng)網(wǎng)絡(luò)模型,是受人腦所蘊(yùn)含的計(jì)算智能啟發(fā)得到的高性能神經(jīng)計(jì)算模型。
現(xiàn)有技術(shù)的主要特點(diǎn)在于使用的神經(jīng)計(jì)算單元的種類太多,從而造成神經(jīng)電路的實(shí)現(xiàn)復(fù)雜,計(jì)算效率低,計(jì)算準(zhǔn)確率低。
技術(shù)實(shí)現(xiàn)要素:
為解決上述現(xiàn)有技術(shù)的不足,本發(fā)明提出了一種基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門設(shè)計(jì)方法,利用神經(jīng)元的級聯(lián),實(shí)現(xiàn)信息的傳遞和并行處理,最終實(shí)現(xiàn)執(zhí)行邏輯計(jì)算的功能,具有分布式并行的計(jì)算特性,可以為神經(jīng)電路的實(shí)現(xiàn)提供可行的計(jì)算模型。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
一種基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門設(shè)計(jì)方法,基于脈沖累加信息編碼方式,使用統(tǒng)一的神經(jīng)計(jì)算單元,統(tǒng)一神經(jīng)計(jì)算單元的激發(fā)表達(dá)式為a*/a→a,其中字母a表示脈沖,脈沖的累加表示為字母a的多重集,a*表示為任意數(shù)目的累加脈沖;a→a的含義為:“→”左邊的脈沖a表示消耗的脈沖數(shù)為1,“→”右邊的脈沖a表示傳遞給臨近神經(jīng)計(jì)算單元的脈沖數(shù)為1;a*/a→a的含義為:神經(jīng)計(jì)算單元中無論積累多少個脈沖,神經(jīng)計(jì)算單元都將激發(fā),每次消耗1個脈沖,向外發(fā)送1個脈沖,直至所包含的脈沖數(shù)目變?yōu)?;
邏輯異或門中,第一神經(jīng)計(jì)算單元in1接收第一輸入信號,第二神經(jīng)計(jì)算單元in2接收第二輸入信號;第一神經(jīng)計(jì)算單元in1使用a*/a→a激發(fā)方式,通過突觸向第五神經(jīng)計(jì)算單元3發(fā)送脈沖;第二神經(jīng)計(jì)算單元in2使用a*/a→a激發(fā)方式,通過突觸向第六神經(jīng)計(jì)算單元4發(fā)送脈沖;第三神經(jīng)計(jì)算單元1使用a*/a→a激發(fā)方式,通過突觸向第五神經(jīng)計(jì)算單元3發(fā)送二次,每次一個脈沖;第四神經(jīng)計(jì)算單元2使用a*/a→a激發(fā)方式,通過突觸向第六神經(jīng)計(jì)算單元4發(fā)送三次,每次一個脈沖;所述第五神經(jīng)計(jì)算單元3使用a*/a→a激發(fā)方式,通過突觸向第七神經(jīng)計(jì)算單元out發(fā)送脈沖;所述第六神經(jīng)計(jì)算單元4使用a*/a→a激發(fā)方式,通過突觸向第七神經(jīng)計(jì)算單元out發(fā)送脈沖;
第一信息過濾單元ast1分別與第二神經(jīng)計(jì)算單元in2、第四神經(jīng)計(jì)算單元2到第六神經(jīng)計(jì)算單元4的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較;
第二信息過濾單元ast2分別與第一神經(jīng)計(jì)算單元in1、第三神經(jīng)計(jì)算單元1到第五神經(jīng)計(jì)算單元3的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較;
第三信息過濾單元ast3分別與第五神經(jīng)計(jì)算單元3、第六神經(jīng)計(jì)算單元4到第七神經(jīng)計(jì)算單元out的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較;
情況1:如果正在傳遞的脈沖數(shù)目大于信息過濾單元的閾值t=2,那么這些脈沖將被信息過濾單元進(jìn)行過濾移除,此時脈沖無法通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元;
情況2:如果正在傳遞的脈沖數(shù)目小于信息過濾單元的閾值t=2,那么這些脈沖將順利通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元;
本發(fā)明的有益效果是:
(1)將構(gòu)造邏輯異或門使用的神經(jīng)計(jì)算單元種類降至最少的1種,這有助于利用統(tǒng)一的神經(jīng)計(jì)算單元實(shí)現(xiàn)神經(jīng)電路;
(2)利用神經(jīng)元的級聯(lián),實(shí)現(xiàn)信息的傳遞和并行處理,最終實(shí)現(xiàn)執(zhí)行邏輯計(jì)算的功能,具有分布式并行的計(jì)算特性,可以為神經(jīng)電路的實(shí)現(xiàn)提供可行的計(jì)算模型。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明的神經(jīng)計(jì)算單元的示意圖;
圖2為本發(fā)明的信息過濾單元的示意圖;
圖3為本發(fā)明的邏輯異或門的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明提出了一種基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門設(shè)計(jì)方法,基于脈沖累加信息編碼方式,使用統(tǒng)一神經(jīng)計(jì)算單元(也稱為勻質(zhì)神經(jīng)計(jì)算單元),輔以1類信息過濾單元,通過神經(jīng)計(jì)算單元和信息過濾單元的級聯(lián)實(shí)現(xiàn)了邏輯異或門的計(jì)算過程。
如圖1所示,統(tǒng)一神經(jīng)計(jì)算單元的激發(fā)表達(dá)式表示為a*/a→a,其中以字母a表示脈沖,脈沖的累加表示為字母a的多重集(如k個脈沖的累加表示為ak)。上述激發(fā)表達(dá)式中,a*表示為任意數(shù)目的累加脈沖;a→a的含義為:“→”左邊的脈沖a表示消耗的脈沖數(shù)為1,“→”右邊的脈沖a表示傳遞給臨近神經(jīng)元的脈沖數(shù)為1;a*/a→a的含義為:神經(jīng)計(jì)算單元中無論積累多少個脈沖,神經(jīng)元都將激發(fā),每次消耗1個脈沖,向外發(fā)送1個脈沖,直至所包含的脈沖數(shù)目變?yōu)?。
如圖2所示,信息過濾單元與多條突觸連接,突觸是連接神經(jīng)計(jì)算單元和脈沖傳遞的通道。某一時刻,該神經(jīng)過濾單元連接的突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值進(jìn)行比較:
情況1:如果正在傳遞的脈沖數(shù)目大于等于信息過濾單元的閾值t=2,那么這些脈沖將被信息過濾單元進(jìn)行過濾移除,此時脈沖無法通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元;
情況2:如果正在傳遞的脈沖數(shù)目小于信息過濾單元的閾值t=2,那么這些脈沖將順利通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元。
本發(fā)明采取脈沖累加的方式對信息進(jìn)行編碼。若讀取數(shù)字為1,則神經(jīng)計(jì)算單元輸入2個脈沖a2;若讀取數(shù)字為0,則神經(jīng)計(jì)算單元輸入1個脈沖a。基于脈沖神經(jīng)膜系統(tǒng)構(gòu)建的邏輯異或門的計(jì)算結(jié)果編碼為脈沖形式:若計(jì)算結(jié)果為1,則系統(tǒng)終值計(jì)算時發(fā)送出2個脈沖;若計(jì)算結(jié)果為0,則系統(tǒng)終值計(jì)算時發(fā)送出1個脈沖。
本發(fā)明基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門如圖3所示,第一神經(jīng)計(jì)算單元in1接收第一輸入信號,第二神經(jīng)計(jì)算單元in2接收第二輸入信號;第一神經(jīng)計(jì)算單元in1使用a*/a→a激發(fā)方式,通過突觸向第五神經(jīng)計(jì)算單元3發(fā)送脈沖;第二神經(jīng)計(jì)算單元in2使用a*/a→a激發(fā)方式,通過突觸向第六神經(jīng)計(jì)算單元4發(fā)送脈沖;第三神經(jīng)計(jì)算單元1使用a*/a→a激發(fā)方式,通過突觸向第五神經(jīng)計(jì)算單元3發(fā)送二次,每次一個脈沖;第四神經(jīng)計(jì)算單元2使用a*/a→a激發(fā)方式,通過突觸向第六神經(jīng)計(jì)算單元4發(fā)送三次,每次一個脈沖;所述第五神經(jīng)計(jì)算單元3使用a*/a→a激發(fā)方式,通過突觸向第七神經(jīng)計(jì)算單元out發(fā)送脈沖;所述第六神經(jīng)計(jì)算單元4使用a*/a→a激發(fā)方式,通過突觸向第七神經(jīng)計(jì)算單元out發(fā)送脈沖。
第一信息過濾單元ast1分別與第二神經(jīng)計(jì)算單元in2、第四神經(jīng)計(jì)算單元2到第六神經(jīng)計(jì)算單元4的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較。
第二信息過濾單元ast2分別與第一神經(jīng)計(jì)算單元in1、第三神經(jīng)計(jì)算單元1到第五神經(jīng)計(jì)算單元3的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較。
第三信息過濾單元ast3分別與第五神經(jīng)計(jì)算單元3、第六神經(jīng)計(jì)算單元4到第七神經(jīng)計(jì)算單元out的二條突觸連接,將突觸上正在傳遞的脈沖數(shù)目與其預(yù)設(shè)的閾值t=2進(jìn)行比較。
情況1:如果正在傳遞的脈沖數(shù)目大于等于信息過濾單元的閾值t=2,那么這些脈沖將被信息過濾單元進(jìn)行過濾移除,此時脈沖無法通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元;
情況2:如果正在傳遞的脈沖數(shù)目小于信息過濾單元的閾值t=2,那么這些脈沖將順利通過突觸到達(dá)目標(biāo)神經(jīng)計(jì)算單元。
下面給出本發(fā)明邏輯異或門計(jì)算過程的一個具體實(shí)施例,以輸入為x1=0和x2=0為例:
以輸入為x1=0和x2=0為例,則第一神經(jīng)計(jì)算單元in1和第二神經(jīng)計(jì)算單元in2分別收到1個脈沖。第一神經(jīng)計(jì)算單元in1和第三神經(jīng)計(jì)算單元1分別使用a*/a→a激發(fā),向第五神經(jīng)計(jì)算單元3發(fā)送2個脈沖。第二信息過濾單元ast2分別與第一神經(jīng)計(jì)算單元in1、第三神經(jīng)計(jì)算單元1到第六神經(jīng)計(jì)算單元4的二條突觸連接上。由于第二信息過濾單元ast2的閾值為2,而且這兩條突觸上傳遞的脈沖數(shù)為2恰好等于第三信息過濾單元ast3的閾值,因此這2個脈沖將被過濾掉,無法到達(dá)第五神經(jīng)計(jì)算單元3。第三神經(jīng)計(jì)算單元1剩余1個脈沖(收到2個脈沖,消耗1個脈沖)。第二神經(jīng)計(jì)算單元in2和第四神經(jīng)計(jì)算單元2分別使用a*/a→a激發(fā),向第六神經(jīng)計(jì)算單元4發(fā)送2個脈沖。第一信息過濾單元ast1分別與第二神經(jīng)計(jì)算單元in2、第四神經(jīng)計(jì)算單元2到第六神經(jīng)計(jì)算單元4的二條突觸連接上。由于第二信息過濾單元ast2的閾值為2,而且其所連接的突觸上傳遞脈沖數(shù)為2恰好等于第三信息過濾單元ast3的閾值,因此這2個脈沖將被過濾掉,無法到達(dá)第六神經(jīng)計(jì)算單元4。第四神經(jīng)計(jì)算單元1剩余2個脈沖(包含3個脈沖,消耗1個脈沖)。第三神經(jīng)計(jì)算單元1剩余1個脈沖,將通過使用a*/a→a再次激發(fā),發(fā)送1個脈沖至第五神經(jīng)元。第四神經(jīng)計(jì)算單元2剩余2個脈沖,將通過使用a*/a→a再次激發(fā)(消耗1個脈沖,剩余1個脈沖),發(fā)送1個脈沖至第六神經(jīng)元4。第五神經(jīng)計(jì)算單元3和第六神經(jīng)計(jì)算單元4,分別向第七神經(jīng)計(jì)算單元out發(fā)送1個脈沖。第三信息過濾單元ast3分別與第五神經(jīng)計(jì)算單元3、第六神經(jīng)計(jì)算單元4到第七神經(jīng)計(jì)算單元out的二條突觸連接。由于第三信息過濾單元ast3的閾值為2,而且這兩條突觸傳遞的脈沖數(shù)為2恰好等于第三信息過濾單元ast3的閾值,因此這2個脈沖將被過濾掉,無法到達(dá)第七神經(jīng)計(jì)算單元out。第四神經(jīng)計(jì)算單元剩余1個脈沖,它將通過使用a*/a→a第三次激發(fā),發(fā)送1個脈沖至第六神經(jīng)計(jì)算單元4。通過接收這個脈沖,第六神經(jīng)計(jì)算單元4也將再次激發(fā),發(fā)送1個脈沖至第七神經(jīng)計(jì)算單元out。第七神經(jīng)計(jì)算單元out通過使用a*/a→a激發(fā)方式,向環(huán)境發(fā)送1個脈沖,表示系統(tǒng)輸入為x1=0和x2=0,計(jì)算結(jié)果為0。
類似的,當(dāng)輸入為x1=0,x2=1和x1=1,x2=0時,計(jì)算結(jié)果為1;x1=1,x2=1時,計(jì)算結(jié)果為0。
本發(fā)明基于脈沖神經(jīng)膜系統(tǒng)和勻質(zhì)神經(jīng)細(xì)胞的邏輯異或門設(shè)計(jì)方法,將構(gòu)造邏輯異或門使用的神經(jīng)計(jì)算單元種類降至最少的1種,這有助于利用統(tǒng)一的神經(jīng)計(jì)算單元實(shí)現(xiàn)神經(jīng)電路;利用神經(jīng)元的級聯(lián),實(shí)現(xiàn)信息的傳遞和并行處理,最終實(shí)現(xiàn)執(zhí)行邏輯計(jì)算的功能,具有分布式并行的計(jì)算特性,可以為神經(jīng)電路的實(shí)現(xiàn)提供可行的計(jì)算模型。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。