Full TorchScript support, new PIT modules, `asteroid-filterbanks` outsource and bug fixes!
Highlights
- Full
TorchScript
support for all asteroid models, unit tested for consistency 🚀 - Outsource all filterbanks to asteroid-filterbanks with a new
MelGramFB
, a STFT that matchestorch.stft
and new hooks for more extensibility! - Direct links to GitHub code from the docs 🎉
- Add Hungarian algorithm in
PITLossWrapper
+ newMixITWrapper
andSinkPITLossWrapper
⚡ - Better CI with tests against
1.6.0
,1.7.0
andtorch-nightly
.
Backwards Incompatible Changes
filters
inFilterbank
is now a method instead of a property, forTorchScript
support (#237).PITLossWrapper
methodbest_perm_from_perm_avg_loss
,find_best_perm
now return batch indices of the best permutation, to match with the new hungarian algorithm and facilitate outside use of those methods (#243).- Models that were saved without
sample_rate
argument won't be loadable anymore. Useasteroid-register-sr
to register the sample rate of the model (#285). - We finally removed the
losses
(#343 ) andblocks
(#344) that were deprecated since 0.2.0. - Remove
kernel_size
argument fromTDConvNet
(deprecated since v0.2.1) (#368).
Deprecation
BaseModel._separate
is deprecated in favour ofBaseModel.forward_wav
(#337).asteroid.filterbanks
has been outsourced toasteroid-filterbanks
(#346). Usefrom asteroid_filterbanks import
instead offrom asteroid.filterbanks import
from now.- Several deprecation cycles have been engaged in
asteroid-filterbanks.transforms
:take_reim
will be removed.take_mag
is deprecated in favour ofmag
.take_cat
is deprecated in favour ofmagreim
.from_mag_and_phase
is deprecated in favour offrom_magphase
.
asteroid.complex_nn.as_torch_complex
has been deprecated and will be removed. Usetorch.view_as_complex
,torch_complex_from_magphase
,torch_complex_from_reim
orasteroid_filterbanks.transforms.from_torch_complex
instead (#358).
Changelog
Breaking
[src] BC-breaking: Load models without sample_rate (#285)
[src] Remove deprecated losses (#343)
[src] Remove deprecated blocks (#344)
[src] BaseEncoderMaskerDecoder: remove old hooks (#309)
[src] Remove deprecated kernel_size in TDConvNet (#368)
Added
[src&tests] Add sample_rate property (float) in BaseModel
. (#274)
[src] Add sample_rate argument to all supported models. (#284)
[src&tests] Automatic resampling in separate + CLI. (#283)
[src & tests] 🎉 TorchScript support 🎉 (#237)
[src & tests] Add Hungarian matcher to solve LSA in PITLossWrapper (#243)
[src&tests] Add jitable_shape and use it in EncMaskDec forward (#288)
[src&tests] Add shape checks to SDR and MSE losses (#299)
[docs] Add loss plot in the FAQ (#314)
[src] New asteroid.show_available_models (#313)
[egs] DAMP-VSEP vocal separation using ConvTasNet (#298)
[docs] DAMP-VSEP in the docs ! (#317)
[src&test] Add Sinkhorn PIT loss (#302)
[src] Add MixITWrapper loss (#320)
[egs] Add MixIT example recipe (#328)
[src] New Filterbank's hooks + add MelGram_FB (#334)
[src] New phase features and transforms (#333)
[src] Better names in asteroid.filterbanks.transforms (#342)
[src] Add asteroid-versions script to print installed versions (#349)
[install] Add conda environment.yml (#354)
[src] Add ebased_vad and deltas (#355)
Changed
[src&tests] Make get_metrics
robust against metrics failures (#275)
[egs] Don't override print() with pprint (#281)
[src] Refactor BaseEncoderMaskerDecoder.forward (#307)
[src&tests] Refactor DeMask for consistency (#304)
[docs] Replace GettingStarted notebook (#319)
[src] BaseModel takes sample_rate argument (#336)
[src&egs] Transition to asteroid_filterbanks (#346)
[src] Rename _separate to forward_wav (#337)
[docs] Build docs with 3.8
[docs] Links to GitHub code from the docs 🎉 (#363)
[CI&hub] TorchHub integration tests (#362)
Fixed
[egs] Fix #277 DNS Challenge baseline's run.sh
[docs] Fix Reference and Example blocks in docs (#297)
[src] Fix #300: skip connection on good device (#301)
[src] DCUNet: Replace old hooks by new ones (#308)
[src] Fix schedulers serialization (#326)
[src] Improve Filterbank.forward error message (#327)
[egs] Fix: replace DPRNNTasNet with DPTNet (#331)
[src&jit] Fix DCCRN and DCUNet-Large (#276)
[CI] Catch warnings we expect (#351)
[src] Fix #279 OLA support for separate() and asteroid-infer (#305)
[docs] Docs fixes and improvements (#340)
[docs] Fix CLI output in docs (#357)
[src&tests] Fix complex and add tests (#358)
[docs] Fix docstrings (#365)
[src] Fix #360 Correct DCCRN RNN (#364)
A large thanks to all contributors for this release :
@popcornell @jonashaag @michelolzam @faroit @mhu-coder @JorisCos @groadabike @giorgiacantisani @tachi-hi @SouppuoS @sunits @guiruli08650129 @mcernak @zmolikova & @hbredin 🥰
(ping me if you got forgotten, I'll add you back, and sorry in advance 😉 )