Efficient Distributed Matrix Factorization Alternating Least Squares (EDMFALS) for Recommendation Systems Using Spark
With the emergence of e-commerce and social networking systems, the use of recommendation systems gained popularity to predict the user ratings of an item. Since the large volume of data is generated from various sources at high speed, predicting the ratings accurately in real-time adds enormous benefit to the users while choosing the correct item. So a recommendation system must be capable enough to predict the rating accurately when the data are large. Apache Spark is a distributed framework well suited for processing large datasets and real-time data streams. In this paper, we propose an efficient matrix factorisation algorithm based on Spark MLlib alternating least squares (ALS) for collaborative filtering. The optimisations used for the proposed algorithm using Tungsten improved the performance of the algorithm significantly while doing the predictions. The experimental results prove that the proposed work is significantly faster for top-N recommendations and rating predictions compared with the existing works.