Using a beta divergence (of which the usual L2 loss is a special case) allows for beta=1 (the KL divergence) which implements "Poisson NMF". This might be interesting for us.
Let's look into how we can do this. Take a look here https://github.com/lilab-bcb/nmf-torch (although it looks like they have only implemented beta!=2 for the multiplicative-update solver, and not for other methods...)
Using a beta divergence (of which the usual L2 loss is a special case) allows for beta=1 (the KL divergence) which implements "Poisson NMF". This might be interesting for us.
Let's look into how we can do this. Take a look here https://github.com/lilab-bcb/nmf-torch (although it looks like they have only implemented beta!=2 for the multiplicative-update solver, and not for other methods...)