跳转到正文

Mordred

Hirotomo Moriwaki

Mordred 是一款 Python 分子描述符计算器,支持命令行和基于 RDKit 的库工作流,可生成用于化学信息学分析和下游模型评估的描述符表。

条目更新 ·

概览

Mordred 计算分子描述符,供化学信息学工作流使用。它提供处理分子文件的命令行界面,以及接受 RDKit 分子对象的 Python 库接口。其作用是将分子结构转换为数值特征;所提供的资料介绍的是描述符计算,而非经过训练的分子性质预测模型。README 报告,在其示例配置中包含 1,613 个二维描述符和 213 个三维描述符,总计 1,826 个。

命令行工作流接受 SMI、SDF 和 MOL 文件,并支持自动选择或显式指定输入格式。结果可以 CSV 格式写入标准输出,也可以保存到文件。用户可以选择描述符类别、提供多个输入文件、配置进程数,或采用流式输入。在 Python 中,Calculator 可以为单个 RDKit 分子计算描述符,也可以基于多个分子生成 pandas 表格。文档列出的描述符类别包括原子数和键数、环数量、拓扑指数、氢键描述符和 SLogP。

准备可比较的特征表时,配置很重要。库示例使用 ignore_3D=True 排除三维描述符,而命令行的三维选项要求输入 SDF 或 MOL。文档将流式处理描述为一种不需要获知分子数量的低内存模式。README 推荐通过 conda 安装,也说明了先安装 RDKit 再通过 pip 安装的方式;所提供的 setup 文件声明了依赖约束。这些摘录无法证明它与当前环境兼容,也无法证明其预测准确性,因此安装检查和下游模型评估仍应作为单独任务处理。

主要功能

  • 计算二维和三维分子描述符;README 示例报告 1,613 个二维描述符和 213 个三维描述符。
  • 通过命令行界面接受 SMI、SDF 和 MOL 文件,并将描述符结果写入标准输出或 CSV 文件。
  • 支持选择描述符类别,包括 ABCIndex 和 AcidBase,无需使用完整的描述符集合。
  • 支持处理多个输入文件,并提供可配置的进程数和流式输入。
  • 提供面向 RDKit 分子对象的 Python Calculator 接口,可生成单分子结果和 pandas 表格输出。
  • 可在库接口中排除三维描述符;命令行三维计算要求输入 SDF 或 MOL 文件。

使用场景

  • 建议评估:为 QSAR 或分子性质建模流程准备二维描述符表,然后单独评估模型性能。
  • 建议评估:使用 RingCount、HydrogenBond 或 AcidBase 等选定类别,对化合物集合中的文档所述结构描述符进行比较。
  • 建议评估:在目标环境中检查输出完整性和内存使用情况,以评估流式输入是否适用于较大的分子文件工作流。
  • 建议评估:使用合适的 SDF 或 MOL 输入比较仅含二维特征和包含三维特征的特征集,不预设其具有预测优势。

使用方式

  1. 查阅 README 了解文档所述的安装方式。README 推荐 conda;通过 pip 安装则要求预先安装 RDKit。请根据目标环境核对所提供的依赖约束,不要假设其与当前环境兼容。
  2. 按照 README 中的安装测试流程操作,然后再处理数据集合。将此步骤视为本地环境检查,而非对科学适用性的验证。
  3. 准备一小批具有代表性的 SMI、SDF 或 MOL 输入。评估命令行三维选项时使用 SDF 或 MOL,并决定初始表格是否应仅包含二维描述符。
  4. 参照 官方示例,选择命令行文件输出或基于 RDKit 的 Calculator 接口。如果不需要完整集合,可选择描述符类别;库接口也支持 pandas 输出。
  5. 下游使用前先检查生成的表格。查阅 主文档 获取更多指南,然后在自己的数据上分别评估描述符的适用性和任何预测模型。

相关资源

Molfeat

开源工具

Molfeat 是一款用于小分子特征化的 Python 工具包,将分子指纹、描述符和预训练嵌入与并行转换、缓存及可扩展插件相结合。

开源Python

分子性质预测 · 化学信息学

ChemBERTa

模型

ChemBERTa 提供用于化学 SMILES 的类 BERT 模型,包括采用 RoBERTa 掩码语言建模的检查点,以及用于预训练、微调和分子性质预测研究的笔记本。

开源Python

分子性质预测

ChemCP 是一款 MCP App,可使用 RDKit.js 将 SMILES 字符串转换为交互式二维分子图和计算描述符,并为支持 MCP Apps 的主机提供聊天内查看器。

TypeScriptJavaScript

化学信息学

ChemCrow

智能体

ChemCrow 是一个基于 Python、使用 Langchain 构建的化学智能体软件包,可将语言模型推理与 RDKit、paper-qa、化学数据库和反应规划工具连接起来。

开源Python

化学信息学 · 文献与研究

Chemistry Development Kit (CDK) 是一个 Java 库,可在其他程序中用于化学表示、文件转换、结构搜索、指纹生成、QSAR 描述符计算和分子渲染。

开源

化学信息学

ChemML

开源工具

ChemML 是一套用于化学与材料数据分析、挖掘和建模的 Python 工具,采用模块化设计,并有关于图神经网络、AutoML 和可解释性的工作记录。

开源Python

分子性质预测 · 材料发现

相关指南

模型

如何在 Chemprop 和 DeepChem 之间选择

比较 Chemprop 对分子性质预测的专注方向与 DeepChem 更广泛的科学机器学习范围,然后通过共享数据、明确的输入与输出以及可复现的决策标准,规划公平的评估。

部署

化学 AI 本地部署检查清单

为 RDKit、Chemprop 或 DeepChem 规划隔离且可复现的本地环境。在使用敏感化学数据前,检查文档所述依赖、数据流转、示例输出和恢复流程。