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

Uploaded Source

Built Distributions

AnalysisG-4.4.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

AnalysisG-4.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.4.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

AnalysisG-4.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (35.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

AnalysisG-4.4.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.1 MB view details)

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

File details

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

File metadata

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

File hashes

Hashes for AnalysisG-4.4.3.tar.gz
Algorithm Hash digest
SHA256 d4b10569fb592ec297462c05c1c50fcc9b4a0adc540a276abbd449243d6c44e0
MD5 57a9d0c94e83ef4d479c3f88204e410c
BLAKE2b-256 4f84c7910dc95067e850901aa4a0fd8a61e54a2918d4fd1d3ac61cb8c415ffb8

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 70bc73ca2069cc9e8aa4663b38b3096df5d17580161b05e6cc4641bd1b654aba
MD5 b5813e2d0316896168abf3e5b472bbc1
BLAKE2b-256 4e7aa10824debaafad9cb3e1051cff0245ba2e7b65b8d9b8a619400dd3c3e411

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c89f54dc0c8cd77e7abebeb1d4e3f44833a6dcc82b8bfe9f72f1a4cafd73c0a6
MD5 c9fb1227c6da9d6c76da127dc144f213
BLAKE2b-256 5fb470407aea35a89785791f250356a6da29988c25b6f390660f234de08f8229

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 59a20941d40b9be562db47c27001eabad7d8d3816f29b1100b8f3e7ad6ba3689
MD5 d5ba6f7adf1792e8d03549af7516c842
BLAKE2b-256 e96882313b54cbd5be0dd47992bfe50d5c8fa864e01368a0b33e19d59821023e

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f51c18556abb939a029f9545e2465b29f7316585022e7c1173c033bdf084f5a1
MD5 7fdad1b1e4dae5a3180b9c785d38c4c4
BLAKE2b-256 a1e8e835fb0db4572c0c6149036300db10b0094cd37bdec553b5617006cf97e8

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cb7e0f5ecb5f17a644230e4acc95e0fb04fac8941de37a704f235a89a46cdc54
MD5 c3c4f8f1c2775ec8835f3885790a9a8e
BLAKE2b-256 055ed277933221b7c59b26cca925b2d2ba10ea782f486b116df6365e87d5494c

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