擴散模型=進化算法!生物學大佬用數學揭示本質

新智元報道

編輯:alan

【新智元導讀】擴散模型的本質竟是進化算法!生物學大佬從數學的角度證實了這個結論,並結合擴散模型創建了全新的進化算法。

擴散模型居然就是生物的進化算法!

這個結論來自「新常春藤」塔夫茨大學(Tufts University)於近日發表的一項研究:

論文地址:https://arxiv.org/pdf/2410.02543

論文的壓軸大佬是美國發育和合成生物學家Michael Levin,博士畢業於哈佛大學,目前擔任塔夫茨大學Allen Discovery Center主任。

Michael Levin長期從事生物電、人工生命和許多其他生物學相關主題的研究,曾在NeurIPS 2018上發表了題爲「What Bodies Think About:Bioelectric Computation Outside the Nervous System」的精彩演講:

視頻地址:https://youtu.be/RjD1aLm4Thg

在ALife 2020上,Michael Levin還闡述了有關「機器人癌症」的話題:「what the bioelectrics of embryogenesis and regeneration can teach us about unconventional computing, cognition, and the software of life」。

這位懂計算機的生物學專家是如何理解「擴散模型就是進化算法」的?

答案是數學。

擴散模型的本質

在生物圈中,至少有兩個過程能夠泛化並創造新事物:

研究者不斷探索進化與學習之間的聯繫,從Hinton的經典著作《How Learning Can Guide Evolution》(1987年),到Vanchurin、Wolf、Katsnelson、Koonin的《Toward a theory of evolution as multilevel learning》(2022年),以及Watson和Levin的《The collective intelligence of evolution and development》(2023年)。

目前的工作認爲,在擴散模型的框架中,生成模型執行順序隨機去噪,可以通過執行自然選擇、突變和生殖隔離的進化過程來理解。

前向擴散過程將圖像作爲輸入(也可以是任何其他信號),並逐步按順序添加噪聲,直到它變成一坨完完全全的噪聲。

與之相對,擴散模型的反向是一個去噪的過程,以噪聲作爲輸入並依次去除,最終發掘出隱藏在噪聲背後的圖像。

原始擴散模型:https://arxiv.org/abs/2006.11239

想象一個複雜的任務(例如,找到飛機機翼的最佳形狀),我們可以先創建一組隨機解決方案——就像自然界中的生物種羣。然後根據特定標準(比如飛行情況)評估每個解決方案。

過程中可以「雜交」不同解決方案的優勢(從一個方案中獲取一些參數,從另一個方案中獲取另一些參數),偶爾還可以隨機改變這些方案(的參數),由此獲得新一版解決方案。

將這個過程重複多次,就像在自然選擇中一樣,通過遺傳和變異,更成功的版本存活下來並繼續發展。

通常,參數空間的結構事先是未知的,因此初始總體通常以標準正態分佈開始。這種方法的主要優點是它不需要精確理解任務的工作原理——只需能夠評估解決方案的質量就足夠了。

擴散模型在每個時間步長直接從樣本的噪聲中預測原始數據樣本:

樣本x的估計可以表示爲條件概率,結合貝葉斯公式可得:

基於深度學習的擴散模型是使用均方誤差損失進行訓練的,所以估計函數變爲:

其中的高斯項僅對局部鄰居敏感,將上式簡化:

由此可知,擴散模型和進化算法都涉及迭代數據更新和從複雜分佈中對新對象進行採樣,兩者都是定向更新和隨機擾動的組合。

在進化的情況下,是選擇+突變,而在擴散的情況下,是隨機噪聲+學習去噪。

這就提出了一個問題:這兩個過程的機制是否從根本上相互關聯?生物進化和生成建模之間是否存在深刻的數學二元性?

擴散與進化

首先,作者從生成模型的角度分析了進化。

觀察生物圈中的物種種羣,變異進化過程可以理解爲基因型和表型分佈的轉變。突變和選擇共同改變了這些分佈的形狀。

許多受生物啓發的進化算法都是通過維護和迭代大量種羣的分佈,來優化目標函數。

同樣的概念(分佈變換)是許多生成模型的核心:VAE、GAN和擴散模型學習將簡單的分佈(如標準的高斯分佈)轉換爲更復雜的分佈(分佈中的樣本代表有意義的圖像、聲音和文本)。

另一方面,也可以從進化的角度來看待擴散。

在訓練過程中,向數據點逐步加入干擾,模型會學習預測這種干擾以逆轉該過程。在採樣階段,模型從高斯分佈開始,通過降噪逐步更新數據點。

在這種情況下,定向降噪可以解釋爲有向選擇,並且每個步驟都會增加一個類似於突變的小噪聲,與生物的進化過程一致。

而如果把進化過程反過來,那麼高度適應自然的進化種羣將逐漸溶解,類似於正向擴散過程。

考慮統計物理學中的能量和概率,進化任務可以將適應度映射到概率密度,從而來與生成任務聯繫起來(高適應度對應於高概率密度)。

作者最終從數學上推導出了一種稱爲Diffusion Evolution的新算法,基於迭代誤差校正來進行優化,類似於擴散模型,但不依賴於神經網絡:

與許多經典進化算法通常收斂爲單個解不同,Diffusion Evolution可以同時發現並維護多個表現良好的解。

實驗

研究人員在多個二維優化場景中進行了實驗(Rosenbrock和Beale有一個最優值,Himmelblau、Ackley和Rastrigin有多個最優值),並與其他進化算法(CMA-ES、OpenES和PEPG)做出比較。

每種方法運行進化算法100次,每個實驗的羣體規模爲512,使用25次迭代(OpenES需要1000步才能收斂)。

結果表明,Diffusion Evolution找到了高質量和多樣化的解決方案,尤其是在最後三種情況下,其他方法都遇到了困難,並且往往收斂到單一解決方案。

在進化算法中,適應度評估通常是計算成本最高的操作,作者通過從擴散模型的工作中借用餘弦調度來減少迭代次數。

在另一項實驗中,研究人員提出了 Latent Space Diffusion Evolution,靈感來自潛在空間擴散模型 (通過探索低維潛在空間來解決高維參數空間的問題)。

學習和進化,本質上是在做同樣的事情,順着這條路,我們可以繼續思考:

模型推理是有限的,而真正的進化可能是無限且開放式的,如何使Diffusion Evolution適應開放式環境?

其他版本的擴散模型會衍生出新的進化算法嗎?擴散模型中的歸納偏差可以被引入進化算法嗎?擴散模型可以通過進化的思想來改進嗎?

參考資料:

https://gonzoml.substack.com/p/diffusion-models-are-evolutionary

https://arxiv.org/pdf/2410.02543