logisticRegression.wppl
var xs = [-10, -5, 2, 6, 10]
var labels = [false, false, true, true, true]
var model = function() {
var m = gaussian(0, 1)
var b = gaussian(0, 1)
var sigmaSquared = gamma(1, 1)
var y = function(x) {
return gaussian(m * x + b, sigmaSquared)
}
var sigmoid = function(x) {
return 1 / (1 + Math.exp(-1 * y(x)))
}
map2(
function(x, label) {
factor(bernoulliERP.score([sigmoid(x)], label))
},
xs,
labels)
return sigmoid(8)
}
MH(model, 100000, 20000)