JuliaDynamics / ComplexityMeasures.jl

Estimators for probabilities, entropies, and other complexity measures derived from data in the context of nonlinear dynamics and complex systems
MIT License
53 stars 12 forks source link

`Lord` Shannon differential entropy estimator #236

Closed kahaaga closed 1 year ago

kahaaga commented 1 year ago

This PR introduces the Lord et al. (2018) differential Shannon entropy estimator.

References

Lord, W. M., Sun, J., & Bollt, E. M. (2018). Geometric k-nearest neighbor estimation of entropy and mutual information. Chaos: An Interdisciplinary Journal of Nonlinear Science, 28(3), 033114.

kahaaga commented 1 year ago

@Datseris Ok, I've modified the code so that it uses SVectors in relevant places. The code allocates, naturally, much less, and is faster. For remaining optimization: I'm not sure if it's worth it. The steps where we could gain some performance is mainly in the SVD step, but that requires an implementation of a non-allocating svd! (see also benchmark comment in code).