JenniNiku / gllvm

Generalized Linear Latent Variable Models
https://jenniniku.github.io/gllvm/
48 stars 19 forks source link

Update #85

Closed BertvanderVeen closed 1 year ago

BertvanderVeen commented 1 year ago

(edited) This started as an update to deal with the high memory requirements of the C++ compilation, by separating the VA and LA parts into two C++ files. However, that leads to problems (see messages below), so this update remains with the existing 1 C++ file structure. In the process, I have cleaned up the C++ file and made changes, which is what this PR now represents.

Further:

BertvanderVeen commented 1 year ago

Needs a little more work.

BertvanderVeen commented 1 year ago
BertvanderVeen commented 1 year ago

There is a slight problem with this branch: I seem to have triggered CppAD's forward mode differentiation, so that various functions are throwing errors when trying to use them for getting the Hessian. So as of yet, this branch cannot be used..

BertvanderVeen commented 1 year ago

OK, the two-file version did not work, it threw errors along the lines of "pnorm1" order not found. This should now be back the the "old" 1-file version, but with my code improvements. Please thoroughly check against the original gllvm.cpp. If we have some memory on compilation to spare, it would be nice to declare D and Sigmab_lv as diagonal matrices.

JenniNiku commented 1 year ago

Do you think I can merge this now, or are you working on this?

BertvanderVeen commented 1 year ago

I am not working on it, so it is OK to merge.