xnn.common.data.hub.ani1x#
ANI-1x dataset builder (single pyanitools HDF5 from figshare).
The ANI-1x data set holds ~5 million off-equilibrium conformations for H/C/N/O
organic molecules, selected by active learning rather than the dense
Normal-Mode Sampling of ani1. This is the data the
ANI-1x model (xnn.dnn.models.ani.ANI.ani1x()) was trained on, so it is
the natural companion to that preset. Unlike ANI-1 it also ships forces and
several levels of theory in one ~5.6 GB file ani1x-release.h5. Each molecule
is a top-level HDF5 group holding coordinates / atomic_numbers and a set
of per-property datasets keyed <method>.<property> (e.g. wb97x_dz.energy,
wb97x_dz.forces, ccsd(t)_cbs.energy). Not every property is computed for
every conformation, so entries are NaN-masked per conformation on read.
Reference#
Smith et al., “Less is more: Sampling chemical space with active learning”, J. Chem. Phys. 148, 241733 (2018) (the ANI-1x model), and Smith et al., “The ANI-1ccx and ANI-1x data sets, coupled-cluster and density functional theory properties for molecules”, Sci. Data 7, 134 (2020) (the release used here). Data: https://doi.org/10.6084/m9.figshare.10047041 Format / reader spec: aiqm/ANI1x_datasets
Notes
Upstream energies are in Hartree, forces in Hartree/angstrom, and positions in angstrom. By default energies/forces are converted to eV and eV/angstrom (the convention used elsewhere in xnn);
units="hartree"keeps the raw values.levelselects the level of theory."wb97x_dz"(default, wB97X/6-31G(d) – the level the ANI-1x model was fit to) and"wb97x_tz"(wB97X/def2-TZVPP) carry forces;"ccsd(t)_cbs"(the ANI-1ccx target) is energy-only. The coupled-cluster subset also has its own registered name –load_dataset("ani1ccx")(seeani1ccx), which shares this builder and the cached release file.The one ~5.6 GB file is downloaded once (cached and MD5-verified). Use
max_molecules/max_conformationsto cap the amount materialised – the full set will not fit in memory at once.ANI-1x ships no official split.
splitin{"train", "val", "test"}applies a per-conformation 80/10/10 partition with a fixed seed, so splits are disjoint and reproducible;split=Nonereturns{"all": ...}.
Classes
Builder for the ANI-1x data set (active-learning DFT energies & forces). |