dragonfly

(本文經合作夥伴 大數據文摘 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為〈导弹防御系统,如何跟蜻蜓的大脑学习计算?〉。)

【為什麼我們要挑選這篇文章】蜻蜓善於狩獵,成功率高達 95%。看到獵物後,蜻蜓可以只花 50 毫秒就發起攻擊,扣掉眼睛感測與控制肌肉的時間,蜻蜓的大腦只有 35 毫秒可以思考。相較於高等哺乳類動物,蜻蜓的大腦小的多,耗能也少,卻能夠執行高效率的運算,那蜻蜓的大腦是如何運算的?能為人類的演算法與電腦帶來什麼啟示?(責任編輯:郭家宏)

多雨的夏季,蜻蜓最為常見,這些美麗的生物的飛行速度極快,狩獵能力也極為出色:蜻蜓狩獵的成功率捕獲了高達 95% ,它們一天可以吃掉數百隻蚊子。

這種狩獵能力吸引了不少研究者的注意,幾十年來,各國機構都在嘗試將蜻蜓設計用於監視無人機的設計中。不過,桑迪亞國家實驗室的計算神經科學家 Frances Chance 想要探尋的,是這個「微型狩獵機器」的大腦。

Frances 對蜻蜓的大腦能夠低功耗地完成高速計算的能力非常好奇,並就此展開了一系列猜想和神經網絡建構。我們將她建構神經網絡的心得文章編譯如下,或許你也能從中獲得一些對神經網絡的新思考。

原文傳送門

參考蜻蜓大腦打造神經網路,可望用於國防、自駕車領域

雖然蜻蜓的大腦可能無法進行像「下圍棋」這樣的策略類遊戲,但它們確實展示了一種戰略形式:在獵物到達當前位置之前,就瞄準、攔截它的「盤中飧」。這種預判力需要以極快的速度執行計算——蜻蜓通常只需要 50 毫秒就可以開始轉動以應對獵物的動作。它可以同時跟蹤頭部和身體之間的角度,以便知道哪個翅膀應該更快地搧動,以在獵物前面轉動。

考慮到單個神經元將其所有輸入相加所需的時間(稱為膜時間常數)超過 10 毫秒,蜻蜓的大腦執行的是一項非凡的工作。

蜻蜓只需要大約 50 毫秒就開始對獵物的動作做出反應。如果我們假設眼睛中的細胞需要 10 毫秒來檢測和傳輸有關獵物的信息,另外 5 毫秒讓肌肉開始產生力量,那麼神經迴路只剩下 35 毫秒來進行計算。鑒於單個神經元通常需要至少 10 毫秒來整合輸入,因此底層神經網絡可以至少有三層深。

那麼,人類可以建立一個像蜻蜓攔截系統一樣工作的神經網絡嗎?這種神經網絡又有什麼用途呢?

模型蜻蜓根據獵物的轉動重新定向。較小的黑色圓圈是蜻蜓的頭部,保持在其初始位置。黑色實線表示蜻蜓飛行的方向;藍色虛線是模型蜻蜓眼睛的平面。紅星是獵物相對於蜻蜓的位置,紅色虛線表示蜻蜓的視線。

我首先想到的是防禦上的應用,例如導彈防禦。例如,讓未來的導彈快速計算攔截軌跡而不影響導彈重量或功耗的機載系統。

當然也可能會有民用應用,例如控制自動駕駛汽車的演算法可能會變得更高效,不再需要大量的運算設備。如果受蜻蜓啟發的系統可以執行計算以繪製攔截軌跡,那麼自主無人機或許可以使用它來避免碰撞。如果電腦可以製造成與蜻蜓大腦相同的大小(約 6 立方毫米),也許有一天驅蟲劑和蚊帳將成為過去,取而代之的是小型殺蟲無人機!

TO 相關文章:
Google 攜手哈佛,發布史上規模最大的「人腦神經網路地圖」

打造神經網路,模擬蜻蜓捕捉獵物的運算過程

為了開始回答這些問題,我建立了一個簡單的神經網絡來代替蜻蜓的神經系統,並用它來計算蜻蜓捕捉獵物的轉彎。我的三層神經網絡作為軟體模擬存在。最初,我在 Matlab 中工作,因為那是我已經在使用的編碼環境。之後,我將該模型移植到 Python 中。

因為蜻蜓必須看到它們的獵物才能捕捉到它,所以我首先模擬了蜻蜓眼睛的簡化版本,捕捉了追蹤獵物所需的最少細節。雖然蜻蜓有兩隻眼睛,但人們普遍認為它們不使用立體深度感知來估計與獵物的距離。在我的模型中,我沒有對雙眼進行建模,也沒有嘗試與蜻蜓眼睛相應的解析度。相反,神經網絡的第一層包括 441 個代表眼睛輸入的神經元,每個神經元描述視野的一個特定區域——這些區域被平鋪以形成一個 21×21 的神經元陣列,覆蓋蜻蜓的視野。隨著蜻蜓轉動,獵物圖像在蜻蜓視野中的位置發生變化。蜻蜓計算將獵物的圖像與這些「眼睛」神經元中的一個(或幾個,如果獵物足夠大)對齊所需的輪數。第二組包含 441 個神經元,也在網絡的第一層,告訴蜻蜓哪些眼睛神經元應該與獵物的圖像對齊,即獵物應該在其視野內的哪個位置。

