☰
AI for Science重构凝聚态物理:从量子多体难题到范式革命
2026/10/21 13:13:02 网站建设 项目流程

AI for Science这个概念这几年热度一直很高,但凝聚态物理这个圈子真正开始认真对待它,其实也就是最近三四年的事。我自己第一次感受到这种变化的真正分量,是在一次模拟项目中:我们课题组研究一个二维阻挫自旋模型的基态,传统的量子蒙特卡洛被符号问题卡死,密度矩阵重正化群又在二维纠缠结构面前吃力。进度停滞了快一个学期,后来一个师弟提议试试神经网络量子态,我们抱着死马当活马医的心态跑了。结果两周多时间,之前在超级计算机上算不动的参数区域,愣是被一块消费级显卡给算了出来。

那段时间我一直在想,这到底是运气还是某种更根本的东西在起作用。后来我反复对比了传统数值方法和新方法之间的差别,慢慢意识到,AI for Science真正带来的不是某个算法上的小改进,而是整个研究思路的转变。这个转变在凝聚态物理里尤为明显,因为这门学科的核心难题——量子多体问题——本身就是维度灾难的重灾区。本文我想用尽量接地气的方式,把“范式革命”背后的技术逻辑、能实际操作的部分、以及踩过的坑都讲清楚,希望给刚入门或正在观望的同行一点参考。

1. 为什么是凝聚态物理:问题本身决定了AI的用武之地

1.1 凝聚态物理的“老大难”问题

凝聚态物理研究的对象是大量粒子聚集在一起形成的物态,晶体、磁性材料、超导体、量子液体都在这个范畴里。这类系统的核心困难在于:组成系统的粒子数太多,粒子之间又有相互作用,想要精确描述它们的行为,就必须求解一个维度高到离谱的量子多体波函数。用量子力学的语言说,一个由N个自旋组成的系统,其希尔伯特空间维度是2的N次方。对于30个自旋的简单模型,这个数字已经超过十亿,而真实材料里的粒子数是10的23次方量级。

传统做法当然不会直接去碰那个天文数字的波函数,而是想办法找近似。比如密度泛函理论(DFT)把多电子问题简化为单粒子在有效势场中的运动,在大多数晶格材料上表现很好;但对于强关联体系,比如高温超导、重费米子、量子自旋液体,DFT的近似前提就不成立了。因为在这些体系里,电子之间的关联作用强到不能用“有效势场”来概括,体系的行为往往由集体激发决定,而不是单个粒子的独立运动。

我们组早期研究阻挫磁性材料的时候就深受其苦。阻挫意味着磁性相互作用的几何排列无法同时满足所有键的要求,导致体系无法简单有序,可能出现量子自旋液体这种长程纠缠态。这类模型的标准数值工具几乎都捉襟见肘:量子蒙特卡洛在阻挫区域经常遇到符号问题,行波迭代算不下去;密度矩阵重正化群(DMRG)在一维非常有效,但到了二维,纠缠熵随着系统尺寸增长,计算代价陡增。

1.2 传统数值方法的瓶颈到底在哪

为了说清楚问题,我把通常大家会用的数值方法整理成一张对比表。

方法基本原理擅长区域主要瓶颈
密度泛函理论(DFT)单粒子近似弱关联材料、能带计算强关联体系失效,动态过程受限
量子蒙特卡洛(QMC)随机采样玻色子系统、部分自旋模型符号问题,费米子或阻挫系统不稳定
密度矩阵重正化群(DMRG)低纠缠近似一维强关联系统高维纠缠态计算量爆炸
张量网络图形化压缩波函数低纠缠态、基态与低激发态高维网络优化困难,表达能力受限

这张表里的每一个方法的共同点是:它们都是在人类先验地选定某种“数学形式”之后,再想办法在这个形式框架内求解。DFT近似了交换关联泛函,QMC选择了特定的更新规则,DMRG限制了纠缠结构。这些选择背后都有坚实的物理理由,但也正因为有了固定框架,遇到不符合假设的问题时,再怎么优化算法也很难突破天花板。

1.3 “范式革命”的核心逻辑

反观神经网络,它们不预设具体的物理关联形式,而从数据和可微函数空间中搜索一个合适的表示。用一句话概括:传统方法的思路是“先选好一个数学结构,再在这个结构里求解”,而AI方法的思路是“让一个足够灵活的数学结构自己去适配问题”。这不只是换了个求解器,而是把研究流程中“人类建模”这一步的一部分,交给了机器。

