How can we implement such stan models in Numpyro where the parameter is contained to have a lower value of 0 and the prior that we are using for it is a Normal centered around 0. For example:
parameters {
real<lower=0> sigma_y;
real<lower=0> sigma_alpha;
real<lower=0> sigma_beta;
}
model {
vector[N] mu;
// Prior
sigma_y ~ normal(0,1);
sigma_beta ~ normal(0,1);
sigma_alpha ~ normal(0,1);
mu_alpha ~ normal(0,10);
mu_beta ~ normal(0,10);
alpha ~ normal(mu_alpha, sigma_alpha);
beta ~ normal(mu_beta, sigma_beta);
for(n in 1:N){
mu[n] = alpha[county_idx[n]] + floor_measure[n] * beta[county_idx[n]];
target += normal_lpdf(log_radon[n] | mu[n], sigma_y);
}
}
Is the closest possible solution for implementing it in Numpyro using HalfNormal, or is there some way to put constraints on the parameters in Numpyro similar to Stan?