jlizier
|
05248ef105
|
Extra fixing windows paths generated from AutoAnalyser to be properly escaped in data filename for Python/Matlab
|
2022-09-01 15:50:27 +10:00 |
jlizier
|
c233485c90
|
Fixing windows paths generated from AutoAnalyser to be properly escaped
|
2022-09-01 15:28:28 +10:00 |
jlizier
|
2714650cfa
|
Amending Kraskov (KSG) MI estimators to have an experimental method to provide conditional entropy of the first variable given the second. Works by removing the Kozachenko Leonenko entropy of variable 1 from the MI, using the same kNN radii as the MI estimator. Includes Unit tests to provide some initial validation.
|
2022-06-16 21:29:29 +10:00 |
jlizier
|
25159009ca
|
updating max entropy discretisation to gracefully handle NaNs in the input (which shouldn't be there anyway)
|
2022-06-09 12:39:59 +10:00 |
Joseph Lizier
|
0e33393cdc
|
Merge pull request #86 from pmediano/master
Thanks Pedro, and sorry to take so long to attend to this
|
2021-11-15 12:08:57 +11:00 |
Joseph Lizier
|
b02760ddd3
|
Adding overloads on setObservations and addObservations for MI and TE calculators to handle one variable univariate and one variable multivariate
|
2021-11-15 10:58:59 +11:00 |
Joseph Lizier
|
7d7291fb9d
|
Implementing Analytic null distributions for discrete conditional TE estimator
|
2021-11-02 23:11:45 +11:00 |
Joseph Lizier
|
6f43dfb620
|
Altering the python-java jpype data conversion in AutoAnalyser to work properly with jpype 0.7 and upwards
|
2021-10-08 16:03:14 +11:00 |
Joseph Lizier
|
21ae0bdeaa
|
Fixing logic error in printing whether GPU calculation was falling back to CPU
|
2021-10-08 11:28:37 +11:00 |
Joseph Lizier
|
650159661d
|
Patching conditional MI calculator to properly allow null or empty conditionals if dimension of conditionals is 0
|
2021-09-06 10:23:31 +10:00 |
Joseph Lizier
|
aa8148eca9
|
Updates to KL entropy estimator: removing NORMALISE property, and adding method for cross entropy
|
2021-08-23 09:09:49 +10:00 |
Joseph Lizier
|
ef7cfbb525
|
Fixed missing " in comment
|
2021-08-06 17:43:56 +10:00 |
Pedro Mediano
|
07883af734
|
Updated printed messages with cross-platform newline character.
|
2021-02-09 10:23:30 +00:00 |
Pedro Mediano
|
bc8c233e68
|
Added KSG implementation of various multivariate IT measures and unit tests.
|
2021-01-25 12:41:01 +00:00 |
Pedro Mediano
|
a58a01fbfd
|
Added discrete implementation of various multivariate IT measures and unit tests.
|
2021-01-24 22:13:15 +00:00 |
Pedro Mediano
|
b3abd382aa
|
Added abstract parent class for multivariate IT measures on discrete data.
|
2021-01-24 22:10:14 +00:00 |
Pedro Mediano
|
f67e274819
|
Added Gaussian implementation of various multivariate IT measures and unit tests.
|
2021-01-24 22:06:39 +00:00 |
Pedro Mediano
|
403745800e
|
Added abstract parent class for multivariate IT measures on continuous data.
|
2021-01-24 21:56:26 +00:00 |
Pedro Mediano
|
06cc6d649d
|
Added `select*` methods for `int[][]` matrices.
|
2021-01-24 21:54:42 +00:00 |
Pedro Mediano
|
b3192e225f
|
Added convenience methods to multiply an array times a constant value.
|
2021-01-24 21:54:09 +00:00 |
Joseph Lizier
|
3222b5a629
|
Implementation and unit test for KSG MI calculation with new samples (both algorithms 1 and 2)
|
2020-10-30 16:21:10 +11:00 |
Joseph Lizier
|
0606f8ab39
|
Cleaning up CMI Kraskov for new samples, including fixing some comments, logic of not using GPU for this, and if no conditional counting all point as a conditional match
|
2020-10-30 16:19:31 +11:00 |
Joseph Lizier
|
b5a6fa92c2
|
Fixing min and max of local CMI values
|
2020-10-29 13:45:25 +11:00 |
Joseph Lizier
|
44e53bc846
|
Updating error messages for kdTree
|
2020-10-29 13:39:40 +11:00 |
Joseph Lizier
|
34161a2e6d
|
Adding non-overloaded method signatures for multivariate arrays, so that the jpype python-java bridge can resolve which method signature to use more directly via these
|
2020-05-22 14:42:26 +10:00 |
Joseph Lizier
|
bf207f866e
|
Patched error in computing start and end times for valid observation sequences in conditional TE calculators (with validity booleans)
|
2020-05-21 00:57:34 +10:00 |
Joseph Lizier
|
d0a0fca40c
|
Added non-overloaded method calls for conditionalTE continuous' addObservations() method calls with validity booleans - this is for JPype from Python which seems unable to resolve overloads of double[] and double[][], when more than one variable changes in this way
|
2020-05-16 12:18:57 +10:00 |
Joseph Lizier
|
cbcca8d0ff
|
fixing addedMoreThanOneObservationSet for the MultiInfoCalculator
|
2020-05-15 17:35:54 +10:00 |
Joseph Lizier
|
510f999d2e
|
Adds addObservations calls with validity arrays for conditional transfer entropy
|
2020-05-15 17:34:00 +10:00 |
Joseph Lizier
|
61ae6fb40b
|
Minor updates to AutoAnalyser to put fixtures in place for array conversion to Python with eventual handling of 2D arrays (code isn't really changed at the moment, but has methods to make this easy later)
|
2019-07-25 23:56:56 +10:00 |
Joseph Lizier
|
2ab3ac01bb
|
Adding non-overloaded method signatures for adding 1D vs 2D observations for common class for continuous MI and CMI estimators, since JPype 0.7 does not seem able to resolve overloaded 1D vs 2D arrays any longer
|
2019-07-25 23:11:44 +10:00 |
Joseph Lizier
|
1667b9fe7a
|
Added utility for subsampling rows from 2D matrix
|
2019-07-25 14:36:54 +10:00 |
Joseph Lizier
|
1dc2dc8b86
|
Updating all discrete calculators (except SeparableInfo, since it's outmoded) to have a default empty constructor, with an overloaded initialise method added that provides all relevant properties. Fixes #77, and provides a first step for #66. Also aligned PredictiveInfo and ConditionalTE calculators to use the appropriate super classes.
|
2019-07-25 14:29:51 +10:00 |
Joseph Lizier
|
17bf0e0be7
|
Updating octave-java interface to use non-overloaded method signatures for int and boolean arrays (this seemed to have caused an issue on some versions with ints being converted to boolean first, thus losing all values except 0-1)
|
2019-07-23 11:33:04 +10:00 |
Joseph Lizier
|
1db8a2ac63
|
Making local computation for CMI Gaussian calculator store the lastAverage if it was called with the previous observations
|
2019-05-17 22:47:16 +10:00 |
Joseph Lizier
|
681c9196ee
|
Added methods to MatrixUtils (plus unit tests) for adding/removing/swapping sample points into existing means and covariances
|
2019-05-17 22:27:30 +10:00 |
Joseph Lizier
|
9f9c79bc95
|
Handling infinites in Chi square CDF function properly
|
2019-05-17 22:24:54 +10:00 |
Joseph Lizier
|
8542d217ea
|
Added support for Chi^2 analytic distribution to support degrees of freedom 0 (this will handle e.g. where a source had no independent dimensions)
|
2019-05-17 22:20:54 +10:00 |
Joseph Lizier
|
fce1b34a5c
|
Adding NORMALISE and NOISE_LEVEL_TO_ADD properties to all conditional mutual information calculators for continuous-valued data (extends this capability from only KSG to Gaussian as well)
|
2019-04-03 00:12:00 +11:00 |
Joseph Lizier
|
d9db7a15ab
|
Further clarifications for including NORMALISE and NOISE_LEVEL_TO_ADD properties to all mutual information calculators, and handling linear redundancy sub-cases
|
2019-04-03 00:07:05 +11:00 |
Joseph Lizier
|
b1437452e4
|
Adding NORMALISE and NOISE_LEVEL_TO_ADD properties to all mutual information calculators for continuous-valued data (extends this capability from only KSG to Gaussian and kernel as well, the latter already had NORMALISE)
|
2019-04-02 12:38:17 +11:00 |
Joseph Lizier
|
988d32de70
|
Added bug fix within recent changes to MatrixUtils Cholesky decomposition calculation, along with unit testing of the linear dependency combinations for issue #17
|
2019-03-31 23:21:39 +11:00 |
Joseph Lizier
|
2a0024ad83
|
Fixes issue #17: Handling sub-cases for linear redundancy within and across variables in the linear-Gaussian mutual information estimator. This is done by detecting such redundancies and either returning 0 or infinity as the requisite result. Mirrors how this is done for conditional MI.
|
2019-03-29 00:01:36 +11:00 |
Joseph Lizier
|
66676a2692
|
A rewrite of parts of the linear Gaussian conditional MI estimator, in order to more deftly handle linear dependencies within variables 1 and 2, and between each of them and the conditional. Previously we removed sub-variables of those arbitrarily, now the removal is targetted to those sub-variables that are problematic. Also required some variable name changes to reflect different ordering of how variables and the conditionals are concatenated in arrays.
|
2019-03-28 23:58:53 +11:00 |
Joseph Lizier
|
d58c393c53
|
Added methods to MatrixUtils to make a Cholesky decomposition of independent components only (useful for MI and conditional MI calculations), with a required update to the NonPositiveDefiniteMatrixException to include a field defining which row in the matrix was a problem. Also includes code to convert between native int[] arrays and ArrayList<Integers>, and new method signatures for column selection from matricies.
Also added new unit tests for the Cholesky decomposition.
|
2019-03-28 23:52:47 +11:00 |
Pedro Martinez Mediano
|
c616ba55d4
|
Added link to wiki in GPU loader error message.
|
2018-11-25 19:25:33 +02:00 |
jlizier
|
16015e0f12
|
Nearest neighbour searchers now return number of points found for findPointsWithinR as well as marking them in input arrays. Also added new method sumDistanceAboveThresholdForPointsWithinRs() for the univariate searcher (to be used in spiking TE estimator under development)
|
2018-11-24 21:16:36 +11:00 |
jlizier
|
8909c23fcc
|
Incorporated auto-embedding in the TE multivariate via conditional MI common class. Much of the code is moved up from the TE multivariate KSG estimator; now the functionality is provided for multivariate Gaussian as well. Also necessitated adding the max_cor_num_surrogates property to TE multivariate Gaussian, and took the opportunity to make much of the whitespace here consistent, and unit tests added for Gaussian (tweaked slightly for KSG)
|
2018-10-18 00:58:17 +11:00 |
jlizier
|
42f8d01e26
|
Adding property of number of dimensions for the AIS multivariate calculator (and implemented in the via MI common class). Needed this to make multivariate TE embedding a bit neater, and it should be there anyway.
|
2018-10-18 00:51:37 +11:00 |
jlizier
|
e1bad39e4e
|
Added proper full definitions for the methods of the AIS multivariate interface; much of this is achieved by extending the univariate AIS interface (which mandates that the univariate methods must be supported). No current child classes required any changes as they all supported these already. Removed superfluous documentation in the AIS multivariate via MI class (as well as fixing whitespace inconsistencies therein)
|
2018-10-17 23:37:43 +11:00 |