Precomputing the distances can certainly help, but because the
covariance matrix depends on the parameters you have to compute
it at every iteration and there won’t be much benefit to computing
the Cholesky decomposition yourself (the multi_normal does a
Cholesky behind the scenes).
There are some weak nonidentifiabilites in these kernels that we’ve
been debating, but the difference between that student_t and the
Cauchy will still be relatively small. Similarly, having a non-zero
mean function shouldn’t cause too much trouble.
The immediate concern, however, is the discrete “arch” variable.
Trying to model a discrete covariate like that with a GP is typically
a bad idea. Ultimately the more you cover the range of covariate
values the better identified your GP will be (and the better it will
fit), and with only 0 and 1 you’re not really constraining the hyperparameters
all that much.