CN111428127B - 融合主题匹配与双向偏好的个性化事件推荐方法及*** - Google Patents
融合主题匹配与双向偏好的个性化事件推荐方法及*** Download PDFInfo
- Publication number
- CN111428127B CN111428127B CN202010069262.9A CN202010069262A CN111428127B CN 111428127 B CN111428127 B CN 111428127B CN 202010069262 A CN202010069262 A CN 202010069262A CN 111428127 B CN111428127 B CN 111428127B
- Authority
- CN
- China
- Prior art keywords
- event
- user
- preference
- topic
- formula
- 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
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 51
- 238000009826 distribution Methods 0.000 claims description 74
- 239000013598 vector Substances 0.000 claims description 47
- 230000000694 effects Effects 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 13
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 10
- 238000005457 optimization Methods 0.000 claims description 8
- 235000019580 granularity Nutrition 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000002452 interceptive effect Effects 0.000 claims description 6
- 238000002474 experimental method Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 3
- 238000007476 Maximum Likelihood Methods 0.000 claims description 3
- 238000012804 iterative process Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000008447 perception Effects 0.000 claims description 3
- 238000004260 weight control Methods 0.000 claims description 3
- 238000005065 mining Methods 0.000 abstract description 3
- 230000004927 fusion Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100391180 Dictyostelium discoideum forG gene Proteins 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/9535—Search customisation based on user profiles and personalisation
-
- 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
-
- 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/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
本发明公开了一种融合主题匹配与双向偏好的个性化事件推荐方法及***。首先,利用文档主题生成模型LDA提取事件和用户参与的历史事件的主题信息,计算用户与事件的主题匹配度;其次,对于基于事件的社交网络推荐从用户和事件的双向角度考虑,构建用户和事件的偏好模型,分别得到用户偏好评分和事件偏好评分,从用户和事件两个角度更完整地挖掘偏好关系;最后,将用户‑事件对匹配度融合用户事件双向偏好线性加权组合得到最终的用户‑事件对综合评分,将排序后的TOP‑K个用户‑事件对作为推荐结果。本方案推荐算法的性能优于传统的推荐方案,能很好地预测用户的个性化偏好,从而达到个性化推荐的目的。
Description
技术领域
本发明涉及信息推荐技术领域,具体涉及一种融合主题匹配与双向偏好的个性化事件推荐方法及***。
背景技术
随着互联网和计算机技术的快速发展,近年来传统的社交网络也朝着不同的革新方向发展,随之形成了一些特殊类型的新型社交网络,比如基于位置的社交网络(Location-Based Social Network, LBSN),主要根据用户的地理签到信息形成社交关系的社交网络,以及另一种线上与线下结合的复杂异构社交网络——基于事件的社交网络(Events-Based Social Network, EBSN),区别于传统的社交网络中熟人之间建立的好友关系,基于事件的社交网络中用户通过社会活动建立人际关系,用户根据自身的兴趣或共同点加入线上的兴趣小组和线下的集体社交活动。
基于事件的社交网络正处于快速发展的过程中,越来越多的用户选择在事件社交网络中参与社交活动,在基于事件的社交网络平台上,用户可以加入各种不同的线上群组,组织者或者组内的用户可以发起并参与任意的线下社交活动,例如聚会、徒步旅行、体育活动、演唱会等,并与其他用户进行信息共享。
基于事件的社交网络可以为用户提供从线上到线下结合的社交服务,帮助用户发起及制定个性化的事件参与计划。用户在线上通过共同兴趣形成在线群组关系,并在线上发起线下集会事件,基于事件的社交网络拥有比基于位置的社交网络更广泛的社交属性,已有的工作表明在推荐***中事件社交网络拥有比传统社交网络的更好的推荐特性。
当前大部分基于事件的社交网络推荐主要是基于用户单向角度提取特征偏好进行推荐,虽然会考虑事件主办方的社交影响,但对于事件的潜在吸引度表示性不足。另一方面,关于主题因素的影响仅仅将事件主题作为推荐因素之一,较少考虑用户主题因素及其与事件主题的匹配度。
发明内容
有鉴于此,有必要提供一种结合几类主要的上下文信息计算用户偏好及事件潜在偏好,并最终融合主题匹配度与用户-事件双向偏好的融合主题匹配与双向偏好的个性化事件推荐方法及***。
一种融合主题匹配与双向偏好的个性化事件推荐方法,包括以下步骤:
步骤一,以文档主题生成模型LDA提取事件的主题信息,并根据用户参与的历史事件记录得到用户主题信息,计算新事件和用户历史事件的主题,采用JS散度算法计算用户-事件对的主题匹配度评分;
步骤二,分别构建用户偏好模型和事件偏好模型,并分别计算用户偏好评分和事件偏好评分;
步骤三,利用贝叶斯个性化排序算法BPR学习用户偏好评分和事件偏好评分的权重参数,得到用户事件双向偏好评分,将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐评分,向用户推荐排序后的前K个事件。
进一步地,步骤一中的所述文档主题生成模型LDA具有三层生成式贝叶斯网络结构,包括文档、主题和词,其中文档-主题和主题-词均服从多项式分布;每个文档以一定概率选择一个主题,并从这个主题中以一定概率选择一个词语,在任意文档中的主题均符合Dirichlet分布,通过该分布发掘文本之间的关系。
进一步地,步骤一中的所述计算新事件和用户历史事件的主题,采用JS散度算法计算用户-事件对的主题匹配度评分,具体步骤包括:
步骤1-1,将所有事件描述内容组成文档集D并去除停用词,将所述文档集D输入文档主题生成模型LDA,分别求得每个事件的主题分布;
对所有事件内容去除停用词及标点符号,把去除噪声干扰词后的文档内容视为所有文档的集合D,输入到LDA主题模型中,产生文档主题和词的联合分布/>,如式(1)所示:
(1);
然后使用Gibbs采样方法估计模型中的两个未知参数:事件主题分布和主题词分布/>;
步骤1-2,根据JS散度算法计算目标用户历史事件和新事件之间的主题分布相似度;
根据式(1)已经生成所有事件的主题分布,给定事件/>和/>分别具有主题分布,通过JS散度方法首先计算两者之间的JS散度/>,如式(2)所示:
(2);
其中,,/>表示KL散度,用来描述两个概率分布/>和/>之间的差异,计算公式如式(3)所示:
(3);
结合式(2)和式(3)可得事件和/>的主题相似度为/>,如式(4)所示:
(4);
其中,事件的主题相似度的值位于[0,1]中,值越接近1则表示事件相似度越高;
步骤1-3,对目标用户所有历史事件的相似度取平均值,得到用户和新事件的主题匹配度评分;
以表示目标用户的历史事件数,取目标用户所有相似度的平均值/>作为用户和新事件的主题匹配度评分,如式(5)所示:
(5);
根据构建的主题匹配模型,最终以来度量目标用户与新事件之间的主题匹配关系。
进一步地,步骤二中的所述构建用户偏好模型分别从地理位置、社交关系、时间因素三个方面来构建用户的单因素偏好,具体包括:
步骤2-1-1,构建地理位置偏好模型:
地理位置偏好模型计算目标用户将参与在该位置举办事件的概率,采用核密度估计KDE方法对用户参与的事件的二维地理位置分布进行建模,用归一化之后的事件参与概率表示用户对地理位置的偏好度。事件地理位置的经纬度坐标用(Lx, Ly)表示,用户历史参与事件的地点集合以L(u)表示,则关于用户u的KDE函数如式(6)所示:
(6);
其中,l i=(Lx i ,Ly i)T表示事件位置经纬度坐标的二维化向量,m l(u,l i)表示用户u参加地理位置l i处举办活动的频率,σ表示邻域窗口(带宽)的大小,N表示位置样本中的个数,K(•)表示高斯核函数,其定义形式如式(7)所示:
(7);
结合式(6)和式(7)可定义用户u参加将在位置为l处举办的事件活动的概率,如式(8)所示:
(8);
将概率归一化,得到用户关于地理位置的偏好评分,如式(9)所示:
(9);
其中,分母表示目标用户最大的事件参与概率;
步骤2-1-2,构建社交关系偏好模型:
在用户社交关系网络中,用户会在线上加入至少一个或多个兴趣组中,并选择参与不同的小组发布的事件活动,通过用户的线上同组关系判断用户的社会关系偏好,所述同组关系主要包括两种交互关系;
第一种,用户与组的相关性,定义为用户与他们所属的所有组之间以及用户与组内创建的事件之间的交互关系,以G(u)表示用户u参与的事件所属的组的集合,则用户与组的相关性可表示成式(10)所示:
(10);
其中,m p(u,g)表示用户所在组中用户u曾参加的事件活动集合;
第二种,组内用户相关性,组内用户相关性由目标用户所在组中的好友相似性来定义,计算目标用户与组内用户的相似性,如式(11)所示:
(11);
其中,sim(u i ,u j)表示同一组中用户u i和用户u j之间的相似性,如式(12)所示;
(12);
将s(u,g)归一化为,如式(13)所示:
(13);
结合上述两种交互关系,属于相同组的用户倾向于参加由这些组内的其他用户创建的事件,综合用户与组的相关性和组内用户相关性得出用户u关于线上小组g的社交偏好评分,如式(14)所示:
(14);
其中,作为权重控制参数,在社交关系网络中,设定目标用户和小组的偏好关联与组内用户之间的关联同等重要,通过实验验证将此处/>的值设为0.5;
步骤2-1-3,构建时间因素偏好模型:
事件的时间因素是计算用户偏好时需要考虑的一个重要偏好因子;将用户能选择参加的新事件e表示为一个7*24维的事件时间向量,当新事件在一周的某个特定时间段中发生时,则将该时间段的向量分量值置为1,否则为0;在时间偏好模型中根据用户参加的历史事件记录将用户表示为用户时间向量/>,如式(15)所示:
(15);
其中,E u表示目标用户参与过的历史事件集合,然后计算用户时间向量和新事件时间向量之间的余弦相似度,如式(16)所示:
(16);
对于新事件,用户/>可根据式(16)求得相似度/>,归一化该相似度得到该用户对事件的时间偏好评分/>,如式(17)所示:
(17);
进一步地,步骤二中的所述计算用户偏好评分,具体包括:
对于所述地理位置偏好模型,通过预测用户参与该位置举办的事件活动的概率表示地理位置偏好评分;对于所述社交关系偏好模型,从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;对于所述时间因素偏好模型,通过构建日期和小时两个粒度的统一向量表示,并基于此计算用户-事件对的相似度作为目标用户的时间偏好评分;结合这三个单因素偏好组成一个用户偏好感知模型,将三个单因素偏好线性组合求得用户u对事件e的总体偏好评分,如式(18)所示:
(18);
其中,分别表示用户在地理位置、社交关系、时间因素三个单因素上的偏好评分。
进一步地,步骤二中的所述构建事件偏好模型分别从事件位置流行度、事件主办方影响力两个方面来构建事件的单因素偏好,具体包括:
步骤2-2-1,构建事件位置流行度偏好模型:
根据用户u和其所加入的线上小组g中的用户对地点访问频率来计算地理位置的流行度;
首先定义事件地理位置l e关于用户u的流行度,如式(19)所示:
(19);
其中,分子为用户u参加地理位置l e处举办活动的频率,分母为用户u历史访问过的位置的最大频率;同样地,定义地理位置l e关于用户u所在小组g的流行度/>,如式(20)所示:
(20);
其中,分子表示小组g中每个用户在位置l参加实践活动的频率,分母为小组成员历史访问过的位置的最大频率,由此可计算出地理位置l e关于小组g中的用户的流行度;结合和/>定义要推荐事件的举办位置对目标用户u的总流行度为/>,如式(21)所示:
(21);
步骤2-2-2,构建事件主办方影响力偏好模型:
第一,事件主办方对目标用户的影响度,选择通过主办方的信誉度或者影响度来表示事件的隐式偏好;定义事件对用户u的影响度,如式(22)所示:
(22);
其中,表示用户u参加过的由主办方u h举办的事件集合,E h是主办方u h举办的所有事件集合;
第二,事件主办方在小组中的影响度,针对目标用户所在的线上小组,事件在该组中的影响度类比采用用户参加的频率比例来表示,用户在组中的影响度以表示,如式(23)所示:
(23);
其中,U g表示小组中的用户集合,/>表示用户/>参与的由主办方/>举办的事件集合,/>表示/>在小组/>中举办的事件集合;结合事件主办方对目标用户以及对小组中用户的影响度求得事件主办方的综合影响度评分/>,如式(24)所示:
(24);
进一步地,步骤二中的所述计算事件偏好评分,具体包括:
对于未发生的新事件,通过计算新事件的事件位置流行度和事件主办方影响力来表示事件的偏好;对已构建的事件位置流行度和事件主办方影响力/>线性组合,计算得到事件e对用户u的偏好评分/>,如式(25)所示:
(25);
进一步地,步骤三中的所述得到用户事件双向偏好评分,将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐评分,具体步骤包括:
步骤3-1,对用户-事件对求双向偏好:
假设用户和事件的偏好评分权重分别为和/>,把两者加权融合得到用户事件双向偏好评分/>;将双向偏好评分的问题转换为求两个偏好评分的权重向量,选择使用隐式反馈作为训练数据学习权重向量;
选择基于贝叶斯最大似然估计的学习算法BPR对权重进行排序学习,根据用户对事件的隐式反馈数据学习用户-事件对的正确排序顺序,使得用户参与的事件排在新事件或其它事件之前;首先,定义最大化后验概率,如式(26)所示:
(26);
其中,θ表示权重向量,R表示所有用户-事件对的集合,定义如式(27)所示;
(27);
其中,式中表示用户/>的用户-事件对,而/>表示对于用户/>事件/>排在/>前面的概率,如式(28)所示:
(28);
其中,即为双向偏好评分/>,/>;为了更方便进行优化,假设/>服从均值为0的正态分布,展开推导得出最终优化目标函数/>,如式(29)所示:
(29);
其中,表示正则项系数,通过用户事件的隐式交互反馈数据最大化优化目标函数,得出最优权重参数向量;采用随机梯度下降算法SGD求解该优化问题,在迭代过程中从训练集随机提取目标用户的用户-事件对来更新权重向量/>,更新过程如式(30)所示:
(30);
其中,是学习率,/>;通过以上学习过程可以自动根据用户事件偏好评分训练集和超参数/>和/>求得权重向量/>,从而得到双向偏好评分/>;
步骤3-2,结合主题匹配和双向偏好求得用户-事件对最终推荐评分:
首先,通过LDA主题模型提取事件主题并求得用户和事件的主题匹配度评分;其次,根据EBSN中的用户事件上下文信息分别构建用户和事件的偏好模型,通过BPR学习算法得到用户事件双向偏好评分;最后,将主题匹配度评分与用户事件双向偏好评分/>线性加权求和得到最终的用户-事件对推荐度评分/>,如式(31)所示:
(31);
其中,为权重参数,通常根据经验手动设定,将通过实验来确定最优设置。
以及,一种融合主题匹配与双向偏好的个性化事件推荐的实现***,其用于实现如上任一项所述的融合主题匹配与双向偏好的个性化事件推荐方法,该实现***包括:
文档主题生成模块,用于提取用户历史事件和新事件的主题,并计算事件的主题分布和词分布,以用户历史事件和新事件之间的主题相似度表示主题匹配度,将其作为推荐的关键因素之一融合到推荐模型中,以进行事件推荐;
构建用户偏好模块,用于从地理位置、社交关系、时间因素三个方面来构建用户的单因素偏好,并将三个单因素偏好加权融合得到用户整体偏好;
构建事件偏好模块,利用以事件主办方在小组中的社交影响力,以及事件举办的地理位置在小组中的流行度来表示事件的偏好;
用户事件双向偏好评分模块,利用排序学习算法对用户偏好评分和事件偏好评分的权重参数进行求解,得到用户事件双向偏好评分;
用户-事件对的最终推荐评分模块,用于将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐度评分。
进一步地,所述用户偏好模块包括地理位置偏好模块、社交关系偏好模块和时间因素偏好模块,所述事件偏好模块包括事件位置流行度偏好模块和事件主办方影响力偏好模块,其中:
所述地理位置偏好模块,用于通过预测用户参与某个地理位置举办的事件活动的概率,来表示地理位置偏好评分;
所述社交关系偏好模块,用于从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;
所述时间因素偏好模块,用于通过构建日期和小时两个粒度的统一向量表示,并计算用户-事件对的相似度作为目标用户的时间偏好评分;
所述事件位置流行度偏好模块,用于在新事件推荐时,举办地点对于感兴趣的用户来说是重要的选择依据,称为地理位置在用户群体中的流行度,考虑事件地理位置的受欢迎程度能够更加精确地计算事件对用户的吸引度;
所述事件主办方影响力偏好模块,用于根据事件主办方在目标用户所在群组的影响力来提升推荐的精确度,从事件主办方对目标用户的影响度和事件主办方在小组中的影响度两个方面计算其影响力。
上述基于融合主题匹配与双向偏好的个性化事件推荐方法及***中,首先,利用文档主题生成模型LDA提取事件的主题信息,并根据用户参与的历史事件记录得到用户主题信息,计算用户与事件的主题匹配度作为推荐模型中的重要推荐因素,主题因素能更好地表示特征偏好;其次,对于基于事件的社交网络推荐从用户和事件的双向角度考虑,构建用户和事件的偏好模型,分别得到用户偏好评分和事件偏好评分,从用户和事件两个角度更完整地挖掘偏好关系;最后,将用户-事件对匹配度融合用户事件双向偏好线性加权组合得到最终的用户-事件对综合评分,将排序后的前K(即,TOP-K)个用户-事件对作为推荐结果。本方案在Meetup真实数据集上进行了大量实验,并与其它的事件推荐算法进行了比较,表明了本软件推荐算法的性能优于传统的推荐方案,能很好地预测用户的个性化偏好,从而达到个性化推荐的目的。
附图说明
图1是本发明实施例的融合主题匹配与双向偏好的个性化事件推荐方法及***的整体推荐融合框架结构图。
图2是本发明实施例的融合主题匹配与双向偏好的个性化事件推荐方法及***的文档主题生成模型LDA的结构框图。
具体实施方式
本实施例以融合主题匹配与双向偏好的个性化事件推荐方法为例,以下将结合具体实施例和附图对本发明进行详细说明。
请参阅图1和图2,示出本发明实施例提供的一种融合主题匹配与双向偏好的个性化事件推荐方法及***。
这里具体讲解本软件的融合主题匹配与双向偏好的个性化事件推荐***涉及到的技术细节。其主要思想是,首先,通过LDA主题模型计算新事件和用户历史事件的主题,采用余弦相似度计算用户-事件对的主题匹配度,并分别构建用户偏好模型和事件偏好模型。其中,用户偏好模型从时间、地理、社交关系三个方面计算用户的综合偏好评分。事件偏好模型根据新事件在目标用户小组中的地理位置流行度以及主办方的组内社交影响度表示事件潜在偏好评分。然后,利用贝叶斯个性化排序算法(Bayesian Personalized Ranking,BPR)学习用户偏好评分和事件偏好评分的权重参数,得到用户事件双向偏好评分。最后,与主题匹配度线性加权融合求得用户-事件对最终推荐度评分,向用户推荐排序后的TOP-K个事件。即,本软件将用户和事件主题匹配,结合几类主要的上下文信息计算用户偏好及事件潜在偏好,最终融合主题匹配度与用户-事件双向偏好来进行事件推荐。
1.融合LDA主题匹配与用户事件双向偏好的推荐框架
在当前已有工作的基础上,基于EBSN中的地理位置信息、时间信息、社交关系及其它相关的用户事件上下文信息,提出一种结合用户-事件对主题匹配和用户-事件对双向偏好的事件推荐方案。在该方案中,分别考虑了主题匹配度、用户偏好及事件偏好对事件推荐的影响,并融合这些因素有效地对用户进行兴趣事件推荐。推荐模型的总体框架如图1所示,其具体推荐过程如下:
1) 根据EBSN中事件的描述文档利用LDA主题模型计算新事件和目标用户的历史事件主题,以用户历史事件的主题表示用户的主题,然后计算事件与用户主题分布的语义相似度,得到用户-事件主题的匹配度评分。
2) 计算用户偏好评分和事件偏好评分,对于用户偏好分别从地理位置、社交关系、时间三个方面计算偏好评分并线性融合,而事件偏好则是通过事件举办地理位置的流行度和事件主办方的社交影响力来表示,同样进行线性融合得到事件偏好评分。需要注意的是,计算关于事件的地理位置流行度和主办方影响力时,只针对目标用户所在的小组和组内用户,对于其他用户及小组的关联全部忽略,以提高推荐性能并降低计算复杂度。
3) 通过以上的计算得到用户-事件主题的匹配度评分和用户对事件的偏好评分,以及事件对用户的偏好评分。先利用贝叶斯个性化排序算法学习用户偏好评分和事件偏好评分的权重,从而根据权重融合用户和事件的偏好评分得到双向偏好评分,最后线性组合主题匹配度评分及双向偏好评分信息得到最终的用户-事件对推荐度评分,并向用户推荐评分最高的TOP-K事件。
2.基于LDA的主题匹配模型
在事件社交网络中用户和事件之间存在明显的主题语义相似关系,用户通常选择参与某一类感兴趣的事件,一般这一类事件具有相似的属性和主题。在推荐中应用事件的主题能更好地捕捉用户和事件的偏好,我们以用户参加的历史事件的主题表示用户主题,并计算新事件主题分布和词分布,以用户历史事件和新事件之间的主题相似度表示主题匹配度,将其作为推荐的关键因素之一融合到推荐模型中进行事件推荐。
当两个文档具有相同的主题等特征时,用TF-IDF(Term Frequency–InverseDocument Frequency)算法很难区分这两个对象,因此选择基于贝叶斯的LDA主题模型来计算文档主题分布和词分布。LDA主题模型是一种用于计算文档主题分布的贝叶斯概率模型,用于为文档聚类潜在主题并生成文档主题。其核心思想是,每个文档以一定概率选择了某个主题,并从这个主题中以一定概率选择某个词语,认为在任意文档中的主题均符合Dirichlet分布,通过该分布可以发掘文本之间的关系。LDA 由三层生成式贝叶斯网络结构组成,包含文档、主题、和词,文档-主题和主题-词都服从多项式分布。LDA主题模型生成过程如图2所示。
给定文档集,图2中/>和/>分别表示文档/>的主题分布和词分布的先验Dirichlet分布,/>分别是根据经验给定的主题先验分布和词先验分布的超参数,k是事先指定的文档集的主题数,N m表示文档/>的单词总数,M是文档集中的文档数。对于文档/>中的每一个单词,LDA根据先验知识/>确定文档的主题分布/>,然后从主题分布/>中抽取一个主题z,又根据先验知识/>确定当前主题的词分布/>,再从主题z所对应的词分布/>中抽取一个单词/> ,重复以上过程N m次即可生成文档/>。在这个过程中利用Gibbs采样方法即可求解文档/>的主题分布。
根据LDA计算用户和事件之间的主题相似度,先将文本内容转换为语义特征,对每一个事件利用LDA主题模型计算主题分布。事件内容主要由标题和描述文档构成,还包括时间和举办地点等信息,可以通过事件内容提取事件主题。相对地,用户可以选择设置兴趣标签来表示偏好,然而很多用户并不会设置兴趣标签或自我简介等内容,用户内容缺乏文档信息且面临数据极度稀疏问题,此时没有可用的特征表示用户主题,所以选择用户参与的历史事件的主题来表达用户主题更加准确,且避免了数据稀疏和标签空白的问题。对所有事件内容去除停用词及标点符号,把去除噪声干扰词后的文档内容视为所有文档的集合D,输入到LDA主题模型中,根据上面描述的生成过程产生文档主题和词的联合分布,如式(1)所示。然后使用Gibbs抽样方法估计模型中的两个未知参数,即事件主题分布/>和主题词分布/>。
(1)
经过LDA过程得到事件文档的主题分布和词分布之后,接着利用JS散度(JensenShannon divergence)方法根据事件的主题分布计算事件间的相似度。JS散度是基于KL散度(Kullback-Leibler divergence)的变体,它是对称的,解决了KL散度非对称问题,可以更好地度量两个概率分布的相似度。根据式(1)已经生成所有事件的主题分布,给定事件和/>分别具有主题分布/>,通过JS散度方法首先计算两者之间的JS散度/>,如式(2)所示。
(2)
其中,,/>表示KL散度,用来描述两个概率分布/>和/>之间的差异,计算公式如式(3)所示。
(3)
结合式(2)和式(3)可得事件和/>的主题相似度为/>,如式(4)所示。
(4)
事件的主题相似度的值位于[0,1]中,值越接近1则表示事件相似度越高。前面已经提到把新事件和用户历史事件之间的主题相似度作为用户与事件的主题相似度,而用户往往参与过多次事件,和新事件之间存在多个主题相似度,以/>表示目标用户的历史事件数,取目标用户所有相似度的平均值/>作为用户和新事件的主题匹配度评分,如式(5)所示。
(5)
算法1描述了通过LDA主题模型计算用户-事件对的主题匹配度过程,其中表示主题的单词分布,/>表示文档主题分布,Dir()表示Dirichlet分布,Mult()表示多项式分布,Poiss()表示泊松分布。/>
算法1给出了利用LDA主题模型和JS散度算法求解用户-事件对主题匹配度评分的过程。首先,将所有事件描述内容组成文档集并去除停用词,作为LDA模型的输入,分别求得每个事件的主题分布(第2行至第11行);再根据JS散度算法计算目标用户历史事件和新事件之间的主题分布相似度(第12行至第14行);最后对目标用户所有历史事件的相似度取平均值,得到用户和新事件的主题匹配度评分(第15行至第16行)。
3. 基于用户的偏好模型
对于用户偏好一般从用户的相关上下文信息中进行特征学习,并将学习到的特征信息表示为用户偏好。下面分别从地理因素、社交关系、时间因素三个方面来构建用户的单因素偏好,并将三个单因素偏好加权融合得到用户整体偏好。
3.1 地理位置偏好
地理位置偏好模型计算目标用户将参与在该位置举办事件的概率,采用KDE(Kernel Density Estimation,核密度估计)方法对用户参与的事件的二维地理位置分布进行建模,用归一化之后的事件参与概率表示用户对地理位置的偏好度。事件地理位置的经纬度坐标用(Lx, Ly)表示,用户历史参与事件的地点集合以L(u)表示,则关于用户u的KDE函数如式(6)所示。
(6)/>
其中,l i=(Lx i ,Ly i)T表示事件位置经纬度坐标的二维化向量,m l(u,l i)表示用户u参加地理位置l i处举办活动的频率,σ表示邻域窗口(带宽)的大小,N表示位置样本中的个数,K(•)表示高斯核函数(Gaussian kernel function),其定义形式如式(7)所示。
(7)
结合式(6)和式(7)可定义用户u参加将在位置为l处举办的事件活动的概率,如式(8)所示。
(8)
将概率归一化,得到用户关于地理位置的偏好评分,如式(9)所示。
(9)
3.2 社交关系偏好
在用户社交关系网络中,用户一般会在线上加入至少一个或多个兴趣组中,并可以选择参与不同的小组发布的事件活动。在这些群组关系中,用户通常选择的是自身最感兴趣的偏好小组参与其中,则在同一个组中的成员一般都存在相同的兴趣,因此,可以通过用户的线上同组关系考虑用户的社会关系偏好,主要包括两种交互关系。
1) 用户与组的相关性。即用户与他们所属的所有组之间以及用户与组内创建的事件之间的交互关系。以G(u)表示用户u参与的事件所属的组的集合,则用户与组的相关性可表示成式(10)所示。
(10)
其中,m p(u,g)表示用户所在组中用户u曾参加的事件活动集合。
2) 组内用户相关性。组内用户相关性由目标用户所在组中的好友相似性来定义,计算目标用户与组内用户的相似性,如式(11)所示。
(11)
其中,sim(u i ,u j)表示同一组中用户u i和用户u j之间的相似性,如式(12)所示。
(12)
最后将s(u,g)归一化为,如式(13)所示。
(13)
结合这两种交互关系,属于相同或相似组的用户倾向于参加由这些组内创建的事件,综合用户与组的相关性和组内用户相关性得出用户u关于线上小组g的社交偏好评分,如式(14)所示。
(14)
其中,作为权重控制参数,在社交关系网络中,一般认为目标用户和小组的偏好关联与组内用户之间的关联同等重要,通过实验验证将此处/>的值设为0.5。
3.3 时间偏好
事件的时间因素是计算用户偏好时需要考虑的另一个重要偏好因子。对于不同的用户在选择参加事件活动时有不同的偏好,有的用户可能喜欢选择在晚上参加活动,而另一些可能喜欢在上午参加活动,又或者偏好工作日或者周末的不同时间点。现实中时间是周期性的,主要以每周7天和每天24小时为周期,对于用户选择在一周中的某一天和在一天中某几个小时参加活动,会形成两个不同的粒度层次上的用户时间偏好。我们通过结合两个粒度层次上的用户选择来表示用户的时间偏好。
用户如果选择一星期中某一天的某个时间段参加活动,这可能表示用户的一个隐式时间偏好,用户可能会选择在下一次的同一时间段再次参加事件活动。为了统一直观地表示这种隐式偏好,我们将用户可以选择参加的新事件e表示为一个7*24维的事件时间向量。当新事件在一周的某个特定时间段中发生时,即将该时间段的向量分量值置为1,否则为0。因此,可以在时间偏好模型中根据用户参加的历史事件记录将用户表示为用户时间向量/>,如式(15)所示。
(15)
其中,E u表示目标用户参与过的历史事件集合,然后计算用户时间向量和新事件时间向量之间的余弦相似度,如式(16)所示。
(16)
对于新事件,用户/>可根据式(16)求得相似度/>,归一化该相似度得到该用户对事件的时间偏好评分/>,如式(17)所示。
(17)
3.4 用户融合偏好评分
根据前面从三个方面对用户的单因素偏好模型建模,分别计算了用户关于地理位置、社交关系以及时间的偏好评分。对于地理位置,通过预测用户参与该位置举办的事件活动的概率表示地理位置偏好评分;对于社交关系,则从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;对于时间偏好,则通过构建日期和小时两个粒度的统一向量表示,并基于此计算用户-事件对的相似度作为目标用户的时间偏好评分。结合这三个单因素偏好组成一个用户偏好感知模型,将三个单因素偏好线性组合求得用户u对事件e的总体偏好评分,如式(18)所示。
(18)
其中,分布表示用户在地理位置、社交关系、时间三个因素上的偏好评分。算法2描述了用户偏好评分的计算过程。/>
算法2给出了结合用户在地理位置、社交关系、时间三个因素上的偏好求解用户综合偏好评分的过程。通过核密度估计算法预测用户可能参加在某个特定位置举办的事件的概率,将概率归一化后表示用户的地理偏好(第3行);根据式(10)和(13)计算用户与线上小组和组内成员的社交关联度表示社交偏好(第5行至第11行);将新事件和用户历史事件表示为时间向量,计算两者的余弦相似度表示用户的时间偏好(第4行);最后对三个偏好值线性组合得到用户总偏好评分(第13行至第14行)。
4. 基于事件的偏好模型
对于事件的偏好,考虑从事件主办方以及事件本体信息中学习。由于事件相比用户缺少活跃的个性化上下文信息,对于新事件来说,它不存在历史记录、个性化标签等信息,因此,以事件主办方在小组中的社交影响力,以及事件举办的地理位置在小组中的流行度来表示事件的偏好。
4.1 事件位置流行度
事件举办的地理位置是用户选择是否参加事件活动的一个考虑因素。对于用户加入的某个线上小组一般是具有相同兴趣的用户群体,可能有多个用户选择参加相同的事件活动,因此,对于新事件推荐,其举办地点对于感兴趣的用户来说可以作为重要的选择依据,将这种关系称为地理位置在用户群体中的流行度。在计算事件偏好的模型中考虑事件地理位置的受欢迎程度能够更加精确地计算事件对用户的吸引度。根据用户u和其所加入的线上小组g中的用户对地点访问频率来计算地理位置的流行度。
首先定义事件地理位置l e关于用户u的流行度,如式(19)所示。
(19)/>
其中,分子为用户u参加地理位置l e处举办活动的频率,分母为用户u历史访问过的位置的最大频率。同样地,可以定义地理位置l e关于用户u所在小组g的流行度,如式(20)所示。
(20)
其中,分子表示小组g中每个用户在位置l参加实践活动的频率,分母为小组成员历史访问过的位置的最大频率,由此可计算出地理位置l e关于小组g中的用户的流行度。结合和/>可定义要推荐事件的举办位置对目标用户u的总流行度为/>,如式(21)所示。
(21)
4.2 事件主办方影响力
在事件社交网络中,每个事件活动的发起者也是网络上的普通用户,一般主办方发起某次活动获得较好的反响,那么下次发起其它新活动时,之前参加的用户很大可能会选择再次参加其举办的活动。虽然要推荐的事件对于每个用户来说是尚未发生的全新事件,但事件的主办方也许是该类型事件的活跃举办方,可能在以前已经主办过多次活动,这对于解决事件推荐中存在的冷启动问题提供了更多的辅助推荐信息。可见,事件主办方在小组内用户群体中的影响力是事件偏好的一个重要特征,本软件根据事件主办方在目标用户所在群组的影响力来提升推荐的精确度。可以从以下两个方面考虑其影响力。
1) 事件主办方对目标用户的影响度。在事件社交网络中不存在用户对事件的评分信息,无法直观地表示主办方及事件的影响力,而且在事件的生命周期结束时再对其评分就没有实际意义,因为不会影响到之后举办的新事件,所以选择通过主办方的信誉度或者影响度来表示事件的隐式偏好。首先定义事件对用户u的影响度,如式(22)所示。
(22)
其中,表示用户u参加过的由主办方u h举办的事件集合,E h是主办方u h举办的所有事件集合。
2) 事件主办方在小组中的影响度。针对目标用户所在的线上小组,事件在该组中的影响度可以类似地采用用户参加的频率比例来表示,用户在组中的影响度以表示,如式(23)所示。
(23)
其中,U g表示小组中的用户集合,/>表示用户/>参与的由主办方/>举办的事件集合,/>表示/>在小组/>中举办的事件集合。结合事件主办方对目标用户以及对小组中用户的影响度可求得事件主办方的综合影响度评分/>,如式(24)所示。
(24)
4.3 事件潜在偏好评分
对于未发生的新事件,本软件设置吸引用户参加的两个关键因素为地理位置以及主办方的影响力。通过计算新事件的地理位置流行度和其主办方的社交影响力来表示事件的偏好。为减小计算复杂度,避免弱相关数据的干扰和影响,对于事件地理位置流行度和主办方社交影响力只局限在目标用户所在的小组中。此处假定其余的用户或小组相关度为零,对事件偏好不产生影响。对以上构建得事件地理位置流行度和主办方影响力线性组合从而求出事件e对用户u的偏好评分/>,如式(25)所示。
(25)
算法3详细描述了通过事件位置流行度和主办方影响力计算事件潜在偏好评分的过程。
算法3给出了根据事件地理位置流行度和主办方影响力求解事件潜在偏好评分的过程。对于目标用户所在小组,根据式(19)和式(20)分别计算事件地理位置对用户和小组的流行度,结合二者表示事件地理位置的总流行度(第3行至第8行);同样地由式(22)和式(23)求得事件主办方对用户和小组的影响力(第9行至第13行),结合二者表示事件主办方影响力;最后对位置流行度和主办方影响力线性组合得到事件的潜在偏好评分(第17行)。
5. 融合主题匹配与用户事件双向偏好的推荐算法
前面已经利用LDA主题模型分别求解了用户和事件的主题分布,并根据主题分布计算了用户-事件对的主题匹配度;接下来又对用户和事件构建了特征偏好评分模型,分别求得用户偏好评分和事件偏好评分。现在将主题匹配和用户事件偏好进行融合求解最终推荐评分,第一步,先利用排序学习算法对用户偏好评分和事件偏好评分的权重参数进行求解,得到用户事件双向偏好评分;第二步,将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐度评分。下面是具体的介绍。
1) 对用户-事件对求双向偏好评分。假设用户和事件的偏好评分权重分别为和,把两者加权融合得到用户事件双向偏好评分/>。于是双向偏好评分的关键问题为求两个偏好评分的权重向量,选择使用隐式反馈作为训练数据学习权重向量。与用户对项目进行评分的显式反馈不同,在事件社交网络中隐式反馈只能以用户和事件之间的交互信息表示,即如果用户参加了事件,反馈为1,否则反馈为0。显然地,对于所有新事件,用户的反馈均为0。
此处选择基于贝叶斯最大似然估计的学习算法BPR对权重进行排序学习,根据用户对事件的隐式反馈数据学习用户-事件对的正确排序顺序,使得用户参与的事件排在新事件或其它事件之前。首先,定义最大化后验概率,如式(26)所示。
(26)
其中,θ表示权重向量,R表示所有用户-事件对的集合,定义如式(27)所示。
(27)
其中,表示用户/>的用户-事件对,而/>表示对于用户/>事件/>排在/>前面的概率,如式(28)所示。
(28)
其中,即为双向偏好评分/>,/>。为了更方便进行优化,假设/>服从均值为0 的正态分布,展开推导得出最终优化目标函数/>,如式(29)所示。
(29)
其中,表示正则项系数。通过用户事件的隐式交互反馈数据最大化优化目标函数,即可得出最优权重参数向量。采用随机梯度下降算法(Stochastic Gradient Descent,SGD)求解该优化问题,在迭代过程中从训练集随机提取目标用户的用户-事件对来更新权重向量/>,更新过程如式(30)所示。
(30)
其中,是学习率,/>。通过以上学习过程可以自动根据用户事件偏好评分训练集和超参数/>和/>求得权重向量/>,从而得到双向偏好评分/>。
2) 结合主题匹配和双向偏好求得用户-事件对最终推荐评分。综合以上关于用户和事件的主题匹配和偏好计算的讨论,首先,通过LDA主题模型提取事件主题并求得用户和事件的主题匹配度评分;其次,根据EBSN中的用户事件上下文信息分别构建用户和事件的偏好模型,通过BPR学习算法得到用户事件双向偏好评分;最后,将主题匹配度评分与用户事件双向偏好评分/>线性加权求和得到最终的用户-事件对推荐度评分/>,如式(31)所示。/>
(31)
其中,为权重参数,通常根据经验手动设定,将通过实验来确定最优设置。算法4描述了融合主题匹配和双向偏好求解用户-事件对最终推荐度评分的过程。
算法4给出了最终融合主题匹配评分和用户事件双向偏好评分的过程。首先,通过贝叶斯个性化排序算法对由用户偏好评分集和事件偏好评分集合生成的训练集进行排序学习,求得最优权重向量,并根据/>计算目标用户的用户-事件对双向偏好评分(第2行至第10行);其次,线性组合用户-事件对的主题匹配度评分与双向偏好评分得到最终推荐度评分(第11行至第13行),从而根据最终推荐度评分排序对用户推荐TOP-K事件。
至此,我们结合了主题匹配和用户事件双向偏好,提出了一种个性化事件推荐方案,并在以上部分详细介绍了其具体内容。
以及,一种融合主题匹配与双向偏好的个性化事件推荐的实现***,其用于实现如上任一项所述的融合主题匹配与双向偏好的个性化事件推荐方法,该实现***包括:
文档主题生成模块,用于提取用户历史事件和新事件的主题,并计算事件的主题分布和词分布,以用户历史事件和新事件之间的主题相似度表示主题匹配度,将其作为推荐的关键因素之一融合到推荐模型中,以进行事件推荐;
构建用户偏好模块,用于从地理位置、社交关系、时间因素三个方面来构建用户的单因素偏好,并将三个单因素偏好加权融合得到用户整体偏好;
构建事件偏好模块,利用以事件主办方在小组中的社交影响力,以及事件举办的地理位置在小组中的流行度来表示事件的偏好;
用户事件双向偏好评分模块,利用排序学习算法对用户偏好评分和事件偏好评分的权重参数进行求解,得到用户事件双向偏好评分;
用户-事件对的最终推荐评分模块,用于将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐度评分。
进一步地,所述用户偏好模块包括地理位置偏好模块、社交关系偏好模块和时间因素偏好模块,所述事件偏好模块包括事件位置流行度偏好模块和事件主办方影响力偏好模块,其中:
所述地理位置偏好模块,用于通过预测用户参与某个地理位置举办的事件活动的概率,来表示地理位置偏好评分;
所述社交关系偏好模块,用于从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;
所述时间因素偏好模块,用于通过构建日期和小时两个粒度的统一向量表示,并计算用户-事件对的相似度作为目标用户的时间偏好评分;
所述事件位置流行度偏好模块,用于在新事件推荐时,举办地点对于感兴趣的用户来说是重要的选择依据,称为地理位置在用户群体中的流行度,考虑事件地理位置的受欢迎程度能够更加精确地计算事件对用户的吸引度;
所述事件主办方影响力偏好模块,用于根据事件主办方在目标用户所在群组的影响力来提升推荐的精确度,从事件主办方对目标用户的影响度和事件主办方在小组中的影响度两个方面计算其影响力。
上述基于融合主题匹配与双向偏好的个性化事件推荐方法及***中,首先,利用文档主题生成模型LDA提取事件的主题信息,并根据用户参与的历史事件记录得到用户主题信息,计算用户与事件的主题匹配度作为推荐模型中的重要推荐因素,主题因素能更好地表示特征偏好;其次,对于基于事件的社交网络推荐从用户和事件的双向角度考虑,构建用户和事件的偏好模型,分别得到用户偏好评分和事件偏好评分,从用户和事件两个角度更完整地挖掘偏好关系;最后,将用户-事件对匹配度融合用户事件双向偏好线性加权组合得到最终的用户-事件对综合评分,将排序后的TOP-K个用户-事件对作为推荐结果。本方案在Meetup真实数据集上进行了大量实验,并与其它的事件推荐算法进行了比较,表明了本软件推荐算法的性能优于传统的推荐方案,能很好地预测用户的个性化偏好,从而达到个性化推荐的目的。
需要说明的是,以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,包括以下步骤:
步骤一,以文档主题生成模型LDA提取事件的主题信息,并根据用户参与的历史事件记录得到用户主题信息,计算新事件和用户历史事件的主题,采用JS散度算法计算用户-事件对的主题匹配度评分;
步骤二,分别构建用户偏好模型和事件偏好模型,并分别计算用户偏好评分和事件偏好评分;
步骤三,利用贝叶斯个性化排序算法BPR学习用户偏好评分和事件偏好评分的权重参数,得到用户事件双向偏好评分,将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐评分,向用户推荐排序后的前K个事件;
其中,步骤一中的所述计算新事件和用户历史事件的主题,采用JS散度算法计算用户-事件对的主题匹配度评分,具体步骤包括:
步骤1-1,将所有事件描述内容组成文档集D并去除停用词,将所述文档集D输入文档主题生成模型LDA,分别求得每个事件的主题分布;
对所有事件内容去除停用词及标点符号,把去除噪声干扰词后的文档内容视为所有文档的集合D,输入到LDA主题模型中,产生文档主题和词的联合分布/>,如式(1)所示:
(1)
给定文档集,/>和/>分别表示文档/>的主题分布和词分布的先验Dirichlet分布,/>分别是根据经验给定的主题先验分布和词先验分布的超参数,k是事先指定的文档集的主题数,N m表示文档/>的单词总数,M是文档集中的文档数;对于文档/>中的每一个单词,LDA根据先验知识/>确定文档的主题分布/>,然后从主题分布/>中抽取一个主题z,又根据先验知识/>确定当前主题的词分布/>,再从主题z所对应的词分布/>中抽取一个单词/>,重复以上过程N m次即可生成文档/>;
然后使用Gibbs采样方法估计模型中的两个未知参数:事件主题分布和主题词分布/>;
步骤1-2,根据JS散度算法计算目标用户历史事件和新事件之间的主题分布相似度;
根据式(1)已经生成所有事件的主题分布,给定事件/>和/>分别具有主题分布/>,通过JS散度方法首先计算两者之间的JS散度/>,如式(2)所示:
(2)
其中,,/>表示KL散度,用来描述两个概率分布/>和/>之间的差异,计算公式如式(3)所示:
(3)
结合式(2)和式(3)可得事件和/>的主题相似度为/>,如式(4)所示:
(4)
其中,事件的主题相似度的值位于[0,1]中,值越接近1则表示事件相似度越高;
步骤1-3,对目标用户所有历史事件的相似度取平均值,得到用户和新事件的主题匹配度评分;
以表示目标用户的历史事件数,取目标用户所有相似度的平均值/>作为用户和新事件的主题匹配度评分,如式(5)所示:
(5)
根据构建的主题匹配模型,最终以来度量目标用户与新事件之间的主题匹配关系。
2.如权利要求1所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤一中的所述文档主题生成模型LDA具有三层生成式贝叶斯网络结构,包括文档、主题和词,其中文档-主题和主题-词均服从多项式分布;每个文档以一定概率选择一个主题,并从这个主题中以一定概率选择一个词语,在任意文档中的主题均符合Dirichlet分布,通过该分布发掘文本之间的关系。
3.如权利要求2所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤二中的所述构建用户偏好模型分别从地理位置、社交关系、时间因素三个方面来构建用户的单因素偏好,具体包括:
步骤2-1-1,构建地理位置偏好模型:
地理位置偏好模型计算目标用户将参与在该位置举办事件的概率,采用核密度估计KDE方法对用户参与的事件的二维地理位置分布进行建模,用归一化之后的事件参与概率表示用户对地理位置的偏好度;事件地理位置的经纬度坐标用(Lx, Ly)表示,用户历史参与事件的地点集合以L(u)表示,则关于用户u的KDE函数如式(6)所示:
(6)
其中,l i =(Lx i , Ly i)T表示事件位置经纬度坐标的二维化向量,m l(u,l i)表示用户u参加地理位置l i处举办活动的频率,σ表示邻域窗口(带宽)的大小,N表示位置样本中的个数,K(•)表示高斯核函数,其定义形式如式(7)所示:
(7)
结合式(6)和式(7)可定义用户u参加将在位置为l处举办的事件活动的概率,如式(8)所示:
(8)
将概率归一化,得到用户关于地理位置的偏好评分,如式(9)所示:
(9)
其中,分母表示目标用户最大的事件参与概率;
步骤2-1-2,构建社交关系偏好模型:
在用户社交关系网络中,用户会在线上加入至少一个或多个兴趣组中,并选择参与不同的小组发布的事件活动,通过用户的线上同组关系判断用户的社会关系偏好,所述同组关系主要包括两种交互关系;
第一种,用户与组的相关性,定义为用户与他们所属的所有组之间以及用户与组内创建的事件之间的交互关系,以G(u)表示用户u参与的事件所属的组的集合,则用户与组的相关性可表示成式(10)所示:
(10)
其中,m p(u,g)表示用户所在组中用户u曾参加的事件活动集合;
第二种,组内用户相关性,组内用户相关性由目标用户所在组中的好友相似性来定义,计算目标用户与组内用户的相似性,如式(11)所示:
(11)
其中,sim(u i ,u j)表示同一组中用户u i和用户u j之间的相似性,如式(12)所示;
(12)
将s(u,g)归一化为,如式(13)所示:
(13)
结合上述两种交互关系,属于相同组的用户倾向于参加由这些组内的其他用户创建的事件,综合用户与组的相关性和组内用户相关性得出用户u关于线上小组g的社交偏好评分,如式(14)所示:
(14)
其中,作为权重控制参数,在社交关系网络中,设定目标用户和小组的偏好关联与组内用户之间的关联同等重要,通过实验验证将此处/>的值设为0.5;
步骤2-1-3,构建时间因素偏好模型:
事件的时间因素是计算用户偏好时需要考虑的一个重要偏好因子;将用户能选择参加的新事件e表示为一个7*24维的事件时间向量,当新事件在一周的某个特定时间段中发生时,则将该时间段的向量分量值置为1,否则为0;在时间偏好模型中根据用户参加的历史事件记录将用户表示为用户时间向量/>,如式(15)所示:
(15)
其中,E u表示目标用户参与过的历史事件集合,然后计算用户时间向量和新事件时间向量之间的余弦相似度,如式(16)所示:
(16)
对于新事件,用户/>可根据式(16)求得相似度/>,归一化该相似度得到该用户对事件的时间偏好评分/>,如式(17)所示:
(17)。
4.如权利要求3所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤二中的所述计算用户偏好评分,具体包括:
对于所述地理位置偏好模型,通过预测用户参与该位置举办的事件活动的概率表示地理位置偏好评分;对于所述社交关系偏好模型,从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;对于所述时间因素偏好模型,通过构建日期和小时两个粒度的统一向量表示,并基于此计算用户-事件对的相似度作为目标用户的时间偏好评分;结合这三个单因素偏好组成一个用户偏好感知模型,将三个单因素偏好线性组合求得用户u对事件e的总体偏好评分,如式(18)所示:
(18)
其中,分别表示用户在地理位置、社交关系、时间因素三个单因素上的偏好评分。
5.如权利要求4所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤二中的所述构建事件偏好模型分别从事件位置流行度、事件主办方影响力两个方面来构建事件的单因素偏好,具体包括:
步骤2-2-1,构建事件位置流行度偏好模型:
根据用户u和其所加入的线上小组g中的用户对地点访问频率来计算地理位置的流行度;
首先定义事件地理位置l e关于用户u的流行度,如式(19)所示:
(19)
其中,分子为用户u参加地理位置l e处举办活动的频率,分母为用户u历史访问过的位置的最大频率;同样地,定义地理位置l e关于用户u所在小组g的流行度/>,如式(20)所示:
(20)
其中,分子表示小组g中每个用户在位置l参加实践活动的频率,分母为小组成员历史访问过的位置的最大频率,由此可计算出地理位置l e关于小组g中的用户的流行度;结合和/>定义要推荐事件的举办位置对目标用户u的总流行度为/>,如式(21)所示:
(21)
步骤2-2-2,构建事件主办方影响力偏好模型:
第一,事件主办方对目标用户的影响度,选择通过主办方的信誉度或者影响度来表示事件的隐式偏好;定义事件对用户u的影响度,如式(22)所示:
(22)
其中,表示用户u参加过的由主办方u h举办的事件集合,E h是主办方u h举办的所有事件集合;
第二,事件主办方在小组中的影响度,针对目标用户所在的线上小组,事件在该组中的影响度类比采用用户参加的频率比例来表示,用户在组中的影响度以表示,如式(23)所示:
(23)
其中,U g表示小组中的用户集合,/>表示用户/>参与的由主办方/>举办的事件集合,/>表示/>在小组/>中举办的事件集合;结合事件主办方对目标用户以及对小组中用户的影响度求得事件主办方的综合影响度评分/>,如式(24)所示:
(24)。
6.如权利要求5所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤二中的所述计算事件偏好评分,具体包括:
对于未发生的新事件,通过计算新事件的事件位置流行度和事件主办方影响力来表示事件的偏好;对已构建的事件位置流行度和事件主办方影响力/>线性组合,计算得到事件e对用户u的偏好评分/>,如式(25)所示:
(25)。
7.如权利要求6所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,步骤三中的所述得到用户事件双向偏好评分,将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐评分,具体步骤包括:
步骤3-1,对用户-事件对求双向偏好:
假设用户和事件的偏好评分权重分别为和/>,把两者加权融合得到用户事件双向偏好评分/>;将双向偏好评分的问题转换为求两个偏好评分的权重向量,选择使用隐式反馈作为训练数据学习权重向量;
选择基于贝叶斯最大似然估计的学习算法BPR对权重进行排序学习,根据用户对事件的隐式反馈数据学习用户-事件对的正确排序顺序,使得用户参与的事件排在新事件或其它事件之前;首先,定义最大化后验概率,如式(26)所示:
(26)
其中,θ表示权重向量,R表示所有用户-事件对的集合,定义如式(27)所示;
(27)
其中,式中表示用户/>的用户-事件对,而/>表示对于用户/>事件/>排在/>前面的概率,如式(28)所示:
(28)
其中,即为双向偏好评分/>,/>;为了更方便进行优化,假设/>服从均值为0的正态分布,展开推导得出最终优化目标函数/>,如式(29)所示:
(29)
其中,表示正则项系数,通过用户事件的隐式交互反馈数据最大化优化目标函数,得出最优权重参数向量;采用随机梯度下降算法SGD求解该优化问题,在迭代过程中从训练集随机提取目标用户的用户-事件对来更新权重向量/>,更新过程如式(30)所示:
(30)
其中,是学习率,/>;通过以上学习过程可以自动根据用户事件偏好评分训练集和超参数/>和/>求得权重向量/>,从而得到双向偏好评分/>;
步骤3-2,结合主题匹配和双向偏好求得用户-事件对最终推荐评分:
首先,通过LDA主题模型提取事件主题并求得用户和事件的主题匹配度评分;其次,根据EBSN中的用户事件上下文信息分别构建用户和事件的偏好模型,通过BPR学习算法得到用户事件双向偏好评分;最后,将主题匹配度评分与用户事件双向偏好评分/>线性加权求和得到最终的用户-事件对推荐度评分/>,如式(31)所示:
(31)
其中,为权重参数,通常根据经验手动设定,将通过实验来确定最优设置。
8.一种融合主题匹配与双向偏好的个性化事件推荐的实现***,其用于实现如权利要求1-7任一项所述的融合主题匹配与双向偏好的个性化事件推荐方法,其特征在于,该实现***包括:
文档主题生成模块,用于提取用户历史事件和新事件的主题,并计算事件的主题分布和词分布,以用户历史事件和新事件之间的主题相似度表示主题匹配度,将其作为推荐的关键因素之一融合到推荐模型中,以进行事件推荐;
构建用户偏好模块,用于从地理位置、社交关系、时间因素三个方面来构建用户的单因素偏好,并将三个单因素偏好加权融合得到用户整体偏好;
构建事件偏好模块,利用以事件主办方在小组中的社交影响力,以及事件举办的地理位置在小组中的流行度来表示事件的偏好;
用户事件双向偏好评分模块,利用排序学习算法对用户偏好评分和事件偏好评分的权重参数进行求解,得到用户事件双向偏好评分;
用户-事件对的最终推荐评分模块,用于将主题匹配度评分和双向偏好评分线性加权组合得出用户-事件对的最终推荐度评分。
9.如权利要求8所述的融合主题匹配与双向偏好的个性化事件推荐的实现***,其特征在于,所述用户偏好模块包括地理位置偏好模块、社交关系偏好模块和时间因素偏好模块,所述事件偏好模块包括事件位置流行度偏好模块和事件主办方影响力偏好模块,其中:
所述地理位置偏好模块,用于通过预测用户参与某个地理位置举办的事件活动的概率,来表示地理位置偏好评分;
所述社交关系偏好模块,用于从目标用户与组的关系、与组内用户相关性两个方面计算目标用户的社交偏好评分;
所述时间因素偏好模块,用于通过构建日期和小时两个粒度的统一向量表示,并计算用户-事件对的相似度作为目标用户的时间偏好评分;
所述事件位置流行度偏好模块,用于在新事件推荐时,举办地点对于感兴趣的用户来说是重要的选择依据,称为地理位置在用户群体中的流行度,考虑事件地理位置的受欢迎程度能够更加精确地计算事件对用户的吸引度;
所述事件主办方影响力偏好模块,用于根据事件主办方在目标用户所在群组的影响力来提升推荐的精确度,从事件主办方对目标用户的影响度和事件主办方在小组中的影响度两个方面计算其影响力。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010069262.9A CN111428127B (zh) | 2020-01-21 | 2020-01-21 | 融合主题匹配与双向偏好的个性化事件推荐方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010069262.9A CN111428127B (zh) | 2020-01-21 | 2020-01-21 | 融合主题匹配与双向偏好的个性化事件推荐方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111428127A CN111428127A (zh) | 2020-07-17 |
CN111428127B true CN111428127B (zh) | 2023-08-11 |
Family
ID=71551509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010069262.9A Active CN111428127B (zh) | 2020-01-21 | 2020-01-21 | 融合主题匹配与双向偏好的个性化事件推荐方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111428127B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100483B (zh) * | 2020-08-07 | 2023-09-19 | 西安工程大学 | 一种融合用户兴趣权重的关联规则推荐方法 |
CN113032662B (zh) * | 2021-03-31 | 2021-11-26 | 艾普深瞳(北京)智能科技有限公司 | 基于人工智能的区块链大数据推荐方法、***及云平台 |
CN113706325B (zh) * | 2021-07-30 | 2022-12-09 | 西安交通大学 | 一种面向事件社交网络的规划方法及*** |
CN114564652B (zh) * | 2022-04-29 | 2022-09-27 | 江西财经大学 | 基于用户意图与双向偏好的个性化礼物推荐方法与*** |
CN116089712B (zh) * | 2022-12-29 | 2024-03-29 | 无锡东方健康科技有限公司 | 基于数据挖掘与分析的热门会议推荐方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282556A (zh) * | 2008-11-25 | 2011-12-14 | 谷歌公司 | 基于预期用户行为提供数字内容 |
CN106250513A (zh) * | 2016-08-02 | 2016-12-21 | 西南石油大学 | 一种基于事件建模的事件个性化分类方法及*** |
CN107657034A (zh) * | 2017-09-28 | 2018-02-02 | 武汉大学 | 一种社交信息增强的事件社交网络推荐算法 |
CN107967257A (zh) * | 2017-11-20 | 2018-04-27 | 哈尔滨工业大学 | 一种级联式作文生成方法 |
CN108763362A (zh) * | 2018-05-17 | 2018-11-06 | 浙江工业大学 | 基于随机锚点对选择的局部模型加权融合Top-N电影推荐方法 |
CN110083531A (zh) * | 2019-04-12 | 2019-08-02 | 江西财经大学 | 改进个体信息共享的多目标路径覆盖测试方法及实现*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090012841A1 (en) * | 2007-01-05 | 2009-01-08 | Yahoo! Inc. | Event communication platform for mobile device users |
US20110213655A1 (en) * | 2009-01-24 | 2011-09-01 | Kontera Technologies, Inc. | Hybrid contextual advertising and related content analysis and display techniques |
US20150262069A1 (en) * | 2014-03-11 | 2015-09-17 | Delvv, Inc. | Automatic topic and interest based content recommendation system for mobile devices |
US11354510B2 (en) * | 2016-12-01 | 2022-06-07 | Spotify Ab | System and method for semantic analysis of song lyrics in a media content environment |
-
2020
- 2020-01-21 CN CN202010069262.9A patent/CN111428127B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282556A (zh) * | 2008-11-25 | 2011-12-14 | 谷歌公司 | 基于预期用户行为提供数字内容 |
CN106250513A (zh) * | 2016-08-02 | 2016-12-21 | 西南石油大学 | 一种基于事件建模的事件个性化分类方法及*** |
CN107657034A (zh) * | 2017-09-28 | 2018-02-02 | 武汉大学 | 一种社交信息增强的事件社交网络推荐算法 |
CN107967257A (zh) * | 2017-11-20 | 2018-04-27 | 哈尔滨工业大学 | 一种级联式作文生成方法 |
CN108763362A (zh) * | 2018-05-17 | 2018-11-06 | 浙江工业大学 | 基于随机锚点对选择的局部模型加权融合Top-N电影推荐方法 |
CN110083531A (zh) * | 2019-04-12 | 2019-08-02 | 江西财经大学 | 改进个体信息共享的多目标路径覆盖测试方法及实现*** |
Non-Patent Citations (1)
Title |
---|
钱忠胜 ; 缪淮扣 ; .面向用户会话的Web应用测试用例生成及其优化.计算机科学与探索.2008,(06),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111428127A (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111428127B (zh) | 融合主题匹配与双向偏好的个性化事件推荐方法及*** | |
Li et al. | A time-aware personalized point-of-interest recommendation via high-order tensor factorization | |
US9654593B2 (en) | Discovering signature of electronic social networks | |
Jiang et al. | Social recommendation across multiple relational domains | |
Yan et al. | " Shall I Be Your Chat Companion?" Towards an Online Human-Computer Conversation System | |
US20190303771A1 (en) | Inferred profiles on online social networking systems using network graphs | |
CN111506821B (zh) | 推荐模型、方法、装置、设备及存储介质 | |
Jain et al. | Tweet recommender model using adaptive neuro-fuzzy inference system | |
Jia et al. | Collaborative restricted Boltzmann machine for social event recommendation | |
CN112559878A (zh) | 一种基于图神经网络的序列推荐***及推荐方法 | |
Alfarhood et al. | DeepHCF: a deep learning based hybrid collaborative filtering approach for recommendation systems | |
Choi et al. | Alleviating item-side cold-start problems in recommender systems using weak supervision | |
Chen et al. | Context-aware ensemble of multifaceted factorization models for recommendation prediction in social networks | |
CN109919793B (zh) | 活动参与分析及推荐方法 | |
CN113641811B (zh) | 促进购买行为的会话推荐方法、***、设备及存储介质 | |
Wang et al. | Please spread: recommending tweets for retweeting with implicit feedback | |
CN110795640B (zh) | 一种弥补群组成员差异的自适应组推荐方法 | |
Wu et al. | Modeling uncertainty driven curiosity for social recommendation | |
Nguyen et al. | A variational autoencoder mixture model for online behavior recommendation | |
CN116049549A (zh) | 一种基于多粒度特征融合的活动推荐方法 | |
Jamil et al. | A collaborative names recommendation in the Twitter environment based on location | |
CN112559905B (zh) | 一种基于双模式注意力机制和社交相似度的会话推荐方法 | |
Lei et al. | Personalized Item Recommendation Algorithm for Outdoor Sports | |
Wang et al. | Multi‐feedback Pairwise Ranking via Adversarial Training for Recommender | |
Yu et al. | New to online dating? Learning from experienced users for a successful match |
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 |