概览
ANI-1 是一个分子参考数据集,配有支持性代码仓库,其中包含用于访问数据记录的脚本。README 引用了介绍该数据集的论文,该论文描述了 2000 万个计算得到的有机分子非平衡构象;README 还引用了最初的 ANI-1 神经网络势论文。本条目介绍的是数据集及其提取工具,而不是可运行的势或模型训练框架。
可下载的压缩包通过 Figshare 提供,解压后会生成 ANI-1_release 目录。数据分布在八个 HDF5 文件中,文件名为 ani_gdb_s0x.h5;其中 x 的取值范围为 1 至 8,表示该文件中分子的重原子数量,即 C、N 和 O 原子的数量。文档说明的数据包括以埃为单位的分子坐标和以 Hartree 为单位的能量。README 还提供了 H、C、N 和 O 的自相互作用原子能数值。
访问数据的工作流程使用 Python、NumPy 和 h5py。所提供的 pyanitools.py 包含一个用于加载和解析数据集的 anidataloader 类,而 example_data_sampler.py 演示了如何通过该加载器采样。压缩包还包含一些类,据称可用于以作者内部格式加载和存储数据。这些工具可作为提取参考数据的起点,用于后续分子建模工作流程。
README 指定 Python 3.5 或更高版本,并将其所述读取器测试范围限定在这一版本范围内;它并未证明这些读取器与某个特定的当前环境兼容。来源摘录没有说明完整的数据记录结构、训练流程或预测性能评估。该仓库的 MIT 许可证适用于其软件;这些摘录并未明确数据集的再利用条款。
主要功能
- 八个 HDF5 数据文件按重原子数量组织分子,每个分子含一至八个 C、N 或 O 原子。
- `pyanitools.py` 中的 `anidataloader` 类可加载并解析 ANI-1 数据。
- `example_data_sampler.py` 演示了如何通过所提供的加载器对数据记录进行采样。
- 压缩包包含用于以作者内部格式加载和存储数据的 Python 类。
- README 指定了坐标单位为埃、能量单位为 Hartree,并提供了 H、C、N 和 O 的自相互作用原子能数值。
使用场景
- 建议的评估:提取坐标—能量样本,评估 ANI-1 能否作为分子能量预测工作流程的参考数据。
- 建议的评估:在设计训练集和验证集划分时,比较按重原子数量分组的数据子集。
- 建议的评估:检查采样得到的非平衡构象是否适用于分子几何—能量关系研究。
使用方式
- 阅读支持性 README,了解压缩包结构、依赖项和单位。查阅引用的数据集论文以了解科学背景,并在使用 ANI-1 时保留所要求的两条引用。
- 从关联的 Figshare collection 获取数据集压缩包。按照 README 中基于 Unix 的压缩包处理步骤解压,并找到生成的
ANI-1_release目录。 - 准备包含 Python、NumPy 和 h5py 的环境。README 指定 Python 3.5 或更高版本;请自行检查其是否适用于你的环境,不要将该说明视为对当前兼容性的验证。
- 按照文档中的设置,将
ANI-1_release/readers/lib/添加到PYTHONPATH。在运行example_data_sampler.py作为文档所述的访问检查之前,先检查pyanitools.py和示例读取器。 - 根据重原子数量选择相关的
ani_gdb_s0x.h5文件。在进行后续分析之前,请核验采样记录、保留文档规定的单位,并单独确认数据集的再利用条款与仓库软件许可证的区别。