data {
int<lower=1> N; // num datapoints
int<lower=1> D; // num dimension
int<lower=1> K; // num basis
real<lower=0> sigma1;
//real<lower=0> sigma2;
real<lower=0> sigma3;
real<lower=0> sigma4;
real y[D,N];
}
transformed data {
matrix[K,K] Sigma;
matrix[D,D] Sigma2;
vector<lower=0>[K] diag_elem;
vector<lower=0>[K] zr_vec;
vector<lower=0>[D] diag_elem2;
vector<lower=0>[D] zr_vec2;
for (k in 1:K) zr_vec[k] <- 0;
for (k in 1:K) diag_elem[k] <- sigma3;
Sigma <- diag_matrix(diag_elem);
for (d in 1:D) zr_vec2[d] <- 0;
for (d in 1:D) diag_elem2[d] <- sigma1;
Sigma2 <- diag_matrix(diag_elem2);
}
parameters {
matrix[K,D] A; // basis
vector[K] x[N]; // coefficients
}
model {
//vector[K] x[N];
for (i in 1:N)
x[i] ~ multi_normal(zr_vec, Sigma);
for (k in 1:K)
A[k] ~ multi_normal(zr_vec2, Sigma2);
for (i in 1:N)
//y[i] ~ multi_normal(A * x[i], Sigma);
for (d in 1:D)
//y[d,i] ~ normal(dot_product(row(A, d), x[i]), sigma4);
increment_log_prob(normal_log(y[d,i], dot_product(col(A, d), x[i]), sigma4));
}data {
int<lower=1> N; // num datapoints
int<lower=1> D; // num dimension
int<lower=1> K; // num basis
real<lower=0> sigma1;
//real<lower=0> sigma2;
real<lower=0> sigma3;
real<lower=0> sigma4;
real y[D,N];
}
transformed data {
matrix[K,K] Sigma;
vector<lower=0>[K] diag_elem;
vector<lower=0>[K] zr_vec;
for (k in 1:K) zr_vec[k] <- 0;
for (k in 1:K) diag_elem[k] <- sigma3;
Sigma <- diag_matrix(diag_elem);
}
parameters {
matrix[D,K] A; // basis
vector[K] x[N]; // coefficients
}
model {
//vector[K] x[N];
for (i in 1:N)
x[i] ~ multi_normal(zr_vec, Sigma);
for (d in 1:D)
for (k in 1:K)
A[d,k] ~ normal(0, sigma1);
for (i in 1:N)
//y[i] ~ multi_normal(A * x[i], Sigma);
for (d in 1:D)
//y[d,i] ~ normal(dot_product(row(A, d), x[i]), sigma4);
increment_log_prob(normal_log(y[d,i], dot_product(row(A, d), x[i]), sigma4));
}
--
You received this message because you are subscribed to a topic in the Google Groups "Stan users mailing list" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/stan-users/DYofzSAz1sk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to stan-users+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.