is libFM capable of reproducing SVD?

97 views
Skip to first unread message

André Santos

unread,
Feb 10, 2017, 10:07:16 AM2/10/17
to libFM - Factorization Machines
What I want to know if there is a way libFM can reproduce SVD, tunning some internal parameters, or small changes in the code?

This is something that I am using for my Msc thesis, where I will use libFM but I wanted to get a baseline using libFM and libFMSVD.

Thank you for your time,

André Santos

Thierry Silbermann

unread,
Feb 13, 2017, 12:16:10 PM2/13/17
to libFM - Factorization Machines
If you are talking about the pure SVD implementation, no it i not possible to get libFM to replicate SVD.
As benchmark you could either juste use the matrix factorization part of Factorization Machine.
Otherwise you can use: http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.TruncatedSVD.html
For a SVD implementation.

Hope it helps.

André Santos

unread,
Feb 16, 2017, 10:04:35 AM2/16/17
to libFM - Factorization Machines
Can you please elaborate? 

Because from what I have read and researched, SVD "works" as a simple instantiation of matrix factorization. 

In the libFMpaper there is the parameter d =2, if we set it to 1 or 0 shouldn't it work similarly to SVD? 

How would you recommend I change/use the matrix factorization of libFM? My point is to use libFM, cause I do have SVD implemented using mahout.

Could you point me to where this parameter d is in the code? Cause I have been studying the code carefully and it's not easily identified.
Reply all
Reply to author
Forward
0 new messages