Skip to main content

Accelerating gravitational wave template generation with machine learning.

Project description

CI Pipeline for mlgw_bns Documentation Status PyPI version Code style: black

Machine Learning for Gravitational Waves from Binary Neutron Star mergers

This package's purpose is to speed up the generation of template gravitational waveforms for binary neutron star mergers by training a machine learning model on a dataset of waveforms generated with some physically-motivated surrogate.

It is able to reconstruct them with mismatches lower than 1/10000, with as little as 1000 training waveforms; the accuracy then steadily improves as more training waveforms are used.

Currently, the only model used for training is TEOBResumS, but it is planned to introduce the possibility to use others.

The documentation can be found here.

Installation

To install the package, use

pip install mlgw-bns

For more details see the documentation.

Inner workings

The main steps taken by mlgw_bns to train on a dataset are as follows:

  • generate the dataset, consisting of EOB waveforms
  • decompose the Fourier transforms of the waveforms into phase and amplitude
  • downsample the dataset to a few thousand points
  • compute the residuals of the EOB waveforms from PN ones
  • apply a PCA to reduce the dimensionality to a few tens of real numbers
  • train a neural network on the relation between the waveform parameters and the PCA components

After this, the model can reconstruct a waveform within its parameter space, resampled at arbitrary points in frequency space.

In several of the training steps data-driven optimizations are performed:

  • the points at which the waveforms are downsampled are not uniformly chosen: instead, a greedy downsampling algorithm determines them
  • the hyperparameters for the neural network are optimized, according to both the time taken for the training and the estimated reconstruction error, also varying the number of training waveforms available.

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

mlgw_bns-0.10.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

mlgw_bns-0.10.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file mlgw_bns-0.10.0.tar.gz.

File metadata

  • Download URL: mlgw_bns-0.10.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.10 Linux/5.13.0-10039-tuxedo

File hashes

Hashes for mlgw_bns-0.10.0.tar.gz
Algorithm Hash digest
SHA256 1535cf2b771c3c1beb6041f3ab1892d1f2a061b0f34eb1a3d5c9e68977804683
MD5 6799debb597606df866b65d94a962c23
BLAKE2b-256 2d95634f015d942d0838791dff6112db154fa959f7314af309e88d0ccec0643e

See more details on using hashes here.

File details

Details for the file mlgw_bns-0.10.0-py3-none-any.whl.

File metadata

  • Download URL: mlgw_bns-0.10.0-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.10 Linux/5.13.0-10039-tuxedo

File hashes

Hashes for mlgw_bns-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3713d9cef1a77570a593a385dc7a5227fd8f0a40c954c7ce20550ec29ba3bb8e
MD5 de9c84ce28bda379e08c9802ce5c604f
BLAKE2b-256 91c0e58d53b8118d9ce599c33c81abffe27a41fdc2b7280e0b5cc7dabc8bfdd4

See more details on using hashes here.

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