Skip to main content

No project description provided

Project description

A Graph Neural Network Framework for High Energy Particle Physics

AnalysisG-Coverage-Action building-analysisG building-pyc Publish to PyPI tox-testing-analysisG

Getting Started:

The framework and tutorials are outlined within read the docs. Documentation Status

Introduction:

The aim of this package is to provide Particle Physicists with an intuitive interface to Graph Neural Networks, whilst remaining Analysis agnostic. Following a similar spirit to AnalysisTop, the physicist defines a custom event class and matches variables within ROOT files to objects that they are a representation of. A simple example of this would be a particle, since these generally have some defining properties such as the four vector, mass, type, etc.

From a technical point of view, the particle would be represented by some Python object, where attributes are matched to the ROOT leaf strings, such that framework can identify how variables are matched. A similar approach can be taken to construct event objects, where particle objects live within the event and are matched accordingly to any other particles e.g. particle truth matching. This hierarchical architecture allows for complex event definitions, first basic building blocks are defined and then matched according to some rule (see tutorial below).

To streamline the transition between ROOT and PyTorch Geometric (a Deep Learning framework for Graph Neural Networks), the framework utilizes event graph definitions. These simply define which particles should be used to construct nodes on a PyTorch Geometric (PyG) Data object. Edge, Node and Graph features can be added separately as simple python functions (see tutorial below). Post event graph construction, events are delegated to an optimization step, which trains a specified model with those graphs.

To avoid having to deal with additional boiler plate book keeping code, the framework tracks the event to the originating ROOT file using a hashing algorithm. The hash is constructed by concatenating the directory, ROOT filename and event number into a single string and computing the associated hash. This ensures each event can be easily traced back to its original ROOT file.

Or naviate to the tutorial folder, which outlines a few core concepts of this framework.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

AnalysisG-4.2.8.tar.gz (2.0 MB view details)

Uploaded Source

Built Distributions

AnalysisG-4.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.2.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.0 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

File details

Details for the file AnalysisG-4.2.8.tar.gz.

File metadata

  • Download URL: AnalysisG-4.2.8.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for AnalysisG-4.2.8.tar.gz
Algorithm Hash digest
SHA256 bb060d42adcfcb1205e0f8dd2d74b20510c8180e4f6843118000d56d313e0d8c
MD5 e43a6220fcce64fdf6b932bfbdf5d46a
BLAKE2b-256 350b12836bccf5bef7880038f50f9836a2dd6ccdfc49895e58d065c6ce083a6f

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 205a4dedfc04d2f597f87682edf2c867bfc27be91ca58fa1d4af9b8b39cc10a1
MD5 4d0cffd1a71f91d9c8533b42b07abbc4
BLAKE2b-256 bb9b27729631cbc2bfc2144ce000da80f554e27c74aaab4182d5386664dcdb15

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2658e17909900577eb34dc8d92978fe9a9c59ffcce73d589ce9304d9aa431791
MD5 5e5735bd2c4438c87d98d87cd8eb9295
BLAKE2b-256 2baa1599ce955598d5c090c24ce73e0c4e88a30965c846784c9d49f660d0e265

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.2.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.2.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 53c47063565a3e71a4b42c5532ba14e7154fde7f7ba51d98b443bb7f38f1328f
MD5 f4605b3e9310aa5ccef5ac2dd482b946
BLAKE2b-256 9e994c00213db755accbb5d2f37739320498ecf1bcaad3dabe06c82fe8c4f02c

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.2.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.2.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec49583ba9120650a26cf6cded7dcd2ff694b8cdd68718fed747a3c48a722fd4
MD5 ebed3f146a26e783d49507041f535729
BLAKE2b-256 993c4617d9e323826843fc3a658444e7229cffd4121709fc3d1f20aac77b0c6d

See more details on using hashes here.

Provenance

File details

Details for the file AnalysisG-4.2.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for AnalysisG-4.2.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cb28ca567323d8b8312c3c1f2f2c60116596ae797a074cc46b642e530cc0fc1a
MD5 7554ace2c7a0f0c38d1e1c4a63d809a1
BLAKE2b-256 6bda3ede9ca7e84d1047167fec61d30e96fb80fa24d96c9434271767baefb26a

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page