元電路對不規(guī)則脈沖序列輸入的響應(yīng))
做神經(jīng)形態(tài)電路這幾年我越來越覺得把輸入從整齊的規(guī)則脈沖換成雜亂的不規(guī)則脈沖序列才是真正考驗(yàn)電路設(shè)計(jì)水平的時(shí)候。這次研究的共振混沌神經(jīng)元電路對不規(guī)則脈沖序列輸入的響應(yīng)目標(biāo)很直接搞清楚混沌、共振與隨機(jī)脈沖輸入同時(shí)作用時(shí)電路響應(yīng)規(guī)律到底怎么變。文章內(nèi)容不擺教科書推導(dǎo)講的是從模型選型、電路搭建、脈沖生成到指標(biāo)刻畫全過程的實(shí)際操作適合正在搭混沌電路、做脈沖神經(jīng)網(wǎng)絡(luò)硬件或者想用非線性動(dòng)力學(xué)手段分析神經(jīng)編碼的研究者和工程師參考。我把能落地、能復(fù)現(xiàn)的步驟和踩過的坑都寫出來希望幫你少走彎路。1. 為什么要把共振、混沌和脈沖輸入放到一個(gè)電路里1.1 真實(shí)神經(jīng)元的工作環(huán)境不規(guī)則脈沖才是常態(tài)大多數(shù)剛接觸神經(jīng)元模型的人習(xí)慣先從周期脈沖輸入學(xué)起因?yàn)橹芷谳斎霔l件下很容易觀察到鎖相、頻率跟隨這些教科書式現(xiàn)象。但真實(shí)神經(jīng)系統(tǒng)里幾乎沒有哪個(gè)神經(jīng)元收到嚴(yán)格的周期脈沖串。皮層神經(jīng)元的輸入來自成千上萬個(gè)突觸前神經(jīng)元的疊加每個(gè)突觸前神經(jīng)元本身又在隨機(jī)放電所以突觸后神經(jīng)元實(shí)際感受到的輸入是高度不規(guī)則、近似隨機(jī)的時(shí)間序列。把這種不規(guī)則性當(dāng)作基本背景而不是干擾是這類實(shí)驗(yàn)的出發(fā)點(diǎn)。我最早做規(guī)則脈沖串實(shí)驗(yàn)時(shí)數(shù)據(jù)漂亮得讓人上癮放電間隔幾乎落在同一個(gè)值附近鎖相指標(biāo)也好看到可以直接寫論文??梢坏Q成泊松分布的脈沖間隔同一個(gè)電路的輸出立刻變得一團(tuán)亂麻。當(dāng)時(shí)的第一反應(yīng)是電路出問題了排查了很久才發(fā)現(xiàn)不是電路壞了而是系統(tǒng)本身在隨機(jī)輸入下的行為就會(huì)呈現(xiàn)全新的復(fù)雜度。這個(gè)認(rèn)知轉(zhuǎn)變很關(guān)鍵研究共振混沌神經(jīng)元電路不能只停留在規(guī)則輸入混沌輸出的簡化圖景里必須把不規(guī)則脈沖序列作為標(biāo)準(zhǔn)輸入條件來看待。1.2 混沌不是亂而是神經(jīng)計(jì)算的一種資源很多人聽到混沌兩個(gè)字直覺認(rèn)為是隨機(jī)、不穩(wěn)定、沒法控制。但非線性動(dòng)力學(xué)里的混沌是一種確定性的非周期行為系統(tǒng)看似不可預(yù)測實(shí)際由確定方程支配。對神經(jīng)元電路來說混沌狀態(tài)的核心價(jià)值在于對外部輸入的敏感性。一個(gè)很小的輸入差別經(jīng)過混沌吸引子的拉伸折疊可以被放大成完全不同的放電模式。用生活化的話說規(guī)則狀態(tài)像一臺老實(shí)的機(jī)器輸入什么就大致輸出什么混沌狀態(tài)像一匹有力量的野馬對每一下刺激都反應(yīng)過度但這種過度反應(yīng)恰恰能在復(fù)雜輸入下提供更豐富的編碼空間。但混沌也帶來了麻煩。同一套電路參數(shù)換一塊運(yùn)放、溫度變化幾度、電容殘余電荷不同都可能讓工作點(diǎn)從混沌區(qū)漂移到周期區(qū)。研究這類電路統(tǒng)計(jì)重復(fù)必須成為實(shí)驗(yàn)設(shè)計(jì)的默認(rèn)環(huán)節(jié)而不是出現(xiàn)問題之后的補(bǔ)救措施。我后面會(huì)專門講初值敏感和參數(shù)漂移的處理方式這里先立一個(gè)原則單次波形不代表系統(tǒng)行為統(tǒng)計(jì)分布才代表系統(tǒng)行為。1.3 共振機(jī)制與混沌的交互值得單獨(dú)做一輪實(shí)驗(yàn)共振在物理里很直觀當(dāng)驅(qū)動(dòng)頻率接近系統(tǒng)固有頻率時(shí)響應(yīng)幅度會(huì)急劇增大。神經(jīng)形態(tài)電路里的共振通常有兩個(gè)層面。一個(gè)是線性諧振帶來的頻率選擇性比如RLC回路在特定頻率附近增益最高另一個(gè)是隨機(jī)共振現(xiàn)象即合適強(qiáng)度的噪聲反而能幫助系統(tǒng)檢測微弱信號。把這兩層共振疊到混沌神經(jīng)元上問題就變得有意思了混沌本身有寬帶功率譜共振環(huán)節(jié)有窄帶選擇特性不規(guī)則脈沖輸入又相當(dāng)于覆蓋寬頻范圍的驅(qū)動(dòng)源三者同時(shí)存在時(shí)系統(tǒng)響應(yīng)不再是簡單的放大關(guān)系而是多種頻率分量的競爭與協(xié)作。查資料時(shí)能看到不少文獻(xiàn)報(bào)道混沌系統(tǒng)在合適的隨機(jī)輸入強(qiáng)度下會(huì)表現(xiàn)出類似隨機(jī)共振的信號增強(qiáng)效應(yīng)。但我們這里的輸入并不是周期信號噪聲而是純不規(guī)則脈沖串。能不能觀察到同類效應(yīng)需要實(shí)驗(yàn)數(shù)據(jù)說話。這也正是我做這個(gè)實(shí)驗(yàn)的動(dòng)機(jī)不去重復(fù)經(jīng)典隨機(jī)共振實(shí)驗(yàn)而是測試混沌加共振的神經(jīng)元電路面對真實(shí)不規(guī)則輸入時(shí)信息通道到底是打開還是關(guān)閉。2. 電路模型構(gòu)建從神經(jīng)元方程到可搭接的拓?fù)?.1 神經(jīng)元電路基座選擇哪種模型做主體神經(jīng)元電路候選模型很多我最終選的是Izhikevich型主體加一條額外混沌支路。選它的理由很實(shí)際參數(shù)少、方程不復(fù)雜、硬件上只需要一個(gè)電容、兩個(gè)運(yùn)算放大器加若干線性電阻就能實(shí)現(xiàn)。而且Izhikevich模型既能復(fù)現(xiàn)規(guī)則的單峰放電也能復(fù)現(xiàn)bursting爆發(fā)放電正好對應(yīng)實(shí)驗(yàn)需要的兩種基礎(chǔ)狀態(tài)。如果追更復(fù)雜的慢變量動(dòng)力學(xué)Hindmarsh-Rose模型也可以但硬件元器件明顯增多調(diào)試成本會(huì)成倍上升。基礎(chǔ)參數(shù)我標(biāo)定過一套自己常用的組合膜電容C_m取10 nF膜電壓相關(guān)的比例電阻取100 kΩ級別恢復(fù)變量的時(shí)間常數(shù)由串聯(lián)電容決定整體放電頻率落在幾十赫茲量級。這里有一條經(jīng)驗(yàn)先在小面包板上搭通確認(rèn)波形符合預(yù)期之后再轉(zhuǎn)PCB布局?;煦珉娐氛{(diào)試過程中元器件替換頻率非常高直接上PCB反而拖慢進(jìn)度而且改一次板子的成本遠(yuǎn)高于多插幾根跳線。2.2 混沌從哪里來非線性負(fù)阻與等效電感要讓神經(jīng)元電路進(jìn)入混沌至少需要一個(gè)非線性環(huán)節(jié)加一個(gè)額外儲(chǔ)能環(huán)節(jié)。我采用的是分段線性負(fù)阻加等效電感方案。負(fù)阻用運(yùn)算放大器和電阻網(wǎng)絡(luò)構(gòu)造成三段式分段線性I-V特性曲線等效電感用電容加運(yùn)放的回轉(zhuǎn)器結(jié)構(gòu)實(shí)現(xiàn)。這樣避免了體積龐大的真實(shí)電感也減少雜散磁場的干擾板上布線會(huì)干凈很多。關(guān)鍵參數(shù)有兩個(gè)負(fù)阻曲線中間段的斜率以及等效電感值。仿真里我掃過一組典型取值負(fù)阻段斜率從-1.5 mS調(diào)到-4 mS的過程中系統(tǒng)經(jīng)歷了周期態(tài)、倍周期分岔到混沌態(tài)的多次切換等效電感值在幾十毫亨范圍內(nèi)配合膜電容決定了混沌吸引子的主要頻率成分。硬件上調(diào)這兩個(gè)參數(shù)非常直觀負(fù)阻斜率靠更換反饋電阻實(shí)現(xiàn)等效電感值靠更換回轉(zhuǎn)器里的電容實(shí)現(xiàn)。每次換件后都要重新觀察示波器上的相圖確認(rèn)工作點(diǎn)是否還在目標(biāo)區(qū)域內(nèi)。2.3 共振環(huán)節(jié)怎么加進(jìn)去參數(shù)設(shè)計(jì)與頻率匹配共振環(huán)節(jié)我對比過無源RLC并聯(lián)諧振和有源帶通濾波兩種方案最后選了有源帶通。原因很簡單有源帶通的Q值可調(diào)、中心頻率可獨(dú)立設(shè)置不用為每一檔輸入頻率重新匹配電感。電路上加在輸入脈沖注入節(jié)點(diǎn)和神經(jīng)元膜電容之間相當(dāng)于在信號通路上做一次頻率預(yù)選。中心頻率的設(shè)定參照了神經(jīng)元電路混沌態(tài)的主功率頻率。當(dāng)時(shí)用頻譜分析觀察到混沌放電的主要能量集中在8 Hz到20 Hz區(qū)間我就把帶通中心頻率設(shè)為15 HzQ值先取5后續(xù)從2到12掃描觀察系統(tǒng)響應(yīng)差異。輸入脈沖本身是寬頻信號經(jīng)過共振環(huán)節(jié)后接近中心頻率的分量被放大遠(yuǎn)離的則被衰減。這樣在保持外部脈沖序列不變的前提下我能獨(dú)立考察頻率匹配程度對響應(yīng)的影響這也是后續(xù)分析共振峰偏移現(xiàn)象的基礎(chǔ)。環(huán)節(jié)參數(shù)典型取值調(diào)節(jié)影響膜電容C_m10 nF決定神經(jīng)元時(shí)間尺度等效電感L_eq2060 mH影響混沌吸引子頻率成分負(fù)阻斜率g_N-1.5-4 mS控制混沌強(qiáng)度與分岔路徑帶通中心頻率f_015 Hz共振頻率匹配點(diǎn)帶通Q值Q212頻率選擇性寬窄3. 不規(guī)則脈沖序列的生成與注入這一環(huán)節(jié)決定實(shí)驗(yàn)的上限3.1 什么是不規(guī)則泊松序列與Gamma序列的差別不規(guī)則脈沖序列嚴(yán)格說是由一系列觸發(fā)時(shí)刻構(gòu)成的點(diǎn)過程。最常用的是泊松過程脈沖間隔相互獨(dú)立、都服從指數(shù)分布平均發(fā)放率恒定脈沖串看起來完全隨機(jī)。比它更復(fù)雜的是Gamma間隔分布形狀參數(shù)κ控制不規(guī)則程度。κ1時(shí)退化為泊松過程κ遠(yuǎn)大于1時(shí)接近周期κ遠(yuǎn)小于1時(shí)能模擬突發(fā)性爆發(fā)。做這個(gè)實(shí)驗(yàn)必須明白一點(diǎn)不規(guī)則不是簡單地把周期信號加抖動(dòng)關(guān)鍵在間隔分布的統(tǒng)計(jì)特性本身。我前期仿真用了三檔輸入泊松序列、弱規(guī)則的Gamma序列、強(qiáng)不規(guī)則的Gamma突發(fā)序列。對比三檔數(shù)據(jù)就能分離輸入隨機(jī)性程度這一個(gè)變量。硬件測試階段考慮到生成高精度Gamma分布的實(shí)現(xiàn)成本我先用泊松序列跑通整體鏈路之后再加突發(fā)模式對照。這里給一段生成泊松脈沖時(shí)間戳的基礎(chǔ)代碼事件間隔嚴(yán)格按照指數(shù)分布生成import numpy as np rate 20.0 # 平均發(fā)放率單位 Hz duration 10.0 # 持續(xù)時(shí)間單位 s rng np.random.default_rng(42) isi rng.exponential(1.0 / rate, sizeint(rate * duration)) spike_times np.cumsum(isi) spike_times spike_times[spike_times duration]固定隨機(jī)種子這點(diǎn)極其重要?;煦珉娐繁旧砭统踔得舾腥绻斎胄蛄械碾S機(jī)種子不固定兩次實(shí)驗(yàn)之間既換了輸入又換了初值出什么問題都說不清。固定種子至少能保證輸入源這一側(cè)是可復(fù)現(xiàn)的。3.2 硬件注入與軟件仿真注入的差異同樣的數(shù)學(xué)模型在純仿真和硬件實(shí)測里走的路徑完全不同。軟件仿真用事件驅(qū)動(dòng)方式生成時(shí)間戳序列直接作為電流源項(xiàng)驅(qū)動(dòng)微分方程精度只受積分算法控制。硬件實(shí)測則需要真實(shí)脈沖發(fā)生器或者微控制器加數(shù)模轉(zhuǎn)換產(chǎn)生脈沖電壓再經(jīng)隔離放大電路注入神經(jīng)元節(jié)點(diǎn)。兩條路線的差異直接決定實(shí)驗(yàn)?zāi)芘芏鄿?zhǔn)、能跑多快。我這邊硬件端用的微控制器產(chǎn)生脈沖序列外接電平變換電路把3.3 V邏輯電平轉(zhuǎn)換成適合電路輸入幅度的雙極性電流脈沖。這里最容易被忽視的是脈沖寬度。算法層面生成的事件是無限窄的但硬件脈沖必須有寬度我按1 ms脈寬注入這直接限制了可分辨的脈沖間隔下限。如果平均發(fā)放率太高兩個(gè)間隔過近的脈沖會(huì)在硬件層被整形合并成單個(gè)脈沖這個(gè)失真必須靠統(tǒng)計(jì)校驗(yàn)提前發(fā)現(xiàn)。每次更換輸入?yún)?shù)后我都在輸入端掛一個(gè)監(jiān)聽節(jié)點(diǎn)獨(dú)立記錄真實(shí)注入的脈沖串確保程序設(shè)定值和物理注入值一致。3.3 注入幅度、極性與耦合方式的再三確認(rèn)脈沖注入不是簡單把電平接到電路上幅度、極性、耦合位置都要分開控制。興奮性突觸輸入按慣例用正電流脈沖抑制性輸入用負(fù)電流脈沖。這一輪實(shí)驗(yàn)我主要做興奮性輸入通道注入幅度從0.5 μA掃到5 μA分8檔。幅度太低驅(qū)動(dòng)不了放電太高直接把系統(tǒng)推向飽和中間那一段才是非線性響應(yīng)最豐富的區(qū)域。耦合方式上我試過兩種位置直接注入膜電容節(jié)點(diǎn)和經(jīng)共振環(huán)節(jié)注入。前者繞過帶通濾波器單獨(dú)考察混沌系統(tǒng)本身對脈沖串的響應(yīng)后者則包含完整鏈路。兩套數(shù)據(jù)對照能清楚看到共振環(huán)節(jié)帶來的差分效應(yīng)。實(shí)際操作時(shí)我還加了一路模擬加法器把輸入脈沖和可調(diào)直流偏置疊加后共同注入這樣可以同時(shí)觀察偏置點(diǎn)變化對響應(yīng)的影響。極少有文獻(xiàn)會(huì)寫這一步但它對判斷系統(tǒng)是否工作在分岔臨界區(qū)非常有幫助。4. 響應(yīng)怎么度量從放電頻率到混沌狀態(tài)的三層評價(jià)體系4.1 第一層放電率與脈沖間隔分布統(tǒng)計(jì)反映系統(tǒng)對輸入響應(yīng)的第一層指標(biāo)是放電率統(tǒng)計(jì)固定窗口內(nèi)輸出脈沖個(gè)數(shù)再除以窗口時(shí)長。這個(gè)指標(biāo)看似簡單實(shí)際統(tǒng)計(jì)時(shí)必須小心窗口長度。窗口太短放電率波動(dòng)劇烈噪聲主導(dǎo)窗口太長又會(huì)平滑掉間隔上的動(dòng)態(tài)變化。我的做法是用500 ms滑動(dòng)窗口、步長50 ms在多次實(shí)驗(yàn)間做平均最終畫出來的放電率曲線才有可比性。除了總放電率輸出脈沖間隔分布的形態(tài)更有信息量?;煦缟窠?jīng)元對規(guī)則輸入容易產(chǎn)生近似等間隔放電對不規(guī)則輸入則可能出現(xiàn)間隔混合。把輸出間隔直方圖和輸入間隔直方圖疊在一起對比一眼能看出系統(tǒng)是在放大不規(guī)則性還是在整理不規(guī)則性。這層判斷雖然基礎(chǔ)卻能決定后續(xù)高級指標(biāo)的解釋方向。比如某個(gè)數(shù)據(jù)點(diǎn)的排列熵異常升高如果基礎(chǔ)間隔統(tǒng)計(jì)顯示系統(tǒng)只是簡單跟隨輸入那高排列熵就不值得過度解讀。4.2 第二層鎖相指數(shù)與相位滑移規(guī)則輸入下最常見的響應(yīng)模式是鎖相輸入脈沖和輸出脈沖之間存在穩(wěn)定的時(shí)間相位關(guān)系。不規(guī)則輸入下完美鎖相很難維持于是需要量化鎖相程度。我用的指標(biāo)是vector strength即相位鎖定指數(shù)把輸出脈沖相對輸入脈沖的時(shí)間差折算到0到2π區(qū)間計(jì)算合成向量的平均長度取值0代表完全無鎖相1代表完全鎖相。實(shí)測下來輸入很不規(guī)則時(shí)vector strength會(huì)明顯下降但下降過程不是單調(diào)的中間存在平臺區(qū)。更值得關(guān)注的是相位滑移現(xiàn)象輸出脈沖相對輸入相位慢慢漂移積累到某個(gè)閾值后突然跳變一次。這類跳變在混沌電路里往往伴隨放電模式的切換背后對應(yīng)相空間拓?fù)浣Y(jié)構(gòu)的變化。單位時(shí)間內(nèi)跳變的次數(shù)比單純的平均鎖相值更能反映系統(tǒng)動(dòng)態(tài)穩(wěn)定性。我后期分析時(shí)同時(shí)記錄兩個(gè)量鎖相指數(shù)和滑移次數(shù)兩者聯(lián)合使用才有解釋力。4.3 第三層排列熵、相關(guān)維數(shù)與Lyapunov指數(shù)前兩層指標(biāo)回答輸出頻率多少、相位關(guān)系如何第三層回答輸出動(dòng)力學(xué)處于什么狀態(tài)。排列熵是我用得最多的工具取嵌入維數(shù)m4、延遲τ取一個(gè)脈沖間隔把輸出時(shí)間序列轉(zhuǎn)成符號模式序列計(jì)算符號分布的信息熵。排列熵接近最大熵說明輸出模式復(fù)雜度高接近0說明序列趨于規(guī)則。配合輸入不規(guī)則度檔位一起看可以判斷混沌電路對輸入的模式復(fù)制能力。Lyapunov指數(shù)則給出更本質(zhì)的判據(jù)。我用Benettin算法從實(shí)驗(yàn)時(shí)間序列估計(jì)最大Lyapunov指數(shù)指數(shù)為正說明處于混沌態(tài)接近零或?yàn)樨?fù)說明周期或準(zhǔn)周期態(tài)。實(shí)測中我發(fā)現(xiàn)一個(gè)很有意思的情況最大Lyapunov指數(shù)接近零、排列熵又相對較高的區(qū)間往往對應(yīng)響應(yīng)最靈敏的輸入強(qiáng)度。這個(gè)區(qū)間比完全混沌態(tài)還要好用正好踩在混沌邊緣。因此我建議把這兩類指標(biāo)放在一起看單一指標(biāo)很容易誤導(dǎo)。層級指標(biāo)回答的問題注意事項(xiàng)第一層放電率、間隔分布輸出數(shù)量與時(shí)間構(gòu)成窗口長度影響統(tǒng)計(jì)可信度第二層鎖相指數(shù)、滑移次數(shù)是否鎖相、穩(wěn)定性如何需聯(lián)合使用單看易誤判第三層排列熵、最大Lyapunov指數(shù)輸出處于何種動(dòng)力學(xué)狀態(tài)必須先校驗(yàn)數(shù)值步長5. 仿真與實(shí)測中看到的三種關(guān)鍵現(xiàn)象5.1 中等強(qiáng)度輸入誘發(fā)的隨機(jī)共振效應(yīng)第一個(gè)明確現(xiàn)象是輸入脈沖幅度從低到高掃描時(shí)輸出序列與輸入序列之間的相干性不是單調(diào)遞增而是先升后降出現(xiàn)一個(gè)明顯的峰值區(qū)間。我的相干性指標(biāo)定義為輸出脈沖觸發(fā)平均后的峰值幅度除以背景標(biāo)準(zhǔn)差相當(dāng)于一種信噪比度量。在注入幅度約2 μA的位置相干性達(dá)到最高前后各衰減。這條倒U形曲線正是隨機(jī)共振的典型特征。關(guān)鍵在于經(jīng)典隨機(jī)共振通常要求周期信號加噪聲而這里的輸入是純不規(guī)則脈沖串。得到倒U形曲線說明對混沌神經(jīng)元電路而言輸入脈沖幅度本身就扮演了類似噪聲強(qiáng)度的角色太弱時(shí)信息淹沒在電路固有漲落里太強(qiáng)時(shí)系統(tǒng)被大幅驅(qū)動(dòng)而失去選擇性中間存在一個(gè)最佳工作點(diǎn)。這個(gè)發(fā)現(xiàn)直接影響后續(xù)參數(shù)選取我把后續(xù)實(shí)驗(yàn)的注入幅度盡量壓在峰值點(diǎn)附近而不是盲目加大驅(qū)動(dòng)。5.2 混沌邊緣效應(yīng)離臨界點(diǎn)越近響應(yīng)越敏感第二個(gè)現(xiàn)象與混沌強(qiáng)度參數(shù)有關(guān)。我把分段線性負(fù)阻斜率作為混沌旋鈕從周期態(tài)連續(xù)向深度混沌態(tài)調(diào)節(jié)每個(gè)狀態(tài)下測量輸入輸出相干性。結(jié)果在所有輸入強(qiáng)度檔位上相干性都在混沌態(tài)邊界附近出現(xiàn)局部最大值一旦深入混沌區(qū)內(nèi)部相干性反而下降。這個(gè)趨勢一開始讓我不太敢相信因?yàn)榛煦缭綇?qiáng)等于響應(yīng)越強(qiáng)的直覺很有誘惑力但數(shù)據(jù)明確否定了這一點(diǎn)。反復(fù)檢查確認(rèn)后我認(rèn)定這是真實(shí)效應(yīng)在混沌邊緣系統(tǒng)對輸入擾動(dòng)最敏感略強(qiáng)或略弱的輸入會(huì)引起顯著的模式變化進(jìn)入深度混沌后系統(tǒng)自身軌道的膨脹率太高輸入信息反而被自身的混沌運(yùn)動(dòng)掩蓋。這和神經(jīng)科學(xué)里關(guān)于臨界點(diǎn)附近信息處理能力增強(qiáng)的假說一致但也說明一個(gè)實(shí)際問題很多仿真里隨手把混沌參數(shù)調(diào)到最大追求看起來更混沌的做法在信息處理目標(biāo)下并不劃算。5.3 不規(guī)則度升高后鎖相逐步瓦解的過程第三個(gè)現(xiàn)象來自改變輸入Gamma分布κ值的系列實(shí)驗(yàn)。κ20、接近周期時(shí)電路展現(xiàn)清晰的鎖相放電間隔集中在少數(shù)幾個(gè)值上鎖相指數(shù)在0.8以上。κ降到5鎖相開始松散放電間隔直方圖明顯展寬。κ降到1、變成泊松序列時(shí)鎖相指數(shù)落到0.3以下輸出間隔分布幾乎與輸入間隔分布一樣連續(xù)。這符合不規(guī)則輸入打散鎖相的直覺。真正有意思的是κ繼續(xù)降到0.5、輸入變成強(qiáng)突發(fā)型之后。輸出并不簡單跟隨輸入的突發(fā)結(jié)構(gòu)而是表現(xiàn)出間歇性自持振蕩一段時(shí)間跟隨輸入一段時(shí)間完全解耦??聪辔换拼螖?shù)κ20時(shí)幾乎沒有滑移κ1時(shí)每分鐘幾十次κ0.5時(shí)反而減少。我的理解是突發(fā)輸入把能量集中在短時(shí)間包絡(luò)內(nèi)共振環(huán)節(jié)的儲(chǔ)能效應(yīng)讓電路在突發(fā)間隙維持自身振蕩從而隔斷了輸入影響。混沌、共振儲(chǔ)能和不規(guī)則脈動(dòng)三者在這個(gè)現(xiàn)象里體現(xiàn)得最充分也正是這套系統(tǒng)區(qū)別于普通神經(jīng)元電路的獨(dú)特之處。6. 調(diào)試這類電路時(shí)最容易踩的坑6.1 初值敏感性同一組參數(shù)兩次實(shí)驗(yàn)不一樣的根源混沌電路的默認(rèn)屬性就是初值敏感。數(shù)值仿真里這個(gè)問題容易被忽略因?yàn)榻o定相同初值積分結(jié)果天然一致但硬件實(shí)測里電容的殘余電荷、運(yùn)放的偏置電壓都會(huì)導(dǎo)致每次上電的初值不同于是相同參數(shù)下的兩次實(shí)驗(yàn)輸出可能差出十萬八千里。我最初吃到這個(gè)虧時(shí)花了好幾天以為是接線問題最后才意識到系統(tǒng)本來就是這樣。對策分三層。第一每個(gè)工作點(diǎn)重復(fù)不少于20次用統(tǒng)計(jì)分布代替單次軌跡第二每次實(shí)驗(yàn)前給膜電容節(jié)點(diǎn)一個(gè)統(tǒng)一清零初始化過程用固定時(shí)長、固定幅度的清零脈沖重置電路狀態(tài)把初值分布壓縮到較小范圍第三記錄數(shù)據(jù)時(shí)保留每條軌跡的若干早期狀態(tài)參數(shù)方便后期排查離群數(shù)據(jù)。三層做完可復(fù)現(xiàn)性從幾乎不可能提升到了誤差棒可以接受的級別。6.2 數(shù)值步長與假混沌如何判斷仿真可信仿真階段最大的陷阱是偽混沌。四階Runge-Kutta法用固定步長解這類系統(tǒng)步長取太大時(shí)數(shù)值耗散會(huì)呈現(xiàn)虛假混沌態(tài)或虛假周期態(tài)。我一開始用0.5 ms步長跑快速預(yù)掃得到一大片混沌結(jié)果后來把步長降到0.05 ms不少點(diǎn)直接變成了規(guī)則周期態(tài)。數(shù)值誤差被誤判成物理現(xiàn)象在混沌電路研究里不是個(gè)別情況尤其是剛開始接觸這個(gè)方向的人最容易中招。判斷可信度有兩個(gè)實(shí)用辦法。一是收斂性檢驗(yàn)固定其他條件逐步縮小步長觀察最大Lyapunov指數(shù)和排列熵是否穩(wěn)定下來如果連續(xù)縮小步長結(jié)論還在變那之前的結(jié)論基本作廢。二是能量守恒粗檢對無輸入時(shí)段的系統(tǒng)總能量做觀察如果能量漂移明顯超過數(shù)值誤差范圍步長一定有問題。這兩條我現(xiàn)在做任何仿真前都先跑一遍省掉了無數(shù)后半夜的返工。6.3 器件噪聲、參數(shù)漂移與輸入噪聲的區(qū)分最后這個(gè)坑非常隱蔽。電路器件自身噪聲和輸入脈沖的不規(guī)則性在功率譜上都表現(xiàn)為寬頻成分一旦混在一起所有結(jié)論都會(huì)被污染。早期我直接把輸出端測到的噪聲認(rèn)為是輸入引起的差點(diǎn)得出錯(cuò)誤結(jié)論。后來在實(shí)驗(yàn)流程里加入對照環(huán)節(jié)斷開輸入、保持電路同樣的工作狀態(tài)單獨(dú)記錄電路本底噪聲再接上輸入記錄總響應(yīng)。兩段數(shù)據(jù)功率譜相減才是輸入真正貢獻(xiàn)的部分。另外運(yùn)放偏置電流隨溫度漂移會(huì)讓負(fù)阻工作點(diǎn)慢慢移動(dòng)長時(shí)間實(shí)驗(yàn)時(shí)參數(shù)點(diǎn)會(huì)逐漸偏離初始設(shè)定。我每隔一段時(shí)間就回到基準(zhǔn)參數(shù)點(diǎn)重新校準(zhǔn)一次并把校準(zhǔn)前后的數(shù)據(jù)分開標(biāo)記。這套對照校準(zhǔn)流程幫我剝離了至少三分之一的本底干擾也讓我對哪些現(xiàn)象是電路自身行為、哪些是輸入誘導(dǎo)結(jié)果有了更可靠的分界。做混沌神經(jīng)元電路實(shí)驗(yàn)真正的難點(diǎn)往往不在搭建環(huán)節(jié)而在于分辨哪些變化該歸因于輸入、哪些變化只屬于電路本身。