timephy / graphnet

Graph neural networks for neutrino telescope event reconstruction

Home Page:https://icecube.github.io/graphnet/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

logo

build pylint coverage License

⚙️ Install

We recommend installing graphnet in a separate environment, e.g. using Anaconda (see details on installation here). The fastest way to get up and running is to install the package in the provided conda environment:

$ git clone git@github.com:<your-username>/graphnet.git
$ cd graphnet
$ conda env create -f envs/gnn_py38.yml
$ conda activate gnn_py38
(gnn_py38) $ pip install -e .[develop]

This should allow you to e.g. run the scripts in examples/ out of the box.

You can also install the package in a python virtual environment, or in your system python, but then you will have to contend with C++ compiler versions; the non-standard interplay between pytorch and pytorch-geometric (see e.g. here), which graphnet uses internally; etc.

🤝 Contributing

To make sure that the process of contributing is as smooth and effective as possible, we provide a few guidelines in the contributing guide that we encourage contributors to follow.

In short, everyone who wants to contribute to this project is more than welcome to do so! Contributions are handled through pull requests, that should be linked to a GitHub issue describing the feature to be added or bug to be fixed. Pull requests will be reviewed by the project maintainers and merged into the main branch when accepted.

🧪 Experiment tracking

We're using Weights & Biases (W&B) to track the results — i.e. losses, metrics, and model artifacts — of training runs as a means to track model experimentation and streamline optimisation. To authenticate with W&B, sign up on the website and run the following in your terminal after having installed this package:

$ wandb login

You can use your own, personal projects on W&B, but for projects of common interest you are encouraged to join the graphnet-team team on W&B here, create new projects for your specific use cases, and log your runs there. Just ask @asogaard for an invite to the team!

If you don't want to use W&B and/or only want to log run data locally, you can run:

$ wandb offline

If you change you mind, it's as simple as:

$ wandb online

The examples/train_model.py script shows how to train a model and log the results to W&B.

About

Graph neural networks for neutrino telescope event reconstruction

https://icecube.github.io/graphnet/

License:Apache License 2.0


Languages

Language:Python 100.0%