In recent years, with the growing amount of data online, it is becoming more and more difficult to find the items that best fit our interests. People suffer from information overload. Recommendation systems are here to connect users and items by recommending items according to users’ preferences. In recommendation systems, Collaborative Filtering (CF) is a popular and widely used algorithm. Traditional CF methods utilize preferences or taste information of many users, which can be encoded as user-item matrix. However, the rating matrix is usually sparse which causes the CF methods to waste computation expense and degrade recommendation performance. The lack of preference information of new users or new items also significantly influences the recommendation results, which is also known as cold start problem. To address the data sparsity and the cold start problem, this thesis introduces a hybrid recommendation system model, which combines the advantages of matrix factorization and deep learning. It models user-item matrix as well as side information in traditional CF methods. The hybrid model is extensively tested and evaluated on real-world datasets and results show the hybrid model outperforms other CF models and improves recommendation performance.