https://github.com/appleweiping/inr-aliasing-limits
Learned Nyquist: fundamental aliasing limits of implicit neural representations (IEEE ICASSP SPTM). Achievability + converse, Monte-Carlo-validated, real data both sides.
https://github.com/appleweiping/inr-aliasing-limits
aliasing fourier-features icassp implicit-neural-representation neural-fields reproducible-research sampling-theory signal-processing
Last synced: 8 days ago
JSON representation
Learned Nyquist: fundamental aliasing limits of implicit neural representations (IEEE ICASSP SPTM). Achievability + converse, Monte-Carlo-validated, real data both sides.
- Host: GitHub
- URL: https://github.com/appleweiping/inr-aliasing-limits
- Owner: appleweiping
- License: mit
- Created: 2026-07-10T18:19:33.000Z (14 days ago)
- Default Branch: main
- Last Pushed: 2026-07-12T19:36:40.000Z (12 days ago)
- Last Synced: 2026-07-12T21:11:12.257Z (12 days ago)
- Topics: aliasing, fourier-features, icassp, implicit-neural-representation, neural-fields, reproducible-research, sampling-theory, signal-processing
- Language: Python
- Size: 13.5 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Silent Aliasing and Certified Sampling Design for Fixed Fourier-Feature Models
Identifiability analysis and a **constructive, certified anti-aliasing sampling design**
for coordinate models built on a **fixed finite set of Fourier features** — the linear
core of Fourier-feature implicit neural representations. Target venue: IEEE ICASSP 2027
(Signal Processing Theory & Methods).
**Scope, stated up front.** Every theorem is about the fixed-feature, linear-coefficient
model (least squares on an exponential dictionary Λ). Trained nonlinear networks
(Fourier-feature MLPs, SIRENs) are an **explicitly labeled empirical extension** — and the
extension **fails for SIRENs**, which we report. Adaptive / learned frequency sets are
**outside** the theory. This is not a theory of "all INRs".
## The three-act contribution
1. **Structured indistinguishability (T1).** A visibility/aliasability calculus shows that
*arbitrary nonuniform subsets of a rate-Q sampling grid inherit the grid's aliasing
equivalence classes*: an integer tone with ν ≡ ω (mod Q) is **exactly** indistinguishable
from the model atom ω — zero training residual, full-energy reconstruction failure, and
(two-point argument) no estimator can avoid error ≥ |a|/√2. **Irregular-on-a-grid
sampling does not break exact aliasing** — the paper's central corrective.
2. **Randomization breaks it, at a rate (T3).** Off-grid jitter destroys the fold with
visibility equal to the jitter characteristic function (Gaussian: `v ≈ 2π|r|Q·σ_t`);
i.i.d. sampling gives a finite-N, dictionary-referenced concentration bound on
worst-case aliasability over a finite candidate set.
3. **Certified design (`design.py`).** The anti-aliasing objective is a **Ds-optimal
(nuisance-parameter) / LCMV null-steering** criterion on sample times — *we credit that
classical principle and do not claim it as new*. Our additions: the identifiability
reading (which cross-terms to null, and why grid designs can't — T1), a fast joint
surrogate that an **ablation shows is necessary** (coherence-only wrecks conditioning;
condition-only leaves aliasing), and — the genuinely new tool — a **continuum
aliasability certificate**: because `a_T(ν)²` is a real trig polynomial in ν, a
Bernstein/Lipschitz bound certifies the worst case over an *entire band* from the
samples alone, which the finite-candidate bound and random designs cannot.
**Honest novelty position** (full audit in [`docs/novelty-matrix.md`](docs/novelty-matrix.md)
and the claim ledger [`docs/claim-ledger.md`](docs/claim-ledger.md)): T2 (Riesz
bookkeeping) and T4 (noncentral-χ² detection) are standard and live in the supplement; the
defensible, non-derivable pieces are the **T1 grid-inheritance corrective**, the **T3
finite-N dictionary-referenced quantification**, and the **continuum certificate** plus its
identifiability-driven design use. Full proofs: [`paper/supplement.pdf`](paper/supplement.tex).
## Experiments (theory ↔ experiment closed loop)
| # | Script | What it validates |
|---|---|---|
| E1 | `run_synthetic_matrix.py` | T1 grid persistence vs i.i.d. (fixed & adversarial tones), T3 jitter law + concentration bound, error decomposition |
| E2 | `run_diagnostic_roc.py` | detection: coherent fold vs its in-band twin sits at chance (all 5 detectors, CI covers 0.5); visible tones follow the exact noncentral-χ² power curve; calibration/test separated |
| E3 | `run_real_signal.py` | sample-only bandwidth selection vs an evaluation-only oracle; anti-aliased decimation; 9 speech segments; paired CIs |
| **E6** | **`run_aliasguard.py`** | **certified design: ablation (joint objective needed), held-out & misspecified generalization, budget sweep, signal-domain payoff, continuum certificate, 1-D & 2-D** |
| E4 | `run_nonlinear.py` | trained-net extension: 20 seeds × 3 archs, NTK-prediction, **SIREN failure reported** |
| E5 | `run_image2d.py` | 2-D exact fold (linear) + lattice-vs-random masks (trained), all PSNR variants separate |
Headline E6 numbers (from `results/aliasguard.json`, regenerated by the script; the paper
pulls them via `paper/sync_macros.py`, no hand-entered numbers): designed on a focused
concern set and evaluated on **held-out unseen frequencies**, worst-case aliasability drops
to ≈0.19 vs ≈0.63 (random jitter) / ≈0.59 (E-optimal), holds under candidate-set
misspecification, and is **certified ≤ ≈0.29 over an entire continuous band** vs ≈0.57 for
random; the 2-D design gives ≈0.18 vs ≈0.68.
## Reproduction
```bash
uv venv --python 3.11 && source .venv/bin/activate # Windows: .venv/Scripts/activate
uv pip install -r requirements.lock && uv pip install -e . --no-deps
python -m pytest -q # 39 theorem/design tests (CPU)
python experiments/run_all.py # CPU reproduction (E1-E3, E6, E5 part A)
python experiments/run_all.py --full # + trained-network studies (torch + GPU)
```
`requirements.lock` pins the CPU stack. Torch experiments were run with torch 2.8.0+cu128
on an RTX 4090 (recorded per-JSON in `_meta`); GPU training uses
`torch.use_deterministic_algorithms(True, warn_only=True)`, but bitwise reproducibility
across CUDA versions is not guaranteed. The CPU pipeline is deterministic (fixed seeds).
Build the paper + supplement:
```bash
cd paper && python sync_macros.py # regenerate macros_ag.tex from results/aliasguard.json
pdflatex main && bibtex main && pdflatex main && pdflatex main
pdflatex supplement && pdflatex supplement
```
## Data provenance & licenses
| Data | Source | Terms | Processing |
|---|---|---|---|
| Speech (3 recordings) | Open Speech Repository, Harvard sentences | Freely available per OSR (see source page); **not** covered by this repo's MIT license | SHA-256 in `data/speech_provenance.json`; 2-s segments; `resample_poly` anti-aliasing |
| Mauna Loa CO₂ | NOAA GML | Public (NOAA disclaimer) | monthly means, full record, linear detrend |
| Sunspots (daily + smoothed) | SILSO, Royal Observatory of Belgium | CC BY-NC 4.0 | smoothed series is an intentionally low-pass **proxy**, labeled everywhere |
MIT license covers **code only**; third-party data remain under their own terms.
## Repository layout
```
src/inralias/ identifiability.py (T1-T4 objects) design.py (AliasGuard + certificate)
sampling.py limits.py (background) inr.py diagnostics.py signals.py
experiments/ run_synthetic_matrix run_diagnostic_roc run_real_signal run_aliasguard
run_nonlinear run_image2d run_all
tests/ test_identifiability test_theory_vs_sim test_sampling test_diagnostics_inr
test_design (39 tests; GitHub Actions on every push)
paper/ main.tex supplement.tex (full proofs) sync_macros.py figures refs.bib
docs/ novelty-matrix.md claim-ledger.md CHANGELOG-major-revision.md
results/ *.json (with _meta provenance) + figures/
submission/ ICASSP 2027 submission package (see submission/README.md)
```
## Honesty notes
* AliasGuard is a Ds-optimal / null-steering design — **classical principle, credited**;
the new pieces are the identifiability use and the continuum certificate.
* AliasGuard needs a **focused** concern set (K = O(N)); for a broad band with K ≫ N no
design beats random much, and a badly misspecified set loses the edge — reported.
* The concentration bound is a loose union bound, plotted against the empirics.
* Trained-net extension **fails for SIRENs**; all seed-level failures are released.
* CV bandwidth selection is reported even where it underperforms.
* Detection thresholds come only from `null_calibrated_threshold` (calibration null).
* "Monte-Carlo-validated" = closed forms asserted against independent simulation in
`tests/`; not a substitute for the proofs (supplement).
## Review process (ICASSP 2027)
ICASSP 2027 uses **single-anonymous** review (reviewers see author names); no manuscript
anonymization is required, so this public repository and the author name on the PDF are
compliant. The submission package is in [`submission/`](submission/).
## AI assistance disclosure
Substantial portions of the code, experiments, and manuscript were produced with AI
assistance (Anthropic Claude) under the author's direction; all results were generated by
the released, reproducible code. AI is not an author. Git history records this via
`Co-Authored-By` trailers and is not rewritten. This is disclosed in the paper's
Compliance-with-Ethical-Standards statement.
## License
MIT (code only; see `LICENSE`). Third-party data under their own terms (table above).