PiNN: A Python Library for Building Atomic Neural Networks of Molecules and Materials

Yunqi Shao, Matti Hellström, Pavlin D. Mitev, Lisanne Knijff, Chao Zhang
10/8/2019
physics.comp-phcond-mat.dis-nnphysics.chem-ph

Official code: Teoroo-CMC/PiNN (130 stars, BSD-3-Clause, last commit 2026-09-17).

Abstract

Atomic neural networks (ANNs) constitute a class of machine learning methods for predicting potential energy surfaces and physico-chemical properties of molecules and materials. Despite many successes, developing interpretable ANN architectures and implementing existing ones efficiently are still challenging. This calls for reliable, general-purpose and open-source codes. Here, we present a python library named PiNN as a solution toward this goal. In PiNN, we designed a new interpretable and high-performing graph convolutional neural network variant, PiNet, as well as implemented the established Behler-Parrinello high-dimensional neural network. These implementations were tested using datasets of isolated small molecules, crystalline materials, liquid water and an aqueous alkaline electrolyte. PiNN comes with a visualizer called PiNNBoard to extract chemical insight "learned" by ANNs, provides analytical stress tensor calculations and interfaces to both the Atomic Simulation Environment and a development version of the Amsterdam Modeling Suite. Moreover, PiNN is highly modularized which makes it useful not only as a standalone package but also as a chain of tools to develop and to implement novel ANNs. The code is distributed under a permissive BSD license and is freely accessible at https://github.com/Teoroo-CMC/PiNN/ with full documentation and tutorials.

View on arXivView PDF

Code Implementations(1)

Teoroo-CMC/PiNNOfficial100%
BSD-3-Clause

A Python library for building atomic neural networks

13041Python, NextflowOct 4, 20191 months agoBSD-3-Clause

Similar Papers

Cite this paper

@article{shao2019pinn,
  title  = {PiNN: A Python Library for Building Atomic Neural Networks of Molecules and Materials},
  author = {Yunqi Shao and Matti Hellström and Pavlin D. Mitev and Lisanne Knijff and Chao Zhang},
  year   = {2019},
  eprint = {1910.03376},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1910.03376}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1910.03376.svg)](https://codeofpaper.com/paper/1910.03376)

Discussion