Skip to content

Geometric Neural Operators (GNPs) for machine learning tasks on point-cloud representations: curvature estimation, shape deformations, solvers for geometric PDEs. Also, includes weights of pretrained transferable GNP models.

Notifications You must be signed in to change notification settings

summ2020/geo_neural_op

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Documentation | Examples | Paper 1 | Paper 2

Geometric Neural Operators (GNPs)

Geometric Neural Operators (GNPs) allow for data-driven deep learning of features from point-cloud representations and other datasets for tasks involving geometry. This includes training protocols and learned operators for estimating local curvatures, evaluating geometric differential operators, solvers for PDEs on manifolds, mean-curvature shape flows, and other tasks. The package provides practical neural network architectures and factorizations for training to accounting for geometric contributions and features. The package also has a modular design allowing for use of GNPs within other data-processing pipelines. Pretrained models are also provided for estimating curvatures, Laplace-Beltrami operators, components for PDE solvers, and other geometric tasks.

Examples are included that demonstrate how GNPs can be used. This includes (i) to estimate geometric properties, such as the metric and curvatures of surfaces, (ii) to approximate solutions of geometric partial differential equations (PDEs) on manifolds, and (iii) to perform curvature-driven flows of shapes. These results show a few ways GNPs can be used for incorporating the roles of geometry into machine learning processing pipelines and solvers.

Quick Start

git clone [email protected]:atzberg/geo_neural_op.git
conda create -n gnp
conda activate gnp
pip install -r requirements.txt

You may also need to first install pip,

conda install pip 

For use of the package see the examples folder.
More information on the structure of the package also can be found on the documentation pages.

Packages

The pip install should automatically handle most of the dependencies. If there are issues, please be sure to install pytorch package version >= 2.0.0. The full set of dependencies can be found in the requirements.txt. You may want to first install pytorch package manually to configure it for your specific GPU system and platform.

Usage

For information on how to use the package, see

Additional Information

For the package, please cite:

Transferable Foundation Models for Geometric Tasks on Point Cloud Representations: Geometric Neural Operators, B. Quackenbush and P. J. Atzberger, arXiv, (2025), arXiv.

@article{quackenbush_atzberger_gnp_transfer_2025,
  title={Transferable Foundation Models for Geometric Tasks on Point Cloud Representations: Geometric Neural Operators},
  author={Quackenbush, Blaine and Atzberger, PJ},
  journal={arXiv:2503.04649},
  url={https://arxiv.org/abs/2503.04649},
  year={2025}
}

Geometric Neural Operators (GNPs) for Data-Driven Deep Learning in Non-Euclidean Settings, B. Quackenbush and P. J. Atzberger, Machine Learning: Science and Technology, 5.4, 045033, (2024), paper, arXiv.

@article{quackenbush_atzberger_gnps_2024,
  title={Geometric neural operators (gnps) for data-driven deep learning in non-euclidean settings},
  author={Quackenbush, Blaine and Atzberger, PJ},
  journal={Machine Learning: Science and Technology},
  volume={5},
  number={4},
  pages={045033},
  url={https://doi.org/10.1088/2632-2153/ad8980},
  publisher={IOP Publishing},
  year={2024}
}

Acknowledgements This work was supported by NSF Grant DMS-1616353 and NSF-DMS-2306345.


Documentation | Examples | Paper 1 | Paper 2

About

Geometric Neural Operators (GNPs) for machine learning tasks on point-cloud representations: curvature estimation, shape deformations, solvers for geometric PDEs. Also, includes weights of pretrained transferable GNP models.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%