Pedro Martinez Mediano
d0b35b3db8
Added NativeUtils for native lib loading and included libKraskov.so in jar.
2017-06-01 20:34:23 +10:00
Pedro Martinez Mediano
834a3ec2c2
Relocated GPU code and modified build and load paths accordingly.
2017-06-01 17:22:42 +10:00
Pedro Martinez Mediano
2a203faa23
Added support for Theiler exclusion window in JNI code.
2017-05-31 04:19:49 +10:00
Pedro Martinez Mediano
492cfe8b53
Added Java+JNI support for surrogate reorderings.
2017-05-23 16:19:33 +10:00
Pedro Martinez Mediano
f2d6674a4f
Added a few debug mode prints.
2017-05-23 05:13:57 +10:00
Pedro Martinez Mediano
001227c730
Added Java support for GPU surrogate calculation.
2017-05-22 15:03:32 +10:00
Pedro Martinez Mediano
cc47398d50
Remove spurious print statement.
2017-05-19 17:53:40 +10:00
Pedro Martinez Mediano
b26695bf8a
Separated main KraskovMI computation from JNI bridge. First steps towards GPU surrogates.
2017-05-19 12:39:17 +10:00
Pedro Martinez Mediano
8dc6eced45
Added missing import statement.
2017-05-19 06:47:16 +10:00
Pedro Martinez Mediano
d7fa6814dd
Improved error handling when loading GPU library.
2017-05-19 06:14:31 +10:00
Pedro Martinez Mediano
57aa4e95ee
Add new property for users to specify custom path to GPU library.
2017-05-19 06:01:45 +10:00
Pedro Martinez Mediano
004a7c7f17
Added separate ant tasks for GPU compilation, moved libraries to bin folder.
2017-05-18 02:49:31 +10:00
Pedro Martínez Mediano
5074c1b6f7
Initial commit of GPU code.
2016-03-13 01:15:19 +00:00
joseph.lizier
bb587fa345
Also allowing the KSG calculators noise property to be set to "false" to indicate 0 noise.
2015-06-16 12:27:56 +00:00
joseph.lizier
c4fc334c3a
Adds a small (1e-8) amount of noise to all data for the Kraskov calculations by default. Fixes Issue 42.
2015-06-16 12:01:41 +00:00
joseph.lizier
687978103c
Added auto-embedding with Ragwitz criteria to AIS Kraskov calculator, partially addressing Issue 38. Also adds getProperty() method to AIS calculators and MI calculators.
2015-06-04 03:48:55 +00:00
joseph.lizier
f0cbb61197
Fixing Javadoc commentsin MI calculators
2015-02-05 23:39:22 +00:00
joseph.lizier
733da8265d
Dynamic correlation exclusion, or Theiler window, added to all Kraskov estimators, i.e. Mutual Info, Conditional MI, Multi-info, and thereby the derived classes including transfer entropy. Fixes issue 35
2014-11-25 12:31:44 +00:00
joseph.lizier
6ade6d4311
Adding fast nearest neighbour searcher for univariate data (uses only a sorted array rather than whole k-d tree). Adds an abstract nearest neighbour searcher so calling classes don't necessarily need to know whether they're dealing with uni or multi-variates. MI and conditional MI Kraskov altered to use this where possible.
2014-10-30 04:04:16 +00:00
joseph.lizier
1fb3735e58
Bug fix re issue 31 -- ensuring that kd trees get rebuilt for surrogate TE calculations.
2014-10-15 05:06:30 +00:00
joseph.lizier
bc2783b971
Fixes issue 31 -- implementing fast nearest neighbour search for Kraskov MI using a k-d tree structure.
2014-10-15 04:48:09 +00:00
joseph.lizier
70bcc7c922
Mirrors multi-threading from Kraskov MI calculators to Kraskov conditional MI calculators, and so fixes issue 29. Also adds some minor modifications to multithreading code for Kraskov MI calculators.
2014-09-16 01:36:39 +00:00
joseph.lizier
0db37c9160
Making multithreading on Kraskov MI calculators the default (using all available processors), and also adding some more debug statements.
2014-09-12 12:10:42 +00:00
joseph.lizier
957adeccd5
Fixes issue 28 - achieves multithreading on Kraskov MI calculators, merging code from Ipek and altering the design. Also partially addresses issue 24 by switching digamma for large arguments over to commons.math
2014-09-12 07:35:05 +00:00
joseph.lizier
6e100c65d0
Added property for Kraskov Conditional MI calculator to add a small amount of noise to the input data. For Kraskov MI calculator, changed this to add the noise in after the data is (potentially) normalised, so the magnitude corresponds to a number of standard deviations of the original data.
2014-09-11 03:43:40 +00:00
joseph.lizier
4f8137b449
Minor corrections to Javadocs for the continuous package
2014-08-13 15:20:00 +00:00
joseph.lizier
bc40fb4125
Kraskov estimators switched to use 4 nearest neighbours by default (as recommended by Kraskov et al.)
2014-08-13 02:41:25 +00:00
joseph.lizier
786784e83c
Javadocs made release-ready in the continuous.kraskov package.
2014-08-13 02:36:09 +00:00
joseph.lizier
6709163afd
Adding GPLv3 license statement to all code headers in the infodymamics.measures.continuous.kraskov, symbolic and discrete packages (continuing ...)
2014-08-06 05:43:16 +00:00
joseph.lizier
01291c883a
Added property to Kraskov MI for adding a random amount of noise to the data, to address situations with many identical values in the one variable (which causes problems with neighbourhood sizes)
2014-04-30 02:09:01 +00:00
joseph.lizier
12fc61d396
Moved Kraskov mutual info calculator multivariate to inherit from the common MI multivariate class, so as to share code for adding observations, statistical tests, etc. Passed unit testing.
2014-03-26 05:08:46 +00:00
joseph.lizier
2571c3ae9e
Rearchitected Active Info Storage calculators to use a common parent class for data collection, and underlying mutual information classes for the implementation specifics. Includes adding Kraskov and Gaussian Active Info Storage calculators, and implementing embedding delay for the past history.
2014-03-26 04:05:20 +00:00
joseph.lizier
b4645584fe
Added new method generateRandomPerturbations(int, int) to RandomGenerator, and switched all computeSignificance methods to use this (since there's no need for checking for distinct perturbations really, and this is much faster). Required adding sortIndices(double[]) method to MatrixUtils
2013-10-18 00:42:12 +00:00
joseph.lizier
617880f9f5
Making Kraskov MI and higher order calculators use MAX_NORM in the marginal spaces by default (previously this had to be supplied via a property - it was the standard choice made, but was not the default). This aligns with the default specified in the Kraskov paper.
2012-12-20 10:38:03 +00:00
joseph.lizier
e789acd4dc
Adding various comments
...
Patched bug in TECalculatorMultiVariateSingleObservationsKernel whereby only k*destDimensions dimensions of destPast were being considered (this is a problem where one wants to surreptitiously condition on extra variables).
2012-12-13 14:42:40 +00:00
joseph.lizier
cda8689afb
Made sure all discrete calculators use log_2 to make answers in bits (some were still using log of base).
...
Merged usual and debug methods for computing average MI in discrete calculator
Added setDebug to super InfoMeasureCalculator
Cleaned up header of InfoMeasureCalculator
Adding TODO comments for Kraskov calculators
Bug fix on MutualInfoCalculatorMultiVariateWithDiscreteKraskov - we weren't normalising incoming observations for computing local MI properly, this is fixed now.
2012-09-05 06:23:48 +00:00
joseph.lizier
9a86ee8152
Added classes for joint entropy and multivariate mutual information calculation with gaussian assumption.
...
Restructured MeasurementDistribution to have child classes EmpiricalMeasurementDistribution and AnalyticMeasurementDistribution - this resulted in many classes being altered.
Added ChiSquare distribution methods to MathsUtils.
Added more covariance methods to MatrixUtils.
2012-08-01 07:26:18 +00:00
joseph.lizier
56d868ca00
Uploading whole of Java Information Dynamics toolkit for the first time.
2012-05-08 00:18:37 +00:00