CN113190754A - 一种基于异构信息网络表示学习的推荐方法 - Google Patents

一种基于异构信息网络表示学习的推荐方法 Download PDF

Info

Publication number
CN113190754A
CN113190754A CN202110511006.5A CN202110511006A CN113190754A CN 113190754 A CN113190754 A CN 113190754A CN 202110511006 A CN202110511006 A CN 202110511006A CN 113190754 A CN113190754 A CN 113190754A
Authority
CN
China
Prior art keywords
node
user
nodes
matrix
information network
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
Application number
CN202110511006.5A
Other languages
English (en)
Other versions
CN113190754B (zh
Inventor
李川
李亚莹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan University
Original Assignee
Sichuan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan University filed Critical Sichuan University
Priority to CN202110511006.5A priority Critical patent/CN113190754B/zh
Publication of CN113190754A publication Critical patent/CN113190754A/zh
Application granted granted Critical
Publication of CN113190754B publication Critical patent/CN113190754B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification

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)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于异构信息网络表示学习的推荐方法,包括提取信息,对异构信息网络中的节点进行表示学习,所述节点包括用户节点和项目节点,获取用户和项目的低维向量;将用户和项目的低维向量直接与推荐任务对接,作为推荐的样本特征输入域感知因子分解机模型,并通过添加组lasso作为正则项进行特征选择,完成用户和项目之间的评分预测;根据评分预测完成推荐。本发明采用基于元结构和动态截断随机游走的异构信息网络表示学习方法,不但能够捕获简单线性语义,对复杂非线性结构的挖掘也能井然有序,有效弥补元路径因自身结构缺陷所导致的信息丢失的问题;避免信息融合阶段可能造成的不可逆信息损失。

Description

