本文主要是介绍LFM隐语义模型梯度下降法矩阵分解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前情提要:某BAT大牛亲授个性化推荐算法???
关于这个玩意我看了下,网上搜索的都是导向其他小众连接,很多水军,注册购买才能看,真是垃圾。
原是在慕课网的,现在都过去一年啦,还是那个价格,很多公开的要么是代码不全,要么没有视频,或者根本没法看。
更有欺骗者,写着百度网盘下载,其实点击根本不是百度网盘,是其他小网站。
有的下载后要解压密码,我去年买了个表,要么给要么不给,真像bitch
正文:
看了LFM矩阵分解,大牛的做法是将评分大于等于4的视为偏好喜欢,小于则视为不喜欢,从而设置标签1和0,这种做法看似要进行分类或借鉴分类的方法来做,其实不是,大牛又采用了余弦距离用于user/item向量,使得结果恰好在[0,1]之间,这种做法总感觉不是那么好。选用数据集为movielens,也不知道是哪个版本,100k,1M,10M??反正与现在官网的存储格式都不一样。
我的做法:既然评分是1~5之间的正数,何不将余弦距离再乘以5,或者将评分进行最大值归一化。
但结果有点不大好,且看如下:迭代1000次
对于user id为24的推荐结果为:
['Distinguished Gentleman, The (1992)', 'Comedy']
['Burnt Offerings (1976)', 'Horror']
['Gods Mu
这篇关于LFM隐语义模型梯度下降法矩阵分解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!