推荐系列(五):协同过滤的优点和缺点

简介: 简单介绍协同过滤优缺点

协同过滤的优点和缺点

协同过滤的相关知识点介绍完毕,现在对其优缺点进行总结。

优点

  • 无需领域知识:不需要掌握专门的领域知识,因为embedding是自动学习得到的。
  • 更机缘巧合:该模型可以帮助用户发现新的兴趣。机器学习系统可能不知道用户对某个给定的项目感兴趣,但模型可能仍然推荐出它,因为相似用户对该项目感兴趣。
  • 好的起点:在某种程度上,系统仅需要反馈矩阵来训练矩阵分解模型(FM)。特别是,该模型不需要上下文特征。在实际应用中,该模型可以用作多个候选生成器之一。

缺点

  • 无法处理新项目 :给定(用户,项目)对的模型预测是相应embedding向量的点积。因此,如果在训练期间未看到的项目,则系统无法为其创建embedding,并且无法使用模型对此项目进行预测。这个问题通常被称为 冷启动问题。但是,下面的技术可以在一定程度上解决冷启动问题:

    • WALS投影 :给定一个新的项目 ${i_0u_{i_0}}$

$$ \min_{u_{i_0} \in \mathbb R^d} \|A_{i_0} - u_{i_0} V^T\| $$

​ 上述等式对应于WALS算法的迭代操作:用户的embedding向量保持固定,系统得到该项目$i_0$的embedding向量。

  • 启发式生成新项目的embedding:如果系统无法进行交互,系统可以通过平均来自相同类别项目的embedding来近似其嵌入。
  • 很难包含查询/项目的侧面特征侧面特征(side feature)是查询或项目ID之外的特征。比如,对于电影推荐而言,侧面特征可能是包括国家/地区或年龄。可用的侧面特征可提高模型的质量。尽管在WALS中包含侧面特征可能并不容易,但WALS的变体使这成为可能。

    通过定义块矩阵$A^-$来增加输入矩阵的特征

    • Block(0,0)是矩阵A的原始反馈矩阵;
    • Block(0,1)是用户特征的多热编码;
    • Block(1,0)是项目特征的多热编码;
      这里增加Block (1, 1)一列,表示其侧面特征。

后续将介绍基于深度学习的推荐方法,感谢。

目录
相关文章
|
11月前
|
机器学习/深度学习 搜索推荐 算法
协同过滤算法
协同过滤算法
902 0
|
3月前
|
数据采集 机器学习/深度学习 搜索推荐
利用通义大模型构建个性化推荐系统——从数据预处理到实时API部署
本文详细介绍了基于通义大模型构建个性化推荐系统的全流程,涵盖数据预处理、模型微调、实时部署及效果优化。通过采用Qwen-72B结合LoRA技术,实现电商场景下CTR提升58%,GMV增长12.7%。文章分析了特征工程、多任务学习和性能调优的关键步骤,并探讨内存优化与蒸馏实践。最后总结了大模型在推荐系统中的适用场景与局限性,提出未来向MoE架构和因果推断方向演进的建议。
544 10
|
数据采集 存储 Java
Anaconda安装使用以及Pycharm教程
Anaconda环境基本使用以及与Pycharm集成
2276 0
Anaconda安装使用以及Pycharm教程
【网站部署】解析二级域名并部署网站(一)
【网站部署】解析二级域名并部署网站(一)
750 0
【网站部署】解析二级域名并部署网站(一)
|
搜索推荐 算法 大数据
基于内容的推荐系统算法详解
【7月更文挑战第14天】基于内容的推荐系统算法作为推荐系统发展的初期阶段的重要技术之一,具有其独特的优势和广泛的应用场景。然而,随着大数据和人工智能技术的发展,传统的基于内容的推荐系统已经难以满足日益复杂和多样化的推荐需求。因此,未来的推荐系统研究将更加注重多种推荐算法的融合与创新,以提供更加精准、个性化的推荐服务。
1475 2
|
小程序 开发工具
app跳转微信小程序,使用明文scheme拉起
app跳转微信小程序,使用明文scheme拉起
2545 4
|
11月前
|
TensorFlow 算法框架/工具
Tensorflow学习笔记(二):各种tf类型的函数用法集合
这篇文章总结了TensorFlow中各种函数的用法,包括创建张量、设备管理、数据类型转换、随机数生成等基础知识。
494 0
|
IDE 开发工具 Android开发
eclipse自动补全及其空格键优化(去除空格自动补全)
本文介绍了如何在Eclipse IDE中配置自动补全功能,并提供了去除空格键自动补全代码的技巧。
eclipse自动补全及其空格键优化(去除空格自动补全)
|
机器学习/深度学习 算法 PyTorch
算法金 | 这次终于能把张量(Tensor)搞清楚了!
本文是关于PyTorch中张量(Tensor)的入门教程,由全网同名\[算法金\]作者撰写。文章介绍了张量的基础概念,强调其在深度学习中的核心地位,并阐述了张量与向量、矩阵的关系。接着,详细讲解了如何在PyTorch中创建和操作张量,包括张量的数学运算、广播机制、索引切片以及变形与重塑。此外,还涉及张量的高级功能,如自动求导系统和高级数学函数。最后,文章提到了张量在深度学习中的应用、性能优化技巧和调试方法,鼓励读者通过实践提升技能。
1588 1
算法金 | 这次终于能把张量(Tensor)搞清楚了!
|
缓存 搜索推荐 NoSQL
150 混合推荐系统案例(项目开发)
150 混合推荐系统案例(项目开发)
285 0

热门文章

最新文章