几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
AITNT-国内领先的一站式人工智能新闻资讯网站 搜索
几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元
7505点击    2025-04-24 09:40

人工生命研究的新纪元!


「人工生命」(artificial life,或简写为ALife),旨在模拟生命的行为、特性和演化过程,理解生命的本质,涉及涌现现象、自组织系统或形态发生机制。


人工生命(ALife)的研究中,蕴含着能够推动和加速AI进步的重要启发和灵感。


人工生命中两类不同的Lenia系统,见下图。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


对实验人员而言,拥有高效的实现当然非常关键。


而开源工具CAX将人工生命的模拟速度,提升了最多2000倍!


伦敦帝国理工学院的博士生、做过Sakana AI的实习生Maxence Faldor,在X上激动地发布CAX v0.2.0!


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


开源工具库CAX:专为加速人工生命研究而设计


CAX支持离散系统和连续系统,包括神经细胞自动机(Neural Cellular Automata,NCA),而且适用于任意维度。


不止于传统的细胞自动机,它还能处理粒子系统等多种模型,所有功能都整合在一个直观易用的统一API中。


X用户JJ Walker星标推荐CAX,表示CAX将颠覆人工生命研究,更新后的版本既快又好用。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


介绍CAX的论文,已经入选ICLR 2025 Oral。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



论文链接:https://openreview.net/pdf?id=o2Igqm95SJ

项目链接:https://github.com/maxencefaldor/cax


更多人工生命的实例:


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


基于注意力机制的人工生命:神经细胞自动机


人工生命研究新纪元


如果你对涌现现象、自组织或形态发生机制感兴趣,开源的CAX不容错过。


CAX是基于JAX的高性能、灵活的软件库,专为加速细胞自动机研究而设计,包括离散细胞自动机,连续细胞自动机和神经细胞自动机。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


图1:CAX支持的多种细胞自动机


CAX提出了一种统一各类细胞自动机的框架。


这种灵活的架构由两个核心模块构成:感知模块(perceive module)和更新模块(update module)。

这两个模块共同定义了细胞自动机的局部规则。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


图2:CAX架构图


从经典模型,比如基本细胞自动机和康威的生命游戏,到更高级的应用,比如可生长的神经细胞自动机和能自我分类的MNIST数字,CAX将模拟速度提升了最多2000倍。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



图3:CAX的性能基准测试


图3左:CAX与CellPyLib在经典细胞自动机上的模拟速度对比。对于基本细胞自动机,CAX提升了1400倍的速度;对于康威生命游戏,提升了2000倍


图3右:CAX官方TensorFlow实现的神经细胞自动机实验训练速度对比。在自分类MNIST数字任务中,CAX实现了1.5倍的训练加速。


几行代码,一窥上帝造物


为了展示CAX的灵活性,研究者展示了三个新颖的细胞自动机实验。


得益于CAX的模块化架构,每个实验只用几行代码,就实现了。


实验1: 扩散模型的启发


研究团队提出了一种新颖的神经细胞自动机(NCA)训练方法,其灵感来源于扩散模型。


不同于传统的基于生长(growth-based)的方法,新方法通过在固定步骤内训练NCA去除图像噪声。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


图4:受到扩散模型的启发,NCA学会在固定的步数内对图像进行去噪


结果显示,这种方法能带来更稳定的动态表现。


当研究者引入人为破坏(例如切断壁虎的尾巴)时,基于扩散的NCA展现出自发的再生能力,而传统的生长型NCA则需要专门训练才能实现类似效果。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元

图5:与需要专门训练才能实现再生和恢复能力的生长型NCA相比,基于扩散的NCA展现出自发的再生能力和更稳定的表现


实验2:MNIST数字自编码


在这次实验中,研究者使用3D神经元胞自动机(3D NCA),并将一个面初始化一个MNIST手写数字。


NCA的目标是学习一套规则,把这个MNIST数字复制到对面的那一面(红色那面)。


不过,中间有一个掩膜(mask)区域,阻止细胞进行更新。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


图6:三维NCA以一个MNIST数字图像作为初始输入(左侧);经过学习后,NCA能够在对面的红色面上重建出该数字(右侧)


关键是,遮罩中间留了一个仅有一格宽的孔洞,作为信息传递的最小通道。


为了成功地在对面复制出MNIST数字,NCA必须发展出一套能够对MNIST数字进行编码和解码的规则。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


图7:上排展示的是测试集中原始的数字图像,下排则是对应的重建结果,这些重建图像出现在NCA的红色面上


实验3:超过GPT-4的推理能力


最后,在1D-ARC数据集上训练一个一维NCA。


这个数据集是ARC数据集(Abstraction and Reasoning Corpus,抽象与推理语料库)的简化版本。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


原版NCA:左图可以看到展示任务特点的输入/输出对;中间是当前的测试输入网格;右侧则是用来构建对应输出网格的控制选项


NCA需要通过不断应用自身的规则,将输入图案逐步转化为目标图案。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


以下是每个任务的时空图。


每张图像的顶行像素是输入。随后的像素行展示了NCA在尝试将输入转换为目标时的中间步骤。底行像素代表了NCA的最终输出。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



令人惊讶的是,1D-ARC NCA在这个数据集上的表现超过了GPT-4!


在1D-ARC简化数据集上,NCA准确率达60.12%,优于GPT-4的41.56%。


