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

Uploaded Source

Built Distributions

AnalysisG-4.4.7-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.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

AnalysisG-4.4.7-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.7-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.7-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.7.tar.gz.

File metadata

  • Download URL: AnalysisG-4.4.7.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.7.tar.gz
Algorithm Hash digest
SHA256 8eeac79b39c55e98eacd33efd7736241d06f97ac86b228f660db4f7b297f808d
MD5 2fbc132559fac21e7ff925a67eaff117
BLAKE2b-256 dc2608914b55fb2a866c4a53e8a31b0037455fcb7470deafa10673c71de00b6d

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 13cdadcbc14a5eec028ccf1e939bd167fc605cf50098a1706e39dbf65b1789f7
MD5 c1acd07087c562b1413a30b2d24f71e1
BLAKE2b-256 1827f44e313c74a3d9c953302be3aa8e63eae6251bebd1c063364085dbc89bc7

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9ab8b9c4016e09e41099942705bb9acbadd48f5d4166166e7e2944c59d865f7
MD5 7992c430caaf2ef741eeccc54aa8c62d
BLAKE2b-256 481ed07376889fe401405263c31bf9e8b750d3baa04116ef7d880e2798c6694a

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a7938a58c44440e0164bc974fd1e987bc1c3ba291db894a5bfd1cd9da905dee
MD5 390267ae843aebe14a81c3e16872c95a
BLAKE2b-256 dbd53bb28a479ef2104f80ae6f2bead853210ffa1fa26ea37137c8f0ffd015d0

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 86e5fa49628619ec311da87d69df3b35d834d230b3c25f02138fab3ce3519f16
MD5 1e5e44ac69845b483e0c8947e10230dc
BLAKE2b-256 06cb9bed40e16a79bbca3c22200119016e343ee26d44f6160850185f9c22a7ce

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for AnalysisG-4.4.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b53f19930208bf75faaad7546ea47321e324a9b838d8b002707092ccba5ea3e0
MD5 1113b1bc6178004bb2ef687e98e937f2
BLAKE2b-256 06420effafc8dbfb05a06a3a3af950b6e4e9e3bdefc54739b2c7ee8e6066d75e

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