Information theory related estimators
Project description
infopy
Information Theory Library for Python containing implementations of mutual information and entropy estimators.
Usage
MI Estimators:
Currently, there are 6 MI estimators implemented in infopy. These estimators are used to estimate $I(X; Y)$, with different implementations depending on whether $X$ or $Y$ are continuous or discrete. All of them support multidimensional $X$ and $Y$, i.e., $X, Y \in \mathbb{R}^{n}$, treating them as random vectors instead of scalar random variables. The available estimators are:
estimators.DDMIEstimator: For discrete $X$ and discrete $Y$, based on maximum likelihood estimation of the PMF of X, Y and (X, Y).estimators.CDMIRossEstimator: For continuous $X$ and discrete $Y$ (interchangeable), based on Ross MI estimation [1]estimators.CDMIEntropyBasedEstimator: For continuous $X$ and discrete $Y$ (interchangeable), based on Kozachenko-Leonenko entropy estimation.estimators.CCMIEstimator: For continuous $X$ and continuous $Y$, based on Kraskov MI estimator [2].estimators.MixedMIEstimator: For mixed $X$ and $Y$. It uses the Gao MI estimator [3]. Note: This estimator has not yet been successfully tested.estimators.EDGEMIEstimator: This estimator is based on the method described in [4]. It is believed to be applicable for any variable type, but successful results have not yet been obtained.
To automatically select an appropriate estimator based on the types of $X$ and $Y$, use the estimators.get_mi_estimator function. The pointwise parameter in this function specifies whether to obtain an estimator that provides an estimation per sample (pointwise mutual information) instead of averaging.
References
- B. C. Ross “Mutual Information between Discrete and Continuous Data Sets”. PLoS ONE 9(2), 2014.
- A. Kraskov, H. Stogbauer and P. Grassberger, “Estimating mutual information”. Phys. Rev. E 69, 2004.
- Gao, Weihao, et al. Estimating Mutual Information for Discrete-Continuous Mixtures. 2018.
- Noshad, Morteza, et al. Scalable Mutual Information Estimation Using Dependence Graphs. 2018.
Project details
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 infopy_estimators-0.1.0.tar.gz.
File metadata
- Download URL: infopy_estimators-0.1.0.tar.gz
- Upload date:
- Size: 72.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3bd60d7539c1fe8c3b8029bbf5dd28d7838c29a73ac26b0e7b3f2435f02b846
|
|
| MD5 |
2575a8f8db026d1e5a00e82ae12a2d23
|
|
| BLAKE2b-256 |
8191ac8bf52b8a44e0bd9a76e0044bfc19f1bee8a51103466f9a87f5697fbf8c
|
File details
Details for the file infopy_estimators-0.1.0-py3-none-any.whl.
File metadata
- Download URL: infopy_estimators-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ac9be6fac97f5b95eaf16be18725dd003dc5a85691d36509a12496367a87d9e
|
|
| MD5 |
ff5e8b262bef16983eec2046ebd162cb
|
|
| BLAKE2b-256 |
538f3ebfcccd62cfe6dae84c56e12a630facfd9d357a455dec204df7146aab55
|