GenericUserBasedRecommender和GenericItemBasedRecommender处理有偏好值的数据。
GenericBooleanPrefUserBasedRecommender:处理偏好值为布尔类型或没有偏好值的数据。
SlopeOneRecommender:基于新物品与用户评估过的物品之间平均偏好值差异来预测用户对新物品的偏好值。处理有偏好值的数据
实验性质的推荐算法
基于奇异值分解的推荐算法:SVDRecommender从用户对各个物品的偏好值中提取出数量较少但更具一般性的特征。(例如从音乐中提取流派信息)
基于线性插值物品的推荐算法:KnnItemBasedRecommneder通过用户已经评估过的物品的加权平均来估计偏好值,但权重不是相似度,而是线性技术计算出的所有物品对之间的最有权重集合。需要预先计算出目标物品最相似的物品领域,选定n个最接近的邻点。
Optimizer optimizer = new NonNegativeQuadraticOptimizer();
new KnnItemBasedRecommender(model,similarity,optimizer,10) 最近的10个邻点。
基于聚类的推荐算法:TreeClusteringRecommender被人为是基于用户推荐的变种。将物品推荐给相同用户簇而非具体用户。
基于聚类的推荐算法由于是基于一组人群进行的推荐,因此推荐不够个性化,但对于没有历史偏好数据的用户而言,该种推荐算法可能更有效果。
本文深入探讨了推荐算法领域的核心概念,包括基于偏好、布尔偏好、新物品评估差异的推荐算法,以及实验性质的推荐算法如基于奇异分解和线性插值物品推荐。详细解释了每种算法的工作原理、适用场景及关键步骤,并讨论了聚类推荐算法的独特之处。此外,文章还介绍了不同推荐算法的关键技术细节和实现方式。
9

被折叠的 条评论
为什么被折叠?



