using Plots
using AugmentedGaussianProcesses
using Distributions
using LinearAlgebra
kernel = SqExponentialKernel()
x = range(0, 10; length=50)
K = kernelmatrix(kernel, x)
f = rand(MvNormal(K + 1e-8I)) # Sample a random GP
y = rand.(Bernoulli.(AGP.logistic.(f)))
y_sign = Int.(sign.(y .- 0.5))
50-element Vector{Int64}: 1 1 1 -1 1 1 1 1 -1 -1 ⋮ -1 1 -1 1 -1 -1 -1 1 -1
function plot_data(x, y; size=(300, 500))
return Plots.scatter(x, y; alpha=0.2, markerstrokewidth=0.0, lab="", size=size)
end
plot_data(x, y; size=(500, 500))
@info "Running full model"
mfull = VGP(x, y_sign, kernel, LogisticLikelihood(), AnalyticVI(); optimiser=false)
@time train!(mfull, 5)
[ Info: Running full model 0.856210 seconds (1.86 M allocations: 98.368 MiB, 99.51% compilation time)
(Variational Gaussian Process with a BernoulliLikelihood{GPLikelihoods.LogisticLink}(GPLikelihoods.LogisticLink(LogExpFunctions.logistic)) infered by Analytic Variational Inference , (local_vars = (c = [1.1331854148216856, 1.1437806037107898, 1.1316655371284234, 1.088312427763419, 1.0092925683375737, 0.8967626096623932, 0.7651843986740677, 0.6487008913226384, 0.6034962984513987, 0.6670742548830478 … 0.959739607288851, 0.8887061135730621, 0.8372636935828858, 0.8052988809848065, 0.7896737478699134, 0.7871233508453355, 0.7942313077419655, 0.8084246309349351, 0.8276383960769996, 0.8505289413878866], θ = [0.22628801393001607, 0.22589392160165955, 0.22634438239945381, 0.22793436998513908, 0.23073753657668591, 0.23449211818277468, 0.23847619391730449, 0.2415869222839704, 0.24267886418885332, 0.2411241709777877 … 0.23242728073577618, 0.23474924330067096, 0.23635159028890104, 0.2373116679309849, 0.23777069218528696, 0.23784496359904383, 0.23763751151625423, 0.23721902303052475, 0.23664362430702657, 0.23594504368205257]), opt_state = (NamedTuple(),), hyperopt_state = (NamedTuple(),), kernel_matrices = ((K = LinearAlgebra.Cholesky{Float64, Matrix{Float64}}([1.0000499987500624 0.9793417135471325 … 1.4538695041232462e-21 1.9286534177037293e-22; 0.9793906794086937 0.20245939866196944 … 4.489420225833076e-20 6.248468235352852e-21; … ; 1.453942195781206e-21 1.0513088244072457e-20 … 0.034540938136573676 0.07728907039399337; 1.9287498479639178e-22 1.453942195781206e-21 … 0.9793906794087034 0.03454092804975722], 'U', 0),),)))
@info "Sampling from model"
mmcmc = MCGP(x, y, kernel, LogisticLikelihood(), GibbsSampling(); optimiser=false)
m = mmcmc
@time samples = sample(mmcmc, 1000)
[ Info: Sampling from model Sampling with Gibbs Sampler 0%| | ETA: N/A Sampling with Gibbs Sampler 0%|▏ | ETA: 0:04:21 Sampling with Gibbs Sampler 1%|▎ | ETA: 0:02:13 Sampling with Gibbs Sampler 1%|▍ | ETA: 0:01:28 Sampling with Gibbs Sampler 2%|▍ | ETA: 0:01:06 Sampling with Gibbs Sampler 2%|▌ | ETA: 0:00:53 Sampling with Gibbs Sampler 3%|▋ | ETA: 0:00:44 Sampling with Gibbs Sampler 3%|▊ | ETA: 0:00:37 Sampling with Gibbs Sampler 4%|▉ | ETA: 0:00:32 Sampling with Gibbs Sampler 4%|█ | ETA: 0:00:29 Sampling with Gibbs Sampler 5%|█ | ETA: 0:00:26 Sampling with Gibbs Sampler 5%|█▏ | ETA: 0:00:23 Sampling with Gibbs Sampler 5%|█▎ | ETA: 0:00:21 Sampling with Gibbs Sampler 6%|█▍ | ETA: 0:00:20 Sampling with Gibbs Sampler 6%|█▌ | ETA: 0:00:18 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:17 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:16 Sampling with Gibbs Sampler 8%|█▊ | ETA: 0:00:15 Sampling with Gibbs Sampler 8%|█▉ | ETA: 0:00:14 Sampling with Gibbs Sampler 9%|██ | ETA: 0:00:13 Sampling with Gibbs Sampler 9%|██▏ | ETA: 0:00:12 Sampling with Gibbs Sampler 10%|██▎ | ETA: 0:00:12 Sampling with Gibbs Sampler 10%|██▎ | ETA: 0:00:11 Sampling with Gibbs Sampler 10%|██▍ | ETA: 0:00:11 Sampling with Gibbs Sampler 11%|██▌ | ETA: 0:00:10 Sampling with Gibbs Sampler 11%|██▋ | ETA: 0:00:10 Sampling with Gibbs Sampler 12%|██▊ | ETA: 0:00:09 Sampling with Gibbs Sampler 12%|██▉ | ETA: 0:00:09 Sampling with Gibbs Sampler 13%|██▉ | ETA: 0:00:09 Sampling with Gibbs Sampler 13%|███ | ETA: 0:00:08 Sampling with Gibbs Sampler 14%|███▏ | ETA: 0:00:08 Sampling with Gibbs Sampler 14%|███▎ | ETA: 0:00:08 Sampling with Gibbs Sampler 15%|███▍ | ETA: 0:00:07 Sampling with Gibbs Sampler 15%|███▌ | ETA: 0:00:07 Sampling with Gibbs Sampler 15%|███▌ | ETA: 0:00:07 Sampling with Gibbs Sampler 16%|███▋ | ETA: 0:00:07 Sampling with Gibbs Sampler 16%|███▊ | ETA: 0:00:07 Sampling with Gibbs Sampler 17%|███▉ | ETA: 0:00:06 Sampling with Gibbs Sampler 17%|████ | ETA: 0:00:06 Sampling with Gibbs Sampler 18%|████▏ | ETA: 0:00:06 Sampling with Gibbs Sampler 18%|████▏ | ETA: 0:00:06 Sampling with Gibbs Sampler 19%|████▎ | ETA: 0:00:06 Sampling with Gibbs Sampler 19%|████▍ | ETA: 0:00:05 Sampling with Gibbs Sampler 20%|████▌ | ETA: 0:00:05 Sampling with Gibbs Sampler 20%|████▋ | ETA: 0:00:05 Sampling with Gibbs Sampler 20%|████▊ | ETA: 0:00:05 Sampling with Gibbs Sampler 21%|████▊ | ETA: 0:00:05 Sampling with Gibbs Sampler 21%|████▉ | ETA: 0:00:05 Sampling with Gibbs Sampler 22%|█████ | ETA: 0:00:05 Sampling with Gibbs Sampler 22%|█████▏ | ETA: 0:00:05 Sampling with Gibbs Sampler 23%|█████▎ | ETA: 0:00:04 Sampling with Gibbs Sampler 23%|█████▍ | ETA: 0:00:04 Sampling with Gibbs Sampler 24%|█████▍ | ETA: 0:00:04 Sampling with Gibbs Sampler 24%|█████▌ | ETA: 0:00:04 Sampling with Gibbs Sampler 25%|█████▋ | ETA: 0:00:04 Sampling with Gibbs Sampler 25%|█████▊ | ETA: 0:00:04 Sampling with Gibbs Sampler 25%|█████▉ | ETA: 0:00:04 Sampling with Gibbs Sampler 26%|██████ | ETA: 0:00:04 Sampling with Gibbs Sampler 26%|██████▏ | ETA: 0:00:04 Sampling with Gibbs Sampler 27%|██████▏ | ETA: 0:00:04 Sampling with Gibbs Sampler 27%|██████▎ | ETA: 0:00:03 Sampling with Gibbs Sampler 28%|██████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 28%|██████▌ | ETA: 0:00:03 Sampling with Gibbs Sampler 29%|██████▋ | ETA: 0:00:03 Sampling with Gibbs Sampler 29%|██████▊ | ETA: 0:00:03 Sampling with Gibbs Sampler 30%|██████▊ | ETA: 0:00:03 Sampling with Gibbs Sampler 30%|██████▉ | ETA: 0:00:03 Sampling with Gibbs Sampler 30%|███████ | ETA: 0:00:03 Sampling with Gibbs Sampler 31%|███████▏ | ETA: 0:00:03 Sampling with Gibbs Sampler 31%|███████▎ | ETA: 0:00:03 Sampling with Gibbs Sampler 32%|███████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 32%|███████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 33%|███████▌ | ETA: 0:00:03 Sampling with Gibbs Sampler 33%|███████▋ | ETA: 0:00:03 Sampling with Gibbs Sampler 34%|███████▊ | ETA: 0:00:03 Sampling with Gibbs Sampler 34%|███████▉ | ETA: 0:00:03 Sampling with Gibbs Sampler 35%|████████ | ETA: 0:00:03 Sampling with Gibbs Sampler 35%|████████ | ETA: 0:00:02 Sampling with Gibbs Sampler 35%|████████▏ | ETA: 0:00:02 Sampling with Gibbs Sampler 36%|████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 36%|████████▍ | ETA: 0:00:02 Sampling with Gibbs Sampler 37%|████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 37%|████████▋ | ETA: 0:00:02 Sampling with Gibbs Sampler 38%|████████▋ | ETA: 0:00:02 Sampling with Gibbs Sampler 38%|████████▊ | ETA: 0:00:02 Sampling with Gibbs Sampler 39%|████████▉ | ETA: 0:00:02 Sampling with Gibbs Sampler 39%|█████████ | ETA: 0:00:02 Sampling with Gibbs Sampler 40%|█████████▏ | ETA: 0:00:02 Sampling with Gibbs Sampler 40%|█████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 40%|█████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 41%|█████████▍ | ETA: 0:00:02 Sampling with Gibbs Sampler 41%|█████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 42%|█████████▋ | ETA: 0:00:02 Sampling with Gibbs Sampler 42%|█████████▊ | ETA: 0:00:02 Sampling with Gibbs Sampler 43%|█████████▉ | ETA: 0:00:02 Sampling with Gibbs Sampler 43%|█████████▉ | ETA: 0:00:02 Sampling with Gibbs Sampler 44%|██████████ | ETA: 0:00:02 Sampling with Gibbs Sampler 44%|██████████▏ | ETA: 0:00:02 Sampling with Gibbs Sampler 45%|██████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 45%|██████████▍ | ETA: 0:00:02 Sampling with Gibbs Sampler 45%|██████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 46%|██████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 46%|██████████▋ | ETA: 0:00:02 Sampling with Gibbs Sampler 47%|██████████▊ | ETA: 0:00:02 Sampling with Gibbs Sampler 47%|██████████▉ | ETA: 0:00:02 Sampling with Gibbs Sampler 48%|███████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 48%|███████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 49%|███████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 49%|███████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 50%|███████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 50%|███████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 50%|███████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 51%|███████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 51%|███████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 52%|███████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 52%|████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 53%|████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 53%|████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 54%|████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 54%|████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 55%|████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 55%|████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 55%|████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 56%|████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 56%|█████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 57%|█████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 57%|█████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 58%|█████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 58%|█████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 59%|█████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 59%|█████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 60%|█████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 60%|█████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 60%|█████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 61%|██████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 61%|██████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 62%|██████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 62%|██████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 63%|██████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 63%|██████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 64%|██████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 64%|██████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 65%|██████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 65%|███████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 65%|███████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 66%|███████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 66%|███████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 67%|███████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 67%|███████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 68%|███████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 68%|███████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 69%|███████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 69%|███████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 70%|████████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 70%|████████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 70%|████████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 71%|████████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 71%|████████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 72%|████████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 72%|████████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 73%|████████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 73%|████████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 74%|████████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 74%|█████████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 75%|█████████████████▏ | ETA: 0:00:01 Sampling with Gibbs Sampler 75%|█████████████████▎ | ETA: 0:00:01 Sampling with Gibbs Sampler 75%|█████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 76%|█████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 76%|█████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 77%|█████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 77%|█████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 78%|█████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 78%|██████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 79%|██████████████████▏ | ETA: 0:00:00 Sampling with Gibbs Sampler 79%|██████████████████▎ | ETA: 0:00:00 Sampling with Gibbs Sampler 80%|██████████████████▎ | ETA: 0:00:00 Sampling with Gibbs Sampler 80%|██████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 80%|██████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 81%|██████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 81%|██████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 82%|██████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 82%|██████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 83%|███████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 83%|███████████████████▏ | ETA: 0:00:00 Sampling with Gibbs Sampler 84%|███████████████████▎ | ETA: 0:00:00 Sampling with Gibbs Sampler 84%|███████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 85%|███████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 85%|███████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 85%|███████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 86%|███████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 86%|███████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 87%|████████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 87%|████████████████████▏ | ETA: 0:00:00 Sampling with Gibbs Sampler 88%|████████████████████▏ | ETA: 0:00:00 Sampling with Gibbs Sampler 88%|████████████████████▎ | ETA: 0:00:00 Sampling with Gibbs Sampler 89%|████████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 89%|████████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 90%|████████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 90%|████████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 90%|████████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 91%|████████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 91%|█████████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 92%|█████████████████████▏ | ETA: 0:00:00 Sampling with Gibbs Sampler 92%|█████████████████████▎ | ETA: 0:00:00 Sampling with Gibbs Sampler 93%|█████████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 93%|█████████████████████▍ | ETA: 0:00:00 Sampling with Gibbs Sampler 94%|█████████████████████▌ | ETA: 0:00:00 Sampling with Gibbs Sampler 94%|█████████████████████▋ | ETA: 0:00:00 Sampling with Gibbs Sampler 95%|█████████████████████▊ | ETA: 0:00:00 Sampling with Gibbs Sampler 95%|█████████████████████▉ | ETA: 0:00:00 Sampling with Gibbs Sampler 95%|██████████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 96%|██████████████████████ | ETA: 0:00:00 Sampling with Gibbs Sampler 96%|██████████████████████▏| ETA: 0:00:00 Sampling with Gibbs Sampler 97%|██████████████████████▎| ETA: 0:00:00 Sampling with Gibbs Sampler 97%|██████████████████████▍| ETA: 0:00:00 Sampling with Gibbs Sampler 98%|██████████████████████▌| ETA: 0:00:00 Sampling with Gibbs Sampler 98%|██████████████████████▋| ETA: 0:00:00 Sampling with Gibbs Sampler 99%|██████████████████████▋| ETA: 0:00:00 Sampling with Gibbs Sampler 99%|██████████████████████▊| ETA: 0:00:00 Sampling with Gibbs Sampler 100%|██████████████████████▉| ETA: 0:00:00 Sampling with Gibbs Sampler 100%|███████████████████████| Time: 0:00:01 Sampling with Gibbs Sampler 100%|███████████████████████| Time: 0:00:02 5.044885 seconds (8.67 M allocations: 626.447 MiB, 4.12% gc time, 92.73% compilation time)
1000-element Vector{Vector{Vector{Float64}}}: [[0.04547374197772869, 0.1161885694729542, 0.19018372815258167, 0.2545449409960766, 0.28877106257443147, 0.3113531511156117, 0.29551082378552734, 0.21681537857384997, 0.11187945991899154, -0.024743473638780822 … -2.2792028393438395, -2.277972809285071, -2.1565686523149528, -1.911916171655351, -1.5698357254256088, -1.1467768629784425, -0.6941615192561681, -0.2907469652342171, 0.02500952785880728, 0.20556592526369055]] [[1.0367022653714166, 1.0160389778008683, 0.8057049037247201, 0.46616312728199305, 0.06541024178428068, -0.3551305553645554, -0.7605491759004861, -1.0892376565371613, -1.2733425840780668, -1.3014654725523722 … -1.8541365213035603, -1.735435105031745, -1.612189148339647, -1.546125452257857, -1.508903498034171, -1.5420808552510403, -1.5779459566602587, -1.6185862922981311, -1.6488732659311838, -1.5751650253528937]] [[1.1314373924631722, 1.1835199950060893, 1.1437990248667842, 0.9680084006678434, 0.7099113378246341, 0.3750990357701567, 0.0425458760883049, -0.2669721028405453, -0.48810247825295455, -0.5950039194052413 … 0.5391267882117411, 0.2346526939404967, -0.18541921301414266, -0.6489165880315134, -1.0702446079962078, -1.4070410333343926, -1.5828983435034902, -1.6145733508312174, -1.5702981848638617, -1.455673310849011]] [[-0.5401685984789578, 0.04973155959456044, 0.6308091078265919, 1.124448649970457, 1.4596532218885712, 1.5847562078717385, 1.4831735548880183, 1.1539854293308205, 0.6442521953826473, 0.11206571315110114 … -0.8622958191888004, -0.9003182547055565, -0.9191675969610893, -0.920988179063962, -0.896375927537076, -0.8912855047484101, -0.8938770771128861, -0.9098567214639803, -0.9468560091114138, -0.946250889925518]] [[0.802894945011623, 0.7345082242221407, 0.7098864179295528, 0.737839324472654, 0.7876483707064763, 0.8054966970163251, 0.7376954045308708, 0.5639916319118171, 0.30074644282975677, -0.02998204853918074 … -0.45539460383443847, -0.33601533716110327, -0.273003422382563, -0.30409227204932354, -0.3638024778891775, -0.4613059720548872, -0.5479830786293417, -0.5620132387841944, -0.5894980219345205, -0.6190093119313933]] [[0.14652038474100149, 0.03273207076826734, -0.0351682854451465, -0.08337595330752456, -0.13108009964121436, -0.15919581129228, -0.21930179221741186, -0.32142010766128565, -0.460923502533311, -0.623476628619571 … -1.0663832953360166, -1.0481483878069184, -1.1031925848401953, -1.1559197921905162, -1.2196110962748097, -1.2032436208542452, -1.1499036755452696, -1.039521525494099, -0.897988183723919, -0.7939643515986508]] [[1.6952503689112821, 1.5788474621659665, 1.3626023985860705, 1.0409716186035323, 0.6986312556887786, 0.3203276483711657, -0.04168455570814644, -0.3551029568658103, -0.6368852940819795, -0.8921318111909411 … -0.6466372945818996, -0.36990879747292105, -0.016843315757545607, 0.33999539195129647, 0.6518377490251854, 0.8851580836736778, 0.9830612221783611, 0.9259720085067396, 0.7580590621116338, 0.4821552687488177]] [[0.6411360102100311, 0.7028810695251357, 0.7217089492733103, 0.6749701978450185, 0.5946222822027812, 0.438944498444416, 0.23766615950369782, -0.01669337191866487, -0.27535126683955574, -0.49025764156407803 … -0.7396374267722169, -0.6298796893532492, -0.5030776093207892, -0.28619739734927163, -0.1341673755610564, -0.029429828708546824, -0.04507612182784354, -0.14356749726761514, -0.2822845413884246, -0.44980415297624377]] [[2.511059882002585, 2.5106065361683227, 2.3881862366076527, 2.1547386759129448, 1.729241483947293, 1.2264750389026795, 0.6233099704103263, 0.06050191400034341, -0.4911887203079704, -0.9850866563875564 … -0.4330138943756581, -0.308095218089346, -0.2094433661088153, -0.15917595613530805, -0.14310677059453342, -0.15048642323414285, -0.21143165570781686, -0.25029791104100974, -0.2818248896557489, -0.3163383791294343]] [[0.7550945274418572, 0.6515974730395487, 0.548499247668147, 0.4809151717799832, 0.4097882184027408, 0.31493175142822427, 0.1963699816724971, 0.07093151050974693, -0.12603415423444272, -0.400001834508145 … -0.7260546225395464, -0.7500247338971927, -0.787732443365007, -0.7562266974537746, -0.6297517561984662, -0.4078975585618992, -0.12427945149513359, 0.14497475147903194, 0.432305768566029, 0.6356056032620562]] ⋮ [[0.3390978605343069, 0.28298006688721133, 0.23538281734250577, 0.23288733354762747, 0.20730874839933555, 0.22687017466467296, 0.2003703400347165, 0.16899788677379546, 0.11485044795931806, 0.016527512651745235 … -0.5485097075660539, -0.4154350148845756, -0.3161592946501868, -0.22220656271025385, -0.09730933641389727, -0.024446062738178953, -0.0012394982256975773, -0.013906817720377829, -0.14091974868781182, -0.25419025311309146]] [[0.41981103301608325, 0.7123229125025717, 0.9544674546930811, 1.1305848155289324, 1.2092039844051166, 1.13464107586876, 0.9475176703005324, 0.6277542955771063, 0.27419880048378686, -0.07382111651809514 … -1.4308562337197934, -1.6238522613646027, -1.6406022934770519, -1.51220069984186, -1.2212715713575015, -0.8230496165153056, -0.32669371137567593, 0.16897117309459436, 0.5929818083659784, 0.8713694768949378]] [[1.0162607123778957, 1.116362584009618, 1.2222845897132162, 1.304566721483302, 1.338565110890565, 1.3447221538934313, 1.3449997516665528, 1.3012502745969279, 1.1986467964703813, 1.0156991441907377 … -0.6471745719941464, -0.6223023317814077, -0.6009980395228386, -0.5327078517154261, -0.4861921604812184, -0.4658259397157232, -0.5063049666002795, -0.5584068824720364, -0.6792502294568923, -0.7741543627530962]] [[0.9360758264251915, 0.893355246756959, 0.7728111486900383, 0.6010226928202251, 0.39761952228985, 0.23292718043684102, 0.059944734296318636, -0.10150995637361104, -0.28675471962817045, -0.4926748206656982 … 0.28924224810440435, 0.15554531357916257, -0.0021690896157503525, -0.18139308571684448, -0.3237720447920881, -0.417184873408791, -0.5091704599886203, -0.5818933269325736, -0.6093965664488395, -0.6576960332861428]] [[2.2331684325219463, 2.3353624391488177, 2.4171821429544718, 2.4196069833082863, 2.2889731636068156, 2.037389999913546, 1.7006734536519976, 1.2699491735763775, 0.8180373376280041, 0.36202133521122243 … -0.44988218578422173, -0.3062549678166861, -0.17385779056967737, -0.08665113036350414, -0.037258021809277286, -0.03109123983603912, -0.0620196133446384, -0.17351936077933472, -0.33681579124745664, -0.5735371005127112]] [[1.3843604197898298, 1.564385040751811, 1.6699647191478026, 1.7501503966488383, 1.7349396552827436, 1.6332525817513353, 1.4259939451375638, 1.100999269951374, 0.669076558788623, 0.15577074373925465 … -1.1086471706732512, -0.7157834885804906, -0.29975947269322356, 0.09957574955864301, 0.43623215980423935, 0.7297262937778997, 0.944178237702306, 1.069929000954265, 1.1239476807749929, 1.0657815163008415]] [[1.5165531146796387, 1.719573491117912, 1.7499671296322283, 1.605797716065115, 1.3330719203010672, 0.9246461640544655, 0.4138292407747946, -0.13344581463615687, -0.7293834806291745, -1.2627242865564163 … -0.013702255221439863, 0.051835721521515665, 0.07647029446100329, 0.06167811044552529, -0.033292923646481454, -0.11252553059040771, -0.17311706958569795, -0.1876159323333461, -0.1525782615329469, -0.04637067408707507]] [[0.9820942252544012, 0.8995845357600707, 0.7161593636359613, 0.5227946430775622, 0.28200901135239387, 0.0762681615001699, -0.07729187391748593, -0.18914421337690274, -0.2422158686494914, -0.26080522507045545 … -1.1875398953417917, -0.8405406995070406, -0.5086282273469127, -0.19712337907160715, 0.014436648996008772, 0.16149678466133044, 0.22422126090010175, 0.18024997258687908, 0.11085046474083138, 0.03334415732487078]] [[1.1684737174066875, 1.293390942035748, 1.295526839564421, 1.2032460990212626, 1.0155439580568784, 0.7172467475909323, 0.37465344179298593, 0.047918394650730944, -0.2591622568532532, -0.4612275882914283 … -1.6909503171353168, -1.3673905627226581, -1.0779214884766506, -0.8714846546155611, -0.73908211527224, -0.7581187101355981, -0.9051833208119833, -1.1312320722400617, -1.3264705167277406, -1.5101747580599207]]
p1 = plot(x, f; label="true f")
plot!(x, samples; label="", color=:black, alpha=0.02, lab="")
plot!(x, mean(mfull[1]); ribbon=sqrt.(var(mfull[1])), label="VI")
p2 = plot_data(x, y; size=(600, 400))
μ_vi, σ_vi = proba_y(mfull, x)
plot!(x, μ_vi; ribbon=σ_vi, label="VI")
μ_mcmc, σ_mcmc = proba_y(mmcmc, x)
plot!(x, μ_mcmc; ribbon=σ_mcmc, label="MCMC")
This notebook was generated using Literate.jl.