推荐系统学习笔记-隐语义模型

由来

该算法最早在文本挖掘领域被提出,用于找到文本的隐含语义。
核心思想是通过隐含特征(latent factor) 联系用户兴趣和物品。

推荐系统学习笔记-隐语义模型_第1张图片
参数
f:隐向量维度,决定隐向量表达能力强弱
n:用户数
m:物品数

求解方法:
• 特征值分解
• 奇异值分解参考这篇博客
• 梯度下降参考这篇博客

原理

基于兴趣分类的方法,可以对物品的兴趣进行分类。对于某个用户,首先得到他的兴趣分类,然后从分类中挑选他可能喜欢的物品

注意下方公式,用于表达预测值
推荐系统学习笔记-隐语义模型_第2张图片
• 对于一个用户,用他所有没有过行为的物品作为负样本。
• 对于一个用户,从他没有过行为的物品中均匀采样出一些物品作为负样本。
• 对于一个用户,从他没有过行为的物品中采样出一些物品作为负样本,但采样时,保证每个用户的正负样本数目相当。
• 对于一个用户,从他没有过行为的物品中采样出一些物品作为负样本,但采样时,偏重采样不热门的物品。因为一般来说,除了生活必须品,没有买的才是需要的。

采样原则:
对每个用户,要保证正负样本的平衡(数目相似)。
对每个用户采样负样本时,要选取那些很热门,而用户却没有行为的物品。

代码实现(参考)

推荐系统学习笔记-隐语义模型_第3张图片

为了文章的逻辑性,这里再把公式放一遍

推荐系统学习笔记-隐语义模型_第4张图片

结合上面的公式,我们进一步来看以下公式:

在这里插入图片描述
其中
在这里插入图片描述
是惩罚项,即是用来防止过拟合的正则化项

然后我们使用随机梯度下降算法最小化损失函数求得参数

推荐系统学习笔记-隐语义模型_第5张图片

推荐系统学习笔记-隐语义模型_第6张图片

你可能感兴趣的:(推荐系统学习笔记,机器学习笔记,kaggle,学习,推荐算法,人工智能,python,算法)