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.5.2.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

AnalysisG-4.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.5.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.6 MB view details)

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

File details

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

File metadata

  • Download URL: AnalysisG-4.5.2.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for AnalysisG-4.5.2.tar.gz
Algorithm Hash digest
SHA256 e32f43c0b2f56c42396302973e9b976accb618e82ef87d2df72d2c8844d438ea
MD5 87d793765719494aa4082ccbfb0a41d3
BLAKE2b-256 ed74f66e14e7453b632978fbc59155517c65257895ef8910761c81136d5a35a1

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 543de96c594ec462e7f91bbd1ee40b442427178745155b213d1cfa9f378b591d
MD5 34203949313f678c1ccba2be946f8bb2
BLAKE2b-256 2777929dd49322111dca7f76f1737f6ab1d57611446488289190e7c156a7b8d3

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ca07effa782de7752e149c44155fe96ee83212f60c7857d9188e09af7f7cd9a3
MD5 0779d02667a7a1b4a4bde543632ee773
BLAKE2b-256 a05a9decfdbbcfff99b03acfcc3749e64f55f112736befae0c8eceab21f8a40b

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f26fdb4e410184937b9205b859ce570a50b8d2dd4e7a06567a9d4bb2313c85a9
MD5 9988d531b2938f6a9c4bb5c4062d7329
BLAKE2b-256 15f1d647557f94540cac65f98363ac45aa8160ceb195c0fac58522adef5808d4

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 269fd6ad63371417a3cea72b35ec4e5013210adf6956a35d498ef4d7c4e98226
MD5 cffa26dcd914261ff4ac43625fa1f600
BLAKE2b-256 f56ada5482e80bca2224db0c1136b44b7b0cae950c65e0f18272c9465462b913

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.5.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7c5cfa4bd6ca2dc66e5ebf5d5e39a48d22e5aef2e040d992b5507a3132fcaa0c
MD5 f51ad638da31097dd02bd8ce94490afc
BLAKE2b-256 0a90f879854b7b9e236b2536a90cbfc3011b01d58d14b7602574597faed392df

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