本發(fā)明涉及人工神經(jīng)網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別是涉及人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法和系統(tǒng)。
背景技術(shù):
如今的人工神經(jīng)網(wǎng)絡(luò)研究絕大多數(shù)仍是在馮·諾依曼計(jì)算機(jī)軟件并搭配高性能GPGPU(General Purpose Graphic Processing Units通用圖形處理單元)平臺(tái)中實(shí)現(xiàn)的,整個(gè)過(guò)程的硬件開銷、能耗和信息處理速度都不容樂(lè)觀。為此,近幾年神經(jīng)形態(tài)計(jì)算領(lǐng)域迅猛發(fā)展,即采用硬件電路直接構(gòu)建神經(jīng)網(wǎng)絡(luò)從而模擬大腦的功能,試圖實(shí)現(xiàn)大規(guī)模并行、低能耗、可支撐復(fù)雜模式學(xué)習(xí)的計(jì)算平臺(tái)。
然而,傳統(tǒng)的神經(jīng)形態(tài)系統(tǒng)中,神經(jīng)網(wǎng)絡(luò)的主要有兩種形態(tài),一種為脈沖神經(jīng)網(wǎng)絡(luò),一種人工神經(jīng)網(wǎng)絡(luò),兩者對(duì)同樣的輸入信息有著不同的表達(dá)方式,導(dǎo)致人工神經(jīng)網(wǎng)絡(luò)和脈沖神經(jīng)網(wǎng)絡(luò)因處理的信息不同而不能兼容。
技術(shù)實(shí)現(xiàn)要素:
基于此,有必要針對(duì)兩種不同的神經(jīng)網(wǎng)絡(luò)輸入的信息不兼容的問(wèn)題,提供一種人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法和系統(tǒng),所述方法包括:
接收前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息;
判斷所述人工神經(jīng)元輸入信息的輸入模式,當(dāng)所述輸入模式為持續(xù)輸入時(shí),利用第一轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第一脈沖神經(jīng)元信息,并輸出所述第一脈沖神經(jīng)元信息;
當(dāng)所述輸入模式為單次輸入時(shí),利用第二轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第二脈沖神經(jīng)元信息,并輸出所述第二脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述當(dāng)所述輸入模式為持續(xù)輸入時(shí),利用第一轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第一脈沖神經(jīng)元信息,包括:
將第一時(shí)間窗等間隔劃分為多個(gè)時(shí)間步;
在所述第一時(shí)間窗內(nèi)的第一個(gè)時(shí)間步,當(dāng)所述人工神經(jīng)元輸入信息大于等于脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并根據(jù)所述人工神經(jīng)元輸入信息和發(fā)射遞減值,獲取神經(jīng)元發(fā)射后信息;當(dāng)所述人工神經(jīng)元輸入信息小于所述脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述人工神經(jīng)元輸入信息確定為神經(jīng)元未發(fā)射信息;
將所述神經(jīng)元發(fā)射后信息或所述神經(jīng)元未發(fā)射信息,確認(rèn)為所述第一個(gè)時(shí)間步的神經(jīng)元中間信息;
在所述第一時(shí)間窗內(nèi)的后續(xù)各時(shí)間步,分別根據(jù)所述人工神經(jīng)元輸入信息、前一個(gè)時(shí)間步的所述神經(jīng)元中間信息、所述脈沖發(fā)射閾值和所述發(fā)射遞減值,判斷是否發(fā)射脈沖尖峰信息;
將所述第一時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確定為第一脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述人工神經(jīng)元輸入信息、前一個(gè)時(shí)間步的所述神經(jīng)元中間信息、所述脈沖發(fā)射閾值和所述發(fā)射遞減值,判斷是否發(fā)射脈沖尖峰信息,包括:
將所述人工神經(jīng)元輸入信息和所述前一個(gè)時(shí)間步的所述神經(jīng)元中間信息進(jìn)行累加,獲取當(dāng)前時(shí)間步的神經(jīng)元累加信息;
當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息大于等于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息減去所述預(yù)設(shè)的發(fā)射遞減值,獲取當(dāng)前時(shí)間步的神經(jīng)元發(fā)射后信息;
當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息小于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息確定為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息。
在其中一個(gè)實(shí)施例中,所述當(dāng)所述輸入模式為單次輸入時(shí),利用第二轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第二脈沖神經(jīng)元信息,包括:
根據(jù)所述人工神經(jīng)元輸入信息和第二時(shí)間窗,確定所述第二時(shí)間窗內(nèi)的第四時(shí)長(zhǎng);
在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,并將所述第二時(shí)間窗內(nèi)所有的所述脈沖尖峰信息確認(rèn)為第二脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,包括:
在所述第四時(shí)長(zhǎng)內(nèi)連續(xù)發(fā)射脈沖尖峰信息。
在其中一個(gè)實(shí)施例中,通過(guò)判斷接收到的前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息的輸入模式,將輸入模式為持續(xù)輸入或單次輸入的人工神經(jīng)元輸入信息,別分采用不同的轉(zhuǎn)換模式,轉(zhuǎn)換為脈沖神經(jīng)元信息。本實(shí)施例不但能夠?qū)⑷斯ど窠?jīng)元輸入信息轉(zhuǎn)換為脈沖神經(jīng)元信息,而且能夠兼容不同的人工神經(jīng)元輸入信息的輸入模式,提高了神經(jīng)網(wǎng)絡(luò)對(duì)于人工神經(jīng)元輸入信息和脈沖神經(jīng)元輸入信息的兼容性。
在其中一個(gè)實(shí)施例中,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為持續(xù)輸入時(shí),通過(guò)將時(shí)間窗等間隔劃分為時(shí)間步,在第一個(gè)時(shí)間步,根據(jù)所述人工神經(jīng)元輸入信息和脈沖發(fā)射閾值進(jìn)行比較,確定是否發(fā)射脈沖尖峰信息,并獲取第一個(gè)時(shí)間步的神經(jīng)元中間信息,在后續(xù)的各時(shí)間步,則根據(jù)所述人工神經(jīng)元輸入信息、脈沖發(fā)射閾值和發(fā)射遞減值,確定是否發(fā)射脈沖尖峰信息,最后將所述時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確認(rèn)為轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)在時(shí)間窗內(nèi),利用脈沖發(fā)射閾值和發(fā)射遞減值,控制是否根據(jù)所述人工神經(jīng)元輸入信息發(fā)射脈沖尖峰信號(hào)的方式,可以將所述人工神經(jīng)元輸入信息,根據(jù)不同的需求,通過(guò)調(diào)整脈沖發(fā)射閾值和發(fā)射遞減值的方式,給出不同的脈沖神經(jīng)元信息轉(zhuǎn)換結(jié)果,實(shí)施方式簡(jiǎn)單。
在其中一個(gè)實(shí)施例中,根據(jù)所述人工神經(jīng)元輸入信息,確定一個(gè)時(shí)間窗內(nèi)的發(fā)射脈沖尖峰信息的時(shí)長(zhǎng),并根據(jù)發(fā)射的所述脈沖尖峰信息,確定轉(zhuǎn)換后的額脈沖神經(jīng)元信息,本實(shí)施例,用一定時(shí)間窗內(nèi)的脈沖尖峰信息的個(gè)數(shù),或所述發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)和時(shí)間窗內(nèi)未發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)的比值,確定轉(zhuǎn)換后的脈沖神經(jīng)元信息,實(shí)現(xiàn)方式簡(jiǎn)單。
本發(fā)明還提供一種人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng),包括:
人工神經(jīng)元輸入信息接收模塊,用于接收前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息;
第一轉(zhuǎn)換模塊,用于判斷所述人工神經(jīng)元輸入信息的輸入模式,當(dāng)所述輸入模式為持續(xù)輸入時(shí),利用第一轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第一脈沖神經(jīng)元信息;
脈沖神經(jīng)元信息輸出模塊,用于輸出所述第一脈沖神經(jīng)元信息;
第二轉(zhuǎn)換模塊,用于當(dāng)所述輸入模式為單次輸入時(shí),利用第二轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第二脈沖神經(jīng)元信息;
所述脈沖神經(jīng)元信息輸出模塊,用于輸出第二脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述第一轉(zhuǎn)換模塊,包括:
時(shí)間步劃分單元,用于將第一時(shí)間窗等間隔劃分為多個(gè)時(shí)間步;
第一時(shí)間步處理單元,用于在所述第一時(shí)間窗內(nèi)的第一個(gè)時(shí)間步,當(dāng)所述人工神經(jīng)元輸入信息大于等于脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并根據(jù)所述人工神經(jīng)元輸入信息和發(fā)射遞減值,獲取神經(jīng)元發(fā)射后信息;當(dāng)所述人工神經(jīng)元輸入信息小于所述脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述人工神經(jīng)元輸入信息確定為神經(jīng)元未發(fā)射信息;將所述神經(jīng)元發(fā)射后信息或所述神經(jīng)元未發(fā)射信息,確認(rèn)為所述第一個(gè)時(shí)間步的神經(jīng)元中間信息;
后續(xù)時(shí)間步處理單元,用于在所述第一時(shí)間窗內(nèi)的后續(xù)各時(shí)間步,分別根據(jù)所述人工神經(jīng)元輸入信息、前一個(gè)時(shí)間步的所述神經(jīng)元中間信息、所述脈沖發(fā)射閾值和所述發(fā)射遞減值,判斷是否發(fā)射脈沖尖峰信息;
第一脈沖神經(jīng)元信息確定單元,用于將所述第一時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確定為第一脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述后續(xù)時(shí)間步處理單元,用于將所述人工神經(jīng)元輸入信息和所述前一個(gè)時(shí)間步的所述神經(jīng)元中間信息進(jìn)行累加,獲取當(dāng)前時(shí)間步的神經(jīng)元累加信息;
當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息大于等于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息減去所述預(yù)設(shè)的發(fā)射遞減值,獲取當(dāng)前時(shí)間步的神經(jīng)元發(fā)射后信息;
當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息小于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息確定為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息。
在其中一個(gè)實(shí)施例中,所述第二轉(zhuǎn)換模塊,用于根據(jù)所述人工神經(jīng)元輸入信息和第二時(shí)間窗,確定所述第二時(shí)間窗內(nèi)的第四時(shí)長(zhǎng);
在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,并將所述第二時(shí)間窗內(nèi)所有的所述脈沖尖峰信息確認(rèn)為第二脈沖神經(jīng)元信息。
在其中一個(gè)實(shí)施例中,所述在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,包括:
在所述第四時(shí)長(zhǎng)內(nèi)連續(xù)發(fā)射脈沖尖峰信息。
在其中一個(gè)實(shí)施例中,通過(guò)判斷接收到的前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息的輸入模式,將輸入模式為持續(xù)輸入或單次輸入的人工神經(jīng)元輸入信息,別分采用不同的轉(zhuǎn)換模式,轉(zhuǎn)換為脈沖神經(jīng)元信息。本實(shí)施例不但能夠?qū)⑷斯ど窠?jīng)元輸入信息轉(zhuǎn)換為脈沖神經(jīng)元信息,而且能夠兼容不同的人工神經(jīng)元輸入信息的輸入模式,提高了神經(jīng)網(wǎng)絡(luò)對(duì)于人工神經(jīng)元輸入信息和脈沖神經(jīng)元輸入信息的兼容性。
在其中一個(gè)實(shí)施例中,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為持續(xù)輸入時(shí),通過(guò)將時(shí)間窗等間隔劃分為時(shí)間步,在第一個(gè)時(shí)間步,根據(jù)所述人工神經(jīng)元輸入信息和脈沖發(fā)射閾值進(jìn)行比較,確定是否發(fā)射脈沖尖峰信息,并獲取第一個(gè)時(shí)間步的神經(jīng)元中間信息,在后續(xù)的各時(shí)間步,則根據(jù)所述人工神經(jīng)元輸入信息、脈沖發(fā)射閾值和發(fā)射遞減值,確定是否發(fā)射脈沖尖峰信息,最后將所述時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確認(rèn)為轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)在時(shí)間窗內(nèi),利用脈沖發(fā)射閾值和發(fā)射遞減值,控制是否根據(jù)所述人工神經(jīng)元輸入信息發(fā)射脈沖尖峰信號(hào)的方式,可以將所述人工神經(jīng)元輸入信息,根據(jù)不同的需求,通過(guò)調(diào)整脈沖發(fā)射閾值和發(fā)射遞減值的方式,給出不同的脈沖神經(jīng)元信息轉(zhuǎn)換結(jié)果,實(shí)施方式簡(jiǎn)單。
在其中一個(gè)實(shí)施例中,根據(jù)所述人工神經(jīng)元輸入信息,確定一個(gè)時(shí)間窗內(nèi)的發(fā)射脈沖尖峰信息的時(shí)長(zhǎng),并根據(jù)發(fā)射的所述脈沖尖峰信息,確定轉(zhuǎn)換后的額脈沖神經(jīng)元信息,本實(shí)施例,用一定時(shí)間窗內(nèi)的脈沖尖峰信息的個(gè)數(shù),或所述發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)和時(shí)間窗內(nèi)未發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)的比值,確定轉(zhuǎn)換后的脈沖神經(jīng)元信息,實(shí)現(xiàn)方式簡(jiǎn)單。
附圖說(shuō)明
圖1為一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的流程示意圖;
圖2為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的流程示意圖;
圖3為一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的流程示意圖;
圖4為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的流程示意圖;
圖5一個(gè)實(shí)施例的實(shí)現(xiàn)人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的計(jì)算核的結(jié)構(gòu)示意圖;
圖6為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法中第一脈沖神經(jīng)元信息的示意圖;
圖7為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng)的結(jié)構(gòu)示意圖;
圖8為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng)中第一轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖;
圖9為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法中第二脈沖神經(jīng)元信息的示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1為一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法的流程示意圖,如圖1所示的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法包括:
步驟S100,接收前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息。
具體地,脈沖神經(jīng)網(wǎng)絡(luò)神經(jīng)元之間的連接采用Spike(1比特)實(shí)現(xiàn),并帶有一定的時(shí)間深度。在一定的時(shí)間范圍內(nèi),脈沖發(fā)放的頻率和模式代表著不同的信息。人工神經(jīng)網(wǎng)絡(luò)的神經(jīng)元之間的連接采用多比特量(例如8比特)實(shí)現(xiàn),且沒(méi)有時(shí)間深度。當(dāng)一個(gè)神經(jīng)網(wǎng)路處理的任務(wù),即需要處理脈沖神經(jīng)網(wǎng)絡(luò)信息,也需要處理脈沖神經(jīng)網(wǎng)絡(luò)信息時(shí),兩種不同的神經(jīng)網(wǎng)絡(luò)輸出的信息不兼容。
所述接收前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息,包括采用多比特量(例如8比特量)實(shí)現(xiàn)的,不具有時(shí)間深度的神經(jīng)元輸入信號(hào),是所述前繼人工神經(jīng)元輸入的膜電位。
步驟S200,判斷所述人工神經(jīng)元輸入信息的輸入模式,當(dāng)所述輸入模式為持續(xù)輸入時(shí),接步驟S300a,當(dāng)所述輸入模式為單次輸入時(shí),跳至步驟S300b。
具體地,所述前繼人工神經(jīng)元輸入的膜電位,有兩種輸入模式,一直為持續(xù)輸入模式,即在預(yù)設(shè)的輸入時(shí)段內(nèi),保持所述的膜電位的輸入不變,另一種為單次的輸入,即所述膜電位的輸入,不是持續(xù)一段時(shí)間的輸入,而是在某設(shè)定好的輸出時(shí)刻進(jìn)行單次輸入。
步驟S300a,利用第一轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第一脈沖神經(jīng)元信息。
具體地,所述第一轉(zhuǎn)換模式,用于將持續(xù)輸入的人工神經(jīng)元輸入信息,根據(jù)膜電位持續(xù)輸入的特征,轉(zhuǎn)換為第一脈沖神經(jīng)元信息,如利用高于預(yù)設(shè)發(fā)射閾值的膜電位的釋放動(dòng)作發(fā)送脈沖信號(hào),并進(jìn)行釋放后的膜電位累積以判斷是否繼續(xù)釋放從而發(fā)送脈沖信號(hào)。
步驟S300b,利用第二轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第二脈沖神經(jīng)元信息。
具體地,所述第二轉(zhuǎn)換模式,用于將單次輸入的所述人工神經(jīng)元輸入信息,利用單次輸入的特征,轉(zhuǎn)換為第二脈沖神經(jīng)元信息,如利用設(shè)定的脈沖信號(hào)發(fā)送頻率和人工神經(jīng)元膜電位之間的對(duì)應(yīng)關(guān)系,確定不同的脈沖信號(hào)的發(fā)送頻率表達(dá)不同的人工神經(jīng)元膜電位信息,或利用預(yù)設(shè)時(shí)段內(nèi)的固定發(fā)送頻率的脈沖信號(hào)的發(fā)送時(shí)長(zhǎng)和預(yù)設(shè)時(shí)段的時(shí)長(zhǎng)的比值,來(lái)表示人工神經(jīng)元膜電位信息。
步驟S400,輸出所述第一脈沖神經(jīng)元信息或第二脈沖神經(jīng)元信息。
在神經(jīng)網(wǎng)絡(luò)的具體實(shí)現(xiàn)中,如圖5所示,本發(fā)明的方法通過(guò)一個(gè)計(jì)算核來(lái)實(shí)現(xiàn),其中,計(jì)算核接收前繼ANN(人工神經(jīng)網(wǎng)絡(luò))輸入的人工神經(jīng)元輸入信息,將其轉(zhuǎn)換為SNN(脈沖神經(jīng)網(wǎng)絡(luò))信息后,發(fā)送給后續(xù)的SNN網(wǎng)路使用。在計(jì)算核中,軸突模塊輸入用于接收人工神經(jīng)元輸入信息,樹突模塊用于具體地信號(hào)的累計(jì)計(jì)算,包括積分計(jì)算等,胞體模塊發(fā)放用于發(fā)放轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)神經(jīng)核的計(jì)算和處理,將前繼的ANN網(wǎng)絡(luò)和后續(xù)的SNN網(wǎng)絡(luò)進(jìn)行了無(wú)縫連接。
在本實(shí)施例中,通過(guò)判斷接收到的前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息的輸入模式,將輸入模式為持續(xù)輸入或單次輸入的人工神經(jīng)元輸入信息,別分采用不同的轉(zhuǎn)換模式,轉(zhuǎn)換為脈沖神經(jīng)元信息。本實(shí)施例不但能夠?qū)⑷斯ど窠?jīng)元輸入信息轉(zhuǎn)換為脈沖神經(jīng)元信息,而且能夠兼容不同的人工神經(jīng)元輸入信息的輸入模式,提高了神經(jīng)網(wǎng)絡(luò)對(duì)于人工神經(jīng)元輸入信息和脈沖神經(jīng)元輸入信息的兼容性。
圖2為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法中,第一轉(zhuǎn)換模式下的方法的流程示意圖,如圖2所示的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法包括:
步驟S310a,將第一時(shí)間窗等間隔劃分為多個(gè)時(shí)間步。
具體地,所述第一轉(zhuǎn)換模式,為根據(jù)持續(xù)輸入的人工神經(jīng)元輸入信息轉(zhuǎn)換脈沖神經(jīng)元信息,根據(jù)所述持續(xù)輸入的特征,將時(shí)長(zhǎng)為第一時(shí)長(zhǎng)的第一時(shí)間窗,等間隔劃分為時(shí)長(zhǎng)為第二時(shí)長(zhǎng)的時(shí)間步,在每個(gè)時(shí)間步判斷是否發(fā)送脈沖尖峰信號(hào),然后將整個(gè)時(shí)間發(fā)送的脈沖尖峰信號(hào),確定為轉(zhuǎn)換后的脈沖神經(jīng)元信息即可。本實(shí)施例中給出的轉(zhuǎn)換模式,轉(zhuǎn)換出的脈沖尖峰信息,也是等間隔的。
步驟S320a,在所述第一時(shí)間窗內(nèi)的第一個(gè)時(shí)間步,當(dāng)所述人工神經(jīng)元輸入信息大于等于脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并根據(jù)所述人工神經(jīng)元輸入信息和發(fā)射遞減值,獲取神經(jīng)元發(fā)射后信息;當(dāng)所述人工神經(jīng)元輸入信息小于所述脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述人工神經(jīng)元輸入信息確定為神經(jīng)元未發(fā)射信息。
具體地,根據(jù)預(yù)設(shè)的脈沖發(fā)射閾值,在第一個(gè)時(shí)間步內(nèi),所述人工神經(jīng)元輸入信息大于等于脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,小于所述脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖端信息。
當(dāng)發(fā)射脈沖尖峰信息時(shí),將所述人工神經(jīng)元輸入信息減去發(fā)射遞減值后,獲取一個(gè)神經(jīng)元發(fā)射后信息的信息,所述神經(jīng)元發(fā)射后信息的膜電位值小于所述人工神經(jīng)元輸入信息的膜電位值。
當(dāng)不發(fā)射脈沖尖峰信息時(shí),所述人工神經(jīng)元輸入信息,不和所述的發(fā)射遞減值進(jìn)行計(jì)算。
如圖6所示,將一個(gè)時(shí)間窗等間隔劃分為時(shí)間步后,在第一個(gè)時(shí)間步,發(fā)放時(shí),根據(jù)膜電位值Vj與脈沖發(fā)射閾值Vth的關(guān)系,判定是否發(fā)放:
其中,F(xiàn)ire=1表示發(fā)射脈沖尖峰信息,F(xiàn)ire=0表示不發(fā)射脈沖尖峰信息,Vj為當(dāng)前時(shí)間步j(luò)的膜電位信息,Vth為脈沖發(fā)射閾值。
若Fire=1,則Vx=Vj-ΔV,其中Vx為當(dāng)前時(shí)間步的神經(jīng)元發(fā)射后信息;
若Fire=0,則Vy=Vj,其中Vy為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息。
步驟S330a,將所述神經(jīng)元發(fā)射后信息或所述神經(jīng)元未發(fā)射信息,確認(rèn)為所述第一個(gè)時(shí)間步的神經(jīng)元中間信息。
具體地,在所述時(shí)間窗的后續(xù)時(shí)間步中,第一個(gè)時(shí)間步獲取到的神經(jīng)元未發(fā)射信息和神經(jīng)元未發(fā)射信息,均作為第一個(gè)時(shí)間步的神經(jīng)元中間信息,參加后續(xù)時(shí)間步的計(jì)算。
將神經(jīng)元發(fā)射后信息Vx和神經(jīng)元未發(fā)射信息Vy為當(dāng)前時(shí)間步的神經(jīng)元中間信息Vi。
步驟S340a,在所述第一時(shí)間窗內(nèi)的后續(xù)各時(shí)間步,分別根據(jù)所述人工神經(jīng)元輸入信息、前一個(gè)時(shí)間步的所述神經(jīng)元中間信息、所述脈沖發(fā)射閾值和所述發(fā)射遞減值,判斷是否發(fā)射脈沖尖峰信息。
具體地,在后續(xù)的各時(shí)間步,要分別根據(jù)人工神經(jīng)元輸入信息,和所述第一個(gè)時(shí)間步的神經(jīng)元中間信息,判斷是否發(fā)射脈沖尖峰信息。
步驟S350a,將所述第一時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確定為第一脈沖神經(jīng)元信息。
具體地,當(dāng)一個(gè)時(shí)間窗內(nèi)的時(shí)間步都完成脈沖尖峰信息發(fā)射或不發(fā)射的動(dòng)作后,將所述時(shí)間窗內(nèi)發(fā)射的所有的脈沖尖峰信息,確定為所述第一時(shí)間窗的第一脈沖神經(jīng)元信息。
在本實(shí)施例中,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為持續(xù)輸入時(shí),通過(guò)將時(shí)間窗等間隔劃分為時(shí)間步,在第一個(gè)時(shí)間步,根據(jù)所述人工神經(jīng)元輸入信息和脈沖發(fā)射閾值進(jìn)行比較,確定是否發(fā)射脈沖尖峰信息,并獲取第一個(gè)時(shí)間步的神經(jīng)元中間信息,在后續(xù)的各時(shí)間步,則根據(jù)所述人工神經(jīng)元輸入信息、脈沖發(fā)射閾值和發(fā)射遞減值,確定是否發(fā)射脈沖尖峰信息,最后將所述時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確認(rèn)為轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)在時(shí)間窗內(nèi),利用脈沖發(fā)射閾值和發(fā)射遞減值,控制是否根據(jù)所述人工神經(jīng)元輸入信息發(fā)射脈沖尖峰信號(hào)的方式,可以將所述人工神經(jīng)元輸入信息,根據(jù)不同的需求,通過(guò)調(diào)整脈沖發(fā)射閾值和發(fā)射遞減值的方式,給出不同的脈沖神經(jīng)元信息轉(zhuǎn)換結(jié)果,實(shí)施方式簡(jiǎn)單。
圖3為一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法中,在第一時(shí)間窗內(nèi)的除第一個(gè)時(shí)間步的后續(xù)時(shí)間步的脈沖轉(zhuǎn)換方法的的流程示意圖,如圖3所示的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法包括:
步驟S341a,將所述人工神經(jīng)元輸入信息和所述前一個(gè)時(shí)間步的所述神經(jīng)元中間信息進(jìn)行累加,獲取當(dāng)前時(shí)間步的神經(jīng)元累加信息。
具體地,在第一個(gè)時(shí)間步后的后續(xù)各時(shí)間步,將接收到的前續(xù)人工神經(jīng)元的人工神經(jīng)元輸入信息,和上一個(gè)時(shí)間步獲取的神經(jīng)元中間信息進(jìn)行累加,后獲取當(dāng)前時(shí)間步的神經(jīng)元累加信息。由于所述人工神經(jīng)元輸入信息的輸入模式是持續(xù)輸入的,在每個(gè)時(shí)間步獲取到的膜電位信息都是持續(xù)的,相等的。
根據(jù)當(dāng)前時(shí)間步接收到的前續(xù)人工神經(jīng)元輸入的膜電位值Vj,前一個(gè)時(shí)間步的神經(jīng)元中間信息Vi累加后,判斷其與脈沖發(fā)射閾值Vth的關(guān)系,判定是否發(fā)放,
步驟S342a,當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息大于等于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息減去所述預(yù)設(shè)的發(fā)射遞減值,獲取當(dāng)前時(shí)間步的神經(jīng)元發(fā)射后信息。
具體地,將每個(gè)時(shí)間步獲取到的神經(jīng)元累加信息,和預(yù)設(shè)的脈沖發(fā)射閾值進(jìn)行比較,當(dāng)所述神經(jīng)元累加信息大于所述脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信號(hào),并將所述神經(jīng)元累加信息減去所述預(yù)設(shè)的發(fā)射遞減值后進(jìn)入下一個(gè)時(shí)間步的計(jì)算。
步驟S343a,當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息小于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息確定為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息。
具體地,不發(fā)射脈沖尖峰信息時(shí),將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息確定為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息,并參與后續(xù)的時(shí)間步的計(jì)算即可。
如圖6所示,在一個(gè)時(shí)間窗內(nèi)的各時(shí)間步,通過(guò)是否發(fā)射脈沖尖峰信息,獲取多個(gè)脈沖尖峰信息組成的脈沖信號(hào)。根據(jù)輸入的人工神經(jīng)元輸入信息的不同,發(fā)射脈沖尖峰信息的間隔不同,轉(zhuǎn)換的脈沖神經(jīng)元信息也不同。
在本實(shí)施例中,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為持續(xù)輸入時(shí),在除第一個(gè)時(shí)間步外的后續(xù)的各時(shí)間步,則根據(jù)所述人工神經(jīng)元輸入信息、脈沖發(fā)射閾值和發(fā)射遞減值,確定是否發(fā)射脈沖尖峰信息,最后將所述時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確認(rèn)為轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)在時(shí)間窗內(nèi),利用脈沖發(fā)射閾值和發(fā)射遞減值,控制是否根據(jù)所述人工神經(jīng)元輸入信息發(fā)射脈沖尖峰信號(hào)的方式,可以將所述人工神經(jīng)元輸入信息,根據(jù)不同的需求,通過(guò)調(diào)整脈沖發(fā)射閾值和發(fā)射遞減值的方式,給出不同的脈沖神經(jīng)元信息轉(zhuǎn)換結(jié)果,實(shí)施方式簡(jiǎn)單。
圖4為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法中,第二轉(zhuǎn)換模式下的方法的流程示意圖,如圖4所示的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的方法包括:
步驟S310b,根據(jù)所述人工神經(jīng)元輸入信息和第二時(shí)間窗,確定所述第二時(shí)間窗內(nèi)的第四時(shí)長(zhǎng)。
具體地,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為單次輸入時(shí),輸入的膜電位不是持續(xù)輸入,需要將所述單次輸入的非持續(xù)的膜電位信息,轉(zhuǎn)換為脈沖神經(jīng)元信息。
步驟S320b,在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,并將所述第二時(shí)間窗內(nèi)所有的所述脈沖尖峰信息確認(rèn)為第二脈沖神經(jīng)元信息。
具體地,在一個(gè)時(shí)間窗內(nèi),根據(jù)所述人工神經(jīng)元輸入信息的膜電位值,來(lái)確定發(fā)射和不發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)的比值。所述在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,包括連續(xù)發(fā)送,或在第四時(shí)長(zhǎng)的開始和結(jié)束時(shí)刻,各發(fā)送一個(gè)脈沖尖峰信息即可。所述連續(xù)發(fā)送方式,包括:在所述第四時(shí)長(zhǎng)內(nèi)連續(xù)發(fā)射脈沖尖峰信息。所述連續(xù)發(fā)射脈沖尖峰信息,包括連續(xù)等間隔發(fā)送,和連續(xù)不等間隔發(fā)送。
如圖9所示,通過(guò)在第四時(shí)長(zhǎng)內(nèi)連續(xù)發(fā)送脈沖尖峰信息,并根據(jù)第四時(shí)長(zhǎng)和第二時(shí)間窗時(shí)長(zhǎng)之間的關(guān)系的比值,確定第二脈沖神經(jīng)元信息。
在本實(shí)施例中,根據(jù)所述人工神經(jīng)元輸入信息,確定一個(gè)時(shí)間窗內(nèi)的發(fā)射脈沖尖峰信息的時(shí)長(zhǎng),并根據(jù)發(fā)射的所述脈沖尖峰信息,確定轉(zhuǎn)換后的額脈沖神經(jīng)元信息,本實(shí)施例,用一定時(shí)間窗內(nèi)的脈沖尖峰信息的個(gè)數(shù),或所述發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)和時(shí)間窗內(nèi)未發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)的比值,確定轉(zhuǎn)換后的脈沖神經(jīng)元信息,實(shí)現(xiàn)方式簡(jiǎn)單。
圖7為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng)的結(jié)構(gòu)示意圖,如圖7所示的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng),包括:
人工神經(jīng)元輸入信息接收模塊100,用于接收前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息;
輸入模式判斷模塊200,用于判斷所述人工神經(jīng)元輸入信息的輸入模式;
第一轉(zhuǎn)換模塊300,用于當(dāng)所述輸入模式為持續(xù)輸入時(shí),利用第一轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第一脈沖神經(jīng)元信息;
第二轉(zhuǎn)換模塊400,用于當(dāng)所述輸入模式為單次輸入時(shí),利用第二轉(zhuǎn)換模式將所述人工神經(jīng)元輸入信息轉(zhuǎn)換為第二脈沖神經(jīng)元信息;所述第二轉(zhuǎn)換模塊,用于根據(jù)所述人工神經(jīng)元輸入信息和第二時(shí)間窗,確定所述第二時(shí)間窗內(nèi)的第四時(shí)長(zhǎng);在所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,并將所述第二時(shí)間窗內(nèi)所有的所述脈沖尖峰信息確認(rèn)為第二脈沖神經(jīng)元信息。所述第四時(shí)長(zhǎng)內(nèi)發(fā)射脈沖尖峰信息,包括在所述第四時(shí)長(zhǎng)內(nèi)連續(xù)發(fā)射脈沖尖峰信息。
脈沖神經(jīng)元信息輸出模塊500,用于輸出所述第一脈沖神經(jīng)元信息或第二脈沖神經(jīng)元信息。
在本實(shí)施例中,通過(guò)判斷接收到的前繼人工神經(jīng)元輸入的人工神經(jīng)元輸入信息的輸入模式,將輸入模式為持續(xù)輸入或單次輸入的人工神經(jīng)元輸入信息,別分采用不同的轉(zhuǎn)換模式,轉(zhuǎn)換為脈沖神經(jīng)元信息。本實(shí)施例不但能夠?qū)⑷斯ど窠?jīng)元輸入信息轉(zhuǎn)換為脈沖神經(jīng)元信息,而且能夠兼容不同的人工神經(jīng)元輸入信息的輸入模式,提高了神經(jīng)網(wǎng)絡(luò)對(duì)于人工神經(jīng)元輸入信息和脈沖神經(jīng)元輸入信息的兼容性。根據(jù)所述人工神經(jīng)元輸入信息,確定一個(gè)時(shí)間窗內(nèi)的發(fā)射脈沖尖峰信息的時(shí)長(zhǎng),并根據(jù)發(fā)射的所述脈沖尖峰信息,確定轉(zhuǎn)換后的額脈沖神經(jīng)元信息,本實(shí)施例,用一定時(shí)間窗內(nèi)的脈沖尖峰信息的個(gè)數(shù),或所述發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)和時(shí)間窗內(nèi)未發(fā)射脈沖尖峰信息的時(shí)長(zhǎng)的比值,確定轉(zhuǎn)換后的脈沖神經(jīng)元信息,實(shí)現(xiàn)方式簡(jiǎn)單。
圖8為另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng)中第一轉(zhuǎn)換模塊的結(jié)構(gòu)示意圖,如圖8另一個(gè)實(shí)施例的人工神經(jīng)元信息轉(zhuǎn)換為脈沖神經(jīng)元信息的系統(tǒng)包括:
時(shí)間步劃分單元210,用于將第一時(shí)間窗等間隔劃分為多個(gè)時(shí)間步。
第一時(shí)間步處理單元220,用于在所述第一時(shí)間窗內(nèi)的第一個(gè)時(shí)間步,當(dāng)所述人工神經(jīng)元輸入信息大于等于脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并根據(jù)所述人工神經(jīng)元輸入信息和發(fā)射遞減值,獲取神經(jīng)元發(fā)射后信息;當(dāng)所述人工神經(jīng)元輸入信息小于所述脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述人工神經(jīng)元輸入信息確定為神經(jīng)元未發(fā)射信息;將所述神經(jīng)元發(fā)射后信息或所述神經(jīng)元未發(fā)射信息,確認(rèn)為所述第一個(gè)時(shí)間步的神經(jīng)元中間信息;
后續(xù)時(shí)間步處理單元230,用于在所述第一時(shí)間窗內(nèi)的后續(xù)各時(shí)間步,分別根據(jù)所述人工神經(jīng)元輸入信息、前一個(gè)時(shí)間步的所述神經(jīng)元中間信息、所述脈沖發(fā)射閾值和所述發(fā)射遞減值,判斷是否發(fā)射脈沖尖峰信息;用于將所述人工神經(jīng)元輸入信息和所述前一個(gè)時(shí)間步的所述神經(jīng)元中間信息進(jìn)行累加,獲取當(dāng)前時(shí)間步的神經(jīng)元累加信息;當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息大于等于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息減去所述預(yù)設(shè)的發(fā)射遞減值,獲取當(dāng)前時(shí)間步的神經(jīng)元發(fā)射后信息;當(dāng)所述當(dāng)前時(shí)間步的神經(jīng)元累加信息小于所述預(yù)設(shè)的脈沖發(fā)射閾值時(shí),不發(fā)射脈沖尖峰信息,并將所述當(dāng)前時(shí)間步的神經(jīng)元累加信息確定為當(dāng)前時(shí)間步的神經(jīng)元未發(fā)射信息。
第一脈沖神經(jīng)元信息確定單元240,用于將所述第一時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確定為第一脈沖神經(jīng)元信息。
在本實(shí)施例中,當(dāng)所述人工神經(jīng)元輸入信息的輸入模式為持續(xù)輸入時(shí),通過(guò)將時(shí)間窗等間隔劃分為時(shí)間步,在第一個(gè)時(shí)間步,根據(jù)所述人工神經(jīng)元輸入信息和脈沖發(fā)射閾值進(jìn)行比較,確定是否發(fā)射脈沖尖峰信息,并獲取第一個(gè)時(shí)間步的神經(jīng)元中間信息,在后續(xù)的各時(shí)間步,則根據(jù)所述人工神經(jīng)元輸入信息、脈沖發(fā)射閾值和發(fā)射遞減值,確定是否發(fā)射脈沖尖峰信息,最后將所述時(shí)間窗內(nèi)發(fā)射的所有脈沖尖峰信息,確認(rèn)為轉(zhuǎn)換后的脈沖神經(jīng)元信息。通過(guò)在時(shí)間窗內(nèi),利用脈沖發(fā)射閾值和發(fā)射遞減值,控制是否根據(jù)所述人工神經(jīng)元輸入信息發(fā)射脈沖尖峰信號(hào)的方式,可以將所述人工神經(jīng)元輸入信息,根據(jù)不同的需求,通過(guò)調(diào)整脈沖發(fā)射閾值和發(fā)射遞減值的方式,給出不同的脈沖神經(jīng)元信息轉(zhuǎn)換結(jié)果,實(shí)施方式簡(jiǎn)單。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡(jiǎn)潔,未對(duì)上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說(shuō)明書記載的范圍。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。