CN113901333B - 一种融合了图结构与文本特征的好友推荐方法 - Google Patents
一种融合了图结构与文本特征的好友推荐方法 Download PDFInfo
- Publication number
- CN113901333B CN113901333B CN202111181032.2A CN202111181032A CN113901333B CN 113901333 B CN113901333 B CN 113901333B CN 202111181032 A CN202111181032 A CN 202111181032A CN 113901333 B CN113901333 B CN 113901333B
- Authority
- CN
- China
- Prior art keywords
- network
- user
- recommended
- users
- graph
- 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 23
- 238000004364 calculation method Methods 0.000 claims abstract description 28
- 238000010586 diagram Methods 0.000 claims abstract description 21
- 238000013528 artificial neural network Methods 0.000 claims description 65
- 239000011159 matrix material Substances 0.000 claims description 55
- 239000013598 vector Substances 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 abstract description 4
- 230000003993 interaction Effects 0.000 description 4
- 101150071434 BAR1 gene Proteins 0.000 description 3
- 230000004913 activation Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000007704 transition 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
- 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/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Economics (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种融合了图结构与文本特征的好友推荐方法,用于从推荐集中取推荐用户向被推荐用户进行推荐。本发明获取用户访问网络社区中不同网络板块的轨迹,以网络板块为基准对用户进行图信息编码,在构建关系图时不需要其他用户的信息,不需要对所有用户进行全量计算,因此计算量更小,且构建得到的关系图不受新用户加入影响。采用本发明的技术方案,在新用户加入后,不需要更新已经构建的关系图。已构建的关系图只受网络社区中网络板块变动的影响,但网络社区一旦建立后,网络社区中的各个网络板块相对固定,不易发生变动。
Description
技术领域
本发明涉及一种好友推荐方法。
背景技术
网络社区是是指包括BBS/论坛、贴吧、公告栏、群组讨论、在线聊天、交友、个人空间、无线增值服务等形式在内的网上交流空间,同一主题的网络社区集中了具有共同兴趣的访问者。网络社区是一个交流信息的平台,也是一个交友的平台。好友推荐能够帮助用户结识有相同兴趣爱好的朋友,能为用户拓展朋友圈从而为用户能接触到更多感兴趣的内容。
于2021年5月25日公开的、公开号为CN112836138A的中国发明专利申请公开了一种用户推荐方法及装置(下文简称“现有文献【1】”)。在现有文献【1】中,为用户构建的画像特征,基于不同用户的用户画像特征获得用户-用户交互矩阵,进而利用用户-用户交互矩阵的特征分析用户之间的相似度,最后根据相似度大小为用户推荐新的朋友。现有文献【1】存在的技术缺陷是:在实际应用场景中,用户-用户交互矩阵中含有大量的缺失值,而且当新用户加入社交网络时无法得到交互信息,容易造成数据稀疏、新用户冷启动等问题。传统的好友推荐模块多只是利用数据信息的结构信息计算两个用户的相似性,而将节点中存在的丰富的属性信息忽略了。
于2021年3月16日公开的、公开号为CN112507245A的中国发明专利申请公开了一种基于图神经网络的社交网络好友推荐方法(下文简称“现有文献【2】”)。现有文献【2】中公开的技术方案包括以下步骤:将所有用户及用户间的关系转换为图结构。将所有用户属性信息映射为数值型向量,得到属性矩阵。执行L层属性转移概率计算,从而得到图结构的目标用户和待推荐用户聚合领域信息后的属性信息。将属性信息输入至深层神经网络进行编码,从而得到宿节点和其余待推荐节点编码后的信息,且根据编码信息计算得出宿节点相对于每一其他待推荐节点的相关性分数,并将相关性分数作为推荐的衡量标准,进行好友推荐。借此,本发明的基于图神经网络的社交网络好友推荐方法,提高了社交用户相关性评估的效率,从而提高了好友推荐速度。
现有文献【2】与现有文献【1】相比,由于充分利用了用户的属性信息,因此在好友推荐的准确度上要更优,但现有文献【2】基于所有用户及用户间的关系来构建图结构,因此,在构建图结构时需要一次性计算所有用户,导致计算量会很非常大。而且一旦有新用户加入后,需要重新全量计算图结构。另外,新用户通常会缺乏相关推荐信息,由于没有好友或者浏览的轨迹,无论是现有文献【1】所公开的方法还是现有文献【2】所公开的方法在缺乏部分信息的情况下是无法计算进行推荐的。
发明内容
本发明要解决的技术问题是:现有的基于图结构的好友推荐算法计算量大,且若用户缺乏相关推荐信息后,无法计算相似度进行推荐。
为了解决上述技术问题,本发明的技术方案是提供了一种融合了图结构与文本特征的好友推荐方法,用于从推荐集中取推荐用户向被推荐用户进行推荐,其特征在于,包括以下步骤:
步骤1、取网络社区中发布信息活跃度高的用户,将这些用户定义为推荐用户,所有推荐用户组成推荐集;
步骤2、若被推荐用户为完全没有任何信息的新用户,则从推荐集中取任意一个推荐用户向被推荐用户推荐;
若被推荐用户有信息,则依据被推荐用户的信息,获得被推荐用户的图结构特征或者文本特征,并依据推荐用户的信息计算得到推荐集中每个推荐用户的图结构特征或文本特征;
其中,将推荐用户及被推荐用户统一定义为用户,则获得用户的图结构特征包括以下步骤:
第一步、建立用户的关系图;
目标网络社区中有不同的网络板块且某些网络板块具有至少一个属性标签,将每个网络板块定义为要构建的关系图中的一个网络板块节点,将每个属性标签定义为属性节点,则采用以下步骤构建用户的关系图:
步骤101、基于当前用户访问目标网络社区中不同网络板块的轨迹,获得其所访问的所有I个网络板块以及I个网络板块具有的所有J个属性标签;
步骤102、获得与I个网络板块存在关联关系的另外所有K1个网络板块,并获得与所有J个属性标签存在关联关系的除I个网络板块及K1个网络板块外的所有K2个网络板块;
步骤103、建立用户节点、(I+K1+K2)个网络板块节点以及J个属性节点,用户节点为第0个节点;
步骤104、用边将用户节点与I网络板块节点相连,并且依据网络板块之间的关联关系以及网络板块与属性标签之间的关联关系,将存在关联关系的网络板块节点之间以及网络板块节点与属性节点之间用边连接;
步骤105、计算各条边的权重;
步骤106、建立得到当前用户的关系图,设I+K1+K2=B,则该关系图的邻接矩阵为维度(B+J+1)×(B+J+1)的矩阵A;
第二步、对第一步得到的关系图采用图卷积神经网络为结构信息编码,关系图中各个节点的初始特征为单位矩阵,经过图卷积神经网络编码后,获得关系图中用户节点的特征,将该特征作为用户的图结构特征:
对于(l+1)层GCN,其第(l+1)层的输出表示为H(l+1),记为:H(l+1)=GCN(A,Hl);
采用两层图卷积神经网络为关系图结构信息编码,则有:
H(1)=GCN(A,H0)
H(2)=GCN(A,H1)
用户节点是第0个节点,取H(2)[0]作为用户的图结构特征,则将推荐用户的图结构特征记为Hp (2)[0],被推荐用户的图结构特征记为HR (2)[0];
将推荐用户及被推荐用户统一定义为用户,则获得用户的文本特征包括以下步骤:
步骤A、取推荐用户发帖的文本数据或者取被推荐用户浏览贴子的文本数据;
步骤B、将文本数据分词去停用词后,对获得的分词取关键词;
步骤C、将关键词转换为词向量后,将所有词向量拼接成词向量矩阵;
步骤D、词向量矩阵经过最大池化max-pooling获得文本特征V,将推荐用户的文本特征进一步记为Vp,表示用户发布内容的文本特征,将被推荐用户的文本特征进一步记为Vr,表示用户阅读内容的文本特征;
步骤3、基于步骤2获得的被推荐用户的图结构特征或者文本特征以及推荐用户的图结构特征或者文本特征,得到以下四个二维关系矩阵中的至少一个:
推荐用户的图结构特征Hp (2)[0]与被推荐用户的图结构特征HR (2)[0]、推荐用户的图结构特征Hp (2)[0]与被推荐用户的文本特征Vr、推荐用户的文本特征Vp与被推荐用户的图结构特征HR (2)[0]、推荐用户的文本特征Vp与被推荐用户的文本特征Vr之间分别做二维关系矩阵计算,得到四个二维关系矩阵分别表示为R0、R1、R2、R3。
R0=Wr0*((Hp (2)[0])T×Hr (2)[0])+br0
R1=Wr1*((Hp (2)[0])T×Vr)+br1
R2=Wr2*((Vp)T×Hr (2)[0])+br2
R3=Wr3*((Vp)T×Vr)+br3
式中,Wr0、Wr1、Wr2及Wr3分别表示关系计算权重参数,br0、br1、br2及br3分别表示关系计算偏置项;
步骤4、建立多层全连接神经网络Fully(),多层全连接神经网络对步骤3得到的二维关系矩阵R0、R1、R2和/或R3降维成固定的维度2,用softmax层输出推荐用户与被推荐用户能成为好友的概率,其中:
四个二维关系矩阵R0、R1、R2、R3的组合,可以计算以下7组概率值P0、P1、P2、P3、P4、P5、P6中的一组概率值,将计算得到的概率值最为最终输出的概率:
式中,记n层全连接神经网络的计算为Fullyn(),则表示2层全连接神经网络对二维关系矩阵R0的计算,/>表示2层全连接神经网络对二维关系矩阵R1的计算,/>表示2层全连接神经网络对二维关系矩阵R2的计算,/>表示2层全连接神经网络对二维关系矩阵R3得到的输出,且多层全连接神经网络在计算P4、P5及P6时共享/>及/>
若通过步骤3仅得到二维关系矩阵R0,则多层全连接神经网络输出概率值P0为最终输出的概率;若通过步骤3仅得到二维关系矩阵R1,则多层全连接神经网络输出概率值P1为最终输出的概率;若通过步骤3仅得到二维关系矩阵R2,则多层全连接神经网络输出概率值P2为最终输出的概率;若通过步骤3仅得到二维关系矩阵R3,则多层全连接神经网络输出概率值P3为最终输出的概率;若通过步骤3得到二维关系矩阵R0、R2,则多层全连接神经网络输出概率值P4为最终输出的概率;若通过步骤3得到二维关系矩阵R1、R3,则多层全连接神经网络输出概率值P5为最终输出的概率;若通过步骤3得到二维关系矩阵R0、R1、R2、R3,则多层全连接神经网络输出概率值P6为最终输出的概率。
优选的,步骤1中,筛选发布信息活跃度高的用户时,以单位时间内用户的发帖数量作为依据进行筛选,筛选出一批活跃的内容生产用户,这些用户作为推荐用户被放入推荐集。
优选的,步骤105中,对于连接属性节点与网络板块节点的边的权重表示为w,则有:
式中,高相关、中相关及低相关是预先定义的;
对于连接两个网络板块节点的边的权重,则有:
若第i个网络板块节点bari被第j个网络板块节点barj,则连接网络板块节点bari与网络板块节点barj的边的权重为网络板块节点bari占网络板块节点barj所包含的所有网络板块节点的成分比例;
对于连接用户节点与网络板块节点的边的权重,设连接用户节点与第i个网络板块节点bari的边的权重为wi,则有:
式中,M表示用户是否关注了第i个网络板块,若用户关注了第i个网络板块则M=常数D1,若用户未关注了第i个网络板块但浏览了第i个网络板块的帖子,则M=常数D2,D1>D2;textRki为用户在第i个网络板块浏览的文本内容,textPki为用户在第i个网络板块发布的文本内容,N(textRki+textPki)表示用户在该第i个网络板块发布和阅读的帖子数量总和,∑iN(textRki+textPki)表示用户在目标网络社区发布和阅读的帖子数量总和。
优选的,利用四个二维关系矩阵R0、R1、R2、R3中的至少一个单独对所述多层全连接神经网络进行训练,采用梯度下降利用Adam优化器优化模型中的参数,训练时,记一组推荐用户和被推荐用户之间被推荐用户关注推荐用户的真实结果为Yd,d=0,1,2,3,4,5,6,与概率值P0、P1、P2、P3、P4、P5、P6相对应,则多层全连接神经网络的损失函数为loss=-∑dYdlog(Pd)。
与现有技术相比,本发明具有如下优点:
(1)本发明获取用户访问网络社区中不同网络板块的轨迹,以网络板块为基准对用户进行图信息编码,在构建关系图时不需要其他用户的信息,不需要对所有用户进行全量计算,因此计算量更小,且构建得到的关系图不受新用户加入影响。采用本发明的技术方案,在新用户加入后,不需要更新已经构建的关系图。已构建的关系图只受网络社区中网络板块变动的影响,但网络社区一旦建立后,网络社区中的各个网络板块相对固定,不易发生变动。
(2)本发明在进行用户推荐时,将关系图与文本特征相融合融合,在满足任一特征有数据的情况下,就能进行推荐。因此,本发明能够在缺少一些信息的情况下做推荐,比如没有网络信息,或者用户没有发布、阅读过任何内容。在新用户的情况下,本发明提高了推荐算法的可用性。
(3)本发明融合了语义信息,做信息生产者和信息消费者的匹配,能够得到更好的推荐结果。
附图说明
图1为实施例中关系图的简单示意;
图2为实施例的模型结构图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
本发明公开了一种融合了图结构与文本特征的好友推荐方法,用于从推荐集中取推荐用户向被推荐用户进行推荐,包括以下步骤:
步骤1、取网络社区中发布信息活跃度高的用户,将这些用户定义为推荐用户,所有推荐用户组成推荐集。本实施例中,筛选发布信息活跃度高的用户时,以单位时间内用户的发帖数量作为依据进行筛选,筛选出一批活跃的内容生产用户,这些用户作为推荐用户被放入推荐集。
步骤2、若被推荐用户为完全没有信息的新用户,则从推荐集中取任意一个推荐用户向被推荐用户推荐。
若被推荐用户有信息,则依据被推荐用户的信息,获得被推荐用户的图结构特征或者文本特征。并获得推荐集中每个推荐用户的图结构特征以及文本特征。
获得被推荐用户的图结构特征或推荐用户的图结构特征包括以下步骤:
步骤201、建立推荐集中每个推荐用户的关系图以及被推荐用户的关系图。
网络社区中有不同的网络板块,将每个网络板块定义为要构建的关系图中的一个网络板块节点,则关系图中的第i个网络板块节点记为bari。并且每个网络板块都具有至少一个属性标签,将每个属性标签定义为属性节点,则关系图中的第j个属性节点记为blockj。应当注意的是:(1)两个网络板块之间可能存在相互包含的关系,例如:各股板块被包含在股票板块内,则这两个网络板块是相互关联的;每个网络板块可能有多个属性标签,因此在关系图中每个网络板块节点可能与多个属性节点相关联;不同的网络板块可能具有同一个属性标签,因此在关系图中同一个属性节点可能与多个网络板块节点相关联。
构建当前用户的关系图时:
步骤2011、基于当前用户访问目标网络社区中不同网络板块的轨迹,获得其所访问的所有I个网络板块以及I个网络板块具有的所有J个属性标签;
步骤2012、获得与I个网络板块存在关联关系的另外所有K1个网络板块,并获得与所有J个属性标签存在关联关系的除I个网络板块及K1个网络板块外的所有K2个网络板块;
步骤2013、建立用户节点、(I+K1+K2)个网络板块节点以及J个属性节点,用户节点为第0个节点;
步骤2014、用边将用户节点与I网络板块节点相连,并且依据网络板块之间的关联关系以及网络板块与属性标签之间的关联关系,存在关联关系的网络板块节点之间以及网络板块节点与属性节点之间用边连接;
如图1所示,为本实施例中得到的关系图的简单示意,图1中,用户user关注了网络板块bar0及bar3或者未关注但浏览了网络板块bar0及bar3中发布的贴子,则将用户节点与网络板块节点bar0及bar3相连。网络板块bar0具有属性标签block0、blokc1,则将网络板块节点bar0与属性标签节点block0、blokc1相连。除网络板块bar0外,网络板块bar1、bar4也具有属性标签block0,因此在关系图中还建立了网络板块节点bar1、bar4,并将网络板块节点bar1、bar4与属性节点block0相连。除网络板块bar0外,网络板块bar2也具有属性标签blokc1,因此在关系图中还建立了网络板块节点bar2,并将网络板块节点bar2与属性节点blokc1相连。同时,网络板块bar2与网络板块bar3存在关联关系,因此在关系图中将网络板块节点bar2与网络板块节点bar3相连;
步骤2015、计算各条边的权重,其中:
对于连接属性节点与网络板块节点的边的权重表示为w,则有
式中,高相关、中相关及低相关是预先定义的;
对于连接两个网络板块节点的边的权重,则有:
若第i个网络板块节点bari被第j个网络板块节点barj,则连接网络板块节点bari与网络板块节点barj的边的权重为网络板块节点bari占网络板块节点barj所包含的所有网络板块节点的成分比例;
对于连接用户节点与网络板块节点的边的权重,设连接用户节点与第i个网络板块节点bari的边的权重为wi,则有:
式中,M表示用户是否关注了第i个网络板块,若用户关注了第i个网络板块则M=常数D1,若用户未关注了第i个网络板块但浏览了第i个网络板块的帖子,则M=常数D2,D1>D2,本实施例中,常数D1为1,常数D2为0;textRki为用户在第i个网络板块浏览的文本内容,textPki为用户在第i个网络板块发布的文本内容,N(textRki+textPki)表示用户在该第i个网络板块发布和阅读的帖子数量总和,∑iN(textRki+textPki)表示用户在目标网络社区发布和阅读的帖子数量总和;
步骤2016、建立得到当前用户的关系图,设I+K1+K2=B,则该关系图的邻接矩阵为维度(B+J+1)×(B+J+1)的矩阵A。
步骤202、对步骤201得到的关系图采用图卷积神经网络(下文简称“GCN”)为结构信息编码,关系图中各个节点的初始特征为单位矩阵,经过GCN编码后,获得关系图中用户节点的特征,将该特征作为推荐用户或者被推荐用户的图结构特征。
本发明采用GCN为关系图结构信息编码,对于(l+1)层GCN,其第(l+1)层的输出表示为H(l+1),计算方式如下:
式中,I为单位矩阵;/>是/>的度矩阵/>σ为非线性激活函数;H0=I;Wl是第l层待学习的参数,通常随机数初始化。简记上式为:H(l+1)=GCN(A,Hl)。
本发明采用两层GCN网络为关系图结构信息编码,则基于简式有:
H(1)=GCN(A,H0)
H(2)=GCN(A,H1)
由于用户是第0个节点,取H(2)[0]作为用户的图结构特征。推荐集中一个推荐用户的图结构特征记为Hp (2)[0],被推荐用户的图结构特征记为HR (2)[0]。
获得被推荐用户的文本特征或推荐用户的文本特征包括以下步骤:
步骤A01、取推荐用户发帖的文本数据,取被推荐用户浏览贴子的文本数据;
步骤A02、将文本数据分词去停用词后,对获得的分词以textRank算法取关键词,若关键词数量超过100,则取权重大的前100个关键词作为最终的关键词;
步骤A03、采用word2vec将关键词转换为词向量后,将所有词向量拼接成词向量矩阵;
步骤A04、词向量矩阵经过最大池化max-pooling获得文本特征V。对于推荐用户而言,其文本特征V是基于发帖的文本数据得到的,将推荐用户的文本特征进一步记为Vp,表示用户发布内容的文本特征。对于被推荐用户而言,其文本特征V是基于浏览贴子的文本数据得到的,将被推荐用户的文本特征进一步记为Vr,表示用户阅读内容的文本特征。
步骤3、基于步骤2获得的被推荐用户的图结构特征或者文本特征以及推荐用户的图结构特征或者文本特征,得到以下四个二维关系矩阵中的至少一个:
推荐用户的图结构特征Hp (2)[0]与被推荐用户的图结构特征HR (2)[0]、推荐用户的图结构特征Hp (2)[0]与被推荐用户的文本特征Vr、推荐用户的文本特征Vp与被推荐用户的图结构特征HR (2)[0]、推荐用户的文本特征Vp与被推荐用户的文本特征Vr之间分别做二维关系矩阵计算,得到四个二维关系矩阵分别表示为R0、R1、R2、R3。
R0=Wr0*((Hp (2)[0])T×Hr (2)[0])+br0
R1=Wr1*((Hp (2)[0])T×Vr)+br1
R2=Wr2*((Vp)T×Hr (2)[0])+br2
R3=Wr3*((Vp)T×Vr)+br3
式中,Wr0、Wr1、Wr2及Wr3分别表示关系计算权重参数,br0、br1、br2及br3分别表示关系计算偏置项。
步骤4、建立多层全连接神经网络,简记为Fully()。多层全连接神经网络对步骤3得到的二维关系矩阵R0、R1、R2和/或R3降维成固定的维度2,用softmax层输出推荐用户与被推荐用户能成为好友的概率。四个二维关系矩阵R0、R1、R2、R3的组合,可以计算以下7组概率值P0、P1、P2、P3、P4、P5、P6中的一组概率值,将计算得到的概率值最为最终输出的概率:
若通过步骤3仅得到二维关系矩阵R0,则多层全连接神经网络输出概率值P0为最终输出的概率;若通过步骤3仅得到二维关系矩阵R1,则多层全连接神经网络输出概率值P1为最终输出的概率;若通过步骤3仅得到二维关系矩阵R2,则多层全连接神经网络输出概率值P2为最终输出的概率;若通过步骤3仅得到二维关系矩阵R3,则多层全连接神经网络输出概率值P3为最终输出的概率;若通过步骤3得到二维关系矩阵R0、R2,则多层全连接神经网络输出概率值P4为最终输出的概率;若通过步骤3得到二维关系矩阵R1、R3,则多层全连接神经网络输出概率值P5为最终输出的概率;若通过步骤3得到二维关系矩阵R0、R1、R2、R3,则多层全连接神经网络输出概率值P6为最终输出的概率。
多层全连接神经网络可以进行叠加层数计算,即把上一层的输出作为下一层的输入,本发明中简记n层全连接神经网络的计算为Fullyn()。则表示2层全连接神经网络对二维关系矩阵R0的计算,/>表示2层全连接神经网络对二维关系矩阵R1的计算,/>表示2层全连接神经网络对二维关系矩阵R2的计算,/>表示2层全连接神经网络对二维关系矩阵R3得到的输出,且多层全连接神经网络在计算P4、P5及P6时共享/> 及/>
由上式可以看出,多个二维关系矩阵的计算,先单独各通过一次全连接层降为一维后再拼接在一起后,再接全连接层以减少一定的参数量。另外,对于某一个二维关系矩阵对应的全连接层是固定的,从而可以共享参数。
本发明可以利用四个二维关系矩阵R0、R1、R2、R3中的至少一个单独对多层全连接神经网络进行训练,采用梯度下降利用Adam优化器优化模型中的参数。训练时,记一组推荐用户和被推荐用户之间被推荐用户关注推荐用户的真实结果为Yd,d=0,1,2,3,4,5,6,与概率值P0、P1、P2、P3、P4、P5、P6相对应。那么多层全连接神经网络的损失函数为loss=-∑dYdlog(Pd),对应的七组概率值就有七组损失函数。训练后利用实时得到的相应二维关系矩阵输入多层全连接神经网络单独计算7组概率值P0、P1、P2、P3、P4、P5、P6中相应的至少一个概率,单独做预测。
本发明中,任意二维关系矩阵R0、R1、R2、R3可以单独训练,单独做预测。训练时,基于四个单独的loss、两个组合的loss或一个整体的loss对网络参数进行优化。本发明可以基于数据的完整性对多层全连接神经网络做不同的训练,通常是被推荐用户的信息可能比较少,依照被推荐用户有的信息形成图结构特征或者文本特征做不同情况的预测。
由于实际数据中不是所有用户都有足够的网络社区关注信息(即图结构特征)或文本特征信息的。在训练中,如果一个数据同时缺少图结构特征及文本特征,那么这个数据会被丢弃。如果训练数据中某一用户必具有某一种的特征,采用本发明的技术方案则可以按照其具有哪些特征,采用不同的loss训练,避免了通常情况下的网络必须要具备完整的输入数据才能进行训练。比如,如果只有被推荐用户的文本特征,并且只有推荐用户的图结构特征,那么可以用二维关系矩阵R2及对应的概率P2的损失函数对多层全连接神经网络进行参数优化,当然这也只能优化到参与计算的那部分参数。
采用本发明提供的技术方案利用实时获得的数据进行好友推荐时,依照推荐用户具有的特征情况(推荐用户具有文本特征还是图结构特征)和被推荐用户具有的特征情况(被推荐用户具有文本特征还是图结构特征),计算最终的推荐好友概率值。比如,推荐用户有图结构特征和文本特征,被推荐用户只有文本特征,就可以计算概率P5作为最终的推荐好友概率值。
Claims (4)
1.一种融合了图结构与文本特征的好友推荐方法,用于从推荐集中取推荐用户向被推荐用户进行推荐,其特征在于,包括以下步骤:
步骤1、取网络社区中发布信息活跃度高的用户,将这些用户定义为推荐用户,所有推荐用户组成推荐集;
步骤2、若被推荐用户为完全没有任何信息的新用户,则从推荐集中取任意一个推荐用户向被推荐用户推荐;
若被推荐用户有信息,则依据被推荐用户的信息,获得被推荐用户的图结构特征或者文本特征,并依据推荐用户的信息计算得到推荐集中每个推荐用户的图结构特征或文本特征;
其中,将推荐用户及被推荐用户统一定义为用户,则获得用户的图结构特征包括以下步骤:
第一步、建立用户的关系图;
目标网络社区中有不同的网络板块且某些网络板块具有至少一个属性标签,将每个网络板块定义为要构建的关系图中的一个网络板块节点,将每个属性标签定义为属性节点,则采用以下步骤构建用户的关系图:
步骤101、基于当前用户访问目标网络社区中不同网络板块的轨迹,获得其所访问的所有I个网络板块以及I个网络板块具有的所有J个属性标签;
步骤102、获得与I个网络板块存在关联关系的另外所有K1个网络板块,并获得与所有J个属性标签存在关联关系的除I个网络板块及K1个网络板块外的所有K2个网络板块;
步骤103、建立用户节点、(I+K1+K2)个网络板块节点以及J个属性节点,用户节点为第0个节点;
步骤104、用边将用户节点与I网络板块节点相连,并且依据网络板块之间的关联关系以及网络板块与属性标签之间的关联关系,将存在关联关系的网络板块节点之间以及网络板块节点与属性节点之间用边连接;
步骤105、计算各条边的权重;
步骤106、建立得到当前用户的关系图,设I+K1+K2=B,则该关系图的邻接矩阵为维度(B+J+1)×(B+J+1)的矩阵A;
第二步、对第一步得到的关系图采用图卷积神经网络为结构信息编码,关系图中各个节点的初始特征为单位矩阵,经过图卷积神经网络编码后,获得关系图中用户节点的特征,将该特征作为用户的图结构特征:
对于(l+1)层GCN,其第(l+1)层的输出表示为H(l+1),记为:H(l+1)=GCN(A,Hl);
采用两层图卷积神经网络为关系图结构信息编码,则有:
H(1)=GCN(A,H0)
H(2)=GCN(A,H1)
用户节点是第0个节点,取H(2)[0]作为用户的图结构特征,则将推荐用户的图结构特征记为Hp (2)[0],被推荐用户的图结构特征记为Hr (2)[0];
将推荐用户及被推荐用户统一定义为用户,则获得用户的文本特征包括以下步骤:
步骤A、取推荐用户发帖的文本数据或者取被推荐用户浏览贴子的文本数据;
步骤B、将文本数据分词去停用词后,对获得的分词取关键词;
步骤C、将关键词转换为词向量后,将所有词向量拼接成词向量矩阵;
步骤D、词向量矩阵经过最大池化max-pooling获得文本特征V,将推荐用户的文本特征进一步记为Vp,表示用户发布内容的文本特征,将被推荐用户的文本特征进一步记为Vr,表示用户阅读内容的文本特征;
步骤3、基于步骤2获得的被推荐用户的图结构特征或者文本特征以及推荐用户的图结构特征或者文本特征,得到以下四个二维关系矩阵中的至少一个:
推荐用户的图结构特征Hp (2)[0]与被推荐用户的图结构特征Hr (2)[0]、推荐用户的图结构特征Hp (2)[0]与被推荐用户的文本特征Vr、推荐用户的文本特征Vp与被推荐用户的图结构特征Hr (2)[0]、推荐用户的文本特征Vp与被推荐用户的文本特征Vr之间分别做二维关系矩阵计算,得到四个二维关系矩阵分别表示为R0、R1、R2、R3;
R0=Wr0*((Hp (2)[0])T×Hr (2)[0])+br0
R1=Wr1*(Hp (2)[0])T×Vr)+br1
R2=Wr2*((Vp)T×Hr (2)[0])+br2
R3=Wr3*((Vp)T×Vr)+br3
式中,Wr0、Wr1、Wr2及Wr3分别表示关系计算权重参数,br0、br1、br2及br3分别表示关系计算偏置项;
步骤4、建立多层全连接神经网络Fully(),多层全连接神经网络对步骤3得到的二维关系矩阵R0、R1、R2和/或R3降维成固定的维度2,用softmax层输出推荐用户与被推荐用户能成为好友的概率,其中:
四个二维关系矩阵Ro、R1、R2、R3的组合,可以计算以下7组概率值P0、P1、P2、P3、P4、P5、P6中的一组概率值,将计算得到的概率值最为最终输出的概率:
式中,记n层全连接神经网络的计算为Fullyn(),则表示2层全连接神经网络对二维关系矩阵R0的计算,/>表示2层全连接神经网络对二维关系矩阵R1的计算,表示2层全连接神经网络对二维关系矩阵R2的计算,/>表示2层全连接神经网络对二维关系矩阵R3得到的输出,且多层全连接神经网络在计算P4、P5及P6时共享及/>
若通过步骤3仅得到二维关系矩阵R0,则多层全连接神经网络输出概率值P0为最终输出的概率;若通过步骤3仅得到二维关系矩阵R1,则多层全连接神经网络输出概率值P1为最终输出的概率;若通过步骤3仅得到二维关系矩阵R2,则多层全连接神经网络输出概率值P2为最终输出的概率;若通过步骤3仅得到二维关系矩阵R3,则多层全连接神经网络输出概率值P3为最终输出的概率;若通过步骤3得到二维关系矩阵R0、R2,则多层全连接神经网络输出概率值P4为最终输出的概率;若通过步骤3得到二维关系矩阵R1、R3,则多层全连接神经网络输出概率值P5为最终输出的概率;若通过步骤3得到二维关系矩阵Ro、R1、R2、R3,则多层全连接神经网络输出概率值P6为最终输出的概率。
2.如权利要求1所述的一种融合了图结构与文本特征的好友推荐方法,其特征在于,步骤1中,筛选发布信息活跃度高的用户时,以单位时间内用户的发帖数量作为依据进行筛选,筛选出一批活跃的内容生产用户,这些用户作为推荐用户被放入推荐集。
3.如权利要求1所述的一种融合了图结构与文本特征的好友推荐方法,其特征在于,步骤105中,对于连接属性节点与网络板块节点的边的权重表示为w,则有:
式中,高相关、中相关及低相关是预先定义的;
对于连接两个网络板块节点的边的权重,则有:
若第i个网络板块节点bari被第j个网络板块节点barj,则连接网络板块节点bari与网络板块节点barj的边的权重为网络板块节点bari占网络板块节点barj所包含的所有网络板块节点的成分比例;
对于连接用户节点与网络板块节点的边的权重,设连接用户节点与第i个网络板块节点bari的边的权重为wi,则有:
式中,M表示用户是否关注了第i个网络板块,若用户关注了第i个网络板块则M=常数D1,若用户未关注了第i个网络板块但浏览了第i个网络板块的帖子,则M=常数D2,D1>D2;textRki为用户在第i个网络板块浏览的文本内容,textPki为用户在第i个网络板块发布的文本内容,N(textRki+textPki)表示用户在该第i个网络板块发布和阅读的帖子数量总和,∑iN(textRki+textPki)表示用户在目标网络社区发布和阅读的帖子数量总和。
4.如权利要求1所述的一种融合了图结构与文本特征的好友推荐方法,其特征在于,利用四个二维关系矩阵R0、R1、R2、R3中的至少一个单独对所述多层全连接神经网络进行训练,采用梯度下降利用Adam优化器优化模型中的参数,训练时,记一组推荐用户和被推荐用户之间被推荐用户关注推荐用户的真实结果为Yd,d=0,1,2,3,4,5,6,与概率值P0、P1、P2、P3、P4、P5、P6相对应,则多层全连接神经网络的损失函数为loss=-∑dYdlog(Pd)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111181032.2A CN113901333B (zh) | 2021-10-11 | 2021-10-11 | 一种融合了图结构与文本特征的好友推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111181032.2A CN113901333B (zh) | 2021-10-11 | 2021-10-11 | 一种融合了图结构与文本特征的好友推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113901333A CN113901333A (zh) | 2022-01-07 |
CN113901333B true CN113901333B (zh) | 2024-05-28 |
Family
ID=79191238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111181032.2A Active CN113901333B (zh) | 2021-10-11 | 2021-10-11 | 一种融合了图结构与文本特征的好友推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901333B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010048172A1 (en) * | 2008-10-20 | 2010-04-29 | Cascaad Srl | Social graph based recommender |
CN104239399A (zh) * | 2014-07-14 | 2014-12-24 | 上海交通大学 | 社交网络中的潜在好友推荐方法 |
CN110515986A (zh) * | 2019-08-27 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 一种社交网络图的处理方法、装置及存储介质 |
CN111143704A (zh) * | 2019-12-20 | 2020-05-12 | 北京理工大学 | 一种融合用户影响关系的在线社区好友推荐方法及系统 |
CN111523051A (zh) * | 2020-04-24 | 2020-08-11 | 山东师范大学 | 基于图卷积矩阵分解的社交兴趣推荐方法及系统 |
CN112507245A (zh) * | 2020-12-03 | 2021-03-16 | 中国人民大学 | 基于图神经网络的社交网络好友推荐方法 |
CN112836138A (zh) * | 2020-11-10 | 2021-05-25 | 北京小唱科技有限公司 | 用户推荐方法及装置 |
CN113010772A (zh) * | 2021-02-22 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、相关设备及计算机可读存储介质 |
-
2021
- 2021-10-11 CN CN202111181032.2A patent/CN113901333B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010048172A1 (en) * | 2008-10-20 | 2010-04-29 | Cascaad Srl | Social graph based recommender |
CN104239399A (zh) * | 2014-07-14 | 2014-12-24 | 上海交通大学 | 社交网络中的潜在好友推荐方法 |
CN110515986A (zh) * | 2019-08-27 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 一种社交网络图的处理方法、装置及存储介质 |
CN111143704A (zh) * | 2019-12-20 | 2020-05-12 | 北京理工大学 | 一种融合用户影响关系的在线社区好友推荐方法及系统 |
CN111523051A (zh) * | 2020-04-24 | 2020-08-11 | 山东师范大学 | 基于图卷积矩阵分解的社交兴趣推荐方法及系统 |
CN112836138A (zh) * | 2020-11-10 | 2021-05-25 | 北京小唱科技有限公司 | 用户推荐方法及装置 |
CN112507245A (zh) * | 2020-12-03 | 2021-03-16 | 中国人民大学 | 基于图神经网络的社交网络好友推荐方法 |
CN113010772A (zh) * | 2021-02-22 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、相关设备及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
Enhancing session-based social recommendation through item graph embedding and contextual friendship modeling;Pan Gu等;《Neurocomputing》;20210102;第35卷(第10期);190-202 * |
利用特征交叉与图结构的推荐算法研究及应用;王玮皓;《中国优秀硕士学位论文全文数据库 信息科技辑》;20210715(第07期);I138-833 * |
Also Published As
Publication number | Publication date |
---|---|
CN113901333A (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110162700B (zh) | 信息推荐及模型的训练方法、装置、设备以及存储介质 | |
CN113254803B (zh) | 一种基于多特征异质图神经网络的社交推荐方法 | |
WO2021203819A1 (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
CN114817663B (zh) | 一种基于类别感知图神经网络的服务建模与推荐方法 | |
CN111553754A (zh) | 行为预测系统的更新方法及装置 | |
CN111008336A (zh) | 一种内容推荐方法、装置、设备及可读存储介质 | |
CN112131261B (zh) | 基于社区网络的社区查询方法、装置和计算机设备 | |
CN112016002A (zh) | 融合评论文本层级注意力和时间因素的混合推荐方法 | |
CN114020999A (zh) | 一种电影社交网络的社区结构检测方法及系统 | |
CN116228368A (zh) | 一种基于深度多行为网络的广告点击率预测方法 | |
CN112241785B (zh) | 一种基于深度强化学习的图书采访方法 | |
CN113901333B (zh) | 一种融合了图结构与文本特征的好友推荐方法 | |
Du et al. | Research on Personalized Book Recommendation Based on Improved Similarity Calculation and Data Filling Collaborative Filtering Algorithm | |
CN115481236A (zh) | 一种基于用户兴趣建模的新闻推荐方法 | |
CN115114519A (zh) | 基于人工智能的推荐方法、装置、电子设备及存储介质 | |
CN114996566A (zh) | 一种面向工业互联网平台的智能推荐系统及方法 | |
CN114741515A (zh) | 基于图生成的社交网络用户属性预测方法及系统 | |
CN111581382B (zh) | 问答社区中的热门问题的预测方法及系统 | |
CN114398980A (zh) | 跨模态哈希模型的训练方法、编码方法、装置及电子设备 | |
CN107578326A (zh) | 一种推荐方法及系统 | |
CN116150470A (zh) | 内容推荐方法、装置、设备、存储介质及程序产品 | |
Niu et al. | Tourism event knowledge graph for attractions recommendation | |
CN111935259A (zh) | 目标帐号集合的确定方法和装置、存储介质及电子设备 | |
CN115374360B (zh) | 媒体资源的召回方法和媒体资源召回模型的训练方法 | |
CN117992680B (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 |