NCA在涉及移动、模式复制和去噪的任务中表现出色,展示了其在抽象推理任务中的潜力。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


人工生命:细胞自动机


细胞自动机(cellular automaton),也叫元胞自动机,是一种简单的计算模型,由规则排列的单元格\细胞(cells)组成,每个单元格处于某种特定状态。


这种网格可以具有任意有限维度。


在每个单元格周围,会根据一定规则定义「邻域」(neighborhood),即与它相关联的一组单元格。


在每一个离散的时间步骤中,整个网格会根据一条固定的规则进行更新


这个规则会依据每个单元格当前的状态以及其邻域中单元格的状态,来决定该单元格在下一时刻的状态。


比如,数学家John Conway创建了一种特殊的细胞自动机——生命游戏。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


在生命游戏中,每个细胞(单元格)或死或活,其中黑色方块代表活细胞,白色方块代表死细胞。


随着模拟运行,细胞在死和活之间的切换规则如下:


1. 如果周围活细胞少于两个,任何活细胞则死亡。

2. 如果周围活细胞超过三个,任何活细胞则死亡。

3. 如果周围有两个或三个活细胞,任何活细胞则保持不变,传递到下一代。

4. 如果周围恰好有三个活细胞,任何死细胞则会复活。


利用CAX,可以同时模拟多个生命游戏。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


其中每个游戏,都可以统计存活「邻居」的数量和生长率。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元

几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


加速原理:可控元胞自动机


元胞自动机与循环卷积神经网络(Recurrent Convolutional Neural Networks,R-CNN)之间的紧密联系,已经被许多研究者观察到。


例如,Mordvintsev等人提出的通用NCA架构可被概念化为一种「带有逐单元dropout的循环残差卷积神经网络」。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元



文章链接:https://distill.pub/2020/growing-ca/


可控元胞自动机(Controllable Cellular Automaton,CCA)是元胞自动机(CA)的扩展,具备在每个时间步接受外部输入的能力。


可控元胞自动机形式化了 Sudhakaran 等人提出的目标引导神经元胞自动机(Goal-Guided NCA)概念。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


论文链接:https://arxiv.org/abs/2205.06806


外部输入可以修改 CCA 的行为,从而使其能够在保持元胞自动机基本原理的同时,动态响应不断变化的条件或控制信号。


CCA通过引入对外部输入的响应机制扩展了传统细胞自动机的能力,其原理类似于循环神经网络处理序列数据。


可控元胞自动机架起了循环卷积神经网络与元胞自动机之间的桥梁,开辟了模拟复杂系统的新可能性,这些系统既具备自主的涌现行为,又能响应外部控制


CAX利用了元胞自动机与循环卷积神经网络(R-CNN)之间已建立的紧密联系。


这种协同作用,让CAX能够借助机器学习领域的最新进展,用于加速元胞自动机研究。


为什么选择CAX?


CAX具有多重设计目标:为复杂系统研究提供1.高速、2.高质量、3.文档完备且4.高度灵活的系统实现


CAX绝非仅是对现有细胞自动机(CAs)的硬件加速实现,而是一个完整的框架体系


其中目标4通过统一抽象层实现——该架构不仅整合了各类复杂系统,更支持快速扩展或从零构建新系统。


CAX确实提供特定的抽象框架。


虽然底层采用JAX实现高效卷积运算,但其抽象层级具有更广泛的适用性。


特别值得一提的是,更新后v0.2.0版本新增了灵活日志工具,可在保持JAX加速模拟的同时集成测量功能——这能满足并行计算需求。


CAX支持离散系统和连续系统,包括神经细胞自动机,且适用于任意维度。不仅涵盖传统的细胞自动机,它还能处理粒子系统等模型,并将这一切整合在一个统一、直观的API中。


CAX提供了超过15种可直接使用的系统。


从模拟一维基本细胞自动机,到训练三维自编码神经细胞自动机,甚至是创建精美的Lenia模拟,CAX都能为探索自组织系统的丰富世界,提供多功能的平台。


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


CAX构建于JAX/Flax生态系统之上,拥有极高的运行速度和可扩展性。


它支持在CPU、GPU和TPU等各种硬件加速器上进行向量化和并行化操作。


用户可以几乎不用修改代码,就能将实验从小规模原型扩展到大规模模拟。



参考资料:

https://x.com/maxencefaldor/status/1914180979968860444

https://x.com/maxencefaldor/status/1842211478796918945

https://colab.research.google.com/github/maxencefaldor/cax/blob/main/examples/00_getting_started.ipynb#scrollTo=Zdyh8NH8fQUj

https://github.com/maxencefaldor/cax

https://openreview.net/forum?id=o2Igqm95SJ



文章来自微信公众号 “ 新智元 ”


几行代码,一窥上帝造物!帝国理工开源CAX,引爆人工生命新纪元


关键词: CAX , Ai生物 , 人工生命 , AI新闻
AITNT-国内领先的一站式人工智能新闻资讯网站
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
RAG

【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。

项目地址:https://github.com/microsoft/graphrag

【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。

项目地址:https://github.com/langgenius/dify


【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。

项目地址:https://github.com/infiniflow/ragflow/tree/main


【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目

项目地址:https://github.com/phidatahq/phidata


【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。

项目地址:https://github.com/TaskingAI/TaskingAI