- Code for Poisson SVD, also called EPCA (for Exponential PCA).
- An example of how to call p1svd. Note that we don't expect zero error, since newp1svd constrains the first column of u to be constant; to get zero error, we could call newp1svd(x,5) instead.
% build a random matrix whose componentwise log has low rank uu = randn(10,4); vv = randn(4,100); x = exp(uu*vv*.1); % decompose it using EPCA and report error [u,v]=newp1svd(x,4,50); norm(x-exp(u*v))/norm(x)

- Code for reconstruction of a new vector using the basis learned in an EPCA.
- An example of how to call newpproject, using the variables x and
u from the above p1svd example:
vhat = newpproject(x, u);