更重要的是,现代深度学习框架普遍支持自动微分。计算图的梯度可以自动反向传播,这意味着我们可以在损失函数里任意添加物理约束:能量期望值、薛定谔方程残差、对称性约束、实验数据的拟合项。物理规律与数据学习之间的边界被彻底打散了。过去我们用物理规则去约化自由度,现在我们用物理规则去指导神经网络怎么学习,这种自由度给人很强的想象力。

所以为什么偏偏是凝聚态物理成为AI for Science的热土?因为凝聚态物理的核心难题恰好是“高维表示+昂贵计算+数据存在但不可直接利用”,神经网络恰好在高维表示上有一手,训练成本又比传统数值方法更容易分摊。理解了这个大背景,后面所有具体技术细节就都能对号入座了。

2. AI在凝聚态物理中的几个主战场

2.1 机器学习力场:把DFT的精度带到分子动力学的时间尺度

先讲一个已经深度落地、甚至可以说“半工业化”的方向:机器学习力场。原子尺度模拟中有个经典矛盾——密度泛函理论精度不错但每一步都要做自洽场迭代,算起来很慢;经典分子动力学势函数飞一样快,但精度远远不够,大部分相互作用参数都是拟合出来的。机器学习力场想做的事情很简单:用神经网络去学习“原子位置到体系能量的映射”,用DFT数据训练,推理时只做一次前向计算,把DFT的精度带到分子动力学的速度。

做机器学习力场有几个绕不开的关键点。第一个是原子描述符,也就是怎么把一堆原子坐标编码成网络可以吃的输入。早期用的是对称函数(如ACSFs),后来流行用SOAP这类基于原子密度展开的描述符。最近一两年更实用的做法是直接把等变图神经网络搬过来,模型内部就保证平移、旋转、置换对称性,不需要人工设计特征。第二个是数据采样策略,也是最影响成败的一环。你不可能把整个相空间都用DFT算一遍,需要用主动学习的方法:先在少量样本上训练一个初始模型,然后用模型做分子动力学,定期挑出模型预测误差大的构型补做DFT,迭代扩充训练集。

实际算例里,我们用类似路线算过某个二维材料的声子热导率。直接做DFT分子动力学,规模稍大一点就得在超算上排队等。用机器学习力场替代以后,在普通工作站上就能轻松跑纳秒级模拟。训练数据集大约取了两千个DFT构型,第一轮主动学习就补了五百多个新样本,热导率的平均值跟实验量级对得相当好。这套流程现在在材料模拟领域已经非常成熟,是AI for Science里少见的、真正能“进组即用”的技术。

2.2 神经网络量子态:直接对波函数做变分

如果说机器学习力场还停留在“用AI加速既有流程”,那神经网络量子态就激进得多。它的思路是:别再用某个固定的数学函数形式去猜波函数,直接用神经网络来表示多体波函数本身。因为波函数本质上是一个把自旋构型映射到复数的函数,这恰好是神经网络最擅长的任务。你随便给一个自旋组态,网络输出一个复数作为概率幅,所有组态的概率幅组合起来就是这个系统的一个量子态。

接下来要做的事情跟传统变分蒙特卡洛没有本质区别:把能量期望值定义为损失函数,用蒙特卡洛采样去估计它,然后用梯度下降更新网络参数,让能量越来越低,直到逼近基态。但关键差异在于网络表达力更强,而且自动微分可以让我们轻松算出波函数参数的梯度,这在以前是不可想象的。

我们在模拟项目X中测试了二维XXZ模型的基态性质。用了一个自回归结构的波函数,训练了大约五万步,能量精度与密度矩阵重正化群在系统尺寸较小的区域吻合得很好,但在尺寸稍大、阻挫增强的区域,传统方法已开始吃力,神经网络量子态仍然能稳定收敛。这让我意识到它不只是某个具体问题的备选工具,而是对传统方法“适用边界的系统性外推”。

当然,神经网络量子态也有自己的麻烦。一个是采样效率问题,蒙特卡洛采样的方差直接决定收敛速度,网络参数稍多就会发散;另一个是复数值处理,基态波函数在有磁场或强自旋轨道耦合时通常是复数,网络输出层怎么设计就需要动点脑筋。但只要这些问题被解决,这门技术在量子多体领域的上限非常高。

2.3 物理信息神经网络与相变识别