一种基于异构信息网络表示学习的推荐方法
技术领域
本发明涉及推荐技术领域,具体的说,是一种基于异构信息网络表示学习的推荐方法。
背景技术
大数据时代,推荐系统凭借向用户提供即时准确的个性化服务的特性已成为各种线上应用不可或缺的工具。基于相似用户或项目预测用户偏好的协同过滤是推荐系统领域倍受欢迎和关注的推荐算法。传统的协同过滤算法专注于挖掘用户和项目的评分数据,因此其不可避免地存在许多影响推荐性能的问题。随着信息技术的飞速发展,推荐系统中包含用户社交关系、用户或项目元数据、用户或项目的位置以及项目评论等在内的额外数据变得易于获取,为缓解推荐系统中存在的数据稀疏性或冷启动问题,诸多工作试图将额外数据作为辅助信息融于推荐方法,分别生成基于社交关系、元数据、位置信息以及评论信息的推荐算法并利用大量实验验证额外数据对推荐性能的提升效益。然而,多数结合辅助信息的工作对不同的额外数据独立处理,并未考虑推荐可能是多方面共同助力的结果,由此造成推荐过程中跨越不同额外数据的信息损失,因此基于异构信息网络的推荐方法被提出。
现有技术中的基于异构信息网络的推荐方法多数利用基于元路径的网络分析方法提取信息并学习融合函数生成推荐,存在信息挖掘不充分、依赖显式可达路径、未考虑不同语义之间的协同信息即组合特征等问题,由此导致异构信息网络所建模的推荐异质信息无法得到有效探索和利用,影响推荐效果。
发明内容
本发明的目的在于提供一种基于异构信息网络表示学习的推荐方法,用于解决现有技术中推荐方法存在挖掘不充分、未考虑组合特征导致影响推荐效果的问题。
本发明通过下述技术方案解决上述问题:
一种基于异构信息网络表示学习的推荐方法,包括:
步骤S100:提取信息,对异构信息网络中的节点进行表示学习,所述节点包括用户节点和项目节点,获取用户和项目的低维向量;
步骤S200:将用户和项目的低维向量直接与推荐任务对接,作为推荐的样本特征输入域感知因子分解机模型,并通过添加组lasso作为正则项进行特征选择,完成用户和项目之间的评分预测;
步骤S300:根据评分预测完成推荐。
所述步骤S100具体为:
步骤S110:根据元结构生成语义图;
步骤S120:在语义图上进行动态截断随机游走,获取同时蕴含语义信息和结构信息的节点序列R,将节点序列R作为skip-gram模型的输入,获得节点低维向量。
所述步骤S110中元结构包括含有非线性结构的复杂元结构和只建模线性关系的线性元结构,元结构的起始节点和目标节点的节点类型相同,元结构的起始节点和目标节点类型为用户节点类型或项目节点类型,生成语义图的具体过程为:
步骤S111:从Yelp信息网络中抽取用户节点和评论节点,并在用户节点和评论节点之间建立链接,形成异构图HG;
步骤S112:从Yelp信息网络中找出既针对同一用户又包含相同关键字的评论对,并放入集合W;
步骤S113:对集合W进行遍历,将存在于W中的评论对于异构图HG中建立链接,形成关系R-R,则异构图HG中的线性元结构具备元结构的语义;
步骤S114:当元结构为复杂元结构时,根据异构图HG中存在的节点和关系构建相应邻接矩阵;当元结构为线性元结构时,从原始异构信息网络生成邻接矩阵;
步骤S115:在异构图HG中沿着线性元结构进行矩阵运算,生成同构矩阵AUU
步骤S116:根据同构矩阵AUU构建同构图SG,同构图SG即为相应的复杂元结构或线性原结构对应的语义图。
给定异构信息网络g={V,ε}、元结构
Figure BDA0003060291790000031
且φ(ns)=φ(nt),则元结构
Figure BDA0003060291790000032
的语义图可用同构图SG表示,
Figure BDA0003060291790000033
Figure BDA0003060291790000034
Figure BDA0003060291790000035
对于任意v∈vSG,均有φ(v)=φ(ns)=φ(nt);对任意(vi,vj)∈εSG,vi与vj之间的关系可以传达元结构
Figure BDA0003060291790000036
所蕴含的语义;
其中,v为节点集合,
Figure BDA0003060291790000037
为节点类型集合,
Figure BDA0003060291790000038
为边类型集合,vs、εs
Figure BDA0003060291790000039
Figure BDA00030602917900000310
分别为V、ε、
Figure BDA00030602917900000311
Figure BDA00030602917900000312
的子集;ns为起始节点,nt为目标节点;φ为节点类型映射函数;边类型映射函数ψ。
所述步骤S120具体包括:
步骤S121:将语义图上的节点投射到异构信息网络中g={ν,ε},计算复杂元结构CS以及线性元结构LS的节点相似性矩阵;
构建用户节点与评论节点的邻接矩阵WUR,构建评论节点和项目节点的邻接矩阵WRB和构建评论节点和关键字节点的邻接矩阵W′RK
获取C1和C2的基本积,其中
Figure BDA00030602917900000313
用户在复杂元结构CS上的相似性矩阵
Figure BDA00030602917900000314
计算线性元结构LS的节点相似性矩阵:
Figure BDA00030602917900000315
其中,WUR为用户节点和评论节点的邻接矩阵,WRK为评论节点和关键词节点的邻接矩阵;
步骤S122:对从每个节点开始随机游走的次数进行约束,设置从每个节点v开始进行随机游走的次数为l,l=max(H(v)×maxL,minL),其中,maxL为从节点开始进行随机游走的最大次数;minL为从节点开始进行随机游走的最小次数;H(v)为节点v在语义图上的重要性;
步骤S123:动态截断随机游走,具体为:
定义元结构s的语义图SGS={VSG,εSG),节点在元结构s上的相似性矩阵SIMS,每个节点的最大游走次数maxT,每个节点的最小游走次数mint,游走的最大长度wl,游走的停止概率pstop
初始化用于存放节点序列的列表sequences;
计算节点的重要性H=PageRank(SGS);
A1:计算以节点v为起始节点的游走次数l;
A2:初始化用于存放本次节点序列的列表sequence、记录当前节点nnow=v、记录最大游走次数wl_t=wl;
根据游走路径到达节点x并记录转移概率ptrrans,游走路径为:
Figure BDA0003060291790000041
式中,nx为游走路径的当前节点;ni为游走路径的上一跳节点,是nx的一阶近邻;O(ni)为节点ni的度;
将节点x加入列表sequence,计算节点x的停止概率px-stop
Figure BDA0003060291790000051
式中,Pstop为预先指定的固定停止概率;sim(ni,nx)为上一跳节点ni和当前节点nx之间未经过归一化的相似性;当前节点与上一跳节点之间的相似性越高,则随机游走在当前节点的停止概率越低,便更有可能沿着当前节点获取更多相似程度高的节点,从而形成一条具备高相似性的节点序列,因此动态截断随机游走在某种意义上可以做到节点相似性的保留,而这在基于相似用户或相似项目的推荐方法中极为重要。
判断是否在节点x停止,如果是,结束本次游走,进入下一步,否则,更新游走步长wl_t←wl_t-1和当前节点nnow=x,判断游走次数是否达到l,如果是进入下一步,否则,返回A2;
A3:将本次游走序列加入列表sequences,判断是否所有节点都计算完毕,如果是,进入下一步,否则返回A1;
A4:输出节点序列的列表sequences;
步骤S124:表示学习,对输出的节点序列,通过一个长度固定的采用窗口对近邻进行采样,得到用户的近邻集合,并采用以下公式优化表示学习:
maxfu∈VlogP(Nuf((u))
式中,
Figure BDA0003060291790000052
为将节点嵌入到d维特征空间的映射函数;
Figure BDA0003060291790000053
为节点u在指定元结构上的近邻;
步骤S125:通过动态截断随机游走获取的节点序列R:
R=DynamicTruncatedRandomWalk(SGS,SIMS,maxT,minT,wl,pstop)
将R作为skip-gram模型的输入,获得节点低维向量Φ=skip-gram(d,winL,R)。
本发明通过设计2L条元结构实现对不同语义的捕获,其中以用户节点为起始类型以及以项目节点为起始类型的元结构各自有L条,是以对于每一个用户节点和项目节点而言,其将同时拥有多个不同的低维向量表示。
在Yelp信息网络中,用户类型的节点除与其他类型节点拥有关系外,还可以与自身相连,即用户与用户之间存在朋友关系。若异构信息网络中用户与用户之间存在直接相连的关系,则还包括步骤S130:对不同元结构上生成的用户向量进行修正,具体包括:
步骤S131:指定用户集合
Figure BDA0003060291790000061
的基础上定义三元组<u,u1,uj>,其中u∈U表示目标用户,uu∈U和uj∈U分别为用户u的直接近邻和间接近邻,且
Figure BDA0003060291790000062
其中
Figure BDA0003060291790000063
表示用户u在元结构S上的近邻集合;将用户u的近邻集合
Figure BDA0003060291790000064
中所有符合上述要求的三元组构成用户u的训练数据
Figure BDA0003060291790000065
则所有用户的训练数据便构成了元结构
Figure BDA0003060291790000066
上用于进行向量修正的训练数据集D;定义符号>u来表示用户u在近邻上的偏置关系,即三元组<u,ui,uj>可以用uiuui来代替;
步骤S132:初始化训练数据集D;获取用户u在元结构S上的近邻集合Nu、获取用户u的直接近邻集合DNu,获取用户u的间接近邻集合INu
步骤S133:将由目标用户、直接近邻、间接近邻组成的三元组添加到训练数据集合;
步骤S134:根据梯度上升算法中的迭代公式更新参数:
Figure BDA0003060291790000067
Figure BDA0003060291790000071
Figure BDA0003060291790000072
步骤S135:直至用户向量矩阵MS收敛,输出经过修正的用户向量矩阵
Figure BDA0003060291790000073
若异构信息网络中用户与用户之间不存在直接相连的关系,则不对用户向量进行修正,而是直接将网络表示学习生成的用户向量作为用户特征。
所述步骤S200具体包括:
步骤S210:评分预测
通过在异构信息网络上设计2L条元结构,用户和项目将分别获得L组由不同语义生成的低维向量。对于这些来自不同元结构的向量,本发明并未学习融合函数,而是参考数据集中用户和项目之间的观测评分,对其进行拼接,并将拼接向量当作新的推荐样本xn
Figure BDA0003060291790000074
式中,
Figure BDA0003060291790000075
为用户ui和项目bj在各自第l个元结构上的向量表示;d为每个向量的维度;
步骤S220:对于推荐数据集中的每个评分,均可以将其转化为一组2L×d的特征向量,样本xn的评分利用FFM模型进行计算:
Figure BDA0003060291790000076
式中:w0为全局偏置、wi为第i个特征的相应权重以及
Figure BDA0003060291790000077
由第i个和第j个特征构成的组合特征的相应权重,参数M为样本xn的特征维度,即M=2L×d;相比于标准的因子分解机,FFM模型中引入“域”的概念,并学习特征在每个域上的隐向量。因此,本发明中由同一个元结构生成的特征属于同一个域,因此域的个数与元结构的个数相同;
步骤S230:参数学习
对FFM模型计算公式中的参数,采用最小化均方误差学习,获取目标函数:
Figure BDA0003060291790000081
式中:yn为第n个样本的实际评分;N为样本数量;
在将异构信息网络表示学习的结果作用于FFM模型时,面临着以下两个问题:首先,由于在信息提取阶段使用的元结构是预先指定的,并非所有元结构均对推荐有益,因此如何挑选于推荐有用的元结构便是需要考虑的第一个问题;其次,由网络表示学习生成的用户和项目特征是稠密向量,因此输入到FFM模型的样本特征便不再稀疏,获取模型参数的计算成本势必不再能够与稀疏样本同日而语,因此降低计算消耗则是面临的第二个问题。针对上述两个问题,本文在目标函数中引入可以用于挑选特征的组lasso。组lasso在特征系数预先被分为多个组的基础上,将同属于一个组的系数视为单个变量并按照组内系数是否为0进行特征选择,对提高特征组间的稀疏性大有益处。具体如下:
在目标函数中引入可以用于挑选特征的组lasso,参数p的组lasso正则化具有如下表示:
Figure BDA0003060291790000082
式中,pg为所有属于第g组的参数,g=1,2,...,G;||·||2——l2范数;
将样本xn中由同一个元结构生成的特征归入同一个组,因此样本xn的特征将被分为2L个组,对于参数w以及V分别有以下正则化公式:
Figure BDA0003060291790000091
Figure BDA0003060291790000092
式中;wl为一个维度为d的向量;Vl为第1个元结构的特征在所有域上的隐向量构成的矩阵;||·||F为矩阵的Frobenius范数;
综合目标函数和正则化公式,优化目标可转换为:
Figure BDA0003060291790000093
采用非单调加速近端梯度算法nmAPG进行模型的优化,输出/得到优化后的特征选择。
本发明与现有技术相比,具有以下优点及有益效果:
(1)本发明采用基于元结构和动态截断随机游走的异构信息网络表示学习方法,不但能够捕获简单线性语义,对复杂非线性结构的挖掘也能井然有序,有效弥补元路径因自身结构缺陷所导致的信息丢失问题。元结构用于语义挖掘,动态截断随机游走服务于结构获取,而通过在基于元结构的语义图上执行动态截断随机游走即可实现语义和结构的联合捕获,使得最后获得的节点低维向量同时具备结构和语义等两个层面的特性。
(2)本发明由不同元结构生成的特征直接对接于推荐模型,提出元结构语义下基于域感知因子分解机的推荐方法,以推荐任务为导向,未对同一节点的不同向量学习整体表示,而是将特征挑选和过滤的主动权交于推荐过程,从而避免信息融合阶段可能造成的不可逆信息损失。
(3)本发明提出动态截断随机游走模型,通过在随机游走中引入停止概率和节点重要性使得生成的节点序列与自然语言处理中的语句在长度分配上更为相似,并且符合幂律分布这一特殊规律;做到节点相似性的保留,而这在基于相似用户或相似项目的推荐方法中极为重要。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例:
结合附图1所示,一种基于异构信息网络表示学习的推荐方法,包括:
步骤S100:提取信息,对异构信息网络中的节点进行表示学习,所述节点包括用户节点和项目节点,获取用户和项目的低维向量;
步骤S200:将用户和项目的低维向量直接与推荐任务对接,作为推荐的样本特征输入域感知因子分解机模型,并通过添加组lasso作为正则项进行特征选择,完成用户和项目之间的评分预测;
步骤S300:根据评分预测完成推荐。
所述步骤S100具体为:
步骤S110:根据元结构生成语义图;
步骤S120:在语义图上进行动态截断随机游走,获取同时蕴含语义信息和结构信息的节点序列R,将节点序列R作为skip-gram模型的输入,获得节点低维向量。
所述步骤S110中元结构包括含有非线性结构的复杂元结构和只建模线性关系的线性元结构,元结构的起始节点和目标节点的节点类型相同,元结构的起始节点和目标节点类型为用户节点类型或项目节点类型,生成语义图的具体过程为:
步骤S111:从Yelp信息网络中抽取用户节点和评论节点,并在用户节点和评论节点之间建立链接,形成异构图HG;
步骤S112:从Yelp信息网络中找出既针对同一用户又包含相同关键字的评论对,并放入集合W;
步骤S113:对集合W进行遍历,将存在于W中的评论对于异构图HG中建立链接,形成关系R-R,则异构图HG中的线性元结构具备元结构的语义;
步骤S114:当元结构为复杂元结构时,根据异构图HG中存在的节点和关系构建相应邻接矩阵;当元结构为线性元结构时,从原始异构信息网络生成邻接矩阵;
步骤S115:在异构图HG中沿着线性元结构进行矩阵运算,生成同构矩阵AUU
步骤S116:根据同构矩阵AUU构建同构图SG,同构图SG即为相应的复杂元结构或线性原结构对应的语义图。
给定异构信息网络g={V,ε}、元结构
Figure BDA0003060291790000111
且φ(ns)=φ(nt),则元结构
Figure BDA0003060291790000112
的语义图可用同构图SG表示,
Figure BDA0003060291790000113
Figure BDA0003060291790000114
对于任意v∈vSG,均有φ(v)=φ(ns)=φ(nt)对任意(vi,vj)∈εSG,vi与vj之间的关系可以传达元结构
Figure BDA0003060291790000115
所蕴含的语义;
其中,ν为节点集合,
Figure BDA0003060291790000116
为节点类型集合,
Figure BDA0003060291790000117
为边类型集合,
Figure BDA0003060291790000118
Figure BDA0003060291790000119
分别为
Figure BDA00030602917900001110
Figure BDA00030602917900001111
的子集;ns为起始节点,nt为目标节点;φ为节点类型映射函数;边类型映射函数ψ。
所述步骤S120具体包括:
步骤S121:将语义图上的节点投射到异构信息网络中g={ν,ε},计算复杂元结构CS以及线性元结构LS的节点相似性矩阵;
构建用户节点与评论节点的邻接矩阵WIR,构建评论节点和项目节点的邻接矩阵WRB和构建评论节点和关键字节点的邻接矩阵WRK
获取C1和C2的基本积,其中
Figure BDA0003060291790000121
用户在复杂元结构CS上的相似性矩阵
Figure BDA0003060291790000122
计算线性元结构LS的节点相似性矩阵:
Figure BDA0003060291790000123
其中,WUR为用户节点和评论节点的邻接矩阵,WRK为评论节点和关键词节点的邻接矩阵;
步骤S122:对从每个节点开始随机游走的次数进行约束,设置从每个节点v开始进行随机游走的次数为l,l=max(H(v)×maxL,minL),其中,maxL为从节点开始进行随机游走的最大次数;minL为从节点开始进行随机游走的最小次数;H(v)为节点v在语义图上的重要性;
步骤S123:动态截断随机游走,具体为:
定义元结构s的语义图SGS={vSG,εSG},节点在元结构s上的相似性矩阵SIMS,每个节点的最大游走次数maxT,每个节点的最小游走次数minT,游走的最大长度wl,游走的停止概率pstop
初始化用于存放节点序列的列表sequences;
计算节点的重要性H=PageRank(SGS);
A1:计算以节点v为起始节点的游走次数l;
A2:初始化用于存放本次节点序列的列表sequence、记录当前节点nnow=v、记录最大游走次数wl_t=wl;
根据游走路径到达节点x并记录转移概率ptrans,游走路径为:
Figure BDA0003060291790000131
式中,nx为游走路径的当前节点;ni为游走路径的上一跳节点,是nx的一阶近邻;O(ni)为节点ni的度;
将节点x加入列表sequence,计算节点x的停止概率px-stop
Figure BDA0003060291790000132
式中,Pstop为预先指定的固定停止概率;sim(ni,nx)为上一跳节点ni和当前节点nx之间未经过归一化的相似性;
判断是否在节点x停止,如果是,结束本次游走,进入下一步,否则,更新游走步长wl_t←wl_t-1和当前节点nnow=x,判断游走次数是否达到l,如果是进入下一步,否则,返回A2;
A3:将本次游走序列加入列表sequences,判断是否所有节点都计算完毕,如果是,进入下一步,否则返回A1;
A4:输出节点序列的列表sequences;
步骤S124:表示学习,对输出的节点序列,通过一个长度固定的采用窗口对近邻进行采样,得到用户的近邻集合,并采用以下公式优化表示学习:
maxfu∈VlogP(Nu|f(u))
式中,
Figure BDA0003060291790000141
为将节点嵌入到d维特征空间的映射函数;
Figure BDA00030602917900001410
为节点u在指定元结构上的近邻;
步骤S125:通过动态截断随机游走获取的节点序列R:
R=DynamicTruncatedRandomWalk(SGS,SIMS,maxT,minT,wl,pstop)
将R作为skip-gram模型的输入,获得节点低维向量Φ=skip-gram(d,winL,R)。
若异构信息网络中用户与用户之间存在直接相连的关系,则还包括步骤S130:对用户向量进行修正,具体包括:
步骤S131:指定用户集合
Figure BDA00030602917900001411
的基础上定义三元组<u,ui,uj>,其中u∈U表示目标用户,ui∈U和uj∈U分别为用户u的直接近邻和间接近邻,且
Figure BDA0003060291790000142
其中
Figure BDA0003060291790000143
表示用户u在元结构S上的近邻集合;将用户u的近邻集合
Figure BDA0003060291790000144
中所有符合上述要求的三元组构成用户u的训练数据
Figure BDA0003060291790000145
则所有用户的训练数据便构成了元结构
Figure BDA0003060291790000146
上用于进行向量修正的训练数据集D;定义符号>u来表示用户u在近邻上的偏置关系,即三元组<u,ui,uj>可以用uiuuj来代替;
步骤S132:初始化训练数据集D;获取用户u在元结构
Figure BDA0003060291790000147
上的近邻集合Nu、获取用户u的直接近邻集合DNu,获取用户u的间接近邻集合INu
步骤S133:将由目标用户、直接近邻、间接近邻组成的三元组添加到训练数据集合;
步骤S134:根据梯度上升算法中的迭代公式更新参数
本文可以通过最大化如下目标函数进行向量修正:
P(θ|>u)∝P(>u|θ)P(θ) (1)
式中:参数Θ为用户在指定元结构上的低维向量。
从上式可以看出,优化目标共包含两个部分,其中第一部分与样本数据集有关,第二部分与样本数据集无关。将第一部分改写为如下形式:
Figure BDA0003060291790000151
并采用下式来代替概率P(uiuuj|θ):
Figure BDA0003060291790000152
式中:σ(x)为sigmoid函数。
由于
Figure BDA0003060291790000153
需要满足:当uiuuj时,
Figure BDA0003060291790000154
反之,
Figure BDA0003060291790000155
因此本文对其如下定义:
Figure BDA0003060291790000156
式中:
Figure BDA0003060291790000157
为指定元结构上用户u的低维向量vu与用户ui的低维向量
Figure BDA0003060291790000158
的欧氏距离,计算方式如下所示:
Figure BDA0003060291790000159
式中:d为低维向量的维度,由网络表示学习算法决定;vuk为每一个维度上的向量因子。根据公式(3),本文进一步省略参数θ,将公式(2)简化为如下形式:
Figure BDA00030602917900001510
而对于第二部分,本文则参考了BPR的想法。因此,在对公式(1)取对数的情况下,整个目标函数最终被转化为如下形式:
Figure BDA0003060291790000161
本文采用梯度上升算法优化上述目标函数。因此,通过对参数θ求导,可得如下公式:
Figure BDA0003060291790000162
其中,由于
Figure BDA00030602917900001610
拥有如下表示:
Figure BDA0003060291790000163
因此,得到下述梯度公式:
Figure BDA0003060291790000164
根据公式(10)便可以获得梯度上升算法中用于更新参数的迭代公式:
Figure BDA0003060291790000165
Figure BDA0003060291790000166
Figure BDA0003060291790000167
骤S135:直至用户向量矩阵
Figure BDA0003060291790000168
收敛,输出经过修正的用户向量矩阵
Figure BDA0003060291790000169
所述步骤S200具体包括:
步骤S210:评分预测
参考数据集中用户和项目之间的观测评分,对其进行拼接,将拼接向量当作新的推荐样本xn
Figure BDA0003060291790000171
式中,
Figure BDA0003060291790000172
为用户ui和项目bj在各自第l个元结构上的向量表示;d为每个向量的维度;
步骤S220:采用FFM模型计算评分:
Figure BDA0003060291790000173
式中:w0为全局偏置、wi为第i个特征的相应权重以及
Figure BDA0003060291790000174
由第i个和第j个特征构成的组合特征的相应权重,参数M为样本xn的特征维度,即M=2L×d;
步骤S230:参数学习
采用最小化均方误差学习,获取目标函数
Figure BDA0003060291790000175
式中:yn为第n个样本的实际评分;N为样本数量;
在目标函数中引入可以用于挑选特征的组lasso,参数p的组lasso正则化具有如下表示:
Figure BDA0003060291790000176
式中,pg为所有属于第g组的参数,g=1,2,...G;||·||2——l2范数;
将样本xn中由同一个元结构生成的特征归入同一个组,因此样本xn的特征将被分为2L个组,参数w以及V分别有以下正则化公式:
Figure BDA0003060291790000181
Figure BDA0003060291790000182
式中:wl为一个维度为d的向量;Vl为第1个元结构的特征在所有域上的隐向量构成的矩阵;||·||F为矩阵的Frobenius范数;
综合目标函数和正则化公式,优化目标可转换为:
Figure BDA0003060291790000183
采用非单调加速近端梯度算法nmAPG进行模型的优化,输出/得到优化后的特征选择。具体为:
输入:由
Figure BDA0003060291790000184
构建的所有推荐样本
D={(xn,yn)n=1,2,3,4,...N}
输出:一阶参数w,二阶参数V
步骤:
将w0和V0初始化为高斯随机矩阵;
Figure BDA0003060291790000185
//初始化参数
for t=1,2,3,...,T do:
Figure BDA0003060291790000186
Figure BDA0003060291790000187
Figure BDA0003060291790000188
Figure BDA0003060291790000191
Figure BDA0003060291790000192
Figure BDA0003060291790000193
Figure BDA0003060291790000194
else:
Figure BDA0003060291790000195
Figure BDA0003060291790000196
Figure BDA0003060291790000197
Figure BDA0003060291790000198
else:
Figure BDA0003060291790000199
Figure BDA00030602917900001910
qt+1=ηqt+1;
Figure BDA00030602917900001911
end for
returnWT+1,VT+1。
本发明提出基于异构信息网络表示学习的推荐方法,通过设计基于元结构和动态截断随机游走的网络表示学习方法实现推荐系统中用户特征信息和项目特征信息的提取,并进一步分析用户直接近邻和间接近邻的差异,利用贝叶斯个性化排序的思想对用户特征向量进行修正。随后,为避免信息融合过程会造成的不必要推荐损失,本发明放弃将多个用户和项目特征分别整合为一个综合特征的想法,而是将用户和项目的多个特征向量直接作用于推荐过程,通过向量拼接生成推荐样本并将其作为样本特征输入同时考虑特征一阶关系和二阶关系的域感知因子分解机模型进行评分预测。并且,本发明通过在最终的目标函数中加入组lasso作为正则项实现特征的挑选。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (6)

1.一种基于异构信息网络表示学习的推荐方法,其特征在于,包括:
步骤S100:提取信息,对异构信息网络中的节点进行表示学习,所述节点包括用户节点和项目节点,获取用户和项目的低维向量;
步骤S200:将用户和项目的低维向量直接与推荐任务对接,作为推荐的样本特征输入域感知因子分解机模型,并通过添加组lasso作为正则项进行特征选择,完成用户和项目之间的评分预测;
步骤S300:根据评分预测完成推荐。
2.根据权利要求1所述的一种基于异构信息网络表示学习的推荐方法,其特征在于,所述步骤S100具体为:
步骤S110:根据元结构生成语义图;
步骤S120:在语义图上进行动态截断随机游走,获取同时蕴含语义信息和结构信息的节点序列R,将节点序列R作为skip-gram模型的输入,获得节点低维向量。
3.根据权利要求2所述的一种基于异构信息网络表示学习的推荐方法,其特征在于,所述步骤S110中元结构包括含有非线性结构的复杂元结构和只建模线性关系的线性元结构,生成语义图的具体过程为:
步骤S111:从Yelp信息网络中抽取用户节点和评论节点,并在用户节点和评论节点之间建立链接,形成异构图HG;
步骤S112:从Yelp信息网络中找出既针对同一用户又包含相同关键字的评论对,并放入集合W;
步骤S113:对集合W进行遍历,将存在于W中的评论对于异构图HG中建立链接,形成关系R-R,则异构图HG中的线性元结构具备元结构的语义;
步骤S114:当为复杂元结构时,根据异构图HG中存在的节点和关系构建相应邻接矩阵;当为线性元结构时,从原始异构信息网络生成邻接矩阵;
步骤S115:在异构图HG中沿着线性元结构进行矩阵运算,生成同构矩阵AUU
步骤S116:根据同构矩阵AUU构建同构图SG,同构图SG即为相应的复杂元结构或线性原结构对应的语义图。
4.根据权利要求3所述的一种基于异构信息网络表示学习的推荐方法,其特征在于,所述步骤S120具体包括:
步骤S121:将语义图上的节点投射到异构信息网络中
Figure FDA0003060291780000021
计算复杂元结构CS以及线性元结构LS的节点相似性矩阵;
构建用户节点与评论节点的邻接矩阵WUR,构建评论节点和项目节点的邻接矩阵WRB和构建评论节点和关键字节点的邻接矩阵WRK
获取C1和C2的基本积,其中
Figure FDA0003060291780000022
用户在复杂元结构CS上的相似性矩阵
Figure FDA0003060291780000023
计算线性元结构LS的节点相似性矩阵:
Figure FDA0003060291780000024
其中,WUR为用户节点和评论节点的邻接矩阵,WRK为评论节点和关键词节点的邻接矩阵;
步骤S122:对从每个节点开始随机游走的次数进行约束,设置从每个节点v开始进行随机游走的次数为l,l=max(H(v)×maxL,minL),其中,maxL为从节点开始进行随机游走的最大次数;minL为从节点开始进行随机游走的最小次数;H(v)为节点v在语义图上的重要性;
步骤S123:动态截断随机游走,具体为:
定义元结构S的语义图
Figure FDA0003060291780000031
节点在元结构S上的相似性矩阵SIMs,每个节点的最大游走次数maxT,每个节点的最小游走次数minT,游走的最大长度wl,游走的停止概率pstop
初始化用于存放节点序列的列表sequences;
计算节点的重要性H=PageRank(SGS);
A1:计算以节点v为起始节点的游走次数l;
A2:初始化用于存放本次节点序列的列表sequence、记录当前节点nnow=v、记录最大游走次数wl_t=wl;
根据游走路径到达节点x并记录转移概率ptrans,游走路径为:
Figure FDA0003060291780000032
式中,nx为游走路径的当前节点;ni为游走路径的上一跳节点,是nx的一阶近邻;O(ni)为节点ni的度;
将节点x加入列表sequence,计算节点x的停止概率px-stop
Figure FDA0003060291780000033
式中,Pstop为预先指定的固定停止概率;sim(ni,nx)为上一跳节点ni和当前节点nx之间未经过归一化的相似性;
判断是否在节点x停止,如果是,结束本次游走,进入下一步,否则,更新游走步长wl_t←wl_t-1和当前节点nnow=x,判断游走次数是否达到l,如果是进入下一步,否则,返回A2;
A3:将本次游走序列加入列表sequences,判断是否所有节点都计算完毕,如果是,进入下一步,否则返回A1;
A4:输出节点序列的列表sequences;
步骤S124:表示学习,对输出的节点序列,通过一个长度固定的采用窗口对近邻进行采样,得到用户的近邻集合,并采用以下公式优化表示学习:
Figure FDA0003060291780000041
式中,
Figure FDA0003060291780000042
为将节点嵌入到d维特征空间的映射函数;
Figure FDA0003060291780000043
为节点u在指定元结构上的近邻;
步骤S125:通过动态截断随机游走获取的节点序列R:
Figure FDA0003060291780000044
将R作为skip-gram模型的输入,获得节点低维向量Φ=skip-gram(d,winL,R)。
5.根据权利要求2-4中任意一项所述的一种基于异构信息网络表示学习的推荐方法,其特征在于,若异构信息网络中用户与用户之间存在直接相连的关系,则还包括步骤S130:对用户向量进行修正,具体包括:
步骤S131:指定用户集合
Figure FDA0003060291780000045
的基础上定义三元组<u,ui,uj>,其中u∈U表示目标用户,ui∈U和uj∈U分别为用户u的直接近邻和间接近邻,且
Figure FDA0003060291780000046
其中
Figure FDA0003060291780000047
表示用户u在元结构S上的近邻集合;将用户u的近邻集合
Figure FDA0003060291780000048
中所有符合上述要求的三元组构成用户u的训练数据
Figure FDA0003060291780000049
则所有用户的训练数据便构成了元结构S上用于进行向量修正的训练数据集D;定义符号>u来表示用户u在近邻上的偏置关系,即三元组<u,ui,uj>可以用uiuuj来代替;
步骤S132:初始化训练数据集D;获取用户u在元结构
Figure FDA0003060291780000051
上的近邻集合Nu、获取用户u的直接近邻集合DNu,获取用户u的间接近邻集合INu
步骤S133:将由目标用户、直接近邻、间接近邻组成的三元组添加到训练数据集合;
步骤S134:根据梯度上升算法中的迭代公式更新参数:
Figure FDA0003060291780000052
Figure FDA0003060291780000053
Figure FDA0003060291780000054
步骤S135:直至用户向量矩阵Ms收敛,输出经过修正的用户向量矩阵
Figure FDA0003060291780000055
6.根据权利要求5所述的一种基于异构信息网络表示学习的推荐方法,其特征在于,所述步骤S200具体包括:
步骤S210:评分预测:
参考数据集中用户和项目之间的观测评分,对其进行拼接,将拼接向量当作新的推荐样本xn
Figure FDA0003060291780000056
式中,
Figure FDA0003060291780000057
为用户ui和项目bj在各自第l个元结构上的向量表示;d为每个向量的维度;
步骤S220:采用FFM模型计算评分:
Figure FDA0003060291780000061
式中:w0为全局偏置、wi为第i个特征的相应权重以及
Figure FDA0003060291780000062
由第i个和第j个特征构成的组合特征的相应权重,参数M为样本xn的特征维度,即M=2L×d;
步骤S230:参数学习:
采用最小化均方误差学习,获取目标函数
Figure FDA0003060291780000063
式中:yn为第n个样本的实际评分;N为样本数量;
在目标函数中引入可以用于挑选特征的组lasso,参数p的组lasso正则化具有如下表示:
Figure FDA0003060291780000064
式中,pg为所有属于第g组的参数,g=1,2,...,G;||·||2——l2范数;
将样本xn中由同一个元结构生成的特征归入同一个组,因此样本xn的特征将被分为2L个组,参数w以及V分别有以下正则化公式:
Figure FDA0003060291780000065
Figure FDA0003060291780000066
式中:wl为一个维度为d的向量;Vl为第l个元结构的特征在所有域上的隐向量构成的矩阵;||·||F为矩阵的Frobenius范数;
综合目标函数和正则化公式,优化目标可转换为:
Figure FDA0003060291780000071
采用非单调加速近端梯度算法nmAPG进行模型的优化,输出/得到优化后的特征选择。
CN202110511006.5A 2021-05-11 2021-05-11 一种基于异构信息网络表示学习的推荐方法 Active CN113190754B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110511006.5A CN113190754B (zh) 2021-05-11 2021-05-11 一种基于异构信息网络表示学习的推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110511006.5A CN113190754B (zh) 2021-05-11 2021-05-11 一种基于异构信息网络表示学习的推荐方法

Publications (2)

Publication Number Publication Date
CN113190754A true CN113190754A (zh) 2021-07-30
CN113190754B CN113190754B (zh) 2022-05-10

Family

ID=76981115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110511006.5A Active CN113190754B (zh) 2021-05-11 2021-05-11 一种基于异构信息网络表示学习的推荐方法

Country Status (1)

Country Link
CN (1) CN113190754B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113807614A (zh) * 2021-10-13 2021-12-17 航天信息股份有限公司 一种企业税务风险预测方法
CN113888138A (zh) * 2021-10-27 2022-01-04 重庆邮电大学 一种基于区块链和网络表示学习推荐的项目管理方法
CN114048396A (zh) * 2022-01-13 2022-02-15 湖南大学 基于异构信息网络和深度学习的nqi服务推荐方法及系统
CN114117232A (zh) * 2021-12-02 2022-03-01 神行太保智能科技(苏州)有限公司 节点和元路径对比学习增强的推荐方法及系统
CN114282119A (zh) * 2022-03-03 2022-04-05 深圳昊通技术有限公司 一种基于异构信息网络的科技信息资源检索方法及系统
CN114510642A (zh) * 2022-02-17 2022-05-17 重庆大学 基于异构信息网络的书籍推荐方法、系统及设备
CN115062210A (zh) * 2022-07-08 2022-09-16 天津大学 一种融合社团结构的异质网络表示学习方法
CN115641009A (zh) * 2022-11-14 2023-01-24 安徽大学 基于专利异构信息网络挖掘竞争者的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140317033A1 (en) * 2013-04-23 2014-10-23 International Business Machines Corporation Predictive and descriptive analysis on relations graphs with heterogeneous entities
CN107562795A (zh) * 2017-08-01 2018-01-09 广州市香港科大霍英东研究院 基于异构信息网络的推荐方法及装置
US20190080383A1 (en) * 2017-09-08 2019-03-14 NEC Laboratories Europe GmbH Method and system for combining user, item and review representations for recommender systems
CN112182424A (zh) * 2020-11-11 2021-01-05 重庆邮电大学 一种基于异构信息和同构信息网络融合的社交推荐方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140317033A1 (en) * 2013-04-23 2014-10-23 International Business Machines Corporation Predictive and descriptive analysis on relations graphs with heterogeneous entities
CN107562795A (zh) * 2017-08-01 2018-01-09 广州市香港科大霍英东研究院 基于异构信息网络的推荐方法及装置
US20190080383A1 (en) * 2017-09-08 2019-03-14 NEC Laboratories Europe GmbH Method and system for combining user, item and review representations for recommender systems
CN112182424A (zh) * 2020-11-11 2021-01-05 重庆邮电大学 一种基于异构信息和同构信息网络融合的社交推荐方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHUAN SHI等: "Recent Developments of Deep Heterogeneous Information Network Analysis", 《PROCEEDINGS OF THE 28TH ACM INTERNATIONAL CONFERENCE ON INFORMATION AND KNOWLEDGE MANAGEMENT》 *
HUAN ZHAO等: "Motif Enhanced Recommendation over Heterogeneous Information Network", 《PROCEEDINGS OF THE 28TH ACM INTERNATIONAL CONFERENCE ON INFORMATION AND KNOWLEDGE MANAGEMENT》 *
刘云枫等: "异构信息网络推荐研究进展", 《情报科学》 *
李亚莹: "基于异构信息网络表征学习的推荐方法", 《研究与开发》 *
袁梦祥等: "基于二部网络表示学习的矩阵分解推荐算法", 《计算机集成制造系统》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113807614A (zh) * 2021-10-13 2021-12-17 航天信息股份有限公司 一种企业税务风险预测方法
CN113888138A (zh) * 2021-10-27 2022-01-04 重庆邮电大学 一种基于区块链和网络表示学习推荐的项目管理方法
CN113888138B (zh) * 2021-10-27 2024-05-14 重庆邮电大学 一种基于区块链和网络表示学习推荐的项目管理方法
CN114117232A (zh) * 2021-12-02 2022-03-01 神行太保智能科技(苏州)有限公司 节点和元路径对比学习增强的推荐方法及系统
CN114048396A (zh) * 2022-01-13 2022-02-15 湖南大学 基于异构信息网络和深度学习的nqi服务推荐方法及系统
CN114048396B (zh) * 2022-01-13 2022-03-18 湖南大学 基于异构信息网络和深度学习的nqi服务推荐方法及系统
CN114510642A (zh) * 2022-02-17 2022-05-17 重庆大学 基于异构信息网络的书籍推荐方法、系统及设备
CN114282119A (zh) * 2022-03-03 2022-04-05 深圳昊通技术有限公司 一种基于异构信息网络的科技信息资源检索方法及系统
CN115062210A (zh) * 2022-07-08 2022-09-16 天津大学 一种融合社团结构的异质网络表示学习方法
CN115641009A (zh) * 2022-11-14 2023-01-24 安徽大学 基于专利异构信息网络挖掘竞争者的方法及装置
CN115641009B (zh) * 2022-11-14 2023-05-05 安徽大学 基于专利异构信息网络挖掘竞争者的方法及装置

Also Published As

Publication number Publication date
CN113190754B (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
CN113190754B (zh) 一种基于异构信息网络表示学习的推荐方法
WO2023000574A1 (zh) 一种模型训练方法、装置、设备及可读存储介质
CN111061856B (zh) 一种基于知识感知的新闻推荐方法
WO2021179640A1 (zh) 一种基于图模型的短视频推荐方法、和智能终端和存储介质
CN108920641B (zh) 一种信息融合个性化推荐方法
US20220253722A1 (en) Recommendation system with adaptive thresholds for neighborhood selection
CN111488734A (zh) 基于全局交互和句法依赖的情感特征表示学习系统及方法
CN112836120A (zh) 一种基于多模态知识图谱的电影推荐方法、系统及终端
CN110555050A (zh) 一种基于元路径的异构网络节点表示学习方法
CN109190030B (zh) 融合node2vec和深度神经网络的隐式反馈推荐方法
CN112182424A (zh) 一种基于异构信息和同构信息网络融合的社交推荐方法
CN114265986B (zh) 一种融合知识图谱结构与路径语义的信息推送方法和系统
CN109389151A (zh) 一种基于半监督嵌入表示模型的知识图谱处理方法和装置
Huang et al. Neural embedding collaborative filtering for recommender systems
CN113918834B (zh) 融合社交关系的图卷积协同过滤推荐方法
US20220253688A1 (en) Recommendation system with adaptive weighted baysian personalized ranking loss
CN113918832A (zh) 基于社交关系的图卷积协同过滤推荐系统
CN111178986A (zh) 用户-商品偏好的预测方法及系统
CN114706989A (zh) 一种基于技术创新资产为知识库的智能推荐方法
CN113239271B (zh) 一种基于兴趣漂移的推荐方法
CN109858031B (zh) 神经网络模型训练、上下文预测方法及装置
CN114564594A (zh) 一种基于双塔模型的知识图谱用户偏好实体召回方法
CN117194771B (zh) 一种图模型表征学习的动态知识图谱服务推荐方法
CN116932923B (zh) 一种结合行为特征与三角协作度量的项目推荐方法
CN113836393A (zh) 基于偏好自适应元学习的冷启动推荐方法

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