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.941765 seconds (1.82 M allocations: 103.779 MiB, 99.55% compilation time)
(Variational Gaussian Process with a BernoulliLikelihood{GPLikelihoods.LogisticLink}(GPLikelihoods.LogisticLink()) infered by Analytic Variational Inference , (local_vars = (c = [0.725777979929387, 0.6859287154443331, 0.6707633943871769, 0.6796759307037161, 0.7035038151238994, 0.7306211994807161, 0.7522920518493406, 0.7645120881197117, 0.7667458942826801, 0.7601443945448166 … 1.0123297049557123, 1.0739899941257116, 1.0730135910623995, 1.013188379370298, 0.9119609884079565, 0.7981913608418701, 0.7070051227353312, 0.6670322382922225, 0.6818277030061936, 0.7306427324662016], θ = [0.23957477526178744, 0.2406381805980076, 0.2410299611603108, 0.2408005893163248, 0.2401751790661542, 0.23944223881182342, 0.2388406472125928, 0.2384953190077112, 0.23843172382470698, 0.23861924640668863 … 0.2306322016697824, 0.22845181324862482, 0.2284869427529465, 0.23060238471473637, 0.234002634628867, 0.23752131644477878, 0.2400818021832229, 0.24112524147649478, 0.2407448375887129, 0.23944164798254994]), 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:05:12 Sampling with Gibbs Sampler 1%|▎ | ETA: 0:02:38 Sampling with Gibbs Sampler 1%|▍ | ETA: 0:01:45 Sampling with Gibbs Sampler 2%|▍ | ETA: 0:01:19 Sampling with Gibbs Sampler 2%|▌ | ETA: 0:01:03 Sampling with Gibbs Sampler 3%|▋ | ETA: 0:00:52 Sampling with Gibbs Sampler 3%|▊ | ETA: 0:00:44 Sampling with Gibbs Sampler 4%|▉ | ETA: 0:00:39 Sampling with Gibbs Sampler 4%|█ | ETA: 0:00:34 Sampling with Gibbs Sampler 5%|█ | ETA: 0:00:31 Sampling with Gibbs Sampler 5%|█▏ | ETA: 0:00:28 Sampling with Gibbs Sampler 5%|█▎ | ETA: 0:00:25 Sampling with Gibbs Sampler 6%|█▍ | ETA: 0:00:23 Sampling with Gibbs Sampler 6%|█▌ | ETA: 0:00:22 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:20 Sampling with Gibbs Sampler 7%|█▋ | ETA: 0:00:19 Sampling with Gibbs Sampler 8%|█▊ | ETA: 0:00:18 Sampling with Gibbs Sampler 8%|█▉ | ETA: 0:00:18 Sampling with Gibbs Sampler 9%|██ | ETA: 0:00:17 Sampling with Gibbs Sampler 9%|██▏ | ETA: 0:00:16 Sampling with Gibbs Sampler 10%|██▎ | ETA: 0:00:15 Sampling with Gibbs Sampler 10%|██▍ | 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 11%|██▋ | ETA: 0:00:12 Sampling with Gibbs Sampler 12%|██▊ | ETA: 0:00:12 Sampling with Gibbs Sampler 12%|██▉ | ETA: 0:00:11 Sampling with Gibbs Sampler 13%|███ | ETA: 0:00:11 Sampling with Gibbs Sampler 13%|███ | ETA: 0:00:10 Sampling with Gibbs Sampler 14%|███▏ | ETA: 0:00:10 Sampling with Gibbs Sampler 14%|███▎ | ETA: 0:00:10 Sampling with Gibbs Sampler 15%|███▍ | ETA: 0:00:09 Sampling with Gibbs Sampler 15%|███▌ | ETA: 0:00:09 Sampling with Gibbs Sampler 16%|███▋ | ETA: 0:00:09 Sampling with Gibbs Sampler 16%|███▋ | ETA: 0:00:08 Sampling with Gibbs Sampler 16%|███▊ | ETA: 0:00:08 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:07 Sampling with Gibbs Sampler 18%|████▎ | ETA: 0:00:07 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:06 Sampling with Gibbs Sampler 21%|████▊ | ETA: 0:00:06 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:05 Sampling with Gibbs Sampler 24%|█████▌ | ETA: 0:00:05 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:04 Sampling with Gibbs Sampler 27%|██████▎ | ETA: 0:00:04 Sampling with Gibbs Sampler 28%|██████▍ | ETA: 0:00:04 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: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: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: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 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: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 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: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 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 6.359023 seconds (9.95 M allocations: 833.747 MiB, 3.92% gc time, 84.35% compilation time)
1000-element Vector{Vector{Vector{Float64}}}: [[-0.8479384169567894, -1.1007536063760626, -1.1932573338161718, -1.1908135990663682, -1.2121895450484776, -1.2313024595079651, -1.3011798164685167, -1.4239819129353428, -1.5930616310875343, -1.711375516137872 … 1.0499554929945043, 0.8718761720489785, 0.6301982291224848, 0.37531747899231727, 0.10401345062698336, -0.1681764346415664, -0.43172494597439937, -0.6477896733524016, -0.8025848170976936, -0.8339940479374319]] [[0.5111390792946517, 0.38490171788765604, 0.27120092543687624, 0.1511210490611437, 0.08036614269909892, 0.0572641487685997, 0.08675474668797722, 0.10312826051059831, 0.11385581390574906, 0.09548052675529684 … 1.3633496695478293, 1.3960054392888162, 1.2931243530907925, 1.0294634417777975, 0.644546615388681, 0.2685347907445857, -0.09481467821601486, -0.31895614248119825, -0.38340013235860004, -0.313518606817675]] [[0.4476972654061796, 0.49324926357010773, 0.5334627601731251, 0.578802104188223, 0.5632081432168436, 0.5139782500712998, 0.4396895297518079, 0.3313950019129816, 0.1993623608223985, 0.08503799384106225 … 1.1039405448250565, 1.021767555035115, 0.815910547269089, 0.539191871279848, 0.24218180136453982, -0.06796313086973915, -0.3559904909844433, -0.5711399493738585, -0.7282950750869953, -0.7921741237559589]] [[-0.6879388831092507, -0.3952314803865727, -0.12149388720341779, 0.059741291864312596, 0.1999378187133754, 0.23118678631258355, 0.19353732870055418, 0.1921812509483386, 0.19963015257639405, 0.27758768529620215 … -0.42269389387673606, -0.4234735731782948, -0.24155131347688807, 0.05597009262085573, 0.42223970630114493, 0.7959334623224358, 1.139345878590917, 1.3688534139094353, 1.4615269226758087, 1.4231057896102697]] [[-0.7345547969227022, -0.7438422725077457, -0.7112491245448166, -0.6783065909511936, -0.6131983356691801, -0.5383021326840813, -0.4768627932747497, -0.4353818133275006, -0.44178249659963686, -0.4232112717486818 … 0.30151994434436935, 0.29330818920437285, 0.26109689485917265, 0.19718744918806075, 0.11893099684142583, 0.021758635431048168, -0.10682263048987872, -0.2893684726538801, -0.5334110337907491, -0.8588751962961026]] [[-1.555603641763065, -1.487274982679045, -1.3228434365250794, -1.025815521691018, -0.7078800804786609, -0.36412900148009963, -0.08766385037590846, 0.09948331975411057, 0.12222976437193767, 0.09566711853389737 … 0.23999835966285876, 0.05668719918641352, -0.22108886060973998, -0.4859947693215436, -0.7274177217476065, -0.8918069919263122, -0.9225346640128825, -0.7915856166392341, -0.5930370110320602, -0.3149157447029033]] [[-1.099091032957474, -0.8933494622900571, -0.7515618866367123, -0.6410943944495872, -0.628621224251982, -0.6115110276782639, -0.6599927480129668, -0.6791059702740995, -0.7083804847855993, -0.7423798195519258 … 0.780351790401111, 0.7252343072945034, 0.5578454806240463, 0.330271115196946, 0.07359427132316254, -0.21767411754174426, -0.5126025826904161, -0.7835671182293825, -1.0524551871307943, -1.2990686322836378]] [[-0.16155792205123481, -0.4244925206884242, -0.724726238424191, -0.9516486607296788, -1.0883383500189168, -1.095186171755948, -0.9620745346723599, -0.7055488554650589, -0.38707978824864026, -0.05492596772483854 … 0.38390803377341914, 0.45615372002094423, 0.4858981249180747, 0.5161515690783127, 0.5027468912599018, 0.5318138001952549, 0.5139496180869084, 0.4597089220336946, 0.4385917915600066, 0.3725856079750338]] [[0.3457524849895842, 0.36565060610556027, 0.35927400633574536, 0.31893420874018086, 0.21510397691169886, 0.024738094256485266, -0.2319739135927474, -0.5706697358546196, -0.9030438083879955, -1.141639451915558 … 0.23983094605570143, 0.09301838894207526, -0.0027806638916003656, -0.09230063005089961, -0.20609807895828514, -0.2733797773461729, -0.3017715562961223, -0.27005289789924924, -0.17763628033970605, -0.040323012672261814]] [[-0.6969344425333096, -0.6291436957381786, -0.5949196363915246, -0.5820902581310009, -0.5795678636042155, -0.5686467020043499, -0.5490960507465115, -0.4918745206776301, -0.38149792652652836, -0.26141212459618973 … 0.49045882561415666, 0.7595604204813176, 0.8830636257317812, 0.8327490284382676, 0.6557165457115686, 0.35843316646613266, -0.0034128116361265004, -0.28921649899195967, -0.5070689559333053, -0.5706957606527516]] ⋮ [[0.14362443915400974, 0.16177777674153476, 0.16183924228970348, 0.14971191804636408, 0.09135187905779102, 0.02284759134584141, -0.09288653790636092, -0.24633779866742114, -0.43875642916449703, -0.6680650770541317 … -0.7240185572573663, -0.7290508607717272, -0.692643995367979, -0.527075073079331, -0.3283570850391119, -0.11792796914236325, 0.1519784453137899, 0.36722066592519276, 0.5935464008385302, 0.7483244686006836]] [[1.1810491397210685, 1.0175200309377197, 0.9049423446349, 0.8212946068097677, 0.761375516989667, 0.6368700093616443, 0.45804112770335487, 0.18273488582641745, -0.14673603368170818, -0.459224443772309 … 1.98252513722246, 2.1152681408983858, 2.1417575042927846, 2.085341546775714, 1.8781445954626856, 1.5629966560195712, 1.1522082618472214, 0.6829329453386422, 0.2172034205098954, -0.2225621933566135]] [[1.205377724808619, 0.9120995609755789, 0.6665157523118049, 0.4900741202757696, 0.36288879364399895, 0.22836150534971733, 0.12316417354764309, -0.019531715173084996, -0.23052959945975143, -0.505906827004531 … 0.41083619855541453, 0.2087927550433205, -0.045749990145533714, -0.281781943500117, -0.47131138552168594, -0.5533186321871275, -0.5398554814445238, -0.4573520498084177, -0.317396087999512, -0.15239742679731966]] [[-0.12636589054966124, 0.02322483921463705, 0.10006903541869588, 0.004439278842828798, -0.1996930209040562, -0.4933118973657813, -0.8490057975329222, -1.2278258404840328, -1.5490224698461945, -1.786361714686116 … 1.6939704458473175, 1.6926935163624317, 1.5866916765434456, 1.3461806282750592, 1.0098418151506434, 0.551380386491214, 0.03025155603000826, -0.4687028300651036, -0.8864616422253403, -1.2056231081222875]] [[-0.2699945955631122, -0.2578981711210507, -0.2130024645532711, -0.17067057136301234, -0.13528628436422546, -0.14100992491956782, -0.18336050803463783, -0.29793647118162403, -0.5030384808213455, -0.6392602454533955 … 1.6394170443823142, 1.9551979498972276, 2.180558954184024, 2.3144183884343743, 2.3168458299746626, 2.165417233268417, 1.8901703934497778, 1.511118323487146, 1.0716390450626267, 0.6984919970226863]] [[-1.2263130122678767, -1.2707570954949388, -1.2841984468607397, -1.2725951287945698, -1.182174998461976, -1.081058746222065, -0.9653278472153779, -0.8082619387243488, -0.6503027111526638, -0.5104033238232147 … 1.624351499407474, 1.6457344471048208, 1.4568188167476868, 1.1429973148021388, 0.7875263608512139, 0.46325263153359747, 0.25230610237363216, 0.21064178426223973, 0.3776212778751335, 0.6672565579292875]] [[-0.5368984431277185, -0.5869175271443864, -0.7079100942750558, -0.870952607455331, -1.0177423294948178, -1.1633591745960852, -1.2702785590910572, -1.2994853506429618, -1.2644571321203655, -1.1558236810507734 … 1.7261007607694496, 1.7741247985870525, 1.7786108448043116, 1.7547132445013056, 1.7365962791058147, 1.659949651572978, 1.5593858810194359, 1.4586288853793121, 1.3748497485560673, 1.293170182341908]] [[0.3056469183852686, 0.05231463932090627, -0.17953278419905222, -0.29411418745487505, -0.3577299233391827, -0.29957846165372704, -0.19379361881607265, -0.0641924543327454, 0.08603632897863245, 0.25959919945171883 … 0.04164246796662818, 0.25848696571190166, 0.48913572503990976, 0.7539311213935015, 0.8876515341509621, 0.8413884553835169, 0.6856051930884055, 0.39604643032843323, 0.0270690805237484, -0.24937722434982343]] [[0.6537328670210414, 0.3816752984657561, 0.17371228913064612, -0.03968685084781853, -0.1834452147615135, -0.3261873922779772, -0.44085379862513363, -0.5385850161105725, -0.6574581633344354, -0.7913828304970355 … 0.7616471103775885, 0.812883744798384, 0.75059822431167, 0.581287386223079, 0.37486146464262604, 0.18459431700289353, 0.01060419654188871, -0.1556602496063267, -0.2699371311381066, -0.34990784993327906]]
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.