CN110321494A - 基于矩阵分解与网络嵌入联合模型的社会化推荐方法 - Google Patents
基于矩阵分解与网络嵌入联合模型的社会化推荐方法 Download PDFInfo
- Publication number
- CN110321494A CN110321494A CN201910563575.7A CN201910563575A CN110321494A CN 110321494 A CN110321494 A CN 110321494A CN 201910563575 A CN201910563575 A CN 201910563575A CN 110321494 A CN110321494 A CN 110321494A
- Authority
- CN
- China
- Prior art keywords
- user
- matrix
- article
- model
- social
- 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.)
- Granted
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 154
- 238000000354 decomposition reaction Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012549 training Methods 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims description 18
- 238000005295 random walk Methods 0.000 claims description 15
- 238000011478 gradient descent method Methods 0.000 claims description 11
- 239000013598 vector Substances 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 8
- 230000005484 gravity Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 5
- 230000003252 repetitive effect Effects 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 230000001276 controlling effect Effects 0.000 claims description 3
- 230000009191 jumping Effects 0.000 claims description 3
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 2
- 238000005457 optimization Methods 0.000 abstract description 11
- 230000010354 integration Effects 0.000 abstract description 4
- 238000013461 design Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 33
- 241000208340 Araliaceae Species 0.000 description 5
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 5
- 235000003140 Panax quinquefolius Nutrition 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 235000008434 ginseng Nutrition 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000010348 incorporation Methods 0.000 description 4
- 235000013399 edible fruits Nutrition 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000009412 basement excavation Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 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/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)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Computing Systems (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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法。该方法包括:构建用户‑物品评分矩阵和用户‑用户社交网络,同时根据用户‑用户社交网络生成用户社交语料;利用用户‑物品评分数据和用户社交语料训练矩阵分解与网络嵌入联合模型,得到用户特征矩阵和物品特征矩阵;根据用户特征矩阵和物品特征矩阵预测出未观测评分;将预测评分数值较高的若干物品推荐给相应用户。本发明通过设计统一目标函数无缝整合了矩阵分解模型与网络嵌入模型;基于统一的优化框架,实现了矩阵分解模型与网络嵌入模型之间的双向促进与协同优化,从而可向用户精准推荐其所感兴趣的物品。
Description
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法。
背景技术
互联网时代,如何有效调节多元化信息呈现出的丰富性与人们注意力的局限性之间的矛盾,已然成为当下信息产业亟需解决的技术难题。在此背景下,推荐***应运而生,以应对大数据所引起的信息过载问题。
协同过滤(collaboritive filtering)是推荐***背后的核心技术,其通过分析“用户-物品”交互历史,预测未观测的“用户-物品”相关性。矩阵分解(matrixfactorization)模型是目前最为主流的协同过滤手段,矩阵分解的核心思想是:通过分解“用户-物品”交互矩阵(简称UI矩阵),将用户和物品映射到同一个低维向量空间,进而可通过计算用户特征向量与物品特征向量内积的方式预测“用户-物品”相关性。但该方法的效果严重受限于数据稀疏问题,通常情况下已观测“用户-物品”交互记录仅占UI矩阵的1%左右。为此,一些学者建议在矩阵分解模型中引入用户社交关系,以期缓解UI矩阵的数据稀疏问题。
现有社会化推荐技术大致分为两类:共享表示学习和修正表示学习。共享表示学习的代表性工作如SoRec模型,该方法同时分解“用户-物品”交互矩阵和“用户-用户”社交矩阵,其间共用同一组用户特征变量,以期用户特征变量可同时保有用户的个性化喜好及其社会属性;修正表示学习的代表性工作如SoReg模型,该模型将用户社交关系作为约束信息,以修正“用户-物品”矩阵分解过程,以期那些社交连接强度大的用户可获得相似的特征向量。
目前,基于(深度)神经网络的网络嵌入技术发展迅猛,被广泛用于各类社交网络分析任务。网络嵌入首先借助随机游走获取每个结点的高阶近邻关系,然后借助神经网络强大的特征转换和抽象能力,将复杂的社交拓扑结构嵌入到低维向量空间中。近年来,一些工作尝试将网络嵌入模型与矩阵分解模型相结合,获得了比传统社会化推荐方法更佳的效果。例如,CUNE模型首先对用户社交网络进行节点嵌入,然后利用嵌入结果修正“用户-物品”矩阵分解过程。
上述现有技术中的社会化推荐方法的缺点为:经典社会化推荐***(如SoRec模型和SoReg模型)多以启发式方法使用社交信息,难以深度挖掘社交网络的复杂拓扑结构。近年来,尽管一些社会化推荐***尝试在社会化推荐***中使用网络嵌入模型(如CUNE模型),以期更好地挖掘和利用社交信息。但是由于技术原理不同,矩阵分解模型与网络嵌入模型很难整合,故而目前业界多采用两阶段学习方式:首先利用网络嵌入模型从“用户-用户”社交网络中学习用户的社会化向量表示;据此作为修正信息,再利用矩阵分解模型从“用户-物品”交互矩阵中学习用户特征和物品特征。这种两阶段方式存在两方面的弊端:
1)常规的网络嵌入模型采用无监督学习方式,其目的是通用的,而非为推荐任务订制的;而社交网络是复杂多面的,若没有监督信号加以引导,网络嵌入模型难以挖掘出那些有助于推荐***的社交属性。
2)由于分离式的两阶段设计,网络嵌入模型与矩阵分解模型的目标函数不统一,这样第一阶段产生的最优结果,对第二阶段推荐任务而言未必最优;此外,网络嵌入模型含有大量参数,使得两个模型联合调参具有很大难度。
发明内容
本发明的实施例提供了一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法,以克服现有技术的问题。
为了实现上述目的,本发明采取了如下技术方案。
一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法,包括:
构建用户-物品评分矩阵,所述评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分;
构建用户-用户社交网络,所述社交网络中的结点表示用户,连接表示用户之间的某种社交关系,根据所述用户-用户社交网络生成社交语料;
利用所述用户-物品评分矩阵和用户社交语料训练矩阵分解与网络嵌入联合模型,得到用户特征矩阵和物品特征矩阵;
根据所述用户特征矩阵和所述物品特征矩阵预测出未观测评分;将评分数值较高的若干物品推荐给相应用户。
优选的,所述用户-物品评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分,包括:
利用已有的数据集构建用户-物品评分矩阵,所述评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分,并对评分数据进行归一化处理,获得评分矩阵其中m和n分别表示用户和物品数量,某用户对某物品的评分被量化为小数,数值越接近于1表示该用户越喜欢该物品,0表示未评分。
优选的,所述的构建用户-用户社交网络,所述社交网络中的结点表示用户,连接表示用户之间的某种社交关系,根据所述用户-用户社交网络生成社交语料,包括:
利用已有的数据集构建用户-用户社交网络,该社交网络中的连接用于记录用户间的社交关系;若两用户之间存在某种社交联系,则相应连接被标记为1;若没有社交联系,则标记为0;通过对所述用户-用户社交网络进行截断式随机游走,得到每个用户的上下文用户集合,通过对所述用户-用户社交网络进行负采样,得到每个用户的负样本集合,全部用户的上下文用户集合和负样本集合构成了所述社交语料。
优选的,所述的通过对所述用户-用户社交网络进行截断式随机游走处理,得到每个用户的上下文用户集合,包括:
从每个节点出发,在用户-用户社交网络上运行截断式随机游走,在随机游走过程中,从用户u跳转到用户υ的概率定义如下:
其中,co(u,υ)代表用户u和用户υ共同评价过的物品数目,d+(u)代表用户u在社交网络中的节点出度,代表用户u的好友集合;
设截断式随机游走序列长度为L,对于用户u而言,根据概率转移公式计算从用户u转移到其朋友的概率,然后选择概率最大的朋友υ作为其下一跳的节点,以此类推,直到产生长度为L的节点序列;
利用滑动窗口从每个节点序列中为每个用户寻找上下文用户集合;当滑动窗口停在节点序列中的某个位置时,处于中间位置的用户称为中心用户u,处于窗口内其它位置的用户构成了用户u的上下文用户集合
优选的,所述的通过对所述用户-用户社交网络进行负采样,得到每个用户的负样本集合,包括:
对任意用户u来说,根据其非上下文用户在社交语料中的出现频率,及其在评分数据中的活跃程度,获取用户u的负样本集合对于某个用户来说,其被选为用户u的负样本的概率值的计算公式如下:
其中,f(υ)表示用户υ在社交语料中出现的频率,r(υ)表示用户υ在评分数据中评价过的物品数量,u表示全体用户集合,超参数a为经验值;
设用户u的上下文用户集合中的元素数量为A,依据负样本概率计算公式选取概率值最大的A个用户组成用户u的负样本集合
优选的,全部用户的上下文用户集合连同负样本集合一起构成了社交语料其中和分别表示用户u的上下文用户集合和负样本集合。
优选的,所述矩阵分解与网络嵌入联合模型的目标函数定义如下:
其中和分别表示矩阵分解模型和网络嵌入模型的损失函数,用户特征矩阵P为矩阵分解模型和网络嵌入模型两个模型的共享变量,为正则项;
矩阵分解模型的损失函数定义如下:
其中,Ω是由已观测评分对应的(u,i)索引对组成的集合,为矩阵P的第u列、为矩阵Q的第i列,分别对应于用户u和物品i的特征向量;
用户特征矩阵P在矩阵分解模型和网络嵌入模型间共享,其中网络嵌入模型实为一个三层的神经网络,其输入层与隐层之间的连接权重矩阵即为隐层与输出层之间的连接权重矩阵为网络嵌入模型的损失函数定义如下:
其中,激活函数σ(z)=1/(1+e-z),s和k分别表示滑动窗口的大小和负样本的个数;
正则项用于降低模型过拟合的风险,具体定义如下:
合并各项后,所述矩阵分解与网络嵌入联合模型的目标函数表示如下:
其中,α>0为超参数,用于调控矩阵分解模型与网络嵌入模型之间的比重,超参数λU,λI,λW用于调节正则项各分项的比重。
优选的,所述的利用所述用户-物品评分矩阵和所述用户社交语料训练联合模型,得到用户特征矩阵和物品特征矩阵,其训练过程包括:随机初始化用户特征矩阵P、物品特征矩阵Q和辅助参数矩阵W,进入迭代训练过程:固定Q,W,计算目标函数关于P的梯度,利用随机梯度下降法更新P;再固定P,W,计算目标函数关于Q的梯度,利用随机梯度下降法更新Q;再固定P,Q,计算目标函数关于W的梯度,利用随机梯度下降法更新W;重复上述步骤,不断交替更新P,Q,W,直到目标函数值小于设定阈值,输出最终的用户特征矩阵P和物品特征矩阵Q。
本发明提出的基于矩阵分解与网络嵌入联合模型的社会化推荐方法通过设计统一的目标函数,无缝整合了矩阵分解模型与网络嵌入模型;基于统一的优化框架,矩阵分解模型所使用的监督信号可间接地引导网络嵌入模型发现适合推荐任务的社会化属性;同时“恰当”的社会化约束也会反向作用于矩阵分解模型,以获得更优的用户和物品特征,从而可以实现高效、准确地向用户推荐其所喜欢的物品。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法的处理流程图;
图2为本发明实施例提供的一种的模型训练工作流程图;
图3为本发明方法与现有社会化推荐方法的实验效果对比图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
矩阵分解为基于已观测的“用户-物品”(其中“物品”指代社交平台各类信息产品)交互历史,对“用户-物品”相关性进行统计建模;然后利用该模型预测未观测的“用户-物品”相关性,并根据相关性大小为用户推荐其可能感兴趣物品。
网络嵌入为将网络结构嵌入到低维的连续空间,同时保留网络结构的内在结构属性。在本发明中,网络指的是社交网络,结点代表用户,连接代表用户间的社交关系,如好友关系(用户A关注了用户B)、转发关系(用户A转发了用户B的帖子)、评论关系(用户A评论了用户B的帖子)等等。借助网络嵌入模型,可获得用户的向量表示,该表示保留了用户的社交结构信息。
本发明实施例提出了一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法,该方法通过设计统一的目标函数,无缝整合了矩阵分解模型与网络嵌入模型;基于统一的优化框架,矩阵分解模型所使用的监督信号可间接地引导网络嵌入模型发现适合推荐任务的社会化属性;同时“恰当”的社会化约束也会反向作用于矩阵分解模型,以获得更优的用户和物品特征;从而实现两个模型间的双向促进与协同优化。此外,统一的目标函数大大降低了两个模型联合调参的难度。
本发明实施例提供了一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法,该方法的处理流程如图1所示,具体包括以下步骤:
步骤S1、利用已有的数据集构建“用户-物品”评分矩阵,所述评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分,并对评分数据进行归一化处理,获得评分矩阵其中m和n分别表示用户和物品数量,上述评分矩阵用以记录用户对物品的评分行为,某用户对某物品的评分行为被量化为小数,数值越接近于1表示该用户越喜欢该物品,反之亦然,0表示未评分。
步骤S2、利用已有的数据集构建“用户-用户”社交网络,所述社交网络中的结点代表用户、结点间的连接用于记录用户间的社交关系;若两用户之间有联系(比如为好友关系),则相应的连接被标记为1;若没有联系,则标记为0。通过对所述用户-用户社交网络进行截断式随机游走处理,得到每个用户的上下文用户集合,同时通过对所述用户-用户社交网络进行负采样处理,得到每个用户的负样本集合,全体用户的上下文用户集合和负样本集合构成所述社交语料其中和分别表示用户u的上下文用户集合(正样本集合)和负样本集合。
为用户生成上下文用户集合(正样本集合)的过程包括:从每个节点出发,在用户-用户社交网络上运行截断式随机游走,在随机游走过程中,从用户u跳转到用户υ的概率定义如下:
其中,co(u,υ)代表用户u和用户υ共同评价过的物品数目,d+(u)代表用户u在社交网络中的节点出度,代表用户u的好友集合,设截断式随机游走序列长度为L,对于用户u而言,根据概率转移公式计算从用户u转移到其朋友的概率,然后选择概率最大的朋友υ作为其下一跳的节点,以此类推,直到产生长度为L的节点序列。
然后,利用滑动窗口从每个节点序列中为每个用户寻找上下文用户集合。当滑动窗口停在节点序列中的某个位置时,处于中间位置的用户称为中心用户u,处于窗口内其它位置的用户构成了用户u的上下文用户集合(一般包括5-10个上下文用户)。
为用户u生成负样本集合的过程包括:根据其非上下文用户在社交语料中的出现频率,及其在评分数据中的活跃程度,获取用户u的负样本集合(其元素数量与相同)。对于某个用户来说,其被选为用户u的负样本的概率定义如下:
其中,f(υ)表示用户υ在社交语料中出现的频率,r(υ)表示用户υ在评分数据中评价过的物品数量,u表示全体用户集合,超参数a为经验值,通常设为0.75。
设用户u的上下文用户集合中的元素数量为A,依据负样本概率计算公式选取概率值最大的A个用户组成用户u的负样本集合
全部用户的上下文用户集合连同负样本集合一起构成了社交语料其中和分别表示用户u的上下文用户集合和负样本集合。
步骤S3、设定矩阵分解与网络嵌入联合模型的目标函数,利用所述评分矩阵、社交语料,训练矩阵分解与网络嵌入联合模型,得到用户特征矩阵物品特征矩阵其中f为特征空间维数。
本发明所述矩阵分解与网络嵌入联合模型框架包括:
1、模型的目标函数:矩阵分解的损失项(P、Q的函数)、网络嵌入的损失项(P、W的函数)、正则项(P、Q、W的函数);其中为了模型联合训练,P为共享标量;最终推荐仅需要P、Q即可,W可视为模型训练过程中的辅助变量。
2、模型的参数优化:根据准备好的训练样本(用户-物品矩阵、用户的社交语料),采用交替优化思路,每次固定两个目标变量,梯度下降更新一个;反复迭代,直到收敛。
所述的矩阵分解与网络嵌入联合模型的目标函数定义为:
其中和分别表示矩阵分解模型和网络嵌入模型的损失函数,用户特征矩阵P为矩阵分解模型和网络嵌入模型两个模型的共享变量,为正则项。
矩阵分解模型的损失函数定义如下:
其中,Ω是由已观测评分对应的(u,i)索引对组成的集合(本发明仅对观测到的“用户-物品”评分建模),为矩阵P的第u列、为矩阵Q的第i列,分别对应于用户u和物品i的特征向量。
网络嵌入模型实际上是一个神经网络,为了简化问题表述,此处假设神经网络仅包括一个隐层。由于用户特征矩阵P在两个模型间共享,神经网络输入层与隐层之间的连接权重矩阵即为隐层与输出层之间的连接权重矩阵为(可视之为辅助变量),网络嵌入模型的具体损失函数定义如下:
其中,激活函数σ(z)=1/(1+e-z),s和k分别表示滑动窗口的大小和负样本的个数。值的注意的是,工程上为了获得更好的嵌入结果,可使用拥有很多个隐层的深度神经网络,仅需在本发明所述方案的基础上再增加若干个辅助变量即可,诸如W(1)、W(2)、W(3)等等。
正则项用于降低模型过拟合的风险,具体定义如下:
合并各项后,联合模型的目标函数可表示如下:
其中,α>0为超参数,用于调控矩阵分解与网络嵌入模型之间的比重;另几个超参数λU,λI,λW用于调节正则项中各子项的比重。
本发明实施例提供的一种矩阵分解与网络嵌入联合模型的训练与优化的过程包括:首先随机初始化模型参数P,Q,W,进入迭代训练过程:固定Q,W,计算目标函数关于P的梯度,利用随机梯度下降法更新P;再固定P,W,计算目标函数关于Q的梯度,利用随机梯度下降法更新Q;再固定P,Q,计算目标函数关于W的梯度,利用随机梯度下降法更新W;重复上述步骤,不断交替更新P,Q,W,直到满足迭代停止条件,例如目标函数值小于某个预设定阈值或迭代轮数达到一定量级,输出最终的用户特征矩阵物品特征矩阵其中f为特征空间维数。
本发明实施例提供的一种矩阵分解与网络嵌入联合模型的训练与优化的工作流程如图2所示。包括如下步骤:
S3-1:随机初始化矩阵P,Q,W,进入迭代训练过程;
S3-2:固定矩阵Q,W,计算目标函数关于P的梯度,利用随机梯度下降法更新矩阵P;
S3-3:固定矩阵P,W,计算目标函数关于Q的梯度,利用随机梯度下降法更新矩阵Q;
S3-4:固定矩阵P,Q,计算目标函数关于W的梯度,利用随机梯度下降法更新矩阵W;
S3-5:重复S3-1到S3-4,不断交替更新P,Q,W,直到满足收敛条件,例如目标函数值小于某个预设定阈值或迭代轮数达到一定量级,最后输出参数模型。
值得注意的是,矩阵P被矩阵分解模型和网络嵌入模型所共享,因此两个模型可以在交替迭代更新过程中被协同优化。
步骤S4、根据用户和物品的特征矩阵预测未观测物品的评分:对逐行降序排列,并将数值较高(且未被评过分)的若干物品推荐给相应的用户。
本发明实施例在两个数据集上进行了实验,并对比了本发明所述方法与目前主流的社会化推荐方法的效果。对比方法包括两个经典的社会化推荐方法SoRec和SoReg(分别发表于数据挖掘领域主流会议CIKM2008和WSDM2011),以及目前性能最好方法CUNE(发表于数据挖掘领域主流会议SDM2017)。
第一个数据集是影评相关的数据集Filmtrust,其UI矩阵的行代表观影人,列代表电影,评分范围:0.5-4.0分;另有用户社交关系(关注vs被关注)作为辅助信息。该数据集包括1,508个用户、2,071个物品、35,497个用户关注连接;“用户-物品”交互数据的稠密度为1.14%、“用户-用户”社交数据的稠密度为0.42%。
第二个数据集是书评相关的数据集“豆瓣”数据集,其UI矩阵的行代表读书人,列代表图书,评分范围:1-5分;另有用户社交关系(关注vs被关注)作为辅助信息。该数据集包括2,963个用户、39,694个物品、894,887个好友连接;“用户-物品”交互数据的稠密度为0.76%、“用户-用户”社交数据的稠密度为0.48%。
图3为本发明方法与现有社会化推荐方法的实验效果对比图,如图3所示,斜条纹柱状图代表四种算法在Filmtrust数据集上的测试结果,网格柱状图代表四种算法在豆瓣数据集上的测试结果,评价指标为平均绝对误差(Mean Absolute Error,MAE),两组实验结果均表明:本发明所述方法较之对比方法性能有很大改进(MAE越低越好)。
综上所述,本发明实施例提出的基于矩阵分解与网络嵌入联合模型的社会化推荐方法,该方法通过设计统一的目标函数,无缝整合了矩阵分解模型与网络嵌入模型;基于统一的优化框架,矩阵分解模型所使用的监督信号可间接地引导网络嵌入模型发现适合推荐任务的社会化属性;同时“恰当”的社会化约束也会反向作用于矩阵分解模型,以获得更优的用户和物品特征,实现两个模型间的双向促进与协同优化,从而可以实现高效、准确地向用户推荐其所喜欢的物品。
本发明提供了一种推荐***融合社交信息的联合学习范式,将矩阵分解模型与网络嵌入模型进行无缝拼接,进而达到协同优化的目的。此外,统一的目标函数大大降低了两个模型联合调参的难度。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (8)
1.一种基于矩阵分解与网络嵌入联合模型的社会化推荐方法,其特征在于,包括:
构建用户-物品评分矩阵,所述评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分;
构建用户-用户社交网络,所述社交网络中的结点表示用户,连接表示用户之间的某种社交关系,根据所述用户-用户社交网络生成社交语料;
设定矩阵分解与网络嵌入联合模型的目标函数,利用所述用户-物品评分矩阵和用户社交语料训练联合模型,得到用户特征矩阵和物品特征矩阵;
根据所述用户特征矩阵和所述物品特征矩阵预测出未观测评分;将评分数值较高的若干物品推荐给相应用户。
2.根据权利要求1所述的方法,其特征在于,所述用户-物品评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分,包括:
利用已有的数据集构建用户-物品评分矩阵,所述评分矩阵中的行和列分别表示用户和物品,所述评分矩阵中的元素值表示用户对物品的评分,并对评分数据进行归一化处理,获得评分矩阵R∈[0,1]m×n,其中m和n分别表示用户和物品数量,某用户对某物品的评分被量化为小数,数值越接近于1表示该用户越喜欢该物品,0表示未评分。
3.根据权利要求1所述的方法,其特征在于,所述的构建用户-用户社交网络,所述社交网络中的结点表示用户,连接表示用户之间的某种社交关系,根据所述用户-用户社交网络生成社交语料,包括:
利用已有的数据集构建用户-用户社交网络,该社交网络中的连接用于记录用户间的社交关系;若两用户之间存在某种社交联系,则相应连接被标记为1;若没有社交联系,则标记为0;通过对所述用户-用户社交网络进行截断式随机游走,得到每个用户的上下文用户集合,通过对所述用户-用户社交网络进行负采样,得到每个用户的负样本集合,全部用户的上下文用户集合和负样本集合构成了所述社交语料。
4.根据权利要求3所述的方法,其特征在于,所述的通过对所述用户-用户社交网络进行截断式随机游走处理,得到每个用户的上下文用户集合,包括:
从每个节点出发,在用户-用户社交网络上运行截断式随机游走,在随机游走过程中,从用户u跳转到用户v的概率定义如下:
其中,co(u,v)代表用户u和用户v共同评价过的物品数目,d+(u)代表用户u在社交网络中的节点出度,代表用户u的好友集合;
设截断式随机游走序列长度为L,对于用户u而言,根据概率转移公式计算从用户u转移到其朋友的概率,然后选择概率最大的朋友v作为其下一跳的节点,以此类推,直到产生长度为L的节点序列;
利用滑动窗口从每个节点序列中为每个用户寻找上下文用户集合;当滑动窗口停在节点序列中的某个位置时,处于中间位置的用户称为中心用户u,处于窗口内其它位置的用户构成了用户u的上下文用户集合
5.根据权利要求4所述的方法,其特征在于,所述的通过对所述用户-用户社交网络进行负采样,得到每个用户的负样本集合,包括:
对任意用户u来说,根据其非上下文用户在社交语料中的出现频率,及其在评分数据中的活跃程度,获取用户u的负样本集合对于某个用户来说,其被选为用户u的负样本的概率值的计算公式如下:
其中,f(v)表示用户v在社交语料中出现的频率,r(v)表示用户v在评分数据中评价过的物品数量,表示全体用户集合,超参数a为经验值;
设用户u的上下文用户集合中的元素数量为A,依据负样本概率计算公式选取概率值最大的A个用户组成用户u的负样本集合
6.根据权利要求5所述的方法,其特征在于,全部用户的上下文用户集合连同负样本集合一起构成了社交语料其中和分别表示用户u的上下文用户集合和负样本集合。
7.根据权利要求1所述的方法,其特征在于,所述矩阵分解与网络嵌入联合模型的目标函数定义如下:
其中和分别表示矩阵分解模型和网络嵌入模型的损失函数,用户特征矩阵P为矩阵分解模型和网络嵌入模型两个模型的共享变量,为正则项;
矩阵分解模型的损失函数定义如下:
其中,Ω是由已观测评分对应的(u,i)索引对组成的集合,为矩阵P的第u列、为矩阵Q的第i列,分别对应于用户u和物品i的特征向量;
用户特征矩阵P在矩阵分解模型和网络嵌入模型间共享,其中网络嵌入模型实为一个三层的神经网络,其输入层与隐层之间的连接权重矩阵即为隐层与输出层之间的连接权重矩阵为网络嵌入模型的损失函数定义如下:
其中,激活函数σ(z)=1/(1+e-z),s和k分别表示滑动窗口的大小和负样本的个数;
正则项用于降低模型过拟合的风险,具体定义如下:
合并各项后,所述矩阵分解与网络嵌入联合模型的目标函数表示如下:
其中,α>0为超参数,用于调控矩阵分解模型与网络嵌入模型之间的比重,超参数λU,λI,λW用于调节正则项各分项的比重。
8.根据权利要求1所述的方法,其特征在于,所述的利用所述用户-物品评分矩阵R和所述用户社交语料训练联合模型,得到用户特征矩阵和物品特征矩阵,其训练过程包括:随机初始化用户特征矩阵P、物品特征矩阵Q和辅助参数矩阵W,进入迭代训练过程:固定Q,W,计算目标函数关于P的梯度,利用随机梯度下降法更新P;再固定P,W,计算目标函数关于Q的梯度,利用随机梯度下降法更新Q;再固定P,Q,计算目标函数关于W的梯度,利用随机梯度下降法更新W;重复上述步骤,不断交替更新P,Q,W,直到目标函数值小于设定阈值,输出最终的用户特征矩阵P和物品特征矩阵Q。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910563575.7A CN110321494B (zh) | 2019-06-26 | 2019-06-26 | 基于矩阵分解与网络嵌入联合模型的社会化推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910563575.7A CN110321494B (zh) | 2019-06-26 | 2019-06-26 | 基于矩阵分解与网络嵌入联合模型的社会化推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110321494A true CN110321494A (zh) | 2019-10-11 |
CN110321494B CN110321494B (zh) | 2021-08-31 |
Family
ID=68120364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910563575.7A Active CN110321494B (zh) | 2019-06-26 | 2019-06-26 | 基于矩阵分解与网络嵌入联合模型的社会化推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110321494B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110766166A (zh) * | 2019-10-23 | 2020-02-07 | 支付宝(杭州)信息技术有限公司 | 一种由用户终端执行的推送模型优化方法和装置 |
CN110795631A (zh) * | 2019-10-29 | 2020-02-14 | 支付宝(杭州)信息技术有限公司 | 一种基于因子分解机的推送模型优化、预测方法和装置 |
CN110930219A (zh) * | 2019-11-14 | 2020-03-27 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN111104604A (zh) * | 2019-11-25 | 2020-05-05 | 北京交通大学 | 基于哈希学习的轻量级社会化推荐方法 |
CN111159564A (zh) * | 2019-12-31 | 2020-05-15 | 联想(北京)有限公司 | 信息推荐方法、装置、存储介质及计算机设备 |
CN111210233A (zh) * | 2020-01-02 | 2020-05-29 | 联想(北京)有限公司 | 用户特征确定方法、装置和电子设备 |
CN111402003A (zh) * | 2020-03-13 | 2020-07-10 | 第四范式(北京)技术有限公司 | 实现用户相关推荐的***和方法 |
CN111552852A (zh) * | 2020-04-27 | 2020-08-18 | 北京交通大学 | 基于半离散矩阵分解的物品推荐方法 |
CN111695042A (zh) * | 2020-06-10 | 2020-09-22 | 湖南湖大金科科技发展有限公司 | 基于深度游走和集成学习的用户行为预测方法及*** |
CN111797319A (zh) * | 2020-07-01 | 2020-10-20 | 喜大(上海)网络科技有限公司 | 推荐方法、装置、设备及存储介质 |
CN112507225A (zh) * | 2020-12-11 | 2021-03-16 | 南京大学 | 一种基于双层优化的推荐***数据调试方法 |
CN112650945A (zh) * | 2020-12-29 | 2021-04-13 | 齐鲁工业大学 | 一种基于gcn和ain的上下文感知推荐方法 |
CN112967101A (zh) * | 2021-04-07 | 2021-06-15 | 重庆大学 | 一种基于社交用户多交互信息的协同过滤物品推荐方法 |
WO2021159894A1 (en) * | 2020-02-12 | 2021-08-19 | Huawei Technologies Co., Ltd. | Recommender system using bayesian graph convolution networks |
CN114510652A (zh) * | 2022-04-20 | 2022-05-17 | 宁波大学 | 一种基于联邦学习的社交协同过滤推荐方法 |
CN117171448A (zh) * | 2023-08-11 | 2023-12-05 | 哈尔滨工业大学 | 一种基于图神经网络的多行为社会化推荐方法及*** |
CN117216392A (zh) * | 2023-09-19 | 2023-12-12 | 北京大学 | 一种基于缺失数据填补的推荐方法和*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140087065A (ko) * | 2012-12-21 | 2014-07-09 | 서울대학교산학협력단 | 링크 예측을 이용한 소셜 추천 방법 |
CN105761151A (zh) * | 2016-02-02 | 2016-07-13 | 浙江工业大学 | 一种基于联合概率矩阵分解的移动社会化推荐方法 |
CN108596774A (zh) * | 2018-04-24 | 2018-09-28 | 山东师范大学 | 基于深层次网络嵌入特征的社会化信息推荐算法及*** |
-
2019
- 2019-06-26 CN CN201910563575.7A patent/CN110321494B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140087065A (ko) * | 2012-12-21 | 2014-07-09 | 서울대학교산학협력단 | 링크 예측을 이용한 소셜 추천 방법 |
CN105761151A (zh) * | 2016-02-02 | 2016-07-13 | 浙江工业大学 | 一种基于联合概率矩阵分解的移动社会化推荐方法 |
CN108596774A (zh) * | 2018-04-24 | 2018-09-28 | 山东师范大学 | 基于深层次网络嵌入特征的社会化信息推荐算法及*** |
Non-Patent Citations (1)
Title |
---|
张孟昊: "基于矩阵分解的评分推荐研究", 《中国优秀硕士学位论文全文数据-信息科技辑》 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110766166B (zh) * | 2019-10-23 | 2021-03-23 | 支付宝(杭州)信息技术有限公司 | 一种由用户终端执行的推送模型优化方法和装置 |
CN110766166A (zh) * | 2019-10-23 | 2020-02-07 | 支付宝(杭州)信息技术有限公司 | 一种由用户终端执行的推送模型优化方法和装置 |
CN110795631A (zh) * | 2019-10-29 | 2020-02-14 | 支付宝(杭州)信息技术有限公司 | 一种基于因子分解机的推送模型优化、预测方法和装置 |
CN110930219A (zh) * | 2019-11-14 | 2020-03-27 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN110930219B (zh) * | 2019-11-14 | 2022-10-18 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN111104604A (zh) * | 2019-11-25 | 2020-05-05 | 北京交通大学 | 基于哈希学习的轻量级社会化推荐方法 |
CN111104604B (zh) * | 2019-11-25 | 2023-07-21 | 北京交通大学 | 基于哈希学习的轻量级社会化推荐方法 |
CN111159564A (zh) * | 2019-12-31 | 2020-05-15 | 联想(北京)有限公司 | 信息推荐方法、装置、存储介质及计算机设备 |
CN111210233A (zh) * | 2020-01-02 | 2020-05-29 | 联想(北京)有限公司 | 用户特征确定方法、装置和电子设备 |
CN111210233B (zh) * | 2020-01-02 | 2023-12-26 | 联想(北京)有限公司 | 用户特征确定方法、装置和电子设备 |
WO2021159894A1 (en) * | 2020-02-12 | 2021-08-19 | Huawei Technologies Co., Ltd. | Recommender system using bayesian graph convolution networks |
US11494617B2 (en) | 2020-02-12 | 2022-11-08 | Huawei Technologies Co., Ltd. | Recommender system using bayesian graph convolution networks |
CN111402003A (zh) * | 2020-03-13 | 2020-07-10 | 第四范式(北京)技术有限公司 | 实现用户相关推荐的***和方法 |
CN111402003B (zh) * | 2020-03-13 | 2023-06-13 | 第四范式(北京)技术有限公司 | 实现用户相关推荐的***和方法 |
CN111552852A (zh) * | 2020-04-27 | 2020-08-18 | 北京交通大学 | 基于半离散矩阵分解的物品推荐方法 |
CN111695042B (zh) * | 2020-06-10 | 2023-04-18 | 湖南湖大金科科技发展有限公司 | 基于深度游走和集成学习的用户行为预测方法及*** |
CN111695042A (zh) * | 2020-06-10 | 2020-09-22 | 湖南湖大金科科技发展有限公司 | 基于深度游走和集成学习的用户行为预测方法及*** |
CN111797319B (zh) * | 2020-07-01 | 2023-10-27 | 喜大(上海)网络科技有限公司 | 推荐方法、装置、设备及存储介质 |
CN111797319A (zh) * | 2020-07-01 | 2020-10-20 | 喜大(上海)网络科技有限公司 | 推荐方法、装置、设备及存储介质 |
CN112507225B (zh) * | 2020-12-11 | 2021-09-28 | 南京大学 | 一种基于双层优化的推荐***数据调试方法 |
CN112507225A (zh) * | 2020-12-11 | 2021-03-16 | 南京大学 | 一种基于双层优化的推荐***数据调试方法 |
CN112650945A (zh) * | 2020-12-29 | 2021-04-13 | 齐鲁工业大学 | 一种基于gcn和ain的上下文感知推荐方法 |
CN112967101A (zh) * | 2021-04-07 | 2021-06-15 | 重庆大学 | 一种基于社交用户多交互信息的协同过滤物品推荐方法 |
CN114510652A (zh) * | 2022-04-20 | 2022-05-17 | 宁波大学 | 一种基于联邦学习的社交协同过滤推荐方法 |
CN117171448A (zh) * | 2023-08-11 | 2023-12-05 | 哈尔滨工业大学 | 一种基于图神经网络的多行为社会化推荐方法及*** |
CN117171448B (zh) * | 2023-08-11 | 2024-05-28 | 哈尔滨工业大学 | 一种基于图神经网络的多行为社会化推荐方法及*** |
CN117216392A (zh) * | 2023-09-19 | 2023-12-12 | 北京大学 | 一种基于缺失数据填补的推荐方法和*** |
CN117216392B (zh) * | 2023-09-19 | 2024-07-12 | 北京大学 | 一种基于缺失数据填补的推荐方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN110321494B (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321494A (zh) | 基于矩阵分解与网络嵌入联合模型的社会化推荐方法 | |
CN107133224B (zh) | 一种基于主题词的语言生成方法 | |
CN111881363B (zh) | 一种基于图交互网络的推荐方法 | |
CN108920641A (zh) | 一种信息融合个性化推荐方法 | |
Razak et al. | Toward a framework for capturing interpretability of hierarchical fuzzy systems—a participatory design approach | |
CN107038609A (zh) | 一种基于深度学习的商品推荐方法及*** | |
CN106295186A (zh) | 一种基于智能推理的辅助疾病诊断的方法与*** | |
CN112231577B (zh) | 一种融合文本语义向量和神经协同过滤的推荐方法 | |
CN107038184B (zh) | 一种基于分层隐变量模型的新闻推荐方法 | |
CN111241394A (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
CN103984721A (zh) | 基于交互式进化优化的图书个性化搜索方法 | |
Solomon et al. | Understanding the psycho-sociological facets of homophily in social network communities | |
Gong et al. | Interactive genetic algorithms with multi-population adaptive hierarchy and their application in fashion design | |
Qin et al. | Disentangled representation learning with large language models for text-attributed graphs | |
CN110263183A (zh) | 一种智能家居决策支持***及决策支持方法 | |
CN115270007A (zh) | 一种基于混合图神经网络的poi推荐方法及*** | |
CN116166875A (zh) | 基于元路径增强的异质图神经网络的双向跨域推荐方法 | |
Sadr et al. | Improving the performance of text sentiment analysis using deep convolutional neural network integrated with hierarchical attention layer | |
CN114840745A (zh) | 一种基于图表征学习和深度语义匹配模型的个性化推荐方法及*** | |
Shi et al. | Supporting guided exploratory visual analysis on time series data with reinforcement learning | |
CN116521858B (zh) | 基于动态聚类和可视化的上下文语义序列比较方法 | |
Tang et al. | Corpus-level end-to-end exploration for interactive systems | |
Sun et al. | Multi-order nearest neighbor prediction for recommendation systems | |
Mathur et al. | A graph-based recommender system for food products | |
Liang et al. | The graph embedded topic model |
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 |