【发布时间】:2018-12-21 05:25:21
【问题描述】:
rstan::stan 的帮助文件对init 参数有以下说明:
init="random"(默认):
- 让 Stan 为 所有参数。 Stan 使用的随机数生成器的种子 可以通过种子参数指定。如果斯坦的种子是固定的, 使用相同的初始值。默认是随机生成 无约束支持上的初始值介于 -2 和 2 之间。这 可选附加参数 init_r 可以设置为其他值 大于 2 以更改随机生成的 inits 的范围。
init="0", init=0:
- 在不受约束的情况下将所有参数初始化为零 支持。
通过列表初始化:
- 通过提供一个等于的列表来设置初始值 长度与链的数量有关。该列表的元素应 它们本身是命名列表,其中每个命名列表都有 参数的名称,用于指定该参数的初始值 对应链的参数。
不幸的是,这并不清楚通过列表指定的初始参数值是应用于受约束的支撑还是不受约束的支撑。例如,如果我有以下参数块,
parameters {
real<lower=3, upper=7> theta;
}
我打电话给stan如下,
rstan::stan(file, data = standata, init = list(list(theta = 5)), chains = 1)
theta 的初始值是在受约束的支撑上还是在不受约束的支撑上等于 5?
【问题讨论】: