Matrix Factorisation for Scalable Energy Breakdown