CN114510653B - 社交群体推荐方法、系统、设备及存储介质 - Google Patents
社交群体推荐方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN114510653B CN114510653B CN202210419319.2A CN202210419319A CN114510653B CN 114510653 B CN114510653 B CN 114510653B CN 202210419319 A CN202210419319 A CN 202210419319A CN 114510653 B CN114510653 B CN 114510653B
- Authority
- CN
- China
- Prior art keywords
- user
- group
- item
- social
- influence
- 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 59
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 238000009792 diffusion process Methods 0.000 claims abstract description 19
- 230000007246 mechanism Effects 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 11
- 239000013598 vector Substances 0.000 claims description 75
- 239000013604 expression vector Substances 0.000 claims description 72
- 230000003993 interaction Effects 0.000 claims description 66
- 238000012549 training Methods 0.000 claims description 35
- 238000010586 diagram Methods 0.000 claims description 21
- 238000011176 pooling Methods 0.000 claims description 18
- 238000012360 testing method Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 230000004931 aggregating effect Effects 0.000 claims description 7
- 239000000126 substance Substances 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 2
- 238000012512 characterization method Methods 0.000 claims 1
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- -1 carrier Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003153 chemical reaction reagent Substances 0.000 description 1
- 239000000306 component Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种社交群体推荐方法、系统、设备及存储介质,能够直接从用户社交网络中自动计算用户的社交影响力,并使用用户社交影响力增强群体推荐的准确性和传播能力;并且使用用户影响力扩散方法可以获得用户更深层次的特征表示,同时,在对群体的偏好建模时使用注意力机制学习决策过程中每个用户的影响力,从而更为有效的获得群体特征表示;最后通过联合学习的方式同时优化单用户推荐和群体用户推荐任务,提升社交群体推荐模型的性能,提高群体推荐的准确性,并提高群体推荐的传播能力。
Description
技术领域
本发明涉及物品推荐技术领域,尤其涉及一种社交群体推荐方法、系统、设备及存储介质。
背景技术
互联网时代的到来和社交网络的兴起使得信息能够无阻碍地传播和交流,据统计,2020年,全球网民数量达45.4亿,我国网民数量达9.04亿。社交网络中信息的爆炸式增长带来了严重的信息过载问题,推荐算法能够根据用户偏好为用户推荐其感兴趣的内容。社交网络中存在着大量的群体,群体中用户通过相同的兴趣或特定事件聚集在一起。现有的研究大多针对个人推荐而忽略了群体的推荐。如图1所示,群体由不同用户组成,用户也会参与到多个群体中,群体推荐是指通过综合每个用户的偏好为整个群体推荐物品;由于群体中的用户喜好各不相同,在群体决策时不同用户对最终结果具有不同的影响,这种推荐场景复杂性和多样性使得单用户推荐算法无法应用到群体推荐中,也为研究群体推荐带来了困难和挑战。好的群体推荐算法,不仅能提高群体和个人的满意度,还能提高群体推荐算法的传播能力,即当群体内成员都满意推荐的内容时,推荐的内容就能有更好的传播效果。因此研究更加有效的群体推荐算法是迫切和重要的。
传统的群体推荐算法分为两大类。第一类是将群体视为一个“虚拟人”,然后使用单用户推荐算法来为其推荐,这种算法需要群体拥有大量的群体-物品交互数据来建模该群体的特征表示,然而真实场景中,用户可能是第一次结成群体,这些群体的历史交互数据非常稀疏,因此直接学习它的偏好特征是不可行的。第二类是计算群体中每个成员对物品的偏好,并使用启发式策略(平均策略,最大满意度策略和专家策略)对用户成员偏好聚合。传统的启发式聚合策略受成员偏好的分布极值影响,无法准确对群体进行建模。
随着深度学习技术的发展,研究者提出使用表示学习技术来学习复杂的群体偏好特征表示,并使用注意力机制学习每个用户在群体决策时的权重,但是这类方法未考虑到大部分群体存在的历史交互数据稀疏性问题,使用不足的数据进行训练会带来严重的过拟合问题,并导致推荐准确性下降。
发明内容
本发明的目的是提供一种社交群体推荐方法、系统、设备及存储介质,能够提高群体推荐的准确性,还能够提高群体推荐的传播能力。
本发明的目的是通过以下技术方案实现的:
一种社交群体推荐方法,包括:
构建社交群体推荐模型,并获取群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;
训练阶段中,所述社交群体推荐模型,利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量;基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量,并基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量;结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练;
测试阶段中,基于训练后的社交群体推荐模型计算群体物品评分,并按照评分大小生成物品推荐列表。
一种社交群体推荐系统,该系统包括:
模型构建单元,用于构建社交群体推荐模型,
数据信息获取单元,用于获取群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;
训练单元,应用于训练阶段;训练阶段中,所述社交群体推荐模型,利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量;基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量,并基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量;结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练;
测试单元,应用于测试阶段;测试阶段中,基于训练后的社交群体推荐模型计算群体物品评分,并按照评分大小生成物品推荐列表。
一种处理设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述的方法。
一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述的方法。
由上述本发明提供的技术方案可以看出,能够直接从用户社交网络中自动计算用户的社交影响力,并使用用户社交影响力增强群体推荐的准确性和传播能力;并且使用用户影响力扩散方法可以获得用户更深层次的特征表示,同时,在对群体的偏好建模时使用注意力机制学习决策过程中每个用户的影响力,从而更为有效的获得群体特征表示;最后通过联合学习的方式同时优化单用户推荐和群体用户推荐任务,提升社交群体推荐模型的性能,提高群体推荐的准确性,并提高群体推荐的传播能力。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明背景技术提供的一种社交网络中的群体推荐场景示意图;
图2为本发明实施例提供的一种社交群体推荐方法的流程图;
图3为本发明实施例提供的社交群体推荐模型训练框架示意图;
图4为本发明实施例提供的通过多层注意力机制计算用户和群体的特征表示向量的示意图;
图5为本发明实施例提供的一种社交群体推荐系统的示意图;
图6为本发明实施例提供的一种处理设备的示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
首先对本文中可能使用的术语进行如下说明:
术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
其次,对本发明提供的方案预先做一个整体性的说明。
如背景技术中的介绍,现有的两大类群体推荐算法都忽略了用户在社交网络中存在的社会影响力;然而在群体推荐时,社交网络中高影响力的用户对决策结果有更大的影响,群体内用户倾向于听从群体中的“意见领袖”的选择,因此在群体推荐中考虑社交网络中的用户影响力能够增强推荐效果,这种高影响力用户还具有更大的传播能力,他们的喜好能够影响到更多的人,因此考虑高影响力用户也能够提高群体推荐方法的传播力。
基于此,本发明使用用户社交影响力来增强群体推荐方法的准确性和传播能力。本发明能够直接从用户社交网络中自动计算用户的全局和局部社交影响力,并学习两种不同影响力的权重大小,具有适用性强,易于迁移和泛化的优点。目前使用用户社交网络影响力的方法都是基于用户的一阶关系网络进行计算,但是已有大量研究证明,用户的影响力是扩散的,与其一阶邻居,二阶邻居甚至更远的邻居都具有相关性,因此本发明提出使用用户影响力扩散方法学习用户更深层次的特征表示。在对群体的偏好建模时使用注意力机制学习决策过程中每个用户的影响力。
针对群体的历史交互数据稀疏的问题,本发明提出引入用户的社交影响力来增强用户和群体的特征表示,并将单个用户物品推荐任务与群体物品推荐任务共同作为目标函数进行优化,这是因为群体特征表示向量是通过聚合群体内所有用户的特征表示向量产生的,用户的特征表示向量与群体的特征表示向量处于同一潜在空间中,两个任务能够互相增强。基于此,本发明使用联合学习的方式同时优化单用户物品推荐和群体物品推荐任务。通过本发明提出的方法,能够提高群体推荐的准确性,还能够提高推荐方法的传播能力。
下面对本发明所提供的一种社交群体推荐方法、系统、设备及存储介质进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。
实施例一
本发明实施例提供一种社交群体推荐方法,如图2所示,其主要包括如下步骤:
步骤1、构建社交群体推荐模型,并获取社交网络数据。
本发明实施例中,社交网络数据主要包括如下三类数据:群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;以上三类数据均为常规数据,用户可通过互联网收集。
步骤2、训练所述社交群体推荐模型。
训练阶段,将所述社交网络数据输入至社交群体推荐模型,由社交群体推荐模型提取三类信息:
1)利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量。
2)基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量。
3)基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量。
利用获得的上述三类信息(用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量),分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练。
本领域技术人员可以理解,模型训练主要是通过反向传播更新模型的参数(例如,后文提到的各权重参数),此部分可通过常规技术实现,本发明不做赘述。
步骤3、测试阶段中,基于训练后的社交群体推荐模型生成群体物品推荐列表。
通过前述步骤2的方式训练完毕后,可以通过训练后的社交群体推荐模型计算群体物品评分,测试阶段计算物品评分的方式与训练阶段相同,但由于测试阶段只生成物品推荐列表,因此,通过前述步骤2介绍的方式计算出群体特征表示向量后,仅计算群体物品评分,计算出群体对各物品的评分后,按照评分大小将物品做降序排列,生成相应的推荐列表。
为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,下面针对训练阶段的各个部分做详细的介绍。
训练阶段主要包括如下三个部分:一、基于社交网络结构的用户社交影响力计算,即利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量。二、基于多层注意力机制计算用户与群体的特征表示向量,即使用影响力扩散的方式计算用户的特征表示向量,将所有用户的特征表示向量聚合为群体特征表示向量。三、基于用户历史交互数据和影响力的联合学习,即包含用户物品推荐与群体物品推荐两个任务的学习。如图3所示,展示了包含以上三个部分的训练阶段的整体框架。
一、基于社交网络结构的用户社交影响力计算。
在群体决策时,社交影响力大的用户能够影响群体中其他用户(成员),并在决策结果中具有较高的话语权,因此,在群体推荐中计算用户的社交影响力是有意义的。在社交网络分析中,中心性定义了网络中一个节点的重要性,也就是用户的影响力大小,中心性定义了与具体物品无关的全局影响力。具体地,可以使用节点的度中心性(DegreeCentrality),介数中心性(BetweennessCentrality),紧密中心性(ClosenessCentrality)来计算每个节点的全局社交影响力。局部影响力可以使用DeepWalk,Node2Vec,LINE等图嵌入方法计算,本发明将使用不同的图嵌入方法进行对比获得最佳结果,在这里,仅使用DeepWalk作为示例。
1、基于节点中心性的全局社交影响力计算。
中心性用来表示社交网络中某个节点处于核心地位的程度,也就是用户在整个社交网络中的社交影响力大小。
1)度中心性度量与当前节点直接相连的其他节点的数量,连接数量越多,其社交影响力越大。对于拥有n个节点的社交网络图而言,节点a的度中心性是它与其他(n-1)个节点的直接连边总数,计算公式为:
其中,C D (N a )表示节点a的度中心性,用于计算节点a与其他节点y(a≠y)之间直接联系的数量,当节点a和其他节点y有连边时(即直接相连),X ay =1。
2)介数中心性度量的经过当前节点的最短路径数目,即当前节点作为其他两个节点最短路径的桥梁的次数。当前节点充当“桥梁”的次数越多,它的介数中心性越大,介数中心性计算公式为:
3)紧密中心性反映当前节点与其他节点之间的距离大小,若当前节点与其他节点越近,其传播信息时越不需要依赖其他节点,其社交影响力越大。
其中,d at 表示节点a与节点t之间的最短距离,d a 是节点a和其他点的距离大小的总和。
将计算出的以上三类中心性拼接作为用户的全局社交影响力,三类中心性是全局社交影响力的不同维度。
需要说明的是,利用社交网络图(即图2左侧的用户-用户社交网络)中的数据进行计算时,社交网络图中的节点均为用户,因此,本发明所涉及的各节点(例如,节点a)等同于相应用户(例如,用户a)。
2、基于图嵌入方法的节点局部社交影响力计算。
图嵌入(Graph Embedding)是将社交网络图中的节点用低维稠密向量表示,这些向量能够反映出社交网络图的结构特征,低维空间中节点间的距离能够反映出社交网络图中节点的相似性。DeepWalk是使用图嵌入的思想来学习节点低维稠密向量的方法,其采取随机游走的方法得到以某节点为起点,以其邻居为下一跳路径的一系列游走序列,将该序列使用Word2Vec方法得到节点的embedding(嵌入向量)。该过程不断从节点邻居中选择进行游走,直至序列长度能够满足一定阈值,能够反映出节点的局部特征,局部特征用于表征节点局部影响力。
3、用户社交影响力表示向量计算。
通过对社交网络中节点的中心性分析和图嵌入计算,可以获得节点的不同层面的社交影响力,这些影响力具有不同的权重,本发明引入权重矩阵来计算最终的用户社交影响力表示向量,表示为:
二、基于多层注意力机制计算用户与群体的特征表示向量。
前述第一部分能够获得用户在社交网络中的社交影响力大小,该社交影响力仅使用社交网络计算,与具体的物品无关。在群体推荐中,群体决策不仅与用户的社交影响力相关,还与用户与物品的交互数据相关。例如,当为群体推荐运动类产品时,群体中影响力大的用户和群体内对运动类产品熟悉的用户都具有较大的决策权重。本部分将计算用户和群体在特定物品下的影响力权重,如图4所示,基于计算出的影响力权重可以分别计算出用户的特征表示向量,群体特征表示向量。本发明将用户影响力决策权重分为两个层面,第一层面为用户层面(user-level)的决策权重学习,用户层面(user-level)的决策权重学习主要用于计算用户的特征表示向量,群体特征表示向量是由其群体内用户进行聚合,所以用户的特征表示向量计算在整个推荐过程中是非常重要的一环。第二层为群体层面(group-level)的决策权重学习,将群体层面(group-level)的权重学习结合用户的特征表示向量,聚合为群体的特征表示向量。
1、基于影响力扩散的用户决策权重学习(user-level)。
现有的使用用户社交关系的方法仅使用用户的一阶邻居进行计算,但是用户的影响力大小是个扩散的过程,其大小受其一阶,二阶甚至高阶邻居影响,因此,本发明使用影响力扩散的方式来学习用户的高阶影响力,所需使用的数据包含图3左侧部分的用户物品交互数据。
如图4左侧部分所示,本发明使用K层网络进行影响力扩散,对于用户a,使用物品item的表示向量以及用户a的社交影响力表示向量i a 初始化第0层网络的特征表示向量,结合第k-1层网络的特征表示向量以及邻居用户对用户a的影响力计算第k层
网络的特征表示向量,表示为:
其中,物品item的表示向量一般为物品的一维向量,在训练时物品item包括与用
户a产生交互的物品以及与用户a未产生交互的物品,将单个物品item的表示向量与社交影
响力表示向量相乘来初始化第0层网络的特征表示向量,k=1,…,K,表示用户b第k-1
层网络的特征表示向量,S a 表示用户a的邻居用户集合;表示第k层网络中用户b对用
户a的影响力(也就是用户层面的决策权重),通过多层感知机学习,并使用softmax函数进
行归一化得到,表示为:
其中,表示多层感知机MLP利用与计算的中间参数;第二个
式子中分子为用户a与特定的一个邻居用户b的社交影响力表示向量计算出的中间参数,分
母代表的是用户a和其所有邻居计算出的中间参数之和,也就是说第二个式子相当于进行
了归一化,表示多层感知机MLP利用与计算的中间参数,表示用
户c第k-1层网络的特征表示向量。
其中,s a 表示用户a的个人固有偏好向量(具体内容本发明不做限定),符号||为拼接操作;对于不同的物品item用户a对应不同的特征表示向量。
2、基于注意力机制的群体决策权重学习(group-level)。
使用影响力扩散模型计算到用户的特征表示向量后,基于注意力机制的群体决策权重学习将要计算群体特征表示向量。此阶段所需使用的数据包含图3左侧部分的群体与物品交互数据,群体特征表示向量为组内成员特征表示的聚合,并且用户具有不同的决策权重;具体的,本发明实施例中,基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力(作为用户的决策权重),利用用户对物品决策的影响力与用户的特征表示向量,将对于物品item的所有用户的特征表示向量聚合为群体特征表示向量:
其中,j表示群体j,表示群体特征表示向量,G j 表示群体j的用户集合,u a 表
示对于物品item的用户a的特征表示向量,t j 与物品item无关,仅表示群体j的固有偏好向
量,作为群体的主题(topic)特征引入,表示用户a对物品item决策时的影响
力;同样的,对于不同的物品item群体对应不同的特征表示向量。
本发明实施例中,各类表示向量的维度可以根据实际情况或者经验自行设定,本发明不做限定;以物品的表示向量为例,可以设置为1×128的向量。
三、基于用户历史交互数据和影响力的联合学习。
本部分利用前述第一部分与第二部分计算出的用户的社交影响力表示向量i a 、对
于物品item的用户a的特征表示向量u a 及对于物品item的群体特征表示向量作为输
入,同时,本部分是针对物品进行评分,因此,还包含物品的表示向量,将物品item的表示向
量记为v item (可以将物品名称向量化得到)。
1、计算用户物品评分与群体物品评分。
本发明实施例中,利用物品item的表示向量v item 以及对于物品item的群体特征表
示向量计算群体物品评分,利用物品item的表示向量v item 、用户a的社交影响力表示
向量i a 以及对于物品item的用户a的特征表示向量u a 计算用户物品评分,计算方式包括:
通过池化层进行池化操作,表示为:
上述池化操作有两个优点,点积操作可以利用乘法操作来建模两个向量之间的交互作用。但点积操作会使向量在原始的嵌入空间丢失对后续交互学习有用的信息,为了避免信息缺失,将点积后的结果与原始向量拼接起来,这种方法已经被很多的深度学习研究所使用。
其中,W t 与b t 表示预测层的权重矩阵与偏置项,群体物品评分表示群体j
对物品item的评分,用户物品评分x aitem 表示用户a对物品item的评分,sigmoid为一种常规
的激活函数,将变量映射到0,1之间;如之前所述,物品item包括与用户a产生交互的物品以
及与用户a未产生交互的物品,对于群体而言,如果物品item与群体内所有用户均未产生交
互,则为与群体未产生交互的物品,如果物品item与群体内的至少一个用户产生交互,则为
与群体产生交互的物品。
2、构建损失并进行联合训练。
基于上述计算的用户物品评分与群体物品评分构建用户推荐损失与群体推荐损失,其中,根据物品item是否与用户产生交互,以及物品item是否与群体产生交互,计算出的用户物品评分与群体物品评分各自包含两部分,即用户物品评分包含用户对产生交互的物品的评分以及用户对未产生交互的物品的评分;群体物品评分包含群体对产生交互的物品的评分以及群体对未产生交互的物品的评分,具体的:
1)利用用户物品评分以及用户与物品交互数据O构建用户推荐损失,表示为:
2)利用群体物品评分以及群体与物品交互数据G构建群体推荐损失,表示为:
上述两项损失中第一项是正例评分(即评分x af 与评分),也就是说,对于用户a
与群体j而言,物品f是真实交互的物品,因此,作为正例;第二项是负例评分,也就是说,对
于用户a与群体j而言,物品s是未产生交互的物品,负例评分的计算方式与正例评分计算方
式相同,因为虽然作为负例的物品s没有和用户a与群体j交互过,但其可能和其他用户或其
他群体交互过,所以也具有相应的表示向量。计算正例评分与负例评分时,将物品f、物品s
分别作为前文介绍的物品item,即可计算出用户对物品f、物品s的评分,以及群体对物品f、
物品s的评分。上述两项损失的含义是希望正例评分高于负例评分,这种形式是比较常见的
损失函数形式。
基于上述两部分损失对社交群体推荐模型进行联合训练,直至模型收敛,所涉及的训练流程可参照常规技术,本发明不做赘述。
此外,考虑到群体与物品交互数据相对较少,因此,可以增大此部分数据的训练次数,以达到最佳的训练效果。
基于上述方式完成社交群体推荐模型的训练后,进行模型性能的测试;测试阶段只需要生成物品推荐列表,因此,测试阶段按照前述训练阶段介绍的方式获得群体特征表示向量后,将群体特征表示向量通过池化层、全连接层与预测层得到群体物品评分,再按照评分大小将物品做降序排列,生成相应的推荐列表。一般情况下,测试阶段需要计算群体对物品集中所有物品的评分,按照评分大小降序排列后,取出排名靠前的k’个物品来生成推荐列表,但是考虑到计算量过大;可以从物品集中选出N个负例(与群体未产生交互的物品),选出1个正例(与群体产生交互的物品),按照前文介绍的方式计算群体对这N+1个物品的评分,按照评分大小降序排列后,取出排名靠前的k’个物品来生成推荐列表,其中,k’<N+1;通常来说,正例的评分应当较高,应当属于排名靠前的k’个物品中,因此,可以根据正例是否出现在推荐列表中来判断模型性能是否符合要求。
本发明实施例上述方案主要获得如下有益效果:
与现有的通过启发式聚合策略进行用户和群体偏好计算的群体推荐算法相比,高影响力用户不仅在决策中具有较大话语权,还能够提高推荐算法的传播能力。本发明提出使用用户的社交影响力进行用户建模,其不仅考虑了用户在社交网络中的不同类型的影响力,并对不同的影响力进行权重计算,对用户的影响力进行多层扩散,能够有效地建模用户在社交网络中的影响力大小。并且,本发明采用了注意力模型来学习群体决策过程中不同用户对决策结果的影响,能够有区分性的建模群体的特征表示。在模型训练阶段,将用户与物品的历史交互记录,社交网络图,群体与物品的历史交互记录同时作为输入对单用户推荐和群体推荐进行联合学习,能够减缓群体数据稀疏性引发的过拟合问题,因此具有较好的实用性,可以有效提高群体推荐算法的准确性和传播性。
实施例二
本发明还提供一种社交群体推荐系统,其主要基于前述实施例一提供的方法实现,如图5所示,该系统主要包括:
模型构建单元,用于构建社交群体推荐模型,
数据信息获取单元,用于获取群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;
训练单元,应用于训练阶段;训练阶段中,所述社交群体推荐模型,利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量;基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量,并基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量;结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练;
测试单元,应用于测试阶段;测试阶段中,基于训练后的社交群体推荐模型计算群体物品评分,并按照评分大小生成物品推荐列表。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
需要说明的是,上述系统各部分的主要原理在之前的实施例一中已经做了详细的介绍,故不再赘述。
实施例三
本发明还提供一种处理设备,如图6所示,其主要包括:一个或多个处理器;存储器,用于存储一个或多个程序;其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述实施例提供的方法。
进一步的,所述处理设备还包括至少一个输入设备与至少一个输出设备;在所述处理设备中,处理器、存储器、输入设备、输出设备之间通过总线连接。
本发明实施例中,所述存储器、输入设备与输出设备的具体类型不做限定;例如:
输入设备可以为触摸屏、图像采集设备、物理按键或者鼠标等;
输出设备可以为显示终端;
存储器可以为随机存取存储器(Random Access Memory,RAM),也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。
实施例四
本发明还提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述实施例提供的方法。
本发明实施例中可读存储介质作为计算机可读存储介质,可以设置于前述处理设备中,例如,作为处理设备中的存储器。此外,所述可读存储介质也可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (9)
1.一种社交群体推荐方法,其特征在于,包括:
构建社交群体推荐模型,并获取群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;
训练阶段中,所述社交群体推荐模型,利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量;基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量,并基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量;结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练;
测试阶段中,基于训练后的社交群体推荐模型计算群体物品评分,并按照评分大小生成物品推荐列表;
所述结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分
别计算用户物品评分与群体物品评分包括:将物品item的表示向量记为v item ,用户a的社交
影响力表示向量记为i a ,对于物品item的用户a的特征表示向量记为u a ,对于物品item的群
体特征表示向量记为;利用物品item的表示向量v item 以及对于物品item的群体特征
表示向量计算群体物品评分,利用物品item的表示向量v item 、用户a的社交影响力表
示向量i a 以及对于物品item的用户的特征表示向量u a 计算用户物品评分,计算方式包括:
通过池化层进行池化操作,表示为;
3.根据权利要求2所述的一种社交群体推荐方法,其特征在于,节点的中心性包括:度中心性、介数中心性与紧密中心性,将计算出的三类中心性拼接作为节点对应用户的全局社交影响力;
其中,度中心性度量与当前节点直接相连的其他节点的数量;介数中心性度量经过当前节点的最短路径数目,即当前节点作为其他两个节点最短路径的桥梁的次数;紧密中心性反映当前节点与其他节点之间的距离大小。
4.根据权利要求1所述的一种社交群体推荐方法,其特征在于,所述基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量包括:
使用K层网络进行影响力扩散,对于用户a,使用物品item的表示向量以及用户a的社交
影响力表示向量i a 初始化第0层网络的特征表示向量,结合第k-1层网络的特征表示向
量以及邻居用户对用户a的影响力计算第k层网络的特征表示向量,表示为:
其中,物品item为与用户a产生交互的物品或者与用户a未产生交互的物品,表
示用户b第k-1层网络的特征表示向量,S a 表示用户a的邻居用户集合;表示第k层网络
中用户b对用户a的影响力,通过多层感知机学习,并使用softmax函数进行归一化得到;k=
1,…,K;
当得到第K层网络的特征表示向量后,通过下式计算对于物品item的用户a的特征表示向量:
其中,s a 表示用户a的个人固有偏好向量,符号||为拼接操作。
5.根据权利要求1所述的一种社交群体推荐方法,其特征在于,所述基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量包括:
基于群体与物品交互数据,结合注意力机制计算用户对物品item决策的影响力,利用用户对物品item决策的影响力,以及对于物品item的用户的特征表示向量,将所有用户的特征表示向量聚合为群体特征表示向量:
6.根据权利要求1所述的一种社交群体推荐方法,其特征在于,所述分别构建用户推荐损失与群体推荐损失包括:基于计算出的用户物品评分与群体物品评分分别构建用户推荐损失与群体推荐损失,其中,根据物品是否与用户产生交互,以及物品是否与群体产生交互,计算出的用户物品评分与群体物品评分各自包含两部分,用户物品评分包含用户对产生交互的物品的评分以及用户对未产生交互的物品的评分;群体物品评分包含群体对产生交互的物品的评分以及群体对未产生交互的物品的评分;
构建的用户推荐损失与群体推荐损失分别表示为:
7.一种社交群体推荐系统,其特征在于,基于权利要求1~6任一项所述的方法实现,该系统包括:
模型构建单元,用于构建社交群体推荐模型,
数据信息获取单元,用于获取群体与物品交互数据,群体内用户与物品交互数据,以及群体内用户之间的社交网络图;
训练单元,应用于训练阶段;训练阶段中,所述社交群体推荐模型,利用社交网络图中节点之间的关系计算节点对应用户的社交影响力表示向量;基于群体内用户与物品交互数据与用户的社交影响力表示向量,使用影响力扩散的方式计算用户的特征表示向量,并基于群体与物品交互数据,结合注意力机制计算用户对物品决策的影响力,并聚合群体内所有用户的特征表示向量,获得群体特征表示向量;结合用户的社交影响力表示向量、用户的特征表示向量及群体特征表示向量,分别计算用户物品评分与群体物品评分,并分别构建用户推荐损失与群体推荐损失,结合两个损失对所述社交群体推荐模型进行联合训练;
测试单元,应用于测试阶段;测试阶段中,基于训练后的社交群体推荐模型计算群体物品评分,并按照评分大小生成物品推荐列表。
8.一种处理设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~6任一项所述的方法。
9.一种可读存储介质,存储有计算机程序,其特征在于,当计算机程序被处理器执行时实现如权利要求1~6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210419319.2A CN114510653B (zh) | 2022-04-21 | 2022-04-21 | 社交群体推荐方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210419319.2A CN114510653B (zh) | 2022-04-21 | 2022-04-21 | 社交群体推荐方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114510653A CN114510653A (zh) | 2022-05-17 |
CN114510653B true CN114510653B (zh) | 2022-07-15 |
Family
ID=81555414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210419319.2A Active CN114510653B (zh) | 2022-04-21 | 2022-04-21 | 社交群体推荐方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114510653B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114692005B (zh) * | 2022-05-31 | 2022-08-12 | 暨南大学 | 面向稀疏超短序列的个性化推荐方法、系统、介质和设备 |
CN116401309B (zh) * | 2023-04-18 | 2023-09-26 | 淮阴工学院 | 基于局部影响力与深层偏好传播的学生个性化学习推荐方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102371A (zh) * | 2018-08-22 | 2018-12-28 | 平安科技(深圳)有限公司 | 商品推荐方法、装置、计算机设备及存储介质 |
CN113393303A (zh) * | 2021-06-30 | 2021-09-14 | 青岛海尔工业智能研究院有限公司 | 物品推荐方法、装置、设备及存储介质 |
CN113407861A (zh) * | 2021-05-19 | 2021-09-17 | 中国科学技术大学 | 基于去中心化图神经网络的社交推荐方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160110363A1 (en) * | 2014-10-21 | 2016-04-21 | Anatoliy TKACH | Method and system for measuring and matching individual cultural preferences and for targeting of culture related content and advertising to the most relevant audience |
CN110245301A (zh) * | 2018-11-29 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 一种推荐方法、装置及存储介质 |
-
2022
- 2022-04-21 CN CN202210419319.2A patent/CN114510653B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102371A (zh) * | 2018-08-22 | 2018-12-28 | 平安科技(深圳)有限公司 | 商品推荐方法、装置、计算机设备及存储介质 |
CN113407861A (zh) * | 2021-05-19 | 2021-09-17 | 中国科学技术大学 | 基于去中心化图神经网络的社交推荐方法 |
CN113393303A (zh) * | 2021-06-30 | 2021-09-14 | 青岛海尔工业智能研究院有限公司 | 物品推荐方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Dynamic Connection-Based Social Group Recommendation;Dong Qin等;《IEEE Transactions on Knowledge and Data Engineering》;20200301;全文 * |
活动社交网络中群体推荐算法的研究与实现;祁小营;《中国优秀博硕士学位论文全文数据库(硕士)》;20220115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114510653A (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111428147B (zh) | 结合社交和兴趣信息的异源图卷积网络的社交推荐方法 | |
CN114510653B (zh) | 社交群体推荐方法、系统、设备及存储介质 | |
CN111241394A (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
Ahmadian et al. | Integration of deep sparse autoencoder and particle swarm optimization to develop a recommender system | |
CN112418525A (zh) | 社交话题群体行为的预测方法、装置及计算机存储介质 | |
CN112861006A (zh) | 融合元路径语义的推荐方法及系统 | |
KR20110096488A (ko) | 최적화된 도메인간 정보 퀄리티 평가를 갖는 협동적 네트워킹 | |
CN115098692A (zh) | 跨域推荐方法、装置、电子设备及存储介质 | |
CN115495654A (zh) | 基于子空间投影神经网络的点击率预估方法和装置 | |
CN114925270A (zh) | 一种会话推荐方法和模型 | |
CN112364245B (zh) | 基于异构信息网络嵌入的Top-K电影推荐方法 | |
Hassan et al. | Performance analysis of neural networks-based multi-criteria recommender systems | |
CN112486467B (zh) | 一种双重交互关系和注意力机制的交互式服务推荐方法 | |
Hassan et al. | Improving prediction accuracy of multi-criteria recommender systems using adaptive genetic algorithms | |
CN113590976A (zh) | 一种空间自适应图卷积网络的推荐方法 | |
CN113849725B (zh) | 一种基于图注意力对抗网络的社会化推荐方法及系统 | |
CN117251586A (zh) | 多媒体资源推荐方法、装置及存储介质 | |
CN116304289A (zh) | 基于图神经网络的供应链的信息链推荐方法及装置 | |
Serrano | Smart internet search with random neural networks | |
Sharma et al. | Suggestive approaches to create a recommender system for GitHub | |
CN115564532A (zh) | 序列推荐模型的训练方法及装置 | |
CN115730248A (zh) | 一种机器账号检测方法、系统、设备及存储介质 | |
Neehal et al. | Prediction of preferred personality for friend recommendation in social networks using artificial neural network | |
CN115545833A (zh) | 一种基于用户社交信息的推荐方法及系统 | |
Nie | Research on Personalized Recommendation Algorithm of Internet Platform Goods Based on Knowledge Graph |
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 |