社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

【计算】上海人工智能实验室李玉强JACS封面:CrystalX——利用深度学习打通单晶结构解析“最后一公里”

X-MOL资讯 • 5 月前 • 796 次点击  


确定晶体材料的原子结构,是理解物质性质、验证化学合成结果并推动新材料发现的基础。长期以来,单晶X射线衍射一直是这一任务中最重要的实验手段之一,曾支撑核酸、青霉素、维生素B12、胰岛素等一系列里程碑结构的解析。随着自动化合成、高通量结晶和自驱动实验室的发展,研究人员面对的已不再只是少量“疑难结构”,而是日常产生的大量晶体样品;结构解析也因此从依赖专家经验的个案工作,逐渐变成限制高通量化学发现效率的关键瓶颈。现有晶体学软件已经能够较好地将衍射数据转化为初始电子密度图,但如何从粗略电子密度中准确判断元素类型、补全氢原子,并形成化学与晶体学上合理的全原子模型,仍往往需要晶体学专家反复判断、精修和验证。


近日,来自上海人工智能实验室、上海创智学院、上海交通大学的联合团队提出了针对这一瓶颈的深度学习解决方案CrystalX,目标是用几何深度学习自动完成从粗略电子密度到全原子结构的解析过程,从而将过去需要人工交互完成的结构解释环节压缩到秒级。该研究的核心思路,是把晶体结构解析中的“电子密度解释”问题转化为三维点云上的原子识别问题。传统流程中,SHELXT等软件可以根据X射线衍射数据完成初步定相,得到初始电子密度峰图;CrystalX则接过这一结果,进一步判断每个电子密度峰对应的非氢原子类型,并预测各重原子应连接的氢原子数量。图中展示了这一两阶段神经网络流程:第一阶段由等变Transformer建模电子密度峰之间的三维相互作用,生成非氢原子骨架;第二阶段则在该骨架上进一步建模原子间相互作用,补全氢原子,最终得到全原子结构。

图1. CrystalX架构


与简单依赖电子密度强弱不同,CrystalX重点学习原子之间的几何关系,包括距离、角度、二面角以及分子间相互作用。这一点对于区分C、N、O、F等原子序数接近、电子密度相似的元素尤其关键。针对氢原子,由于其在常规X射线电子密度图中往往不明显,研究并不直接“寻找”氢原子峰,而是预测每个非氢原子应添加的氢原子数量;同时,模型还引入晶体对称性和周期性,在3.2 Å范围内考虑分子间邻近原子,以捕捉氢键等环境信息。研究指出,将分子内和分子间相互作用联合建模,相比只使用分子内信息带来了超过7%的性能提升。


为验证模型性能,研究团队从Crystallography Open Database构建了大规模真实实验数据集,包含51,334组X射线衍射测量数据,覆盖有机、金属有机和无机晶体,涉及83种元素和86个空间群。更重要的是,研究采用严格的时间划分方式:2018年前发表的结构用于训练,2018—2024年发表的8,834个结构作为测试集。这种设置避免了模型在测试阶段“见过”相似结构,更接近真实部署时面对新化合物的场景。


结果显示,CrystalX在全测试集上对非氢原子的识别准确率达到99.71%,对氢原子的判断准确率达到99.42%。若按更严格的“结构完整性”标准评估,即一个晶体结构中所有原子都必须判断正确,CrystalX对非氢原子的结构级准确率为94.17%,对氢原子的结构级准确率为91.79%。此外,模型还能输出较为可靠的预测概率;利用这一不确定性信息,仅对最不确定的原子进行一次候选修正,就能将非氢原子和氢原子的结构级准确率进一步提升至95.80%和94.35%。


在与现有自动化晶体学工具的基准比较中,研究选择了日常工作流中广泛使用的Olex2全自动流程作为主要基线:先由SHELXT完成定相和初始非氢原子指认,再通过SHELXL进行精修,并使用Olex2的hadd命令自动添加氢原子。所有步骤均不引入人工干预,因此这一设置能够较好代表当前常规晶体结构解析中的自动化水平。结果显示,在完整COD测试集上,SHELXT对单个非氢原子的识别准确率达到94.81%,但当评估标准提升到“整个结构中所有非氢原子均需正确识别”时,其结构级完整性准确率降至46.26%。相比之下,CrystalX将这一指标提升至94.17%,提高47.91个百分点,几乎实现结构级准确率翻倍。差距在更困难的场景中进一步放大:在低信噪比数据子集中,Olex2自动流程仅正确解析2/37个结构,而CrystalX正确解析24/37个,其中22个可直接通过 checkCIF的A/B类结构检查;在大结构子集中,Olex2未能给出任何完全正确的解析结果,CrystalX则成功解析22/43个结构,其中20个可直接通过checkCIF的A/B类结构检查。一个特别的例子是,对于多达370个非氢原子的庞大有机金属结构,CrystalX仍然做到了完全正确的秒级自动解析。上述结果表明,CrystalX在低质量衍射数据和大型复杂结构这两类传统自动化流程最容易失效的场景中,仍保持了明显更强的鲁棒性和实用性。图中对这些结果进行了汇总。

