Closed nluetts closed 3 months ago
@nluetts Thank you for your detailed combing, I apologize that you encountered so many typos - these are most certainly on me.
If you don't mind, I have added a check-list to your comments to help me mark them off more easily! I'll open a PR for this to address these soon.
I hope that PR #296 was able to address most of the issues raised. You may consult the PR comment, code diffs, or the docs linked in the PR comment for quick validation of what I have done Thanks again for the time you placed in going through the many pages. I leave here one or two clarifying comments.
csm
, it is a number of samples needed to approximate a covariance matrix. The 0.2 is a measure between 0 and 1 of the amount of shrinkage. With huge amounts of samples the shrinkage = 0, with very few samples shrinkage = 1. This is now explained in more detailThe following are not yet resolved issues - as they involve modifying code that is not just in docs/
and so will be completed in later PRs
I believe we have addressed everything, Please close the issue if you are satisfied.
Thanks for clarifying, @odunbar , this looks all good to me, so I close this issue.
Hi :wave:
I am raising this issue as part of the JOSS review https://github.com/openjournals/joss-reviews/issues/6372
I read through the documentation and have a couple of suggestions/questions and found a few of typos. I'll use links to the source files to make locating the respective passages easier:
installation_instructions.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/installation_instructions.md?plain=1#L9
add CalibrateEmulateSample
in package mode (]
) to a new Julia project? This works fine with the Sinusoid example. Plus I think it is not desirable to clone the repo into every project that uses CES.https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/installation_instructions.md?plain=1#L12
contributing.md
you use cloning with https. Here (where you want to work on your own fork) cloning via SSH would be more appropriate.https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/installation_instructions.md?plain=1#L36-L41
Pkg.instantiate()
.examples/sinusoid_example.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/sinusoid_example.md?plain=1#L306
Regarding the figures in this section ("Emulator Validation"):
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/sinusoid_example.md?plain=1#L437-L439
calibrate.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/calibrate.md?plain=1#L14-L16
https://clima.github.io/EnsembleKalmanProcesses.jl/dev/ensemble_kalman_inversion/
https://clima.github.io/EnsembleKalmanProcesses.jl/dev/ensemble_kalman_inversion/#Updating-the-Ensemble
emulate.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L32
Emulators
must useoptimize_hyperparameters!(emulator)
while the Lorenz examplehttps://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/lorenz_example.md?plain=1#L225-L228
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L58-L59
@warn
) if no covariance matrix is provided when constructing the Emulator?https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L75-L80
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L81
GaussianProcessEmulator.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/GaussianProcessEmulator.md?plain=1#L17-L19
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/GaussianProcessEmulator.md?plain=1#L108-L109
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L58-L59
random_feature_emulator.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/random_feature_emulator.md?plain=1#L73
1d_cov_structure
is invalid, must not start with a digit.https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/random_feature_emulator.md?plain=1#L106
csm
default = 10.0 but recommended value >0.2? I guesscsm
is not directly the shrinkage amount, but this remains unclear to me.https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/random_feature_emulator.md?plain=1#L118
localization
orscheduler
).https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/random_feature_emulator.md?plain=1#L179-L183
sample.md
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L15-L18
using CalibrateEmulateSample.MarkovChainMonteCarlo
here, otherwise the user does not know from where to importRWMHSampling
orpCNMHSampling
. (I needed to look at the markdown filedocs/sample.md
to find out.)https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L85
RWMetropolisHastings
andpCNMetropolisHastings
, both of which inherit from the AdvancedMH.MHSampler base class" it would be "RWMetropolisHastings
andpCNMetropolisHastings
, both of which are subtypes of the AdvancedMH.MHSampler abstract type." But no need to argue about language, feel free to ignore this.https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L124
https://turinglang.org/AbstractMCMC.jl/dev/api/#Sampling-a-single-chain
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L135
API Reference
[x] The function
Emulator
(constructor of typeEmulator
) does not have an API reference, only the type has an API reference, which is a little unfortunate because one can miss the docs in https://clima.github.io/CalibrateEmulateSample.jl/dev/emulate/#Diagonalization-and-output-dimension-reduction when going directly to the API reference.[x] The
GaussianProcess
constructor function also does not have an API reference, although it has a docstring (which the constructor forEmulator
is missing).Typos
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/sinusoid_example.md?plain=1#L23
thenot just point estimates of the parameters"https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/sinusoid_example.md?plain=1#L262
forfor higher dimensional problems."https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/sinusoid_example.md?plain=1#L354
$\delta$
(dollars instead of backticks)?https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/examples/lorenz_example.md?plain=1#L143
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/emulate.md?plain=1#L69
bya multiplicative factor given by the elements offactor_vector
." (period missing)https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/random_feature_emulator.md?plain=1#L97
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L7
https://github.com/CliMA/CalibrateEmulateSample.jl/blob/87c069ce531062151a3aa0a5fbc823fbb10292c1/docs/src/sample.md?plain=1#L30