原文地址:https://blog.csdn.net/Jorocco/article/details/81428996
1、用户画像概述
用来勾画用户(用户背景、特征、性格标签、行为场景等)和联系用户需求与产品设计的,旨在通过从海量用户行为数据中炼银挖金,尽可能全面细致的抽出一个用户的信息全貌,从而帮助解决如何把数据转为商业价值的问题。
1.1 用户画像数据来源
用户画像数据来源中连个最终要的数据就是用户属性以及物品属性,有了这两个,我们就可以从用户-用户、用户-电影、电影-电影三方面展开相应的相似度计算从而实施相应的推荐与应用。
1.1.1 用户属性
用户属性用来描述一个用户的个性,从而用于与其他用户加以区分,为实现精准及个性化的推荐,系统通常对每个用户都有一个用户属性的建模,其中包括用户的基本信息,如用户的性别、年龄、年收入、兴趣爱好、活跃时间、所在城市等。如果计算得到用户A和用户B的属性相似度较高,那么系统就会认为用户A和用户B是相似用户,在推荐引擎中,基于邻居用户群的观影喜好推荐给当前用于一些电影。同时,用户属性还可以用于推荐结果进行过滤和排序,从而优化推荐结果。
1.1.2 物品属性
物品属性是用来描述一个物品的特点,比如观影,这个影片就会有相应的属性标签,比如动作片、爱情片、导演、主演、上映地区等。通过对影片属性进行相应的标签化,为后面的推荐提供数据支撑。
2、用户画像建模
用户画像建模就是用户信息的标签化,以便为后面的推荐算法提供更精准的语义信息。它的核心是对用户潜在的意图和兴趣进行表示和存储,根据用户的基础信息、视频信息、访问信息、行为偏好等归纳出可读取,可计算的用户模型。用户画像通常包含定性画像和定量画像两个部分,其中定性画像主要包括用户的基本特征、行为刻画、兴趣模型和视频表征等,定量画像主要包括用户基础变量、兴趣偏好等可量化的数据特征。所谓的定量画像就是通过某种可量化的数据特征进行画像,比如某个东西的购买量,点击量等。
2.1 用户定量画像
定量画像建模过程中需要重点考虑的是用户画像的颗粒度,即用户画像应该细化到何种程度,颗粒度越小,用户画像越细,也就更加有利于提高推荐系统的准确性。然而,也不是越细越好,一方面提高了用户画像建模成本,同时也会导致用户画像的使用性降低,如何把握好用户画像的颗粒度可以采取问卷调查的方法了解用户的使用场景、关注内容等。可以通过表单收集捕捉用户行为。
2.2 用户定性画像
标签化是用户定性画像的核心。标签化之后,首先,计算机可以自动完成分类统计功能,例如,可以统计喜欢科幻类型电影的用户有多少,还可以进一步统计喜欢观看科幻类型电影的人群中男女比例是多少,其次,计算机也可以根据这些标签进行深度挖掘,例如,可以利用关联规则计算用户年龄和喜欢电影类型的关系,还可以利用聚类算法分析喜欢科类型电影用户的年龄段分布情况。将标签信息与用户的视频浏览、点播行为数据相结合就可以进一步预测用户的喜好,这对于搜索引擎、广告投放等应用领域都有显著的意义。
一个产品通常会设计4~6个标签代表所有的用户群体。
基于知识的用户定性画像分析
基于知识的用户定性画像分析其核心思想是利用本体对用户画像中的标签进行表示、验证、推理和解释等,具体来说包括用户和视频的标签以及它们之间的关系进行形式化的表述,从语义层面描述视频、用户及其兴趣特征,主要以观众和视频的相关知识作为画像建模的核心。
本体侧重对特定工程领域中的知识进行建模,提供专业领域中概念的词汇表以及概念间的关系,是在语义层次上对信息进行的形式化描述。主流的本体开发工具是Protege。本体描述语言OWL DL。
3、群体用户画像分析
群体用户画像分析是指用户间的关联分析。
群体用户画像分析的流程主要包括:
1、用户画像的获取
2、用户画像相似度计算,根据不同的用户画像计算相互间的相似度,是区分用户群体的重要指标,也是展开用户画像聚类的前提条件。
3、用户画像聚类,根据用户画像间的相似度,将相似的用户画像聚为一类。
4、群体用户画像生成,针对不同类别的用户分别建立有代表性的典型用户画像。
通过群体用户画像分析可以获取需求相近的用户群。
3.1.1 定量相似度计算
3.1.2 定性相似度计算
4、用户画像更新触发条件
更新机制
5、推荐概述
常见的推荐算法根据使用数据源的不同可将其大致分为三类:分别是协同过滤的推荐方法、基于内容的推荐方法和基于知识的推荐方法以及对这三类算法进行不同程度融合之后出现的混合推荐算法。
5.1 主流推荐方法的分类
5.1.1 协同过滤的推荐方法
5.1.2 基于内容的推荐方法
基于内容的推荐方法和协同过滤方法中基于视频之间的协作的最大区别是它不需要任何用户数据,而基于视频之间的协作它需要维护一个视频间相似度矩阵,然后将和该用户评过高分相似的视频推荐给该用户,它的主要数据对象对象是用户和视频,而基于内容的推荐方法的数据对象就只是某一个用户的历史视频。
5.1.3 基于知识的推荐方法
5.1.4 混合推荐方法
5.2 推荐系统的评测方法
6、协同过滤推荐方法
6.1 概述
6.2 关系矩阵及矩阵计算
6.2.1 U-U矩阵
6.2.2 V-V矩阵
6.2.3 U-V矩阵
6.3 基于记忆的协同过滤算法
6.3.1 基于用户的协同过滤算法
6.3.2 基于物品的协同过滤算法
6.4 基于模型的协同过滤算法
6.4.1 基于隐因子模型的推荐算法
6.4.2 基于朴素贝叶斯分类的推荐算法
7、基于内容的推荐方法
7.2 视频推荐中的特征向量
7.3 基础CB推荐算法
7.4 基于TF-IDF的CB推荐算法
7.5 基于KNN的CB推荐算法
7.6 基于决策树的CB推荐算法
7.7 基于线性分类的CB推荐算法
7.8 基于朴素贝叶斯的CB推荐算法
8、Mahout推荐引擎介绍
8.1 Item-based算法
8.2 矩阵分解
8.3 ALS算法
8.4 快速实战
8.4.1 日志数据
8.4.5 运行环境
建立一个maven工程添加如下依赖:
8.4.6 基于Mahout Item-based算法实践
8.4.7 基于Mahout ALS算法实践