In the recommendation system, data comes in the form of a vector or matrix. Matrix factorization techniques attempt to recover missing or corrupted entries by assuming that the data matrix is the linear product of two independent matrices. The idea is to replace those matrices by two arbitrary functions that we learn from the data at the same time as we learn the latent feature vectors. The resulting approach is called Bi-generator neural network. In this paper, I made several attempts to introduce this techniques to the MovieLens datasets. The result shows that Bi-generator can be very close to some recent proposals that also take advantage of neural network. Due to the limit of computational power, I mainly focus on 2-layer neural networks in this paper. Given the vast range of neural network architectures, it seems likely my experiments have not identify the limitation of Bi-generator model.