rxnfp 仓库介绍(https://rxn4chemistry.github.io/rxnfp)
rxnfp仓库的核心是提供生成 rxnfp 反应指纹的工具(预训练模型、Python 库)和实验框架,而非现成的大规模指纹数据集。用户需自行获取原始反应 SMILES 数据(如 USPTO、Schneider 50k),通过仓库提供的工具生成 rxnfp 指纹。这种设计的优势是支持用户灵活处理自定义反应数据,适配不同研究场景。
rxnfp(Reaction Fingerprint)是一个基于 Transformer 模型的化学反应指纹工具库,由 IBM 欧洲研究院与伯尔尼大学团队联合开发,核心用于从化学反应的文本表示(反应 SMILES)中提取 “反应级特征”,支持反应分类、产率预测、反应空间映射等化学信息学任务。相关研究成果发表于《Nature Machine Intelligence》等期刊,是化学 AI 领域的重要基础工具。
核心功能与特点
-
反应指纹生成:基于预训练的 BERT 模型(Transformer 架构),直接从 “反应 SMILES”(如
反应物.试剂>>产物的字符串)中提取固定长度的向量(rxnfp 指纹),无需手动区分反应物 / 试剂、无需原子映射,适配任意类型的有机化学反应。- 指纹维度:默认 256 维(可通过模型微调调整);
- 核心优势:通过 “掩码语言建模” 预训练,自动学习反应中的键断裂 / 形成规律、试剂作用等 “化学语义”,远超传统结构型指纹(如 AP3)的表达能力。
-
支持的任务:
- 反应分类(如识别 Suzuki 偶联、Buchwald-Hartwig 胺化等反应类型);
- 反应产率预测(作为 Yield-BERT 模型的基础特征);
- 化学反应空间映射(结合 TMAP 降维实现反应聚类与相似性搜索)。
-
易用性:提供 Python 库(
rxnfp)和预训练模型,可直接通过代码调用生成指纹,示例如下:from rxnfp.transformer_fingerprints import ( RXNBERTFingerprintGenerator, get_default_model_and_tokenizer ) model, tokenizer = get_default_model_and_tokenizer() fp_generator = RXNBERTFingerprintGenerator(model, tokenizer) rxn_smiles = "CC(=O)O.OCC>>CC(=O)OCC.O" # 酯化反应示例 fingerprint = fp_generator.generate_fingerprint(rxn_smiles) # 生成256维rxnfp指纹
是否包含 rxnfp 分子指纹数据集?
该仓库不直接提供预生成的大规模 rxnfp 指纹数据集,但包含以下与数据集相关的资源:
-
示例数据与生成脚本:
- 仓库的 “Examples” 板块提供小规模示例数据(如 Schneider 50k 数据集的子集、USPTO 1k TPL 的部分反应),并附代码演示如何用
rxnfp工具生成指纹; - 提供与核心论文对应的实验脚本(如反应分类、空间映射),可基于公开反应数据集(如 USPTO、Pistachio)自行生成 rxnfp 指纹。
- 仓库的 “Examples” 板块提供小规模示例数据(如 Schneider 50k 数据集的子集、USPTO 1k TPL 的部分反应),并附代码演示如何用
-
关联数据集链接:文档中明确标注了论文中使用的公开数据集来源(如 USPTO 1k TPL、Schneider 50k),用户可下载原始反应 SMILES 数据后,通过
rxnfp工具批量生成指纹。 -
预训练模型权重:仓库提供预训练的 BERT 模型权重(用于生成 rxnfp 指纹),无需用户重新训练,可直接用于处理自定义反应数据。
其他关键资源
- 预训练模型:提供多个版本的预训练模型(如基于 Pistachio 数据集训练的模型),支持直接加载使用;
- 交互式可视化:包含化学反应空间映射的 TMAP 图谱(基于 rxnfp 指纹生成),可在线查看反应聚类结果;
- 安装与文档:通过
pip install rxnfp即可安装,文档包含详细的 API 说明、实验复现步骤和常见问题解答; - 引用信息:相关研究需引用论文《Mapping the Space of Chemical Reactions Using Attention-Based Neural Networks》(2021, Nature Machine Intelligence)。
总结
rxnfp仓库的核心是提供生成 rxnfp 反应指纹的工具(预训练模型、Python 库)和实验框架,而非现成的大规模指纹数据集。用户需自行获取原始反应 SMILES 数据(如 USPTO、Schneider 50k),通过仓库提供的工具生成 rxnfp 指纹。这种设计的优势是支持用户灵活处理自定义反应数据,适配不同研究场景。
更多推荐

所有评论(0)