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 = sign.(y .- 0.5)
50-element Vector{Float64}: -1.0 -1.0 -1.0 1.0 -1.0 -1.0 1.0 -1.0 -1.0 1.0 ⋮ -1.0 -1.0 -1.0 1.0 -1.0 1.0 1.0 1.0 1.0
function plot_data(x, y; size=(300,500))
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 └ @ Main.##475 string:1 0.629360 seconds (1.14 M allocations: 66.277 MiB, 99.43% compilation time)
@info "Sampling from model"
mmcmc = MCGP(x, y,
kernel,
LogisticLikelihood(),
GibbsSampling(),
optimiser = false
)
m = mmcmc
@time samples = sample(mmcmc, 1000)
┌ Info: Sampling from model └ @ Main.##475 string:1 Sampling with Gibbs Sampler 0%| | ETA: N/A Sampling with Gibbs Sampler 0%|▏ | ETA: 0:05:51 Sampling with Gibbs Sampler 1%|▎ | ETA: 0:02:58 Sampling with Gibbs Sampler 1%|▍ | ETA: 0:01:58 Sampling with Gibbs Sampler 2%|▍ | ETA: 0:01:28 Sampling with Gibbs Sampler 2%|▌ | ETA: 0:01:10 Sampling with Gibbs Sampler 3%|▋ | ETA: 0:00:58 Sampling with Gibbs Sampler 3%|▊ | ETA: 0:00:50 Sampling with Gibbs Sampler 4%|▉ | ETA: 0:00:44 Sampling with Gibbs Sampler 4%|█ | ETA: 0:00:39 Sampling with Gibbs Sampler 5%|█ | ETA: 0:00:35 Sampling with Gibbs Sampler 5%|█▏ | ETA: 0:00:31 Sampling with Gibbs Sampler 5%|█▎ | ETA: 0:00:29 Sampling with Gibbs Sampler 6%|█▍ | ETA: 0:00:26 Sampling with Gibbs Sampler 6%|█▌ | ETA: 0:00:24 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:23 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:21 Sampling with Gibbs Sampler 8%|█▊ | ETA: 0:00:20 Sampling with Gibbs Sampler 8%|█▉ | ETA: 0:00:19 Sampling with Gibbs Sampler 9%|██ | ETA: 0:00:18 Sampling with Gibbs Sampler 9%|██▏ | ETA: 0:00:17 Sampling with Gibbs Sampler 10%|██▎ | ETA: 0:00:16 Sampling with Gibbs Sampler 10%|██▍ | ETA: 0:00:15 Sampling with Gibbs Sampler 11%|██▍ | ETA: 0:00:14 Sampling with Gibbs Sampler 11%|██▌ | ETA: 0:00:14 Sampling with Gibbs Sampler 11%|██▋ | ETA: 0:00:13 Sampling with Gibbs Sampler 12%|██▊ | ETA: 0:00:13 Sampling with Gibbs Sampler 12%|██▉ | ETA: 0:00:12 Sampling with Gibbs Sampler 13%|███ | ETA: 0:00:12 Sampling with Gibbs Sampler 13%|███ | ETA: 0:00:11 Sampling with Gibbs Sampler 14%|███▏ | ETA: 0:00:11 Sampling with Gibbs Sampler 14%|███▎ | ETA: 0:00:10 Sampling with Gibbs Sampler 15%|███▍ | ETA: 0:00:10 Sampling with Gibbs Sampler 15%|███▌ | ETA: 0:00:10 Sampling with Gibbs Sampler 16%|███▋ | ETA: 0:00:09 Sampling with Gibbs Sampler 16%|███▋ | ETA: 0:00:09 Sampling with Gibbs Sampler 16%|███▊ | ETA: 0:00:09 Sampling with Gibbs Sampler 17%|███▉ | ETA: 0:00:08 Sampling with Gibbs Sampler 17%|████ | ETA: 0:00:08 Sampling with Gibbs Sampler 18%|████▏ | ETA: 0:00:08 Sampling with Gibbs Sampler 18%|████▎ | ETA: 0:00:08 Sampling with Gibbs Sampler 19%|████▎ | ETA: 0:00:07 Sampling with Gibbs Sampler 19%|████▍ | ETA: 0:00:07 Sampling with Gibbs Sampler 20%|████▌ | ETA: 0:00:07 Sampling with Gibbs Sampler 20%|████▋ | ETA: 0:00:07 Sampling with Gibbs Sampler 21%|████▊ | ETA: 0:00:07 Sampling with Gibbs Sampler 21%|████▉ | ETA: 0:00:06 Sampling with Gibbs Sampler 21%|████▉ | ETA: 0:00:06 Sampling with Gibbs Sampler 22%|█████ | ETA: 0:00:06 Sampling with Gibbs Sampler 22%|█████▏ | ETA: 0:00:06 Sampling with Gibbs Sampler 23%|█████▎ | ETA: 0:00:06 Sampling with Gibbs Sampler 23%|█████▍ | ETA: 0:00:06 Sampling with Gibbs Sampler 24%|█████▌ | ETA: 0:00:06 Sampling with Gibbs Sampler 24%|█████▌ | ETA: 0:00:05 Sampling with Gibbs Sampler 25%|█████▋ | ETA: 0:00:05 Sampling with Gibbs Sampler 25%|█████▊ | ETA: 0:00:05 Sampling with Gibbs Sampler 26%|█████▉ | ETA: 0:00:05 Sampling with Gibbs Sampler 26%|██████ | ETA: 0:00:05 Sampling with Gibbs Sampler 26%|██████▏ | ETA: 0:00:05 Sampling with Gibbs Sampler 27%|██████▎ | ETA: 0:00:05 Sampling with Gibbs Sampler 27%|██████▎ | ETA: 0:00:05 Sampling with Gibbs Sampler 28%|██████▍ | ETA: 0:00:05 Sampling with Gibbs Sampler 28%|██████▌ | ETA: 0:00:04 Sampling with Gibbs Sampler 29%|██████▋ | ETA: 0:00:04 Sampling with Gibbs Sampler 29%|██████▊ | ETA: 0:00:04 Sampling with Gibbs Sampler 30%|██████▉ | ETA: 0:00:04 Sampling with Gibbs Sampler 30%|██████▉ | ETA: 0:00:04 Sampling with Gibbs Sampler 31%|███████ | ETA: 0:00:04 Sampling with Gibbs Sampler 31%|███████▏ | ETA: 0:00:04 Sampling with Gibbs Sampler 31%|███████▎ | ETA: 0:00:04 Sampling with Gibbs Sampler 32%|███████▍ | ETA: 0:00:04 Sampling with Gibbs Sampler 32%|███████▌ | ETA: 0:00:04 Sampling with Gibbs Sampler 33%|███████▌ | ETA: 0:00:04 Sampling with Gibbs Sampler 33%|███████▋ | ETA: 0:00:04 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:03 Sampling with Gibbs Sampler 36%|████████▏ | ETA: 0:00:03 Sampling with Gibbs Sampler 36%|████████▎ | ETA: 0:00:03 Sampling with Gibbs Sampler 36%|████████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 37%|████████▌ | ETA: 0:00:03 Sampling with Gibbs Sampler 37%|████████▋ | ETA: 0:00:03 Sampling with Gibbs Sampler 38%|████████▊ | ETA: 0:00:03 Sampling with Gibbs Sampler 38%|████████▊ | ETA: 0:00:03 Sampling with Gibbs Sampler 39%|████████▉ | ETA: 0:00:03 Sampling with Gibbs Sampler 39%|█████████ | ETA: 0:00:03 Sampling with Gibbs Sampler 40%|█████████▏ | ETA: 0:00:03 Sampling with Gibbs Sampler 40%|█████████▎ | ETA: 0:00:03 Sampling with Gibbs Sampler 41%|█████████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 41%|█████████▍ | ETA: 0:00:03 Sampling with Gibbs Sampler 41%|█████████▌ | ETA: 0:00:03 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 46%|██████████▌ | 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:02 Sampling with Gibbs Sampler 48%|███████████▏ | ETA: 0:00:02 Sampling with Gibbs Sampler 49%|███████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 49%|███████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 50%|███████████▍ | ETA: 0:00:02 Sampling with Gibbs Sampler 50%|███████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 51%|███████████▋ | ETA: 0:00:02 Sampling with Gibbs Sampler 51%|███████████▊ | ETA: 0:00:02 Sampling with Gibbs Sampler 51%|███████████▉ | ETA: 0:00:02 Sampling with Gibbs Sampler 52%|████████████ | ETA: 0:00:02 Sampling with Gibbs Sampler 52%|████████████ | ETA: 0:00:02 Sampling with Gibbs Sampler 53%|████████████▏ | ETA: 0:00:02 Sampling with Gibbs Sampler 53%|████████████▎ | ETA: 0:00:02 Sampling with Gibbs Sampler 54%|████████████▍ | ETA: 0:00:02 Sampling with Gibbs Sampler 54%|████████████▌ | ETA: 0:00:02 Sampling with Gibbs Sampler 55%|████████████▋ | ETA: 0:00:02 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 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 61%|█████████████▉ | 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 66%|███████████████▏ | 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 71%|████████████████▎ | 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 76%|█████████████████▍ | ETA: 0:00:01 Sampling with Gibbs Sampler 76%|█████████████████▌ | ETA: 0:00:01 Sampling with Gibbs Sampler 76%|█████████████████▋ | ETA: 0:00:01 Sampling with Gibbs Sampler 77%|█████████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 77%|█████████████████▊ | ETA: 0:00:01 Sampling with Gibbs Sampler 78%|█████████████████▉ | ETA: 0:00:01 Sampling with Gibbs Sampler 78%|██████████████████ | ETA: 0:00:01 Sampling with Gibbs Sampler 79%|██████████████████▏ | ETA: 0:00:01 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 81%|██████████████████▌ | 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 86%|███████████████████▋ | 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 91%|████████████████████▉ | 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 96%|██████████████████████ | 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:02 4.981034 seconds (7.53 M allocations: 678.920 MiB, 93.58% compilation time)
1000-element Vector{Vector{Vector{Float64}}}: [[-1.3974060027106259, -1.1545682051240607, -1.026372376606182, -0.9297847152620585, -0.8768570379823606, -0.8406192749404671, -0.7477532163816016, -0.5653402768872713, -0.3339809611320675, -0.052267635769494614 … -0.1980007242747822, -0.5106512803240326, -0.7001794305583093, -0.7469161860176671, -0.6749136233768407, -0.5289924345288565, -0.2941949780336669, -0.07018962695845166, 0.16916719943055952, 0.4195605678901758]] [[-0.8606302413167455, -0.9835817515773289, -1.0449378409728163, -1.004855894921047, -0.9193273681042207, -0.7778219969137499, -0.6827832859405636, -0.6071325569330307, -0.5637381422509589, -0.49849731664191554 … -0.9828431591672944, -1.0207518050094058, -0.9244537016087452, -0.6347075819928173, -0.24948102204000616, 0.24246366593070173, 0.7376599857716111, 1.1719122245642195, 1.4756352549891545, 1.6244395338527384]] [[-0.5835436891017246, -0.7757757531096837, -0.917465575994605, -0.9551048065132725, -0.8860614002233475, -0.7036292406293594, -0.444500454460268, -0.18630377447231783, 0.06770759123415426, 0.2387402616628567 … 0.18491327247703093, 0.26727026266959397, 0.41445301091298126, 0.6210228619294975, 0.9081993537267626, 1.1790467930075113, 1.4727597523334164, 1.7564316872941375, 2.015550929260921, 2.2237109986177748]] [[-0.23813197273796677, -0.5811634041675795, -0.908602099388645, -1.2001071535230303, -1.4414150522295712, -1.5990339131021447, -1.6190641128314545, -1.5669590764465915, -1.3476567768486176, -1.0791091301758946 … -0.10810226340172358, -0.03812816834311672, 0.12457536413840237, 0.3705373221792484, 0.6416468924280544, 0.9112124929939935, 1.0865819957565828, 1.1492855322198163, 1.0659187745596521, 0.907859059698357]] [[-1.5572219182369047, -1.3016690194363856, -1.0334059728873313, -0.7528803230697478, -0.43959653411274546, -0.16973025346710652, 0.0135029355768021, 0.11927731934084523, 0.15184404328902507, 0.09331767164418797 … 0.13962451724723546, 0.26747805049753304, 0.4836837085862347, 0.6802631788010732, 0.8637860637210903, 0.9982323833049845, 0.9693700390981839, 0.8416754830323214, 0.5878339608343165, 0.2681930098406683]] [[-2.0987443602296008, -2.3631805524509266, -2.4532447118225713, -2.3658979832093747, -2.169523776600442, -1.8494207954420614, -1.4891433235335438, -1.1892017882090031, -0.9151143127118655, -0.7592154387902779 … -0.5076162789723092, -0.3781508630826569, -0.2202862310801943, 0.050463600062507774, 0.3565363167787215, 0.714183466418568, 1.0422946323432818, 1.364132772832706, 1.6673416178963896, 1.8837235003523531]] [[-0.7208183393272587, -0.6245771747827915, -0.4170105762550006, -0.19486892616892004, -0.022115762031485575, 0.1144969092005601, 0.14449295713327837, 0.03883348881872428, -0.16439164687480737, -0.41240430104210646 … -1.4176088768400794, -1.3186182563847, -1.0710698219679515, -0.7307099383554856, -0.32942796954415554, 0.04499257868528894, 0.431362621874613, 0.7374061829679035, 1.0139506933124094, 1.2064557353512377]] [[-0.9850568116533438, -0.9278801042770449, -0.8630926322510682, -0.7622319125656336, -0.6982921199228234, -0.6298601749668655, -0.5546785610056562, -0.4521065937265814, -0.30660610356839174, -0.1377954114861809 … -0.373782547075015, -0.4666466670787504, -0.4976976395551641, -0.3704237645538877, -0.16367749309787433, 0.1598915412015104, 0.5052247081208782, 0.8122583293335264, 1.1001128212122553, 1.2695054126157088]] [[0.2948281837472697, 0.19277488089939654, 0.013446506485840115, -0.19413509600893208, -0.35633762137616065, -0.5262237582169933, -0.6109882702551888, -0.6302075214203595, -0.5833131183991184, -0.5338735066249684 … -0.26780401314207875, -0.3014935891403975, -0.22207093086324228, -0.1245407995376793, 0.04502610279004919, 0.2471653625878486, 0.4308411993838532, 0.6136764336038261, 0.739486741387037, 0.8337629339341458]] [[-2.2363683363052917, -1.9421137339300787, -1.5415644515938003, -1.1009502600172418, -0.7260748161111668, -0.38875383047530176, -0.19882484959199748, -0.1149737418188354, -0.13063051610413287, -0.20613187849716305 … -0.8082852283696365, -0.6660354567414821, -0.340554908666902, 0.07086460574296033, 0.4800840529021929, 0.772659567376956, 0.9268860394118894, 0.9077472217878964, 0.7061180436294655, 0.4503245537831941]] ⋮ [[-1.4829091558320933, -1.3112152528289087, -1.1193566897465372, -0.9005269127608957, -0.7327351912107918, -0.5973076727820568, -0.4992830475379687, -0.4009468504449653, -0.3818034675471773, -0.45509482621690567 … -1.2553560295158288, -1.1130047559102472, -0.8431671071328849, -0.4971513200949397, -0.12487114760839796, 0.21357458807216836, 0.49345946475009544, 0.7014041783571286, 0.8343335765218711, 0.9121916568645402]] [[-0.9604145868791953, -0.8613818996012412, -0.7216714513526606, -0.5848606194676389, -0.43189677444952174, -0.2846196005517523, -0.15675969974574355, -0.02915627238528945, 0.06262724594173502, 0.1470605330176121 … -0.19425626417337288, -0.1065707465467533, -0.046073047037671566, 0.011051441386397132, 0.044130179471491796, 0.06413935084542796, 0.021094439644950502, -0.021713124240913872, -0.0954435286795614, -0.17192318535104567]] [[-1.054659237442113, -1.178738599253908, -1.3152200137171866, -1.3963316623528939, -1.4465565848798694, -1.4826847313527916, -1.4527443682159675, -1.3912553478026455, -1.2588130158409017, -1.0863691864446832 … 0.011480679796108173, 0.2104232907931054, 0.4628069645917719, 0.7462113309312285, 1.0580549417148195, 1.27543935463366, 1.4477122330910945, 1.5088445526436942, 1.5362569231944083, 1.4988947882890984]] [[-1.8792470346095236, -2.041089334789669, -2.1260219316012643, -2.1106248552867006, -2.04628800785839, -1.8939948719047637, -1.6758747034537298, -1.4214301087092487, -1.1973738810892234, -0.9574439151379847 … -1.4002653283839286, -1.354663132603346, -1.0816856331047653, -0.6563988119398467, -0.10201159027978751, 0.41318044668574727, 0.8151144734979645, 1.0859069326731143, 1.1898251422877681, 1.1726848047573197]] [[-1.495168922702172, -1.9651419826348804, -2.241762250966526, -2.347039957013615, -2.316662479219986, -2.161676376072479, -1.8981685526832122, -1.6059076791581626, -1.2650552344623145, -0.939206586989307 … 0.01596702055991428, -0.13860820804681534, -0.23275274981527583, -0.3005990074428073, -0.34182024812515915, -0.39342303747164836, -0.41782242202761205, -0.491237929302476, -0.5800709339972219, -0.651273263098133]] [[-1.360769607265081, -1.176918957704846, -1.0071342759086102, -0.8746464221361275, -0.7072877893645013, -0.5690793017484843, -0.42540545510897215, -0.24158695428541654, -0.06505788263184456, 0.08367225209659918 … -0.47815601566793964, -0.5699596772119837, -0.5688713849378265, -0.4547712133821217, -0.30605305286032647, -0.15999897021287518, -0.012632647794263041, 0.11840085602070138, 0.2483743596613608, 0.3716009383117569]] [[-0.8665369742955557, -0.714494594519029, -0.5354450623359562, -0.4350543830433246, -0.36171514944064287, -0.40055679728461907, -0.5014462057604473, -0.6477376477560925, -0.8667953333470377, -1.054172403238386 … -0.09506220659072895, -0.11362713323902096, -0.07543145686007957, 0.03912934603402743, 0.20193872211671454, 0.2981382354145168, 0.39660285555532404, 0.4997659492340786, 0.5451136435539995, 0.5777280161222893]] [[-1.579651424816316, -1.572740533745074, -1.4764132252178945, -1.3071867935302377, -1.0829208751892734, -0.8208661374615562, -0.5698131936164995, -0.2916259348825745, 0.020166655047605675, 0.31020317888914456 … -1.1289023338271482, -1.2921666683504651, -1.3110632506055473, -1.1746837210750378, -0.897347882897968, -0.5529804543436958, -0.12095314212820402, 0.3605200058897276, 0.8098976806371345, 1.271424459979142]] [[0.695691305663246, 0.5490661944476091, 0.3858819357697786, 0.20920129129215426, 0.08335503015894186, 0.018575997901305763, -0.055331941232550585, -0.09381447308488017, -0.0989875023213611, -0.10912959516052044 … 0.25809421066672567, 0.2511379605824675, 0.3131166615586706, 0.4015454242852682, 0.48579583661504644, 0.554885791566035, 0.6223349988022097, 0.6470394404535489, 0.677496575641491, 0.7004981380235733]]
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.