Skip to content

Releases: RadarML/nrdk

v0.2.1

04 Jan 20:27
682b4fb

Choose a tag to compare

What's changed: DX Improvements by @thetianshuhuang in #21

Improvements to the developer experience:

  • Better logging & error messages
  • Only write high-level log messages from rank 0 in multi-GPU training to avoid cluttering the log
  • Better looking outputs using rich trees for nrdk inspect
  • Log gradient norm in NRDKLightningModule

Other fixes:

  • Only write checkpoints.yaml from rank 0 to prevent concurrency bugs
  • Freeze models loaded with framework.load_model by default
  • Fix @cache @torch.compiler.disable ordering

Full Changelog: v0.2.0...v0.2.1

v0.2.0

15 Dec 19:06
cc381ab

Choose a tag to compare

Warning

This version includes breaking changes to model compilation:

  • NRDKLightningModule(compile: bool = False) has been removed; compilation should be manually invoked with NRDKLightningModule.compile instead.
  • The GRT reference implementation also now recognizes a meta.compile configuration option, and calls .compile() in train.py.

What's Changed: Compile Overhaul by @thetianshuhuang in #20, with major changes to overhaul the torch.compile usage patterns:

  • torch.compile is now triggered at the top level instead of via NRDKLightningModule parameter
  • Add a _typecheck abstraction, which currently handles jaxtyping/beartype import hooks as well as fully disabling the typechecker when JAXTYPING_DISABLE is set, which is required for pytorch torch.compile compatibility
  • Fix a memory leak caused by result.cpu().numpy() maintaining a reference to the original result.cpu() tensor by forcing a copy with np.copy(result.cpu().numpy()). Without the copy, this somehow confuses the pytorch/python garbage collector and results in the original never being freed, even when all references are cleared
  • Fix miscellaneous torch.compile bugs and warnings

Other miscellaneous changes:

  • Add the PreventHydraOverwrite callback which can be used to prevent experiments from overwriting previous results
  • Fix some default configuration values to match the GRT paper
  • Upgrade to the latest version of abstract-dataloader and other dependencies

Full Changelog: v0.1.7...v0.2.0

v0.1.7

11 Dec 17:02
c73a24e

Choose a tag to compare

What's Changed:

Full Changelog: v0.1.6...v0.1.7

v0.1.6

02 Dec 15:15
e7caf9f

Choose a tag to compare

What's Changed:

Model export improvements:

  • Save model config in nrdk export
  • Streamlined model exporting and loading
  • Add link to GRT reference implementation pre-trained checkpoints on I/Q-1M

... And other miscellaneous improvements & fixes:

  • Default GRT configuration corrections (size/small/d_feedforward, model/*/scale, sensors/*/correction)
  • Add Output for earlier stages to return final values in TransformerEncoderDecoder
  • tile_images no longer pads with empty images if there are fewer samples than n_cols
  • Use https reference to red-rover instead of ssh to allow anonymous clone --recursive

Full Changelog: v0.1.5...v0.1.6

v0.1.5

13 Oct 15:42
fd772b5

Choose a tag to compare

What's Changed:

Miscellaneous improvements #11 by @thetianshuhuang:

  • Improved logging
  • max_range option for occupancy objective
  • Updated train/evaluation script from downstream
  • Better documentation & badges

Full Changelog: v0.1.4...v0.1.5

v0.1.4

01 Oct 18:36
823db82

Choose a tag to compare

What's Changed: new CLI tools for managing results:

  • nrdk upgrade-config: swap out _target_ implementations in hydra configs
  • nrdk validate: check for missing files in results

Full Changelog: v0.1.3...v0.1.4

v0.1.3

22 Sep 20:13
1bd63a1

Choose a tag to compare

What's Changed: Miscellaneous bugfixes and improvements:

  • #6: Add support to using XWRRadarIQ (assuming range bins are not padded) in addition to SpectrumData as inputs to roverd.Occupancy2D, roverd.Occupancy3D transforms
  • #7: Add prefetch_factor: int | None to roverd.datamodule to allow using workers=0
  • #8: Change tss CLI behavior to override --config values when parameters are explicitly specified

Full Changelog: v0.1.2...v0.1.3

v0.1.2

15 Sep 16:25
d68aae4

Choose a tag to compare

What's Changed: Added a new evaluation pipeline with associated tooling:

  • New evaluate.py script in the GRT reference / template
  • Specifications for a canonical output format with a framework.Result convenience wrapper for this format

And some housekeeping tasks:

  • Fix #4
  • Revert tss calculation back to old max(rho, 0) formulation, but with an optional t_max= for very long sequences
  • Workaround for a tensorboard bug related to handling images with multiple "/" characters in their names

Full Changelog: v0.1.1...v0.1.2

v0.1.1

11 Sep 15:44
d464d2d

Choose a tag to compare

What's Changed: overhaul of the GRT reference implementation and new project template.

  • Move most of grt/models into a new nrdk.models shared "model zoo"
  • Finished(ish) documentation for the GRT reference implementation
  • Config cleanup; add test split to reference configs

Other tweaks:

  • Add cropping/padding to PatchMerge
  • Add a compile option for NRDKLightningModule to bypass compilation of the overall lightningmodule to handle misbehaving transforms/objectives
  • Pytorch has deprecated using Sequence[...] types for indexing; add an explicit tuple(...) cast everywhere.
  • Set up CI for docs, linter, type checker

Full Changelog: v0.1.0...v0.1.1

v0.1.0: initial versioned release

15 Aug 16:33

Choose a tag to compare

nrdk v0.1.0 provides an initial stable (ish) development release.

  • The core nrdk library is expected to be more or less final.
  • The GRT reference implementation is still unstable.