除了直接替代数值求解器,AI在凝聚态物理里还有一个很“轻量但好用”的方向:相变与序参量的自动识别。以前我们判断一个体系有没有发生相变,通常需要靠物理直觉猜一个序参量,再算关联函数,看它是否出现长程有序。但如果体系处于对称性破缺不明显的量子相变附近,猜测序参量本身就成了难点。

我们用有监督学习做过一次测试:把经典伊辛模型在不同温度下的自旋构型二分类到“有序”和“无序”,网络在训练集上轻轻松松就达到高准确率。但更有意思的是,如果把网络最后一层提取出来的特征做可视化,会发现它在相变温度附近自动学到了一个类似序参量的表示。换句话说,神经网络不需要人类预先告诉它“什么才是序参量”,它自己就从数据里发现了关键物理量。这不只是方便,而是在帮助我们反推物理本质。

物理信息神经网络(PINN)也是另一个容易被低估的方向。做法是把物理方程作为损失函数的一部分,比如让网络输出满足薛定谔方程,残差项被压到零。我们试过求解一维周期势场中的能级,网络收敛后给出的能量与精确解偏差在可接受范围内。虽然目前PINN在复杂体系上精度还比不上专用数值方法,但它在“已知方程但边界条件复杂”的问题上有天然优势,未来值得继续关注。

3. 实操:从零跑通一个AI辅助的凝聚态物理小项目

3.1 选一个值得复现的入门项目

空谈原理没有用,落地才算数。我给刚接触这个方向的读者推荐一个可复现性很好的入门路径:先用机器学习力场替代DFT,复现一个简单分子的势能面,再把模型移植到周期系统上。如果你对量子态方向更感兴趣,也可以直接从自旋模型的神经网络量子态Baseline开始。两者有一个共同特点:代码量不大、GPU需求低(一张消费级显卡够用)、数据可以自己生成不需要申请外部资源。以机器学习力场为例,我们当时选择的是一个小体系的分子动力学模拟——先跑几十步DFT,把能量和力记录下来,然后训练一个简单的网络拟合它们。

框架方面,我建议直接用PyTorch或JAX这类支持自动微分的深度学习框架。配一台有GPU的工作站,装好CUDA和对应版本的PyTorch,环境搭建基本半小时内能完成。不要一上来就上那些大型等变模型框架,先把最简单的多层感知机调通,再逐步加复杂结构。这能让你在调试时清楚每一个环节在做什么,而不是把时间浪费在背框架源码上。

3.2 数据准备:容易翻车但最容易被忽视

数据是AI for Science项目里最值得花时间的部分。很多人以为训练一个力场模型,搞几百个DFT构型就够。实际上数据质量的权重远远超过模型结构。我们的经验是:先把体系的初始构型做能量最小化,再用从头算分子动力学(AIMD)在目标温度区间采样,间隔一定步数输出一个构型及其能量和力。这样得到的数据覆盖了相空间的重要区域,远比随机抽取合理。

数据处理有几个细节容易掉坑。第一,单位必须统一,能量用电子伏特还是千卡每摩尔,力用电子伏特每埃还是原子单位,一旦混用,模型训练出来基本是废的。建议统一到原子单位然后归一化。第二,力的向量分量很多,训练时如果把所有分量都当作独立样本,数据量会显得很大,但要注意不同构型之间的权重均衡,避免某些高能量区域主导梯度。第三,划验证集的时候不能随机抽,要按时间序列或构型分布抽,否则模型外推能力会被严重高估。我有一个血泪教训:随机划分验证集时模型误差看起来很小,但一用来做分子动力学就发散,换成按时间划分后才暴露出真实问题。

3.3 训练过程与关键参数

训练过程需要重点关注的不是网络层多深、参数量多大,而是损失函数各项的权重。对于力场模型,常见做法是同时拟合能量和力,并把力的权重调得比能量高一个量级。原因很简单:能量是全局量,单个构型的能量误差可能很小,但原子受力差一点会导致整条分子动力学轨迹偏离。我们通常的默认值是能量权重设为1,力权重设为100。训练初期先关注力的下降曲线,能量误差下降反而不太着急。

学习率设置也有规律。第一轮从1e-3开始,训练到损失收敛平台后降一个量级到1e-4,总共迭代四五万步差不多能把简单的力场模型练稳。需要注意的是,监控指标不能只看训练损失,要在验证集上算能量和力的平均绝对误差,一边训练一边打印。只有当验证集误差持续下降且不再反弹时,才算真正收敛。另外,训练过程中可以顺手记录几次分子动力学的稳定性,如果模拟过程中原子间距离突变到离谱值,说明模型在某块相空间状态不好,需要补充训练数据,这时候就要返回到数据准备环节,而不是强行加大模型容量。

