初识推荐模型

一般来讲,推荐模型试图对用户于某类物品之间的联系建模。简单来说就是,“用户---物品”。

 

推荐模型适合如下两类常见场景:

1.可选项众多

2.偏个人喜好

 

可以归结为2种推荐形式,一种是基于人和相似的人,另一种就是基于物品和相似的物品。

 

推荐模型目前最为流行的方法可以分为2种(以电影为例)

1.基于内容的过滤

描述电影属性可用演员、流派、流行度等属性,描述用户属性可用

2.协同过滤

依靠以往的行为,比如已有的评级(电影打分啦)或交易(买电影看啥的)。其内在思想是相似度的定义。

其基本思路是用户会对物品进行显式或隐式的评级。过去表现出相似偏好的用户在未来的偏好也会类似。

在基于用户的方法中,如果两个用户表现出相似的偏好,那其他用户也偏好某些物品,那这些物品很可能值得推荐。

同样,物品相似度也可以用来推荐差不多的物品。

基于用户或物品的方法的得分,取决于若干用户或物品之间依据相似度所构成的集合(即邻居),故他们也常被称为最近邻模型

 

一种传统的协同过滤算法会将用户表示为对应各个物品的N维向量,N为不同物品的个数。该向量的个元素对应用户对物品的喜好。要计算最喜好的物品,该算法通常会对各元素乘以反转频率,从而使得不那么流行的物品更相关。对多数用户来说,该向量十分稀疏。算法会衡量两个用户间的相似度,常见的方法是度量两用户向量之间夹角的余弦值。

 

协同过滤的两种主要方式就是:

1.近邻模型

面向用户的方法,用户的相似度。

面向物品的方法,物品的相似度。

用余弦值表示上述的用户关联

2.隐变量模型

通过隐变量描述模型

对电影而言,动作片还是喜剧,演员类型等是隐变量

对用户而已,特征如评分,是隐变量

常见的实现类型有神经网络、隐含狄利克雷分布和矩阵分解

 

 

你可能感兴趣的:(推荐,算法)