Releases: WMD-group/ElementEmbeddings
Releases · WMD-group/ElementEmbeddings
v0.7.2
What's Changed
New element embeddings
- CHGNet (
chgnet): 64D node features from the charge-informed neural network potential, averaged over MP-20 - MatSciBERT (
matscibert): 768D token embeddings from a BERT model pre-trained on materials science literature - Chemeleon (
chemeleon): 512D post-GNN node features at t=0 from the generative crystal structure diffusion model, averaged over MP-20
Dependency change
- Removed pymatgen dependency — Mendeleev numbers are now stored as a local dictionary, eliminating the heavyweight pymatgen requirement (closes #5)
Other
- Added composition distance example script (
examples/composition_distance.py) - Fixed docs deployment race condition on gh-pages
- Excluded example scripts from ruff checks
- Regenerated cosine similarity heatmaps (16 PNGs + 14-frame GIF)
v0.7.1
What's Changed
Bug Fix: MLIP embedding dimensions
- MACE-MP-0: Fixed from 256D to 128D. Was concatenating descriptors from all interaction layers; now correctly extracts only the last layer's scalar invariants via
get_descriptors(invariants_only=True, num_layers=1) - SevenNet: Fixed from 64D to 128D. Was hooking
reduce_input_to_hidden(post-projection); now correctly hooks the last equivariant gate output to capture full scalar (l=0) node features - ORB-v2 (256D) was already correct
Other fixes
- Fixed MACE, SevenNet, and ORB citation author names and paper URLs
- SevenNet citation now uses open-access arXiv preprint
Thanks to @lizhenzhupearl for flagging the dimension issues.
v0.7.0
What's Changed
New: MLIP Element Embeddings
Element-level embeddings from three Machine Learning Interatomic Potentials, derived by averaging atom-level representations over MP-20 structures:
- MACE-MP-0 (
mace_mp0): 256-dimensional invariant descriptors from the final equivariant message-passing layer - SevenNet (
sevennet): 64-dimensional node features from 7net-0 at the energy readout input - ORB-v2 (
orb_v2): 256-dimensional node features from the energy prediction head input
Usage: Embedding.load_data("mace_mp0")
New: Visualisation Examples
- Cosine similarity heatmaps for all 13 multi-dimensional embeddings (
examples/2d_cosine/) - Animated GIF cycling through all embedding schemes
- 3D element embedding maps (UMAP, PCA, t-SNE) for 8 embedding schemes (
examples/3d_maps/) - Composite visualisation: high-dimensional embedding vectors alongside 3D reduced map
Maintenance
- Renamed
Publication/topublications/ - Added
uvto installation instructions - Fixed dead documentation link in README
- Added extraction scripts for reproducibility (
scripts/)
v0.6.2
What's Changed
Maintenance & CI
- Update all pre-commit hooks (ruff v0.5.5→v0.15.2, markdownlint, codespell, pyright, etc.)
- Fix string concatenation bugs with missing spaces in error messages
- Fix ruff lint/format violations across source and notebooks
- Remove Codecov integration (badge + CI upload step)
- Replace black badge with ruff badge
- Remove stale dev dependencies superseded by ruff (black, isort, flake8, autopep8, pyupgrade, nbqa)
- Remove unused
typing-extensionsruntime dependency - Fix ruff exclude path and move to top-level
[tool.ruff]config - Fix semantic_release config to reference pyproject.toml
- Add
pushtrigger to CI workflow so badge reflects main branch status - Fix
uv pip showflag compatibility with newer uv - Fix Windows CI Tcl/Tk errors by setting
MPLBACKEND=Agg - Bump
pypa/gh-action-pypi-publishto 1.12.4
v0.6.1
v0.6
v0.5
What's Changed
- XenonPy and CGNF embeddings are now available in ElementEmbeddings
- SpeciesEmbedddings are now supported with functions updated to support
🤷♂️ Other Changes
- Species by @AntObi in #100
- Xenonpy embeddings by @AntObi in #141
- Update ci.yml by @AntObi in #143
- Add cgnf embeddings by @aronwalsh in #145
- Add literature references to the README.md by @AntObi in #146
- Plotter updates by @AntObi in #153
- Update version number by @AntObi in #154
New Contributors
- @aronwalsh made their first contribution in #145
Full Changelog: v0.4.1...v0.5
v0.4.1
v0.4
What's Changed
- Publication folder now updated with SMACT-crystal structure prediction scripts
- oliynyk.json has been replaced with oliynyk.csv which contains the feature labels
- oliynyk_preprocessed.csv has been added with the missing values imputed which is now the default oliynyk embedding
Automated release notes
Full Changelog: v0.3.1...v0.4