以蒙特卡洛采样做类比:温度参数、步长选择都会直接影响接收率,这类“全局控制参数”的经验规律,和力场训练里的学习率调度其实是同一个心智模型——多试、多观察、多做收敛性判断,而不是盲目追求更大的网络。

4. 常见问题与排查技巧实录

4.1 数据不够还是模型不行?

在AI for Science项目里碰到无法收敛,第一反应不该是“换一个大模型”,而是先搞清楚问题出在数据还是模型。判断方法很简单:看训练集损失和验证集损失的差距,如果训练损失很低、验证损失很高,说明过拟合,优先补数据或加正则;如果两者都很高,先怀疑数据本身的问题,比如采样分布不均或标注错误。

针对凝聚态物理任务,最常见的还是数据分布不匹配。比如你把力场模型训练好以后直接扔到高温分子动力学里,它会遇到训练集里从没见过的构型,误差变得巨大甚至崩溃。这是主动学习中“覆盖度”问题的典型表现。我们后来的标准流程是:任何一次分子动力学运行之前,都先用不确定性估计器扫描一遍当前区域是不是训练分布内的构型,发现异常的构型就做DFT、补进训练集,而不是盲目期待模型泛化。这个“训练—预测—找新样本—再训练”的循环,是AI for Science里最核心的工程思维。

4.2 物理约束到底应该怎么加?

物理约束是AI for Science区别于普通机器学习最迷人的地方,但也是最容易拍脑袋的地方。比如你做神经网络量子态,如果体系有自旋翻转对称性,就可以在网络架构里内置这种对称性,减少参数并加快收敛;比如说做力场,能量必须是平移和旋转不变的,那你就不该让网络用原始坐标作为直接输入,而是用相对位置或者等变表示。这些约束不是可有可无的“正则化技巧”,而是决定模型能否物理自洽的基础。

但我也见过不少反面案例。有人为了把能量守恒严格嵌进模型,拼命增加约束项,结果约束项权重过高,整个训练全被约束项主导,数据拟合项被完全冲淡,损失曲线不降反升。我的建议是:架构层面能保证的对称性尽量在架构里保证,损失函数层面的约束项只用来处理数据拟合无法自然表达的物理规则,而且权重从0.1开始试,再慢慢调整。优先级永远是把数据项先练下来,再谈额外约束。

4.3 传统数值方法的“偏见”与AI方法的“不可解释性”

最后聊一个心态层面的问题。很多凝聚态物理背景的研究者下意识认为传统方法更可靠,AI方法只是一个“黑盒”。这个判断有一半对,但也要看到传统方法同样充满了隐含假设——DFT选什么交换关联泛函本身也是一种半经验选择,QMC的更新规则同样会影响结果。两种方法真正区别在于:传统方法的误差来源是显式的、可控的,而AI模型的误差来源往往藏在网络结构里,不容易给出实时解释。

平衡二者最务实的做法是“双重验证”:在传统方法还够用的参数区域,拿它做交叉验证;在传统方法失效的区域,用AI结果作为探索性参考,并同步记录模型的置信度。这样做既能发挥AI的扩展能力,又能维持物理学研究最需要的那种可验证性。我见过不少课题组用这种策略发表了高质量工作,因为他们不是拿AI来“碰运气”,而是把AI视为一套新的计算基础设施,让物理判断继续掌握在人类手中。

我个人在实际操作中的体会是,AI for Science对凝聚态物理来说,不是一个跟风的热词,而是一个正在重塑研究方式的技术底座。从机器学习力场到神经网络量子态,从相变自动识别到实验数据分析,它已经在多个方向证明了自己的价值。但它也不是万能药,数据质量、物理约束、模型可解释性都是一道道需要认真跨过的坎。

如果你正在准备进入这个方向,我的建议是不要一开始就追逐最复杂的网络结构或者最热门的话题,而是挑一个小而具体的问题,亲手跑通一遍“数据—训练—预测—验证”的完整闭环。这个过程本身,比任何综述都要更能让你理解什么叫做范式革命。当然,这也只是我个人踩过很多坑之后的一点体会,真正适合你的路径,还是要放进你的具体科研场景里反复试。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询