推荐系统|冷启动问题解决方法

推荐系统的主要目标是将大量的物品推荐给可能喜欢它的海量用户, 这里涉及到物品和用户两类对象。任何互联网产品, 物品和用户都是不断增长变化的,所以一定会频繁面对新物品和新用户。推荐系统冷启动问题指的就是对于新注册的用户或者新入库的物品, 该怎么给新用户推荐物品让用户满意,怎么将新物品分发出去,推荐给喜欢它的用户,带来商品的分发和销售。

冷启动问题是推荐系统必须要面对的问题,也是一个很棘手的问题。

1.传统的解决方法

1.1基于内容的冷启动问题

基于内容的推荐技术的核心思想是:利用物品的特性和用户的偏好之间的匹配度来做出个性化的推荐。但是基于内容的推荐算法主要解决新项目冷启动问题,对新用户冷启动问题解决效率不佳。

1.2基于协同过滤的冷启动问题

协同过滤是通过用户对项目的评分数据,计算相似度寻找新用户的最近邻,以此实现对新用户的推荐。

1.3混合推荐中的冷启动问题

混合算法将不同的推荐算法融合到推荐系统中,以实现更全面、更准确的推荐服务。

2.近年的推荐算法

2.1数据驱动的冷启动解决推荐算法

一些研究采用基于数据驱动的方法,除了利用用户的反馈信息和项目信息等数据外,还借助其他类型的数据,或改进数据集和处理方式。常用的数据包括用户人口统计学数据、跨领域数据、社交网络数据等。

2.1.1基于人口统计学数据的解决算法

基于人口统计学数据的冷启动解决方案只能解决新用户冷启动的问题,不能够解决新项目冷启动问题。

2.1.2基于社交网络的解决算法

通过用户的社交网络,判断用户的具有相似偏好的且偏好明确的用户,通过相似用户来对新用户进行推荐。但是这种方案也只能够解决新用户冷启动问题,不能够对新项目冷启动进行有效地解决。

2.1.3基于跨域的解决算法

跨领域推荐是一种利用源领域的有用信息迁移至目标领域的方法,以弥补目标领域内容的不足。

2.2方法驱动的冷启动解决推荐算法

基于方法驱动的推荐根据所使用的算法的不同分为:基于元学习的算法、基于上下文信息和会话策略的算法、基于图的随机游走的算法、基于异质图信息和属性图的算法、基于对抗性机制的算法和其他算法。

2.2.1基于元学习的推荐算法

2.2.2基于上下文信息和会话策略的解决算法

2.2.3基于图的随机游走的解决算法

2.2.4基于异质图信息和属性图的解决算法

2.2.5基于对抗性机制的解决算法

3.特定领域冷启动问题

3.1多媒体信息推荐

3.2电商平台领域推荐

3.3文章检索系统推荐

4.用户冷启动问题

4.1提供非个性化的推荐

给用户推荐非个性化的物品作为解决冷启动的方法,主要有基于先验数据的推荐和基于多样性的推荐。

4.1.1 利用先验数据做推荐

4.1.2给用户提供多样化的选择

4.2利用新用户在注册时提供的信息

4.2.1利用人口统计学数据

很多产品在新用户注册时是需要用户填写一些信息的, 这些用户注册时填的信息就可以作为给用户提供推荐的指导。

4.2.2利用社交关系

用户在注册时要求导入社交关系,这时可以将你的好友喜欢的物品推荐给你。利用社交关系来做冷启动,特别是在有社交属性的产品中,这是很常见的一种方法。

4.2.3利用用户填写的兴趣点

根据用户在注册时提供自己的兴趣点做推荐。

4.3基于内容做推荐

4.4采用快速试探策略

先随机或者按照非个性化推荐的策略给用户推荐,基于用户的点击反馈快速发现用户的兴趣点,从而在短时间内挖掘出用户的兴趣。

5.物品冷启动问题

5.1利用物品的metadata信息做推荐

5.1.1利用物品跟用户行为的相似性

通过提取新上架的物品的特征(如标签、采用TF-IDF算法提取的文本特征、基于深度学习提取的图像特征等),通过计算物品特征跟用户行为特征(用户行为特征通过他操作过的物品特征的叠加,如加权平均等)的相似性,从而将物品推荐给与它最相似的用户。

5.1.2利用物品跟物品的相似性

一般新上线的物品或多或少都是有一些属性的,根据这些属性找到与该物品最相似(利用余弦相似度等相似算法)的物品。

5.2采用快速试探策略

借用强化学习中的EE(Exploration-Exploitation)思想,将新物品曝光给随机一批用户,观察用户对物品的反馈,找到对该物品有正向反馈(观看、购买、收藏、分享等)的用户,后续将该物品推荐给有正向反馈的用户或者与该用户相似的用户。

这种思路其实就是一种流量池的思路。在不知道物品是不是受欢迎时,先试探性地将物品曝光给一批种子用户,看种子用户对物品的反馈,如果反馈良好,再推荐给更多的用户,否则减少推荐量。

5.3采用基于关系传递的策略

当产品在拓展物品品类的过程中,比如视频类应用,前期只做长视频,后来拓展到短视频,那么对某些没有短视频观看行为的用户,怎么给他做短视频推荐呢?可行的方式是借用数学中关系的传递性思路,利用长视频观看历史,计算出长视频与用户的相似度。对新入库的短视频,可以先计算与该短视频相似的长视频,我们可以将该短视频推荐给喜欢与它相似的长视频的用户。

该相似关系的传递性可描述为:短视频与长视频有相似关系,长视频与喜欢它的用户有相似关系,最终得到短视频与用户有相似关系。

相关推荐

  1. 推荐系统|启动问题解决方法

    2024-03-23 04:14:01       22 阅读
  2. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       17 阅读
  3. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       21 阅读
  4. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       19 阅读
  5. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       18 阅读
  6. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       26 阅读
  7. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       23 阅读
  8. Tomcat 启动闪退问题解决方法

    2024-03-23 04:14:01       17 阅读
  9. Tomcat启动闪退问题解决方法

    2024-03-23 04:14:01       16 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-23 04:14:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-23 04:14:01       20 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-23 04:14:01       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-23 04:14:01       20 阅读

热门阅读

  1. Event Command Set (64)-Composite Command (100)

    2024-03-23 04:14:01       21 阅读
  2. 数据库笔记

    2024-03-23 04:14:01       19 阅读
  3. AI大模型学习

    2024-03-23 04:14:01       17 阅读
  4. LeetCode2671. Frequency Tracker

    2024-03-23 04:14:01       17 阅读
  5. mysql char 与 varchar 的区别

    2024-03-23 04:14:01       17 阅读