CN110851731B - 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 - Google Patents
一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 Download PDFInfo
- Publication number
- CN110851731B CN110851731B CN201910914291.8A CN201910914291A CN110851731B CN 110851731 B CN110851731 B CN 110851731B CN 201910914291 A CN201910914291 A CN 201910914291A CN 110851731 B CN110851731 B CN 110851731B
- Authority
- CN
- China
- Prior art keywords
- user
- similarity
- attribute
- coupling
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,包括以下步骤:步骤1.收集大量用户和项目数据;步骤2.对项目内容文本信息进行预处理,然后对深度学习词向量模型进行训练获得词向量模型;步骤3.将项目文本中的词通过词向量模型转换为向量;步骤4.分析用户的兴趣内容向量;步骤5.对用户注册信息预处理并提取用户属性;步骤6.结合用户属性耦合相似度和用户兴趣内容语义相似度动态计算用户的综合相似度;步骤7.预测评分,选取评分最高的前n个项目作为推荐集。本发明可以提升最近邻用户集的质量和可靠性,有效地解决冷启动问题和稀疏性问题。
Description
技术领域
本发明涉及协同过滤推荐领域,特别涉及一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法。
背景技术
随着云计算、大数据、物联网等技术的迅猛发展,使得互联网中的各类服务和用户数据爆炸式增长。这些大数据中蕴含着丰富的价值和巨大潜力,给人类社会带来了变革性的发展,如何快速有效的从纷繁复杂的数据中获取有价值的信息为用户进行个性化的推荐是推荐系统研究的关键难题。个性化推荐系统已经成为学术界和工业界的关注热点并形成了众多相关研究成果。推荐系统是根据用户偏向、兴趣等,通过推荐算法从海量数据中挖掘出用户感兴趣的项目 (如信息、服务、物品等),并将结果以个性化列表的形式推荐给用户。目前,推荐系统在很多领域得到了成功应用,包括电子商务、信息检索、社交网络、位置服务、新闻推送等各个领域。
传统协同过滤推荐算法是个性化推荐系统中一种最常用而有效的推荐算法。它主要以用户和项目之间的评分数据进行分析,从而实现推荐。然而,在推荐系统运作过程中,新用户和新项目不断地出现,这些用户和项目因为没有历史评分数据,导致传统协同过滤推荐算法不能有效的判读新用户的兴趣和新项目的受欢迎度。并且传统协同过滤推荐算法仅采用单一的用户项目评分矩阵进行挖掘,没有考虑到用户和项目更深层次的语义关联,对于稀疏性较高的用户推荐效果精度偏低。目前,学术界对传统协同过滤推荐算法存在的问题已经有所研究,文献1(余永红,陈兴国,高阳.一种基于耦合对象相似度的项目推荐算法[J].计算机科学,2013,41(2):33-35.)提出了一种基于耦合对象相似度的项目推荐算法,从项目文本中提取项目关键特征,利用耦合相似度构建项目相似度模型进行推荐,虽然解决了项目冷启动问题,但无法对新用户进行推荐。文献2(吕世嘉.基于耦合相似度的协同过滤算法的研究及应用[D].2016.)提出了加入耦合相似度的矩阵分解模型,将用户耦合相识度和项目耦合相识度作为两个额外的正则化项加入到矩阵分解的优化过程中,在一定程度上缓解了稀疏性问题,但并没有解决冷启动问题。文献3 (陈亮,深圳大学信息工程学院广东深圳,陈亮,et al.基于DNN算法的移动视频推荐策略[J].计算机学报,2016,39(8):1626-1638.)提出了一种基于深度学习模型的内容推荐方法,通过词向量模型构建用户兴趣向量,并在基于内容的推荐方法上,筛选过滤进行推荐,该方法挖掘了用户和项目深层次的语义关联,但却忽视了相似用户集体的影响,推荐结果专一化,缺少多样性。
发明内容
为了克服传统的协同过滤推荐方法中的不足,兼顾推荐过程中的冷启动问题和稀疏性问题,本发明提供一种基于用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,通过结合用户属性的耦合相似性和用户兴趣内容语义相似性动态计算用户的综合相似性,可以提升最近邻用户集的质量和可靠性,有效地解决冷启动问题和稀疏性问题。
为了实现上述目的本发明采用如下技术方案:
一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,输入包括用户-项目评分矩阵、用户注册信息、项目文本信息和目标用户u;输出为目标用户u的Top-n推荐集;所述方法包括以下步骤:
步骤1.收集大量用户和项目数据,数据包括用户注册信息、用户对项目的评分信息和项目内容文本信息,以此为基础构建数据集;
步骤2.对项目内容文本信息进行分词、去除停用词等预处理,然后对深度学习词向量模型进行训练获得词向量模型;
步骤3.将项目文本中的词通过词向量模型转换为向量,并利用词向量的加法运算法则结合TF-IDF方法获得n个关键词向量及权重 {vi1:wi1,vi2:wi2,...,vim:wim,...,vin:win},其中vim表示为项目i的第 m个关键词的词向量,wim表示为项目i的第m个关键词向量的TF- TDF权重,将词向量累加平均获得项目的文本向量
Ii表示项目的内容文本向量,n为项目内容文本中提取的关键词总数;
步骤4.分析用户的兴趣内容向量,并计算用户的兴趣内容语义相似度simp(u,v),结合用户评分信息获得用户兴趣内容向量,用户u 兴趣内容向量公式如下:
其中Pu表示用户u的兴趣内容向量,I(u)为用户u所有历史项目集合。ru,i为用户u对项目i的评分。用户兴趣内容的语义相似度可以很容易根据余弦公式获得,但是由于向量之间的余弦值范围在在-1到1之间,为了将用户兴趣内容的语义相似度范围定在0到1 之间,所以通过改进后的用户兴趣内容的语义相似度公式为
步骤5.对用户注册信息预处理并提取用户属性,计算用户属性的耦合相似度sima(u,v)
上述公式中是用户u和用户v在属性j上的耦合相似度 (简称CAVS,全称Coupled Attribute Value Similarity),且 sima(u,v)∈[0,1],其值越高代表越相似,l是属性的数量;
耦合属性值相似度(CAVS)由特征内耦合属性值相似度(IaAVS)和特征间耦合属性值相似度(IeAVS)两部分组成。特征j上属性值uj和 vj之间的耦合属性值相似度定义为:
特征内耦合属性值相似度(IaAVS)是站在属性值频率分布角度衡量不同属性值的相似度,定义如下:
公式中gj(uj)和gj(vj)分别是用户集合中用户属性j上属性值为 uj和vj的用户集合;
特征间属性值耦合相似度(IeAVS)是站在属性间依赖聚合角度衡量不同属性值的相似度,定义如下:
上式中∩表示属性j取值为uj和vj的条件下,属性k的属性值的所有取值集合的交集,Pk|j(w|uj)是描述属性j属性值为uj的条件下,属性k属性值为w的概率分布,定义如下:
步骤6.结合用户属性耦合相似度和用户兴趣内容语义相似度动态计算用户的综合相似度simw(u,v),公式为:
simw(u,v)=αsimp(u,v)+(1-α)sima(u,v)
公式中|I(u)|是用户u所有历史项目集合的数量,|Imax|是所有用户中最大的历史项目集合的数量,α表示了用户 u的活跃度,如果用户u是新用户,即用户u没有历史项目(即 |I(u)|=0)时,那么用户u的活跃度α=0,综合相似度只考虑用户属性耦合相似度,随着用户u的历史项目集合|I(u)|的增加,用户 u的活跃度α会逐渐增大,从而实现综合相似度的动态计算;然后选取与用户u相似度最高的前k个用户作为用户u的最近邻用户集合 K(u);
步骤7.预测评分,选取评分最高的前n个项目作为推荐集;
本发明的技术构思为:为了解决现有技术的问题,提出一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,结合用户属性耦合相似性和兴趣语义相似度,通过用户的活跃度来动态计算用户的综合相似度,更加准确的捕获用户之间的相关性,通过协同过滤的方法推荐结果,解决了推荐过程中的冷启动问题和稀疏性问题。
本发明的有益效果主要表现在:对用户相似度进行了研究,保证最近邻用户集的质量和可靠性,并且本发明兼顾了推荐过程中的冷启动问题和稀疏性问题。随着用户活跃度的变化而改善推荐结果,从而使用户满意。
附图说明
图1是本发明的整体流程示意图;
图2是本发明的词向量训练过程图。
具体实施方式
下面结合附图对本发明做进一步说明。
参照图1和图2,一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,其特征在于,输入包括用户-项目评分矩阵、用户注册信息、项目文本信息和目标用户u;输出为目标用户u的Top-n 推荐集;首先从数据库中提取用户属性信息、项目文本信息和用户评分信息,然后通过融合相似度得到综合相似度,最后通过协同过滤推荐算法完成推荐,所述方法包括以下步聚:
步骤1.收集大量用户和项目数据,数据包括用户注册信息、用户对项目的评分信息和项目内容文本信息,以此为基础构建数据集;
步骤2.对项目内容文本信息进行分词、去除停用词等预处理,然后对深度学习词向量模型进行训练获得词向量模型;
步骤3.将项目文本中的词通过词向量模型转换为向量,并利用词向量的加法运算法则结合TF-IDF方法获得n个关键词向量及权重 {vi1:wi1,vi2:wi2,...,vim:wim,...,vin:win},其中vim表示为项目i的第 m个关键词的词向量,wm表示为项目i的第m个关键词向量的TF- TDF权重,将词向量累加平均获得项目的文本向量
Ii表示项目的内容文本向量,n为项目内容文本中提取的关键词总数;
步骤4.分析用户的兴趣内容向量,并计算用户的兴趣内容语义相似度simp(u,v)。结合用户的评分信息计算用户兴趣内容向量,用户u的兴趣内容向量公式如下:
其中Pu表示用户u的兴趣内容向量,I(u)为用户u所有历史项目集合。ru,i为用户u对项目i的评分,用户兴趣内容的语义相似度可以很容易根据余弦公式获得,但是由于向量之间的余弦值范围在在-1到1之间,为了将用户兴趣内容的语义相似度范围定在0到1 之间,所以通过改进后的用户兴趣的语义相似度公式为
步骤5.对用户注册信息预处理并提取用户属性,计算用户属性的耦合相似度sima(u,v)
上述公式中是用户u和用户v在属性j上的耦合相似度 (简称CAVS,全称Coupled Attribute Value Similarity),且 sima(u,v)∈[0,1],其值越高代表越相似,l是属性的数量;
耦合属性值相似度(CAVS)由特征内耦合属性值相似度(IaAVS)和特征间耦合属性值相似度(IeAVS)两部分组成,特征j上属性值uj和 vj之间的耦合属性值相似度定义为:
特征内耦合属性值相似度(IaAVS)是站在属性值频率分布角度衡量不同属性值的相似度,定义如下:
公式中gj(uj)和gj(vj)分别是用户集合中用户属性j上属性值为 uj和vj的用户集合;
特征间属性值耦合相似度(IeAVS)是站在属性间依赖聚合角度衡量不同属性值的相似度,定义如下:
上式中∩表示属性j取值为uj和vj的条件下,属性k的属性值的所有取值集合的交集,Pk|j(w|uj)是描述属性j属性值为uj的条件下,属性k属性值为w的概率分布,定义如下:
步骤6.结合用户属性耦合相似度和用户兴趣内容语义相似度动态计算用户的综合相似度simw(u,v),公式为:
simw(u,v)=αsimp(u,v)+(1-α)sima(u,v)
公式中|I(u)|是用户u所有历史项目集合的数量,|Imax|是所有用户中最大的历史项目集合的数量,α表示了用户 u的活跃度,如果用户u是新用户,即用户u没有历史项目(即 |I(u)|=0)时,那么用户u的活跃度α=0,综合相似度只考虑用户属性耦合相似度,随着用户u的历史项目集合|I(u)|的增加,用户 u的活跃度α会逐渐增大,从而实现综合相似度的动态计算;然后选取与用户u相似度最高的前k个用户作为用户u的最近邻用户集合 K(u);
步骤7.通过协同过滤推荐算法预测评分,选取评分最高的前n 个项目作为推荐集,评分预测计算方法
图2是本发明的词向量训练过程图。在词向量模型训练中,所训练的语料库是项目文本信息,首先收集大量的项目文本信息,然后对项目文本进行分词处理获得语料词库,然后进一步去除语料词库中的停用词获得语料重要词汇库,最后设定word2vec模型的维度和文本窗口进行训练,通过训练形成词向量模型。
Claims (1)
1.一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法,其特征在于,输入包括用户-项目评分矩阵、用户注册信息、项目文本信息和目标用户u;输出为目标用户u的Top-n推荐集;所述方法包括以下步骤:
步骤1.收集大量用户和项目数据,数据包括用户注册信息、用户对项目的评分信息和项目内容文本信息,以此为基础构建数据集;
步骤2.对项目内容文本信息进行分词和去除停用词预处理,然后对深度学习词向量模型进行训练获得词向量模型;
步骤3.将项目文本中的词通过词向量模型转换为向量,并利用词向量的加法运算法则结合TF-IDF方法获得n个关键词向量及权重{vi1:wi1,vi2:wi2,…,vim:wim,…,vin:win},其中vim表示为项目i的第m个关键词的词向量,wim表示为项目i的第m个关键词向量的TF-TDF权重,将词向量累加平均获得项目的文本向量
Ii表示项目的内容文本向量,n为项目内容文本中提取的关键词总数;
步骤4.分析用户的兴趣内容向量,并计算用户的兴趣内容语义相似度simp(u,v),结合用户评分信息获得用户兴趣内容向量,用户u兴趣内容向量公式如下:
其中Pu表示用户u的兴趣内容向量,I(u)为用户u所有历史项目集合,ru,i为用户u对项目i的评分,用户兴趣内容的语义相似度可以根据余弦公式获得,但是由于向量之间的余弦值范围在-1到1之间,为了将用户兴趣内容的语义相似度范围定在0到1之间,所以改进后的用户兴趣内容的语义相似度公式为
步骤5.对用户注册信息预处理并提取用户属性,计算用户属性的耦合相似度sima(u,v)
耦合属性值相似度CAVS由特征内耦合属性值相似度IaAVS和特征间耦合属性值相似度IeAVS两部分组成,特征j上属性值uj和vj之间的耦合属性值相似度定义为:
特征内耦合属性值相似度IaAVS是站在属性值频率分布角度衡量不同属性值的相似度,定义如下:
公式中gj(uj)和gj(vj)分别是用户集合中用户属性j上属性值为uj和vj的用户集合;
特征间耦合属性值相似度IeAVS是站在属性间依赖聚合角度衡量不同属性值的相似度,定义如下:
上式中∩表示属性j取值为uj和vj的条件下,属性k的属性值的所有取值集合的交集,Pk|j(w|uj)是描述属性j属性值为uj的条件下,属性k属性值为w的概率分布,定义如下:
步骤6.结合用户属性耦合相似度和用户兴趣内容语义相似度动态计算用户的综合相似度simw(u,v),公式为:
simw(u,v)=αsimp(u,v)+(1-α)sima(u,v)
公式中|I(u)|是用户u所有历史项目集合的数量,|Imax|是所有用户中最大的历史项目集合的数量,α表示了用户u的活跃度,如果用户u是新用户,即用户u没有历史项目, 即|I(u)|=0时,那么用户u的活跃度α=0,综合相似度只考虑用户属性耦合相似度,随着用户u的历史项目集合|I(u)|的增加,用户u的活跃度α会逐渐增大,从而实现综合相似度的动态计算;然后选取与用户u相似度最高的前k个用户作为用户u的最近邻用户集合K(u);
步骤7.预测评分,选取评分最高的前n个项目作为推荐集;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910914291.8A CN110851731B (zh) | 2019-09-25 | 2019-09-25 | 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910914291.8A CN110851731B (zh) | 2019-09-25 | 2019-09-25 | 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110851731A CN110851731A (zh) | 2020-02-28 |
CN110851731B true CN110851731B (zh) | 2022-05-03 |
Family
ID=69595941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910914291.8A Active CN110851731B (zh) | 2019-09-25 | 2019-09-25 | 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110851731B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782939A (zh) * | 2020-06-02 | 2020-10-16 | 湖北工业大学 | 一种基于用户偏好与用户属性的个性化推荐方法 |
CN111933249B (zh) * | 2020-07-29 | 2024-03-19 | 西安理工大学 | 基于改进协同过滤ItemCF算法的运动处方生成方法 |
CN112070586B (zh) * | 2020-09-09 | 2023-11-28 | 腾讯科技(深圳)有限公司 | 基于语义识别的物品推荐方法、装置、计算机设备及介质 |
CN112100517A (zh) * | 2020-09-17 | 2020-12-18 | 哈尔滨理工大学 | 一种基于内容特征抽取的缓解推荐系统冷启动问题的方法 |
CN112287229B (zh) * | 2020-10-30 | 2022-10-21 | 中国人民解放军军事科学院军事科学信息研究中心 | 一种基于组合语义相似度的国防建设动态信息推荐方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101489107A (zh) * | 2009-01-21 | 2009-07-22 | 华东师范大学 | 一种基于人口属性关键字向量的协作过滤推荐方法 |
CN104317900A (zh) * | 2014-10-24 | 2015-01-28 | 重庆邮电大学 | 一种面向社交网络的多属性协同过滤推荐方法 |
CN106294859A (zh) * | 2016-08-22 | 2017-01-04 | 南京邮电大学盐城大数据研究院有限公司 | 一种基于属性耦合矩阵分解的项目推荐方法 |
-
2019
- 2019-09-25 CN CN201910914291.8A patent/CN110851731B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101489107A (zh) * | 2009-01-21 | 2009-07-22 | 华东师范大学 | 一种基于人口属性关键字向量的协作过滤推荐方法 |
CN104317900A (zh) * | 2014-10-24 | 2015-01-28 | 重庆邮电大学 | 一种面向社交网络的多属性协同过滤推荐方法 |
CN106294859A (zh) * | 2016-08-22 | 2017-01-04 | 南京邮电大学盐城大数据研究院有限公司 | 一种基于属性耦合矩阵分解的项目推荐方法 |
Non-Patent Citations (1)
Title |
---|
一种基于耦合对象相似度的项目推荐算法;余永红等;《计算机科学》;20140228;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110851731A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110851731B (zh) | 一种用户属性耦合相似和兴趣语义相似的协同过滤推荐方法 | |
Salloum et al. | Mining social media text: extracting knowledge from Facebook | |
CN109815308B (zh) | 意图识别模型的确定及检索意图识别方法、装置 | |
Xie et al. | An improved algorithm for sentiment analysis based on maximum entropy | |
WO2023065617A1 (zh) | 基于预训练模型和召回排序的跨模态检索系统及方法 | |
CN109947987B (zh) | 一种交叉协同过滤推荐方法 | |
CN110851700B (zh) | 一种融合属性和语义的概率矩阵分解冷启动推荐方法 | |
CN106126605B (zh) | 一种基于用户画像的短文本分类方法 | |
Jia | Chinese sentiment classification based on Word2vec and vector arithmetic in human–robot conversation | |
CN110851701B (zh) | 一种基于用户上下文耦合相似度的概率矩阵分解推荐方法 | |
CN112100317A (zh) | 一种基于主题语义感知的特征关键词提取方法 | |
CN116775812A (zh) | 一种基于自然语音处理的中医药专利分析与挖掘工具 | |
CN108664558A (zh) | 一种面向大规模用户的网络电视个性化推荐服务方法 | |
CN105677825A (zh) | 客户端浏览操作的分析方法 | |
CN110347812A (zh) | 一种面向司法文本的搜索排序方法及系统 | |
CN108932247A (zh) | 一种优化文本搜索的方法及装置 | |
Duan et al. | A hybrid recommendation system based on fuzzy c-means clustering and supervised learning | |
Tian et al. | A multi-modal topic model for image annotation using text analysis | |
Tian et al. | Research on image classification based on a combination of text and visual features | |
CN111061939B (zh) | 基于深度学习的科研学术新闻关键字匹配推荐方法 | |
Wu et al. | Clustering results of image searches by annotations and visual features | |
CN110096618B (zh) | 一种基于分维度情感分析的电影推荐方法 | |
CN108345605B (zh) | 一种文本搜索方法及装置 | |
Chen et al. | Comments prediction model on emotional analysis based on bayes classification | |
Liang et al. | Cross‐media Hot Topic Auto‐tracking Model Based on Semantics and Temporal Context |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |