  This paper aims at a better understanding of matrix factorization (MF),
factorization machines (FM), and their combination with deep algorithms'
application in recommendation systems. Specifically, this paper will focus on
Singular Value Decomposition (SVD) and its derivations, e.g Funk-SVD, SVD++,
etc. Step-by-step formula calculation and explainable pictures are displayed.
What's more, we explain the DeepFM model in which FM is assisted by deep
learning. Through numerical examples, we attempt to tie the theory to
real-world problems.
