BRINE
This package is a Python implementation of BRINE (Blind Resolvent-based Iterative Noise Equalizer), a data-driven procedure that iteratively rescales the rows and columns of the observed matrix to equalize the average noise variance across both dimensions.
The method builds on the Dyson Equalizer, 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/BRINE.
Installation
The main version of the package can be installed as
pip install brine-equalizer
The development version of the package can be installed as
pip install git+https://github.com/Klugerlab/BRINE.git
Getting started
To import the package and apply BRINE to a test matrix
from brine.examples import generate_Y_with_heteroskedastic_noise
from brine.brine import BRINE
Y = generate_Y_with_heteroskedastic_noise()
brine = BRINE(Y).run()
The BRINE result class will contain the following attributes
Y: The original data matrixx_scale: The row scaling factorsy_scale: The column scaling factorsY_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
The original, non-iterative DysonEqualizer is still available (brine.dyson_equalizer.DysonEqualizer)
for one-shot use or comparison against BRINE.
Detailed examples are available on the Examples page.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file brine_equalizer-0.2.0.tar.gz.
File metadata
- Download URL: brine_equalizer-0.2.0.tar.gz
- Upload date:
- Size: 16.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d732fceae7257ca2446726b4fea10ecd936efce905600a934d2d5789d16de86
|
|
| MD5 |
b474bb7570455e5bb6c03ea0be05ea60
|
|
| BLAKE2b-256 |
410d0a5a01dc2d06beb98cf3cfe1d5daed93914f373dc9063c72e2285d4d864f
|
Provenance
The following attestation bundles were made for brine_equalizer-0.2.0.tar.gz:
Publisher:
publish_pypi_release.yml on KlugerLab/BRINE
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brine_equalizer-0.2.0.tar.gz -
Subject digest:
3d732fceae7257ca2446726b4fea10ecd936efce905600a934d2d5789d16de86 - Sigstore transparency entry: 2291200629
- Sigstore integration time:
-
Permalink:
KlugerLab/BRINE@1bcbbc518ff8e8ce0dbfa32947057b2e147bd3d6 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/KlugerLab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi_release.yml@1bcbbc518ff8e8ce0dbfa32947057b2e147bd3d6 -
Trigger Event:
push
-
Statement type:
File details
Details for the file brine_equalizer-0.2.0-py3-none-any.whl.
File metadata
- Download URL: brine_equalizer-0.2.0-py3-none-any.whl
- Upload date:
- Size: 20.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb5312410c93eb2d403e5037725bfb7a94f728a3e7090cb2087ee722f3a07d9f
|
|
| MD5 |
ae652a0231bf72e8a46f078af841f8e5
|
|
| BLAKE2b-256 |
b733f2179e0632d3f5950974359b45f4295bd767a587971d59a97a1195728f60
|
Provenance
The following attestation bundles were made for brine_equalizer-0.2.0-py3-none-any.whl:
Publisher:
publish_pypi_release.yml on KlugerLab/BRINE
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brine_equalizer-0.2.0-py3-none-any.whl -
Subject digest:
eb5312410c93eb2d403e5037725bfb7a94f728a3e7090cb2087ee722f3a07d9f - Sigstore transparency entry: 2291200645
- Sigstore integration time:
-
Permalink:
KlugerLab/BRINE@1bcbbc518ff8e8ce0dbfa32947057b2e147bd3d6 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/KlugerLab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi_release.yml@1bcbbc518ff8e8ce0dbfa32947057b2e147bd3d6 -
Trigger Event:
push
-
Statement type: