ML4GW / ML4GW/DeepClean

How many FFTs required for stable ASD loss?

Open
#23 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

loss function research topic
Dominant language
Python
Stars
10
Forks
6
PR merge metrics
No merged PRs in 30d

Description

The PSDLoss loss function used to optimize DeepClean relies on a Torch implementation of the Welch transform to estimate the PSD.

Using longer training kernels gives us more stable estimates of the PSD (or at least allows us to do this with higher frequency resolution, and I'm not sure we want worse resolution than the current default value of 1Hz), but saddles us with extra compute and memory usage/copying that we otherwise wouldn't need.

How stable do these PSD estimates need to be to get good performance with stable PSDs at test time? Can we go all the way as low as 1 and just take a single fourier transform?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the PSDLoss and Welch-transform implementation in libs/trainer/deepclean/trainer/criterion.py, starting at the linked loss function and Torch import. Compare PSD stability and compute or memory costs across longer kernels and fewer Fourier transforms, including a single transform. Done means documenting the stability requirement and recommended setting for training versus test-time PSD estimates.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, pytorch
Domain
machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.