Dyson Equalizer#
This package is a Python implementation of the Dyson Equalizer. The method is described in detail in the article The Dyson Equalizer: Adaptive Noise Stabilization for Low-Rank Signal Detection and Recovery
The documentation is available at https://klugerlab.github.io/DysonEqualizer.
Installation#
The main version of the package can be installed as
pip install dyson-equalizer
The development version of the package can be installed as
pip install git+https://github.com/Klugerlab/DysonEqualizer.git
Getting started#
To import the package and apply the Dyson Equalizer to a test matrix
from dyson_equalizer.examples import generate_Y_with_heteroskedastic_noise
from dyson_equalizer.dyson_equalizer import DysonEqualizer
Y = generate_Y_with_heteroskedastic_noise()
de = DysonEqualizer(Y).compute()
The DysonEqualizer result class will contain the following attributes
Y: The original data matrixx_hat: The normalizing factors for the rowsy_hat: The normalizing factors for the columnsY_hat: The normalized data matrix so that the variance of the error is 1X_bar: The estimated signal matrix. It has rankr_hatr_hat: The estimated rank of the signal matrixS: The principal values of the data matrixYS_hat: The principal values of the data matrixY_hat
Detailed examples are available on the Examples page.