推荐系统笔记

推荐引擎简介

推荐引擎利用特殊的信息过滤(IF,Information Filtering)技术,将不同的内容(例如电影、音乐、书籍、新闻、图片、网页等)推荐给可能感兴趣的用户。通常情况下,推荐引擎的实现是通过将用户的个人喜好与特定的参考特征进行比较,并试图预测用户对一些未评分项目的喜好程度。参考特征的选取可能是从项目本身的信息中提取的,或是基于用户所在的社会或社团环境。
根据如何抽取参考特征,我们可以将推荐引擎分为以下四大类:

  • 基于内容的推荐引擎:它将计算得到并推荐给用户一些与该用户已选择过的项目相似的内容。例如,当你在网上购书时,你总是购买与历史相关的书籍,那么基于内容的推荐引擎就会给你推荐一些热门的历史方面的书籍。
  • 基于协同过滤的推荐引擎:它将推荐给用户一些与该用户品味相似的其他用户喜欢的内容。例如,当你在网上买衣服时,基于协同过滤的推荐引擎会根据你的历史购买记录或是浏览记录,分析出你的穿衣品位,并找到与你品味相似的一些用户,将他们浏览和购买的衣服推荐给你。
  • 基于关联规则的推荐引擎:它将推荐给用户一些采用关联规则发现算法计算出的内容。关联规则的发现算法有很多,如 Apriori、AprioriTid、DHP、FP-tree 等。
  • 混合推荐引擎:结合以上各种,得到一个更加全面的推荐效果。

基于Mahout的电影推荐系统:https://blog.csdn.net/huhui_cs/article/details/8596388

https://github.com/bystc/MovieRecommender

Apache Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。经典算法包括聚类、分类、协同过滤、进化编程等等,并且,在 Mahout 中还加入了对Apache Hadoop的支持,使这些算法可以更高效的运行在云计算环境中。

推荐算法详述

1)基于内容的推荐

原理是基于用户感兴趣的物品A,找到和A内容信息相近的物品B。
提取推荐对象的特征,是内容推荐算法的关键。但是对于多媒体内容,如视频、音乐,很难找到它们之间的特性关联性。

2)协同过滤算法

仅仅基于用户行为数据设计的推荐算法,称为协同过滤算法。此方法主要根据用户对物品的历史行为,寻找用户或物品的近邻集合,以此计算用户对物品的偏好。

a) 基于领域的模型算法

i) 基于用户的协同过滤算法(UserCF)  

这种算法给用户推荐和他兴趣相似的其他用户喜欢的物品。

计算用户兴趣相似度时,要避免热门物品自带马太效应的影响。换句话说,两个用户对冷门物品采取过同样行为,更能说明他们的兴趣相似。

计算用户相似度的方法有3种:余弦相似性;相关相似性(皮尔森相关系数);修正的余弦相似性

ii) 基于物品的协同过滤算法(ItemCF)

这种算法给用户推荐和他之前喜欢的物品相似的物品。该算法是目前业界应用最多的算法。

ItemCF 与 基于内容的推荐算法的区别:

  • 基于内容的推荐算法,计算的是物品内容属性之间的相似度。如,电影的导演是不是同一个人
  • ItemCF是通过用户的行为计算物品之间的相似度。如,物品A、B具有很大相似度,是因为喜欢物品A的用户也大都喜欢物品B

b) 隐语义模型算法

LFM(latent factor model)隐语义模型是最近几年推荐系统领域最热门的话题,它的核心思想是通过隐含特征联系用户兴趣和物品。    

基于机器学习,可以优化指标建立最优模型。

c) 基于图的模型

3)基于关联规则的推荐           主要用于购物车分析

4)基于知识推荐        

5)混合推荐

推荐算法数据来源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深度学习在推荐系统领域有着广泛的应用。下面是一些关于深度学习推荐系统笔记: 1. 数据表示:深度学习推荐系统通常使用向量表示用户和物品,将它们映射到低维空间中。常见的方法包括使用Embedding层将用户和物品ID转换为密集向量表示。 2. 神经网络模型:深度学习推荐系统使用神经网络模型来学习用户和物品之间的复杂交互关系。常见的模型包括多层感知机(Multi-Layer Perceptron,MLP)、卷积神经网络(Convolutional Neural Networks,CNN)和循环神经网络(Recurrent Neural Networks,RNN)等。 3. 个性化排序:深度学习推荐系统可以通过学习用户行为数据,预测用户对物品的喜好程度,并根据预测结果对物品进行个性化排序。常见的模型包括基于DNN的排序模型和序列模型,如Wide & Deep模型、DeepFM模型和Transformer模型等。 4. 强化学习:深度学习推荐系统可以与强化学习相结合,通过与环境交互来优化推荐策略。常见的方法包括使用深度Q网络(Deep Q-Network,DQN)和策略梯度方法等。 5. 多任务学习:深度学习推荐系统可以同时处理多个任务,如点击率预测、商品推荐和用户画像等。多任务学习可以通过共享模型参数来提高模型的泛化能力和效果。 6. 可解释性:深度学习模型在推荐系统中通常具有较强的表达能力,但其可解释性较差。为了提高可解释性,可以使用注意力机制、解释性模型和推荐解释等方法。 这些是深度学习推荐系统的一些关键概念和技术。当然,实际应用中需要根据具体问题和数据进行选择和调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值