jlizier
dfe7ef0334
Altering AIS Multivariate Via Mutual Info calculator -- and child classes, now including kernel estimator -- to support auto-embedding primarily via the parent methods of the univariate AIS calculator.
...
Also includes patching functionality when dimension == 1 to always use the underlying AIS univariate calculator consistently, and adding missing methods on adding observations with validity array.
Also includes some minor alterations to error messages.
Gaussian and Kernel Multivariate AIS calculators have the computeAdditionalBiasToRemove() method implemented now to allow this; Gaussian calculator also adds the analytic computeSignificance() method, whilst Kernel calculator also adds a property for the number of surrogates to use in bias correction.
2018-05-16 22:42:32 +10:00
jlizier
fcd30c6716
Minor changes to Javadocs for AIS kernel
2018-05-16 22:28:19 +10:00
jlizier
a649b38270
Patched new section of AIS calculator via MI, whereby addObservationsWithGivenParams() when called with a validity[] array did not compute valid start and end time pairs for the candidate k and tau, but did so for the k and tau set in the properties. Fixed so that the candidate k and tau can be supplied.
2018-05-16 14:39:54 +10:00
jlizier
e8603b08f8
Moving auto-embedding for AIS (Ragwitz and maximum bias-corrected AIS methods) from out of Gaussian and KSG calculators and into the common AIS calculator via MI class. The common implementation then allows us to introduce auto-embedding for the AIS kernel estimator as well (included requiring adding a property for the number of surrogates to use to compute the bias for this one).
...
These changes now incorporate auto-embedding for all AIS continuous calculators, partially addressing issue #38
2018-05-16 14:20:08 +10:00
jlizier
1c591925bd
Added auto-embedding to Gaussian AIS calculator, with both Ragwitz and maximum bias-corrected AIS methods. Bias-correction implemented via the Gaussian analytic surrogates. Involves defining new properties, setProperty, getProperty and preFinaliseAddObservations() to do the embedding. Unit test included also, mirroring unit testing for KSG AIS (which used linear Gaussian variables).
2018-05-15 17:35:06 +10:00
jlizier
48b48ab845
Changing AIS Via Mutual Info internal addObservationsAfterParamsDetermined method to addObservationsWithGivenParams - taking k and tau as arguments rather than using the internal ones. This allows the method to be called by auto-embedding in the child classes as well (better code re-use ready for extending auto-embedding)
2018-05-15 17:32:50 +10:00
jlizier
9552091fca
Adding Javadoc on header for neighbour counts method in KSG MI estimator 1
2018-05-15 17:28:39 +10:00
jlizier
0b70e92efc
Added Bias-correction property to Gaussian MI and conditional MI calculators, including set and getProperty and an implementation in the calculations. This implements bias-correction by substracting the bias (of the analytic chi^2 based null distribution) from the calculations.
2018-05-13 22:29:17 +10:00
jlizier
c0b9d736d7
Added methods to retrieve mean and standard deviation of the Chi^2 null distribution, as well as (empirical) unit test for this.
2018-05-13 22:02:46 +10:00
jlizier
46a9785da2
In surrogates for MI and CMI also turning adding noise off since this will have been done in the initial calculation already, and will just broaden the noise here.
2018-05-12 22:35:54 +10:00
jlizier
28ba409ff6
Turning off normalisation when computing surrogates in Common CMI and MI calculators, because normalisation has already been carried out (and if one variable had no variance, this will inflate the values back to original scale)
2018-05-12 21:30:39 +10:00
jlizier
0e4455b2fd
Corrects the access at one point to the bins for the data points in the multivariate kernel estimator, which should use an IntArray object but did use an int[] object to access . Fixes #69 .
2018-05-10 20:20:02 +10:00
jlizier
860d43dbca
Adding additional error message for Exception during KSG Active Info Storage auto-embedding
2018-05-07 23:15:33 +10:00
jlizier
1f625b59f0
AutoAnalyser: fixing bug where column numbers for data are all set to zero if the user unclicks the "compute result?" button
2018-05-07 22:57:10 +10:00
jlizier
d1bba0e4c1
Adding computeLocalOfPreviousObservations() to continuous Entropy estimator interface and all underlying implementations. Added unit tests that locals should average back ok. Also fixing multivariate Entropy estimator interface to implement the univariate interface also (and fixing underlying implementations to comply)
2018-04-27 11:20:25 +10:00
jlizier
bf0062b902
Switching new debug method in KSG conditional MI calculator 1 to be publicly accessible
2018-04-26 11:43:04 +10:00
jlizier
7d76f82bb2
Adding partialNeighbourCountFromObservations() method to KSG conditional MI calculator 1 for debugging investigations into the neighbour counts
2018-04-26 11:24:56 +10:00
Pedro Martinez Mediano
df8eec27cd
Added MAX_CORR_AIS_AND_TE embedding to univariate KSG TE calculator.
2018-04-22 22:25:05 +01:00
Pedro Martinez Mediano
f8bca3275d
Fixed docs for new MAX_CORR_AIS_AND_TE embedding method.
2018-04-22 20:45:06 +01:00
Pedro Martinez Mediano
02dad26a94
Added brief mention of AUTO_EMBED_METHOD_MAX_CORR_AIS_AND_TE to javadocs.
2018-02-27 20:29:39 +00:00
Pedro Martinez Mediano
5f6671aa2b
Added AUTO_EMBED_METHOD_MAX_CORR_AIS_AND_TE to multivariate KSG TE.
2018-02-27 20:18:04 +00:00
Pedro Martinez Mediano
550ff793eb
Fixed bug in KSG TE multivariate embeddings and setObservations.
2018-02-27 20:14:08 +00:00
Pedro Martinez Mediano
8be6a037af
Added auto-embedding methods to multivariate KSG TE calculator.
2018-02-25 19:23:09 +00:00
Pedro Martinez Mediano
ce4b1599c6
Added MAX_CORR_AIS embedding method to multivariate KSG AIS.
2018-02-25 18:57:15 +00:00
Pedro Martinez Mediano
75bb2c814a
Added addObservations-related methods to multivariate TE calculators.
...
This is needed to implement auto-embedding methods later.
2018-02-25 18:54:36 +00:00
Pedro Martinez Mediano
b0fc309d6a
Add overloadings for 1d continuous variables in KSG mixed calc.
2018-01-12 22:22:46 +00:00
jlizier
0278f95ae9
Enabled use of USE_GPU property for KSG calculators in the AutoAnalysers for CMI, TE, CTE and AIS
2017-12-30 12:03:17 +11:00
Pedro Martinez Mediano
64f1142b40
Added argument to choose which variable to reorder in GPU CMI code.
2017-12-19 20:42:58 +00:00
Pedro Martinez Mediano
65ac0e9ff8
Removed unnecesary overloaded method in KSG CMI calc.
2017-12-19 20:41:11 +00:00
Pedro Martinez Mediano
2f1cd192b8
Fixed small typo in Java KSG CMI calculator.
2017-12-18 17:50:37 +00:00
Pedro Martinez Mediano
d0304ae0c4
Added Java-side JNI functions and ensureKdTreesConstructed to KSG CMI.
2017-12-12 11:19:40 +00:00
Pedro Martinez Mediano
f4ca442de4
Now KSG MI calc does not build KdTrees if GPU is going to be used.
2017-12-12 11:10:50 +00:00
Pedro Martinez Mediano
d010f32635
Updated getProperty and removed spurious dependency in KSG MI calc.
2017-12-12 11:04:32 +00:00
Pedro Martinez Mediano
eabd7f3701
Fixed typo in Kozachenko entropy calculator.
2017-11-28 16:58:13 +00:00
Pedro Martinez Mediano
444fb70801
Added addObservations-type functions to Kozachenko entropy calculator.
2017-11-28 16:56:51 +00:00
Pedro Martinez Mediano
e290040d8d
Added docs to Kozachenko entropy calculator.
2017-11-28 16:26:46 +00:00
Pedro Martinez Mediano
35df6ca3da
Kozachenko entropy estimator now adds noise to data by default.
2017-11-28 16:04:09 +00:00
jlizier
9c96ceb850
Fixed logic for when parameter values (in particular auto-embedded properties) are written back into the properties table after the calculation. This was happening only when we had the "all pairs" option selection, when it should only happen when this is not selected.
2017-11-28 12:36:06 +11:00
jlizier
589d51674e
Altering the escaped data filename in AutoAnalyser to be properly escaped using non-regex replace, and also rolling back the use of escaping to only Java (Matlab and Python on windows seem fine with the non-escaped filenames, for e.g. the paths earlier in the generated code)
2017-11-27 10:19:36 +11:00
jlizier
3bfbaa7ad3
In AutoAnalyser escaping data filenames when they are written to the generated code. This is important for windows filenames. Am not sure why it didn't come up before as an issue though.
2017-11-27 09:57:07 +11:00
jlizier
61f4bf3276
Adding getProperty lines to handle USE_GPU property for KSG MI calculator
2017-11-27 09:26:19 +11:00
jlizier
db0503d763
Having AutoAnalyser continue with the calculation where the generated code cannot be written
2017-11-26 18:04:29 +11:00
jlizier
df8724b872
Altered AutoAnalyserLauncher to either auto-detect jar location or assume demos/AutoAnalyser folder is current location (if a command line argument is given). Similarly, altered AutoAnalyser to either take location of demos/AutoAnalyser folder, or assume it is the current folder.
2017-11-26 01:10:30 +11:00
jlizier
fd804d0d0c
Added properties for running GPU calculation to MI AutoAnalyser
2017-11-26 01:07:19 +11:00
jlizier
69af7252cd
Added debug print on working directory to AutoAnalyser startup
2017-11-25 00:15:37 +11:00
jlizier
ddf3b4de0a
Moving AutoAnalyser java files into the main source location rather than in the demos location. This commit includes the moving of the files themselves. Further commits will alter the ant script and run scripts to have correct classpath, etc.
2017-11-24 21:07:33 +11:00
jlizier
142fbb4541
Merge branch 'master' of github.com:jlizier/jidt
...
Merging in Pedro's mixed Kraskov changes, plus further work on GPU for Kraskov MI
2017-11-24 15:30:20 +11:00
jlizier
9e77ebdadf
Tweak to method to print out an array of ints
2017-11-22 20:49:05 +11:00
jlizier
1bb67f0840
Adding neighbour search utilities in preparation for attempting fast surrogate generation (performing multiple neighbour searches at once where we can); in particular adding a countPointsWithinR with a remapping of the point's indices. Unit test added as well for this.
2017-11-22 20:48:30 +11:00
Pedro Martinez Mediano
446ac4ae59
Merge branch 'master' into gpu
2017-11-21 14:58:15 +00:00