bmi
bmi copied to clipboard
Mutual information estimators and benchmark
@grfrederic This PR contains a workflow for drawing the "PMI profile" of the KSG estimator.
Implement an adaptive binning strategy for the histogram-based MI estimator. Also, consider binning by the number of samples and estimating the volume, rather than current strategy (equally-sized bins and different...
Implement [LNC estimator](https://proceedings.mlr.press/v38/gao15.html), which is KSG with additional correction terms.
In #23 we have an example of the spiraling diffeomorphism. Think whether the API is right and write the tests (currently they are missing).
it would be nice to organize our estimator tests, that is have a generic testing function: ```test_estimator_on_task(estimator, task, n_samples, seed, abs_error, rel_error)``` and then use it to build our tests:...
This PR aims to resolve #161. Tasks: - [x] Update the `JointDistribution` class. - [x] Update multivariate normal constructor. - [x] Update multivariate Student constructor. - [x] Update product distribution...
Use TFP on JAX to define a new BMM: ``` X1 โ X2 โ ... โ Xn | | | Y1 Y2 โ ... โ Yn ``` However, this requires...
Currently the core class for BMMs is called `JointDistribution`, which may make it confusing with TensorFlowProbability convention.
Currently the `JointDistribution` wraps and unwraps `X` and `Y` samples into one array `XY` by concatenation and slicing. This is suboptimal: for example, `X` and `Y` need to have the...
The GMM-based estimator is not documented properly: - [ ] Add GMMs to the list of estimators. - [ ] Add documentation on GMMs. - [ ] Update the version...