将 ScienceAI 设为星标
第一时间掌握
新鲜的 AI for Science 资讯

编辑 | ScienceAI
如今,人工智能已成为化学研究不可或缺的工具,广泛应用于化合物性质预测、反应优化和材料设计等领域。
尽管大模型作为当前人工智能领域的主流方向之一,但是基于特征工程的传统人工智能算法依然在许多垂直领域有着难以替代的作用。
目前,垂直科学领域的初学者在面对人工智能建模时,面临诸多挑战,数据处理、模型调参及实验复现等繁琐流程耗时耗力,且易使人望而却步。
近日,上海人工智能实验室物质科学团队开源 Chemia,一个专为化学性质与反应预测与优化而生的综合 AI 模型训练框架。
Chemia 借鉴「配置即代码」的理念,将从数据准备、特征工程、模型训 练、超参优化,到最终的化合物(或材料)性质以及化学反应条件预测的完整流程,全部浓缩在一个清晰直观的 YAML 配置文件中,通过一行代码即可实现化学大模型训练!
核心功能如下:
强大的算法库:内置 15 种以上经典 AI 算法,还有神经网络和图神经网络,满足不同研究需求。
自动化特征工程:自动生成各种特征,如 Morgan 指纹、RDKit 描述符等,并且专门针对化学任务内置了Unimol, ChemBERTa, Molt5等预训练模型 Embedding 的接口灵活调用,解放你的生产力。
智能优化引擎:深度集成 Optuna 进行超参数调优,自动帮你找到最优的模型参数。
灵活的工作流:无论是快速训练、k-折交叉验证,还是完整的「训练-优化」端到端流程,都能轻松实现。
Chemia:化学研究的「菜谱」
告别繁琐脚本,解放生产力
Chemia 就像是化学研究的「菜谱」,它把从数据准备、特征工程、模型训练到最终预测的整个过程,都浓缩在一个清晰直观的 YAML 配置文件里。这样一来,化学家们再也不用编写和维护复杂的代码了,只需要修改几行配置,就能轻松切换数据集、更换模型、调整特征。这不仅节省了大量时间,还让研究者能够更专注于科学问题本身。举两个例子:
Case1:当用户收集了一份化合物分子结构和 HOMO-LUMO 能量 gap 的数据集,用户只需要将这个数据集的存放路径写在 YAML 文件里面,然后通过简单的文本改动,就可以通过一行代码去训练一个预测 HOMO-LUMO 能量 gap 的人工智能模型。
Case2:用户收集了一个电池配方和电池循环次数的数据集,用户只需要将这个数据集的存放路径写在 YAML 文件里面,并指定哪些内容需要作为特征输入,接着就可以通过一行代码去训练一个电池配方预测电池循环次数的人工智能模型。这就好比只需要按照菜谱上的配方和步骤,就能轻松做出一道复杂的菜肴,而不需要从头学习复杂的烹饪技巧。
极致灵活性,满足多样化需求
Chemia 内置了 15 种以上经典 AI 算法,包括 XGBoost、LightGBM、CatBoost 等,还支持神经网络和图神经网络。无论是想快速尝试多种算法,还是深度优化特定反应,研究都可以根据自己的需求,轻松选择不同的模型进行对比和优化。这就像是你在做菜时,觉得某种调料的味道不够理想,就可以随时更换另一种调料,直到找到最满意的味道。
一键复现,提升科研可信度
在科学研究中,实验的可重复性至关重要。但传统的 AI 实验,由于代码复杂、参数众多,往往难以精确复现。通过 Chemia,只要将配置文件和数据保存好,任何人都可以精确复现你的实验流程。
这种可复现性不仅提高了科研的可信度,还极大提升了团队协作效率。这就像是你把做好的菜肴的菜谱(run_config.json 文件)分享给朋友,他们按照菜谱操作,也能做出同样的菜肴。
仅需三步,五分钟快速上手
第一步:准备你的数据(CSV 格式)
把你的数据整理成一个表格,比如:
# my_data.csv
Catalyst,Reactant1,Yield
CCO,c1ccccc1,95.2
CCN,c1ccc(C)cc1,88.5
...
第二步:编写你的配置文件(config.yaml)
在配置文件里写上你的数据路径、需要的特征和目标:
experiment_name: "My_First_Reaction_Prediction"
task_type: "regression"
data:
main_file_path: "data/my_data.csv"
smiles_col: ["Catalyst", "Reactant1"]
target_col: "Yield"
features:
per_smiles_col_generators:
Catalyst: [{type: "morgan"}]
Reactant1: [{type: "rdkit_descriptors"}]
training:
models_to_run: ["xgb", "lgbm", "rf"] # 训练三种模型对比
n_trials: 50 # 自动进行50次超参数搜索
第三步:启动!
python run_training.py --config config.yaml
实验结果、最优模型和性能报告就会自动生成,就是这么简单!
结语
Chemia 由武汉大学博士生高犇在上海人工智能实验室实习期间完成。更多项目详情欢迎查看 Github 文档,如果觉得好用的话欢迎点个 Star。
未来,Chemia 还将不断迭代,大家可以持续关注。
Github 文档:https://github.com/flyben97/Chemia/blob/main/README.md
人工智能 × [ 生物 神经科学 数学 物理 化学 材料 ]
「ScienceAI」关注人工智能与其他前沿技术及基础科学的交叉研究与融合发展。
欢迎关注标星,并点击右下角点赞和在看。
点击阅读原文,加入专业从业者社区,以获得更多交流合作机会及服务。