Alternating Least Square Method