[retitled and moved to stan-dev]
I'd suggest starting with a Hessian, but then we're back
to O(N^2) time even if it's diagonal. But it's very easy
to parallelize. Can we look at the gradients and get something
out of that (I know you dismissed those approaches in the SoftAbs
paper)?
What I don't understand is why it's so slow to adapt
the dimensions, even if it's not as bad as 10^6. Is there
some theory saying why it'd be so slow or some insight? I'd
think we'd start diagonal, find a very small step size is
necessary, run NUTS and see ourselves hitting the tree depth
limit straight off in the small-scale dimensions. Would reducing
tree depth during warmup help for an initial attempt to determine
scales? I know there's a chicken-and-egg problem with not
being in the typical set to start, so we don't want to adapt
too agressively out in the tails (or at the mode).
- Bob
> On Aug 10, 2016, at 6:49 PM, Michael Betancourt <
betan...@gmail.com> wrote:
>
> The fix was rescaling the parameters by 10^{6}, which
> implied that the original model had a condition number
> of at least 10^{6} which is going to be hard for _any_
> adaptive algorithm.
>
> On Aug 10, 2016, at 4:15 AM, Bob Carpenter <
ca...@alias-i.com> wrote:
>
>> Thanks for reporting back. We really need to improve our
>> adaptation because we should be able to learn these marginal
>> scales during warmup.
>>
>> We generally recommend 50% of the iterations be devoted to
>> warmup. At most that'll cost 50% efficiency, but it has
>> a higher chance of adaptation converging, especially in
>> ill conditioned problems.
>>
>> - Bob
>>
>>> On Aug 9, 2016, at 4:18 PM, Jeroen CORSTJENS <
jeroen.c...@uhasselt.be> wrote:
>>>
>>>
>>> Thanks for the suggestions. I tried rescaling by standardizing the numerical predictor variables (dividing by their standard deviation as they were already centred) and this made the sampling go a lot faster. It took almost 27 hours to run 4 chains in parallel with 1000 warm-up iterations and 3000 post-warmup iterations. However, the model did not converge, all group-level effects had Rhats larger than 1.1. Specifying tighter priors gave convergency problems as well (also when specifying a prior for all population-level effects).
>>>
>>> I did discover an alternative that runs faster and converges perfectly. Simply multiplying the 1/Y values with a large constant (1 000 000 in my case) did the trick. This time, it took nearly 12 hours to complete and gave no convergency problems.
>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups "Stan users mailing list" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an email to
stan-users+...@googlegroups.com.
>>> To post to this group, send email to
stan-...@googlegroups.com.
>>> For more options, visit
https://groups.google.com/d/optout.
>>
>> --
>> You received this message because you are subscribed to the Google Groups "Stan users mailing list" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to
stan-users+...@googlegroups.com.
>> To post to this group, send email to
stan-...@googlegroups.com.
>> For more options, visit
https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Stan users mailing list" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
stan-users+...@googlegroups.com.
> To post to this group, send email to
stan-...@googlegroups.com.
> For more options, visit
https://groups.google.com/d/optout.
>
>