模型蜻蜓與獵物交戰。

接收描述物體在視野中運動的輸入,並將其轉化為關於蜻蜓需要轉向哪個方向的指令計算,這類處理能力在我的人工神經網絡的第一層和第三層之間進行。在第二層中,我使用了 194,481 (21 4) 神經元,可能比蜻蜓用於此任務的神經元數量大得多。我預先計算了網絡中所有神經元之間連接的權重。雖然這些權重可以用足夠的時間學習,但透過進化和預編程的神經網絡架構「學習」是有優勢的。一旦它作為有成蟲(技術上稱為天體)從若蟲階段出來,蜻蜓就沒有父母來餵養它或向它展示如何捕獵。蜻蜓需要適應新的身體,同時思考狩獵策略。我設置了網絡的權重,以允許模型蜻蜓計算正確的轉彎,以從傳入的視覺信息中攔截它的獵物。

什麼樣轉彎呢?例如一隻蜻蜓想要抓住一隻經過的蚊子,它不能只瞄準蚊子。借用曲棍球運動員韋恩.格雷茨基(Wayne Gretsky)曾經說過的關於冰球的說法,蜻蜓必須瞄準蚊子所在的位置。您可能認為遵循 Gretsky 的建議需要複雜的演算法,但實際上該策略非常簡單:蜻蜓所需要做的就是在其視線與「午餐」和固定參考方向之間保持恆定的角度。

有任何駕駛船隻經驗的讀者都會明白其中含義。當另一艘船的視線與參考方向(例如正北)之間的角度保持不變時,船員們就會擔心,因為他們處於碰撞路線上。長期以來,水手們一直避免轉向這種稱為平行導航的航線,以避免碰撞。

這三個熱圖顯示了同一時刻神經元的活動模式;第一組代表眼睛,第二組代表那些指定哪些眼睛神經元與獵物的圖像對齊的神經元,第三組代表那些輸出運動命令的神經元。

轉化為想要與獵物碰撞的蜻蜓, 解決辦法很簡單:相對於某些外部參考,保持對獵物的視線恆定。然而,對於蜻蜓來說,這項任務也並非如此簡單,因為它會猛撲和轉身,收集食物。蜻蜓沒有內部陀螺儀,無論蜻蜓如何轉動,它都會保持恆定的方向。它也沒有始終指向北方的磁羅盤。在我對蜻蜓狩獵的簡化模擬中,蜻蜓轉向將獵物的圖像與其眼睛上的特定位置對齊,但它需要計算該位置應該是什麼。

我的模擬神經網絡的第三層,也是最後一層,是運動命令層。這一層神經元的輸出是蜻蜓肌肉的高級指令,告訴蜻蜓向哪個方向轉動。蜻蜓還使用該層的輸出來預測它自己的動作對其視野中獵物圖像位置的影響,並相應地更新投影位置。這種更新允許蜻蜓在接近獵物時相對於外部世界保持其獵物的視線穩定。

TO 相關文章:
「時間晶體」的量子特性,能用於建構類似人腦的神經網路!

生物蜻蜓可能已經進化出額外的工具來幫助進行這種預測所需的計算。例如蜻蜓有專門的感測器,來測量飛行過程中的身體旋轉以及頭部相對於身體的旋轉——如果這些感測器足夠快,蜻蜓可以直接從感測器輸出或使用一種方法來交叉檢查另一種。我在模擬中沒有考慮這種可能性。

為了測試這個三層神經網絡,我模擬了一隻蜻蜓和它的獵物,它們在三維空間中以相同的速度移動。當他們這樣做時,我的建模神經網絡大腦「看到」了獵物,計算指向哪裡以將獵物的圖像保持在一個恆定的角度,並向肌肉發送適當的指令。我能夠證明蜻蜓大腦的這個簡單模型確實可以成功攔截其他蟲子,甚至是沿著彎曲或半隨機軌跡行進的獵物。

模擬蜻蜓沒有完全達到生物蜻蜓的成功率,也不具備蜻蜓眾所周知的所有優點(例如驚人的飛行速度)。

蜻蜓大腦的簡單、低功耗特性,有助於新一代演算法的發展

我們還需要做更多的工作來確定這個神經網絡是否真的包含了蜻蜓大腦的所有秘密。維吉尼亞州霍華德休斯醫學研究所 Janelia 研究園區的研究人員為蜻蜓開發了微型「背包」,可以在蜻蜓飛行時測量其神經系統發出的電信號,並傳輸這些數據進行分析。背包足夠小,不會分散蜻蜓的注意力。同樣,神經科學家還可以記錄蜻蜓大腦中單個神經元的信號,同時昆蟲保持不動,但透過向其提供適當的視覺提示,使其認為它在移動,從而創造了一個蜻蜓級的虛擬現實。

這些系統的數據,允許神經科學家透過將蜻蜓大腦模型的活動與活躍蜻蜓中生物神經元的活動模式進行比較,來驗證蜻蜓大腦模型。雖然我們還不能直接測量蜻蜓大腦中神經元之間的個體連接,但我和我的合作者將能夠推斷出,蜻蜓的神經系統是否正在進行類似於我的人工神經網絡預測的計算。這將有助於確定蜻蜓大腦中的連接是否類似於我在神經網絡中預先計算的權重。我們將不可避免地找到我們的模型與實際蜻蜓大腦不同的方式。也許這些差異將為蜻蜓大腦加速計算的捷徑提供線索。

蜻蜓還可以教我們如何在電腦上實現「注意力」。它的神經系統會提高對特定的、可能選定的目標的反應音量,即使在同一視野中可以看到其他潛在的獵物。蜻蜓一旦決定追逐特定的獵物,除非捕捉失敗,否則絶不改變目標。

即使我們最終發現,用於引導注意力的「蜻蜓機制」不如人們在擁擠的咖啡店中集中注意力的那些機制那麼複雜,但這種更簡單但功耗更低的機制可能有利於下一代演算法和電腦系統的運算。

研究蜻蜓大腦的優勢並不止於新演算法,它們還會影響系統設計。蜻蜓的眼睛速度很快,相當於每秒 200 張畫面,這是人類視覺速度的幾倍。但它們的空間解析度相對較差,可能只有人眼的百分之一。儘管感知能力有限,但了解蜻蜓如何如此有效地捕獵,可以為設計更高效系統提供建議。再回到導彈防禦問題,蜻蜓的例子表明,我們具有快速光學感測的反導彈系統可能需要較低的空間解析度來擊中目標。

人類參考昆蟲的神經迴路後,會打造出怎樣的電腦?

蜻蜓並不是當今唯一可以為電腦設計提供啟發的昆蟲。帝王蝶的遷徙距離令人難以置信地長,它們利用某種與生俱來的本能,在一年中的適當時間開始它們的旅程,並朝著正確的方向前進。我們知道它們依賴於太陽的位置,並透過太陽了解時間。比如一隻向南飛的蝴蝶,它可以感知到太陽早上在你的左邊,而在下午的時候在右邊。因此,為了確定路線,蝴蝶大腦必須讀取自己的晝夜節律,並將該資訊與所觀察到的資訊結合起來。

其他昆蟲,如撒哈拉沙漠螞蟻必須長距離覓食,一旦找到食物來源,這隻螞蟻不會簡單地原路返回巢穴,很可能是一條迂迴的路徑。相反,它可以計算返回的直接路線。因為螞蟻食物來源的位置每天都在變化,所以它必須能夠記住它在覓食過程中走過的路徑,將視覺資訊與一些內部距離測量結合起來,然後從這些記憶中計算出它的返迴路線。

雖然沒有人知道沙漠螞蟻的哪些神經迴路執行這項任務,但 Janelia 研究園區的研究人員已經確定了讓果蠅使用視覺地標進行自我定位的神經迴路 。沙漠螞蟻和帝王蝶可能使用類似的機制。這種神經迴路有朝一日可能會被被用在低功率無人機中。

如果受昆蟲啟發的運算效率使得這些專門組件的數百萬個實例可以並行運行,以支持更強大的數據處理或機器學習,那又會怎樣?下一個 AlphaZero 能否結合數以百萬計的螞蟻覓食架構來改進其遊戲玩法?也許昆蟲會激發新一代電腦。一小群類似蜻蜓攔截的演算法可用於控制遊樂園遊樂設施的移動部件,確保即使在複雜但激動人心的駕駛中,設備也不會發生碰撞。

沒有人知道下一代電腦會是什麼樣子;同樣,沒有人能說出平台開發的最佳途徑是什麼。雖然研究人員從人腦中汲取靈感開發了早期的神經網絡,但今天的人工神經網絡通常依賴於與大腦截然不同的計算。研究生物神經迴路中單個神經元的計算——目前只能直接在非人類系統中實現——可能會教給我們更多。

昆蟲,看似簡單,但它們的能力往往令人驚訝,對下一代電腦的發展有很大貢獻。所以下次當你看到一隻昆蟲做一些聰明的事情時,想像一下如果你能擁有一支由小蜻蜓、蝴蝶或螞蟻大腦組成的小軍隊的效率,它會對你的日常生活產生什麼影響。也許未來的電腦會給「蜂巢思維」這個術語賦予新的含義,它擁有大量高度專業化但極其高效的微型處理器,能夠根據手頭的任務進行重新配置和部署。隨著當今神經科學的進步,這種看似幻想的事物可能比您想像的更接近現實。

延伸閱讀

• Google 攜手哈佛,發布史上規模最大的「人腦神經網路地圖」
• 「時間晶體」的量子特性,能用於建構類似人腦的神經網路!
• 神經網路電子鍋讓 AI 幫你煮飯!量米、加水全程自動化,一台要價近 9 萬元

(本文經合作夥伴 大數據文摘 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為〈导弹防御系统,如何跟蜻蜓的大脑学习计算?〉。圖片來源:Alex Kuimov/PxHere)