Algorithms for Non-Negative Matrix Factorization on Noisy Data With Negative Values