Skip to content

mfmckenna/MM_SanctSound_SourceSeparation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This code generates two three-panel plots. The first shows the decomposition arising from applying rsvd() to the log-transformed spectrogram (our "native" 1/3rd octave band values). The second plot shows the decomposition arising from converting the data into pressure squared values. To my eye, the latter yields a more defensible result. However, the latter creates a problem with negative values in the low-rank and sparse matrices, which I have patched with hard-coded values here. I have spared you aÿ more complex method for rebalancing the negative values, which was not really any better (though it did work across multiple data sets).
In my more recent explorations with other data, I have been using rrsvd() from package rsvd. This yields a dramatic speed up, with almost identical outputs.
I am fairly certain that a non-negative implementation of the rpca algorithm, which constrains the estimates to lie in the positive quadrant for all variables, would improve the output. There would remain the challenge of selecting the appropriate value for the lambda parameter that balances the low-rank v. sparsity tradeoff. At present the default value appears to be too generous with the sparse matrix.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages