graph2mat: Equivariant matrices meet machine learning

_images/graph2mat_overview.svg

The aim of graph2mat is to pave your way into meaningful science by providing the tools to interface to common machine learning frameworks (e3nn, pytorch) to learn equivariant matrices.

Installation

Using pip, installation is as simple as:

pip install graph2mat

I would like to…

Background

We use the term equivariant matrix to refer to a matrix whose rows and columns are representing some basis made of spherical harmonics. The values of this matrix arise from the interaction of such basis, and therefore follow the equivariance properties of products of spherical harmonics.

_images/water_equivariant_matrix.png

One particular case of equivariant matrices are those in which rows and columns represent the same basis. These matrices usually come up in physics when atom-centered spherical harmonics are used as basis functions. Some examples are Hamiltonian and overlap matrices in quantum chemistry. By the nature of the basis functions, which usually have a finite range determined by a radial function, these matrices tend to be sparse.

Dealing with both the equivariance and the sparsity of these matrices within a machine learning framework is not a trivial task. This can easily deter people from implementing powerful applications that take full advantage of the properties of these matrices. With graph2mat, we hope that people can explore the full potential of these matrices.