Releases: pwollstadt/IDTxl
v1.5.1 01/2024
Bug fixes:
Update to JIDT version 1.6.1. Fix formatting issues and minor bugs.
v1.5 12/2023
New features:
- Implementation of purely Python-based (C)MI-estimators and MPI-support for serial (C)MI-estimators by @daehrlich
v1.4 04/2022
New features:
- Implementation of significant subgraph mining by @aarongutknecht as described in the biorXiV preprint
Bug fixes:
- Ensure that output in results classes contains only numpy and not JPype types. This eases further processing of outputs, especially loading and saving of results (if JPype types are saved, a JVM has to run when loading them again)
v1.3 02/2022
New features:
- Implementation of history-dependence estimator for neural spike data (by @DrMichaelLindner)
v1.2.2 05/2021
Fixes:
- Fix call to maximum stats in multivariate network inference (use correct conditioning set when performing statistics)
Minor fixes:
- Update PID references in README (#67)
v1.2 02/2021
v1.1 05/2020
New features:
- Multivariate, differentiable Partial Information Decomposition (Makkeh et al., 2020, arXiv:2002.03356 [cs.IT])
Fixes:
Release peer reviewed and accepted for publication in JOSS
This release was peer-reviewed for publication in the Journal of Open Source Software.
Updated development release
Updates to documentation, gh-pages, and unit-/system-tests.
Improvements:
- Improve handling memory exhaustion for JidtDiscrete estimators. This also required including a new JIDT jar. Please note there are occasions where the OS cannot provide more memory (even though heap is large enough) where Java crashes and via jpype1 this seems to kill python. I will continue to investigate this but it may not be solveable.
Bug fixes:
- Fixes #15 by adding Kraskov algorithm 2 option for all JidtKraskov estimators. This required including a new JIDT jar. Unit test included for MI.
Updated development release
This is the second development release. Note that algorithms are still
in beta stage. Also, there may be changes to the API in future releases.
To get started with using IDTxl have a look at the wiki
pages describing the installation
process
and the example
script
for network inference. There are also examples in the docstrings of the
algorithm classes. Further documentation: http://pwollstadt.github.io/IDTxl/
and https://github.com/pwollstadt/IDTxl/wiki.
Stable algorithms (see the
demos for examples):
multivariate_transfer_entropy.py
bivariate_transfer_entropy.py
multivariate_mutual_information.py
bivariate_mutual_information.py
active_information_storage.py
partial_information_decomposition.py
network_comparison.py
(group-level statistics)visualise_graph.py
- core-estimators, see the wiki page for examples
Added features:
- (lagged) multivariate and bivariate MI estimation for network inference
- bivariate TE estimation for network inference
Results()
class: replaces results dictionary, adds functionality to generate
adjacency matrices and access detailed results for individual targets- generation of synthetic test data in the
Data()
class (coupled logistic maps and autoregressive processes) - demo scripts for network inference algorithms and core estimators
Improvements:
- add jar-file supporting JAVA v6 (fixes #9)
- cleaned up console output
- update of the Tartu estimator
Bug fixes:
- OpenCL estimators now run on Nvidia and AMD cards (fixes #10)
- Labeling of nodes in source graph
- The minimum statistics did not use the correct conditioning set during the pruning step of the multivariate TE algorithm, causing a bias in the test
- Non-uniform embedding was not built correctly for bivariate measures
Known issues and missing features:
- OpenCL estimators fail on AMD cards in some cases due to driver settings
that introduce limitations on maximum variable size
- spectral multivariate transfer entropy estimation will be added in a future release
- the Kraskov2 algorithm will be available for estimation in a future release (issue #15)