導(dǎo)彈防御系統(tǒng),如何跟蜻蜓的大腦學(xué)習(xí)計算?
多雨的夏季,蜻蜓最為常見,這些美麗的生物的飛行速度極快,狩獵能力也極為出色:蜻蜓狩獵的成功率捕獲了高達(dá) 95% ,它們一天可以吃掉數(shù)百只蚊子。
這種狩獵能力吸引了不少研究中的注意,幾十年來,各國機(jī)構(gòu)都在嘗試將蜻蜓設(shè)計用于監(jiān)視無人機(jī)的設(shè)計中。不過,桑迪亞國家實驗室的計算神經(jīng)科學(xué)家Frances Chance,想要探尋的,是這個“微型狩獵機(jī)器”的大腦。
Frances對蜻蜓的大腦能夠低功耗地完成高速計算的能力非常好奇,并就此展開了一系列猜想和神經(jīng)網(wǎng)絡(luò)構(gòu)建。我們將她構(gòu)建神經(jīng)網(wǎng)絡(luò)的心得文章編譯如下,或許你也能從中獲得一些對神經(jīng)網(wǎng)絡(luò)的新思考。
《從蜻蜓大腦中得到的啟發(fā)》
雖然蜻蜓的大腦可能無法進(jìn)行像“下圍棋”這樣的策略類游戲,但它們確實展示了一種戰(zhàn)略形式:在獵物到達(dá)當(dāng)前位置之前,就瞄準(zhǔn)、****它的“盤中餐” 。這種“預(yù)判力”需要以極快的速度執(zhí)行計算——蜻蜓通常只需要 50 毫秒就可以開始轉(zhuǎn)動以響應(yīng)獵物的動作。它可以同時跟蹤頭部和身體之間的角度,以便它知道哪個翅膀更快地扇動以在獵物前面轉(zhuǎn)動。
考慮到單個神經(jīng)元將其所有輸入相加所需的時間(稱為膜時間常數(shù))超過 10 毫秒,蜻蜓的大腦執(zhí)行的是一項非凡的工作。
蜻蜓只需要大約 50 毫秒就開始對獵物的動作做出反應(yīng)。如果我們假設(shè)眼睛中的細(xì)胞需要 10 毫秒來檢測和傳輸有關(guān)獵物的信息,另外 5 毫秒讓肌肉開始產(chǎn)生力量,那么神經(jīng)回路只剩下 35 毫秒來進(jìn)行計算。鑒于單個神經(jīng)元通常需要至少 10 毫秒來整合輸入,因此底層神經(jīng)網(wǎng)絡(luò)可以至少有三層深。
那么,人類可以建立一個像蜻蜓****系統(tǒng)一樣工作的神經(jīng)網(wǎng)絡(luò)嗎?這種神經(jīng)網(wǎng)絡(luò)又有什么用途呢?
模型蜻蜓根據(jù)獵物的轉(zhuǎn)動重新定向。較小的黑色圓圈是蜻蜓的頭部,保持在其初始位置。黑色實線表示蜻蜓飛行的方向;藍(lán)色虛線是模型蜻蜓眼睛的平面。紅星是獵物相對于蜻蜓的位置,紅色虛線表示蜻蜓的視線。
我首先想到的是防御上的應(yīng)用,例如導(dǎo)彈防御,例如,讓未來的導(dǎo)彈快速計算****軌跡而不影響導(dǎo)彈重量或功耗的機(jī)載系統(tǒng)。
當(dāng)然也可能會有民用應(yīng)用,例如,控制自動駕駛汽車的算法可能會變得更高效,不再需要大量的計算設(shè)備。如果受蜻蜓啟發(fā)的系統(tǒng)可以執(zhí)行計算以繪制****軌跡,那么自主無人機(jī)或許可以使用它來避免碰撞。如果計算機(jī)可以制造成與蜻蜓大腦相同的大?。s 6 立方毫米),也許有一天驅(qū)蟲劑和蚊帳將成為過去,取而代之的是小型殺蟲無人機(jī)!
開始動手!
為了開始回答這些問題,我創(chuàng)建了一個簡單的神經(jīng)網(wǎng)絡(luò)來代替蜻蜓的神經(jīng)系統(tǒng),并用它來計算蜻蜓捕捉獵物的轉(zhuǎn)彎。我的三層神經(jīng)網(wǎng)絡(luò)作為軟件模擬存在。最初,我在 Matlab 中工作,因為那是我已經(jīng)在使用的編碼環(huán)境。之后,我將該模型移植到 Python 中。
因為蜻蜓必須看到它們的獵物才能捕捉到它,所以我首先模擬了蜻蜓眼睛的簡化版本,捕捉了追蹤獵物所需的最少細(xì)節(jié)。雖然蜻蜓有兩只眼睛,但人們普遍認(rèn)為它們不使用立體深度感知來估計與獵物的距離。在我的模型中,我沒有對雙眼進(jìn)行建模,也沒有嘗試蜻蜓的眼睛匹配的分辨率,相反,神經(jīng)網(wǎng)絡(luò)的第一層包括 441 個代表眼睛輸入的神經(jīng)元,每個神經(jīng)元描述視野的一個特定區(qū)域——這些區(qū)域被平鋪以形成一個 21×21 的神經(jīng)元陣列,覆蓋蜻蜓的視野。隨著蜻蜓轉(zhuǎn)動,獵物圖像在蜻蜓視野中的位置發(fā)生變化。蜻蜓計算將獵物的圖像與這些“眼睛”神經(jīng)元中的一個(或幾個,如果獵物足夠大)對齊所需的輪數(shù)。第二組包含441 個神經(jīng)元,也在網(wǎng)絡(luò)的第一層,告訴蜻蜓哪些眼睛神經(jīng)元應(yīng)該與獵物的圖像對齊,即獵物應(yīng)該在其視野內(nèi)的哪個位置。
模型蜻蜓與獵物交戰(zhàn)。
接收描述物體在視野中運動的輸入并將其轉(zhuǎn)化為關(guān)于蜻蜓需要轉(zhuǎn)向哪個方向的指令的計算,這類處理能力在我的人工神經(jīng)網(wǎng)絡(luò)的第一層和第三層之間進(jìn)行。在第二層中,我使用了 194,481 (21 4) 神經(jīng)元,可能比蜻蜓用于此任務(wù)的神經(jīng)元數(shù)量大得多。我預(yù)先計算了網(wǎng)絡(luò)中所有神經(jīng)元之間連接的權(quán)重。雖然這些權(quán)重可以用足夠的時間學(xué)習(xí),但通過進(jìn)化和預(yù)編程的神經(jīng)網(wǎng)絡(luò)架構(gòu)“學(xué)習(xí)”是有優(yōu)勢的。一旦它作為有翼成蟲(技術(shù)上稱為天體)從若蟲階段出來,蜻蜓就沒有父母來喂養(yǎng)它或向它展示如何捕獵。蜻蜓需要適應(yīng)新的身體,同時思考狩獵策略。我設(shè)置了網(wǎng)絡(luò)的權(quán)重以允許模型蜻蜓計算正確的轉(zhuǎn)彎以從傳入的視覺信息中****它的獵物。
什么樣轉(zhuǎn)彎呢?例如,一只蜻蜓想要抓住一只經(jīng)過的蚊子,它不能只瞄準(zhǔn)蚊子。借用曲棍球運動員韋恩·格雷茨基 (Wayne Gretsky) 曾經(jīng)說過的關(guān)于冰球的說法,蜻蜓必須瞄準(zhǔn)蚊子所在的位置。您可能認(rèn)為遵循 Gretsky 的建議需要復(fù)雜的算法,但實際上該策略非常簡單:蜻蜓所需要做的就是在其視線與“午餐”和固定參考方向之間保持恒定的角度。
有任何駕駛船只經(jīng)驗的讀者都會明白其中含義。當(dāng)另一艘船的視線與參考方向(例如正北)之間的角度保持不變時,船員們就會擔(dān)心,因為他們處于碰撞路線上。長期以來,水手們一直避免轉(zhuǎn)向這種稱為平行導(dǎo)航的航線,以避免碰撞。
這三個熱圖顯示了同一時刻神經(jīng)元的活動模式;第一組代表眼睛,第二組代表那些指定哪些眼睛神經(jīng)元與獵物的圖像對齊的神經(jīng)元,第三組代表那些輸出運動命令的神經(jīng)元。
轉(zhuǎn)化為想要與獵物碰撞的蜻蜓, 解決辦法很簡單:相對于某些外部參考,保持對獵物的視線恒定。然而,對于蜻蜓來說,這項任務(wù)也并非如此簡單,因為它會猛撲和轉(zhuǎn)身,收集食物。蜻蜓沒有內(nèi)部陀螺儀,無論蜻蜓如何轉(zhuǎn)動,它都會保持恒定的方向。它也沒有始終指向北方的磁羅盤。在我對蜻蜓狩獵的簡化模擬中,蜻蜓轉(zhuǎn)向?qū)C物的圖像與其眼睛上的特定位置對齊,但它需要計算該位置應(yīng)該是什么。
我的模擬神經(jīng)網(wǎng)絡(luò)的第三層,也是最后一層,是運動命令層。這一層神經(jīng)元的輸出是蜻蜓肌肉的高級指令,告訴蜻蜓向哪個方向轉(zhuǎn)動。蜻蜓還使用該層的輸出來預(yù)測它自己的動作對其視野中獵物圖像位置的影響,并相應(yīng)地更新投影位置。這種更新允許蜻蜓在接近獵物時相對于外部世界保持其獵物的視線穩(wěn)定。
生物蜻蜓可能已經(jīng)進(jìn)化出額外的工具來幫助進(jìn)行這種預(yù)測所需的計算。例如,蜻蜓有專門的傳感器來測量飛行過程中的身體旋轉(zhuǎn)以及頭部相對于身體的旋轉(zhuǎn)——如果這些傳感器足夠快,蜻蜓可以直接從傳感器輸出或使用一種方法來交叉檢查另一種。我在模擬中沒有考慮這種可能性。
為了測試這個三層神經(jīng)網(wǎng)絡(luò),我模擬了一只蜻蜓和它的獵物,它們在三維空間中以相同的速度移動。當(dāng)他們這樣做時,我的建模神經(jīng)網(wǎng)絡(luò)大腦“看到”了獵物,計算指向哪里以將獵物的圖像保持在一個恒定的角度,并向肌肉發(fā)送適當(dāng)?shù)闹噶?。我能夠證明蜻蜓大腦的這個簡單模型確實可以成功****其他蟲子,甚至是沿著彎曲或半隨機(jī)軌跡行進(jìn)的獵物。
模擬蜻蜓沒有完全達(dá)到生物蜻蜓的成功率,也不具備蜻蜓眾所周知的所有優(yōu)點(例如驚人的飛行速度)。
我們還能從蜻蜓身上學(xué)到什么?
我們還需要做更多的工作來確定這個神經(jīng)網(wǎng)絡(luò)是否真的包含了蜻蜓大腦的所有秘密。弗吉尼亞州霍華德休斯醫(yī)學(xué)研究所 Janelia 研究園區(qū)的研究人員為蜻蜓開發(fā)了微型“背包”,可以在蜻蜓飛行時測量其神經(jīng)系統(tǒng)發(fā)出的電信號,并傳輸這些數(shù)據(jù)進(jìn)行分析。背包足夠小,不會分散蜻蜓的注意力。同樣,神經(jīng)科學(xué)家還可以記錄蜻蜓大腦中單個神經(jīng)元的信號,同時昆蟲保持不動,但通過向其提供適當(dāng)?shù)囊曈X提示,使其認(rèn)為它在移動,從而創(chuàng)建了一個蜻蜓級的虛擬現(xiàn)實。
來自這些系統(tǒng)的數(shù)據(jù)允許神經(jīng)科學(xué)家通過將蜻蜓大腦模型的活動與活躍蜻蜓中生物神經(jīng)元的活動模式進(jìn)行比較來驗證蜻蜓大腦模型。雖然我們還不能直接測量蜻蜓大腦中神經(jīng)元之間的個體連接,但我和我的合作者將能夠推斷出蜻蜓的神經(jīng)系統(tǒng)是否正在進(jìn)行類似于我的人工神經(jīng)網(wǎng)絡(luò)預(yù)測的計算。這將有助于確定蜻蜓大腦中的連接是否類似于我在神經(jīng)網(wǎng)絡(luò)中預(yù)先計算的權(quán)重。我們將不可避免地找到我們的模型與實際蜻蜓大腦不同的方式。也許這些差異將為蜻蜓大腦加速計算的捷徑提供線索。
蜻蜓還可以教我們?nèi)绾卧谟嬎銠C(jī)上實現(xiàn)“注意力”。它的神經(jīng)系統(tǒng)會提高對特定的、可能選定的目標(biāo)的反應(yīng)音量,即使在同一視野中可以看到其他潛在的獵物。蜻蜓一旦決定追逐特定的獵物,除非捕捉失敗,否則絕不改變目標(biāo)。
即使我們最終發(fā)現(xiàn),用于引導(dǎo)注意力的“蜻蜓機(jī)制”不如人們在擁擠的咖啡店中集中注意力的那些機(jī)制那么復(fù)雜,但這種更簡單但功耗更低的機(jī)制可能有利于下一代算法和計算機(jī)系統(tǒng)的運算。
研究蜻蜓大腦的優(yōu)勢并不止于新算法;它們還會影響系統(tǒng)設(shè)計。蜻蜓的眼睛速度很快,相當(dāng)于每秒 200 幀:這是人類視覺速度的幾倍。但它們的空間分辨率相對較差,可能只有人眼的百分之一。盡管感知能力有限,但了解蜻蜓如何如此有效地捕獵,可以為設(shè)計更高效系統(tǒng)提供建議。再回到導(dǎo)彈防御問題,蜻蜓的例子表明,我們具有快速光學(xué)傳感的反導(dǎo)彈系統(tǒng)可能需要較低的空間分辨率來擊中目標(biāo)。
其他昆蟲“老師”們
蜻蜓并不是當(dāng)今唯一可以為受神經(jīng)啟發(fā)的計算機(jī)設(shè)計提供信息的昆蟲。帝王蝶的遷徙距離令人難以置信地長,它們利用某種與生俱來的本能在一年中的適當(dāng)時間開始它們的旅程,并朝著正確的方向前進(jìn)。我們知道它們依賴于太陽的位置,通過太陽航行需要跟蹤一天中的時間。比如一只向南飛的蝴蝶,它可以感知到太陽早上在你的左邊,而在下午的時候在右邊。因此,為了確定路線,蝴蝶大腦必須讀取自己的晝夜節(jié)律,并將該信息與所觀察到的信息結(jié)合起來。
其他昆蟲,如撒哈拉沙漠螞蟻,必須長距離覓食。一旦找到食物來源,這只螞蟻不會簡單地原路返回巢穴,很可能是一條迂回的路徑。相反,它可以計算返回的直接路線。因為螞蟻食物來源的位置每天都在變化,所以它必須能夠記住它在覓食過程中走過的路徑,將視覺信息與一些內(nèi)部距離測量結(jié)合起來,然后 從這些記憶中計算出它的返回路線。
雖然沒有人知道沙漠螞蟻的哪些神經(jīng)回路執(zhí)行這項任務(wù),但 Janelia 研究園區(qū)的研究人員已經(jīng)確定了讓果蠅使用視覺地標(biāo)進(jìn)行自我定位的神經(jīng)回路 。沙漠螞蟻和帝王蝶可能使用類似的機(jī)制。這種神經(jīng)回路有朝一日可能會被被用在低功率無人機(jī)中。
如果受昆蟲啟發(fā)的計算效率使得這些專門組件的數(shù)百萬個實例可以并行運行以支持更強大的數(shù)據(jù)處理或機(jī)器學(xué)習(xí),那又會怎樣?下一個 AlphaZero 能否結(jié)合數(shù)以百萬計的螞蟻覓食架構(gòu)來改進(jìn)其游戲玩法?也許昆蟲會激發(fā)新一代計算機(jī)。一小群類似蜻蜓****的算法可用于控制游樂園游樂設(shè)施的移動部件,確保即使在復(fù)雜但激動人心的駕駛中,設(shè)備也不會發(fā)生碰撞。
沒有人知道下一代計算機(jī)會是什么樣子,同樣,沒有人能說出平臺開發(fā)的最佳途徑是什么。雖然研究人員從人腦中汲取靈感開發(fā)了早期的神經(jīng)網(wǎng)絡(luò),但今天的人工神經(jīng)網(wǎng)絡(luò)通常依賴于與大腦截然不同的計算。研究生物神經(jīng)回路中單個神經(jīng)元的計算——目前只能直接在非人類系統(tǒng)中實現(xiàn)——可能會教給我們更多。
昆蟲,看似簡單,但它們的能力往往令人驚訝,對下一代計算機(jī)的發(fā)展有很大貢獻(xiàn)。所以下次當(dāng)你看到一只昆蟲做一些聰明的事情時,想象一下如果你能擁有一支由小蜻蜓、蝴蝶或螞蟻大腦組成的小軍隊的效率,它會對你的日常生活產(chǎn)生什么影響。也許未來的計算機(jī)會給“蜂巢思維”這個術(shù)語賦予新的含義,它擁有大量高度專業(yè)化但極其高效的微型處理器,能夠根據(jù)手頭的任務(wù)進(jìn)行重新配置和部署。隨著當(dāng)今神經(jīng)科學(xué)的進(jìn)步,這種看似幻想的事物可能比您想象的更接近現(xiàn)實。
素材來源:https://spectrum.ieee.org/fast-efficient-neural-networks-copy-dragonfly-brains
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。