图2. 大规模真实实验数据上的时间外推测试结果汇总


除大规模回顾性测试外,研究团队还进一步将CrystalX接入日常晶体学实验流程,检验其在真实新化合物解析中的可用性。这里的对比对象是代表性的全自动结构解析系统 AutoChem(最新版本ac7)。与COD等公共数据库上的批量测试不同,AutoChem的运行依赖由 CrysAlisPro 数据处理流程导出的仪器与采集设置等元数据;这些信息通常只存在于真实实验产生的原始数据包中,而不会随已发表CIF文件一同保存在公共数据库中。因此,论文无法在COD测试集上对AutoChem进行大规模回顾性评估,而是转向更接近实际部署场景的前瞻性对比实验。研究团队选取了两个新发现化合物,并通过广泛文献检索补充了一个近期发表且可运行AutoChem的案例,比较两种方法在无人干预条件下的端到端解析能力。结果显示,CrystalX在三个案例中均完成了正确的全自动结构解析;其中两个新化合物生成的CIF文件没有CheckCIF A/B级警报,并得到晶体学专家独立精修确认。相比之下,AutoChem在多种可用配置下最多只正确解析其中一个结构。速度方面,CrystalX对两个新化合物的总运行时间约为15秒,快于AutoChem的20至80 秒以上;在近期文献案例中,AutoChem约需30 秒但仍给出错误结果,而CrystalX在更短时间内完成了正确解析。这组真实实验对比表明,CrystalX的优势并不局限于公共数据库上的统计指标,而已经具备嵌入日常晶体学工作流、支撑新化合物自动结构解析的实际部署潜力。

图3. 用于真实实验部署,速度和准确性均超过AutoChem


除了速度和准确率,论文还关注模型是否真正学习到了有意义的晶体学规律。研究团队使用Attention Rollout分析等变Transformer的注意力分布,并通过t-SNE可视化模型中间表征。论文图3显示,CrystalX在判断元素类型时会关注局部几何环境和电子密度峰之间的相互作用;不同元素和不同氢原子类型在表征空间中也形成了相对清晰的聚类。这表明模型并非简单记忆训练数据,而是在一定程度上学习到了与化学环境相关的几何模式。

图4. 模型内在行为的可视化与可解释性


一个颇具亮点的发现是,CrystalX还能反向发现已发表晶体结构中的人工解释错误。研究团队在测试集中筛查了1,559个发表在JCR Q1期刊上的结构,自动过滤出10个可疑案例,经人工复核确认其中9个存在专家解释错误。这些错误包括相近电子密度原子的误判、氢原子位置错误以及氢原子缺失。论文图4给出了三个代表性案例,并显示模型修正后结构的R1指标有所改善。值得注意的是,部分错误并未触发CheckCIF的A/B级警报,说明它们可能逃过了常规验证和同行评审流程。

图5. 揭示顶刊论文中隐藏的解析错误


研究也坦诚指出了CrystalX当前方法的边界。现阶段,CrystalX主要面向有序晶体结构的常规全原子解析,尚未覆盖晶体学无序这一更复杂的长尾场景。原因在于,无序结构解析通常不是一次性完成的原子类型判断或氢原子补全,而是一个围绕残余电子密度、占有率、约束与限制、化学合理性以及验证反馈不断循环的多步过程。对于晶体学专家来说,处理无序结构更像是在解一道综合难题:需要不断提出模型假设,进行精修,观察残余电子密度和CheckCIF反馈,再据此修正模型。相比之下,公开晶体数据库通常只保存最终精修后的结构结果,缺少专家在每一步如何判断、如何调整模型以及残余电子密度如何变化的中间轨迹,因此很难为模型提供处理无序结构所需的逐步监督信号。因此,研究暂未将无序结构纳入本研究范围。但作者同时指出,这并不意味着当前技术路线无法拓展至该问题。究其本质,无序处理是对残余电子密度的解释,因此几何深度学习在这一方法同样具有较大潜力。另一方面,无序结构解析也有望与当前快速发展的智能体AI、强化学习等技术深度融合。由于无序解析本身就是一个高度复杂的求解与决策过程,模型有望在与晶体学软件及相关工具的持续交互中,逐步学习并内化晶体学家在“解释—精修—验证”迭代流程中的决策机制。


总体来看,CrystalX的意义并不只是为单晶结构解析提供了一个新的深度学习工具,更在于它展示了一种区别于传统自动化晶体学流程的新范式:不再主要依赖人工设计的规则、经验阈值和启发式判断,而是从大规模真实实验衍射数据中学习粗略电子密度与原子结构之间的复杂几何关系,并据此直接推断全原子结构。相较于传统的rule-based方法,这一路径所代表的数据驱动几何深度学习框架展现出深刻的优越性。它有望从根本上改变当前晶体学分析对专家交互式操作的高度依赖,进而成为自驱动实验室和高通量化学发现流程中的关键自动化模块。


目前,CrystalX 已全面开放并完成多平台部署。项目代码已在GitHub开源,仓库地址为:https://github.com/kaipengm2/CrystalX;模型权重已发布至Hugging Face:https://huggingface.co/Kaipengm2/CrystalX。同时,CrystalX已上线国家高等教育智慧教育平台(https://higher.smartedu.cn)、Migo觅果化学助手(https://migo-chem.intern-ai.org.cn)以及“言普•晶析”(https://crystalx.intern-ai.org.cn),实现了最小端到端工作流的网页化部署。此外,CrystalX可自然接入现有晶体学软件生态,具备良好的可扩展性与可集成性,可作为实用晶体学工具服务于实际结构解析与精修流程。


原文(扫描或长按二维码,识别后直达原文页面):

CrystalX: High-Accuracy Crystal Structure Analysis Using Deep Learning

Kaipeng Zheng, Weiran Huang*, Wanli Ouyang, Han-Sen Zhong*, Yuqiang Li*

J. Am. Chem. Soc., 2026, DOI: 10.1021/jacs.5c21832


研究团队介绍


李玉强博士,本科毕业于中南大学,博士毕业于武汉大学,师从阴国印教授。现任上海人工智能实验室AI for Science中心联合负责人&物质科学团队负责人,上海创智学院全时导师,主要从事人工智能化学、材料学、谱学相关研究,在上海人工智能实验室领导了ChemLLM系列模型的开发。获得上海市东方英才计划青年项目资助,主持新一代人工智能国家科技重大专项课题(面向材料设计的科研智能方法研究),目前以通讯作者身份在Nature Catalysis、J. Am. Chem. Soc.、 Angew. Chem. Int. Ed.、CCS Chemistry、科学通报、ICLR、CVPR、ACL、AAAI等国内外顶级化学期刊和人工智能会议发表论文20余篇,担任《Science Bulletin》、《科学通报》、《Chinese Chemical Letters》、《MGE Advances》等期刊青年编委。


黄维然博士,现任上海交通大学计算机学院副教授、博导,上海创智学院全时导师;兼任浦江上海人工智能实验室科研顾问。入选2024年“微软亚洲研究院铸星计划”学者,荣获2024年ACM上海地区新星奖。申请人长期深耕人工智能理论与算法的研究,累计发表论文37篇;获授权专利10项,作为主要起草人撰写团体标准1项。主持国家自然科学基金青年科学基金、上海市“通用人工智能大模型”基础研究专项,同时承担腾讯、字节、阿里、百度、微软等头部企业的横向科研合作。


https://www.x-mol.com/university/faculty/402864


钟翰森,上海奇算光启信息技术有限公司创始人,毕业于中国科学技术大学,国家级青年人才,从事光子量子计算与人工智能交叉领域研究。在中科大期间,钟翰森作为第一作者研制出全球首个光量子计算机"九章",论文发表于Science,实现量子计算优越性里程碑,入选"中国十大科技进展"。此后,来到上海人工智能实验室开展人工智能算法研究,他开发出人工智能驱动的裸眼3D显示算法,相关成果于Nature发表;人工智能赋能原子阵列排列,入选美国物理学会评选年度物理学10大进展。2024年创立奇算光启公司,瞄准AI算力革命,研发高性能光子计算芯片,突破传统芯片能效瓶颈,为人工智能大模型构建全新硬件基座。



点击“阅读原文”,查看 化学 • 材料 领域所有收录期刊

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/195968