CN116756426A - 项目推荐方法、装置、计算机设备和存储介质 - Google Patents
项目推荐方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116756426A CN116756426A CN202310752872.2A CN202310752872A CN116756426A CN 116756426 A CN116756426 A CN 116756426A CN 202310752872 A CN202310752872 A CN 202310752872A CN 116756426 A CN116756426 A CN 116756426A
- Authority
- CN
- China
- Prior art keywords
- user
- node
- item
- project
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000003993 interaction Effects 0.000 claims abstract description 79
- 238000004590 computer program Methods 0.000 claims description 46
- 238000010586 diagram Methods 0.000 claims description 31
- 230000007246 mechanism Effects 0.000 claims description 15
- 230000004931 aggregating effect Effects 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/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
- G06N3/09—Supervised learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种项目推荐方法、装置、计算机设备和存储介质,应用于人工智能技术领域,还可应用于金融领域或其他领域。所述方法包括:获取目标用户的基本数据,通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。采用本方法能够提高项目推荐的准确性。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种项目推荐方法、装置、计算机设备和存储介质,可应用于金融领域或其他领域。
背景技术
随着金融项目种类的不断增加,为了便于向用户进行项目推荐,出现了应用于金融项目的项目推荐方法。具体为,通过图神经网络(GNN),根据用户的基本数据,构建用户-项目图,随后根据构建出的用户-项目图向用户进行项目推荐。
然而,采用目前的项目推荐方法,仅通过用户-项目图表示数据中间的协同关系,会出现由于用户基本数据中的信息量过大导致的无法准确提取出每一用户基本特征的问题,影响后续项目的推荐,亟需改进。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高项目推荐准确性的项目推荐方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种项目推荐方法。所述方法包括:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
在其中一个实施例中,项目推荐模型通过如下方式构建:
基于用户图,确定样本用户的基本特征;基于项目图,确定样本项目的项目特征;采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化;基于初始化的用户项目交互图,构建项目推荐模型。
在其中一个实施例中,用户图通过如下方式构建:
将样本用户作为用户图中的用户节点;根据样本用户的基本数据,构建用户图中用户节点之间的连接边;
相应的,基于用户图,确定样本用户的基本特征,包括:
针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;确定该用户节点与各关联节点之间的关联关系;根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
在其中一个实施例中,确定该用户节点与各关联节点之间的关联关系,包括:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
在其中一个实施例中,根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征,包括:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在其中一个实施例中,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度,包括:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
在其中一个实施例中,项目图通过如下方式构建:
将样本项目作为项目图中的项目节点;根据样本项目的项目数据,构建项目图中项目节点之间的连接边;
相应的,基于项目图,确定样本项目的项目特征,包括:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;确定该项目节点与各邻居节点之间的关联关系;根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
第二方面,本申请还提供了一种项目推荐装置。所述装置包括:
数据获取模块,用于获取目标用户的基本数据;
项目推荐模块,用于通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
上述项目推荐方法、装置、计算机设备和存储介质,引入了基于用户图、项目图和用户项目交互图构建的项目推荐模型,相比于相关技术,采用本方法通过单独建立用户图和项目图,能够在样本用户数据量过多的情况下,准确梳理样本用户之间的关系,以及样本项目之间的关系;进而,基于用户图、样本图和用户项目交互图,即可准确梳理用户和项目之间的关系,从而保证了项目推荐模型的准确性;因此通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目,能够提高项目推荐的准确性。
附图说明
图1为一个实施例中项目推荐方法的应用环境图;
图2为一个实施例中项目推荐方法的流程示意图;
图3为一个实施例中确定样本用户的基本特征的流程示意图;
图4为另一个实施例中确定样本用户的基本特征的流程示意图;
图5为一个实施例中确定样本项目的项目特征的流程示意图;
图6为另一个实施例中项目推荐方法的流程示意图;
图7为一个实施例中项目推荐装置的结构框图;
图8为另一个实施例中项目推荐装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的项目推荐方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。例如,目标用户的基本数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。例如,服务器104获取目标用户的基本数据,随后通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;进一步的,服务器104可以向终端102发送向目标用户推荐目标项目的相关信息,并在终端102上进行展示。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和物联网设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
随着金融项目种类的不断增加,为了便于向用户进行项目推荐,出现了应用于金融项目的项目推荐方法,通过图神经网络(GNN),根据用户的基本数据,构建用户-项目图,随后根据构建出的用户-项目图向用户进行项目推荐。
然而,采用目前的项目推荐方法,仅通过用户-项目图表示数据中间的协同关系,会出现由于用户基本数据中的信息量过大导致的无法准确提取出每一用户基本特征的问题,影响后续项目的推荐。
基于此,在一个实施例中,如图2所示,提供了一种项目推荐方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S201,获取目标用户的基本数据。
其中,本申请实施例的服务器中可集成有项目推荐平台,所谓目标用户即为已注册成为项目推荐平台的用户中的任一用户;进一步的,项目推荐平台中可具有一个或多个机构的项目;项目可以包括但不限于理财、基金等。目标用户的基本数据可以包括但不限于目标用户的性别、年龄、职业,以及资产情况等相关信息。
可选的,在目标用户登录推荐金融项目的相关应用后,服务器能够根据目标用户的注册信息,直接获取目标用户的基本数据。
S202,通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目。
可选的,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
其中,所谓用户图即为用于描述用户之间关系的一种图谱;样本用户指的是从已注册成为项目推荐平台的用户中所抽取的用户;可选的,可以根据已注册成为项目推荐平台的用户中每一用户的平台使用时长,来抽取样本用户。所谓项目图即为用于描述项目之间关系的图谱;样本项目指的是项目推荐平台中可以向用户进行推荐的所有项目。
项目数据可以包括但不限于项目的类型(如,基金、债券、储蓄等)、项目的发行机构,以及项目的发行时间等数据。所谓交互数据指的是样本用户在使用目标应用时产生的数据,如样本用户在目标应用上浏览某一项目产生的数据,或在目标应用上购买某一项目产生的数据。
一种构建用户图的方式可以是,将样本用户作为用户图中的用户节点;随后,根据样本用户的基本数据,构建用户图中用户节点之间的连接边。可选的,在将样本用户作为用户图中的用户节点后,针对每一用户节点,可以根据该用户节点对应的基本数据,与其他用户节点对应的基本数据中具有相关性的数据,确定与该用户存在关联关系的关联用户,随后构建该用户节点与关联用户节点之间的连接边,以形成用户图。
一种构建项目图的方式可以是,将样本项目作为项目图中的项目节点;随后,根据样本项目的项目数据,构建项目图中项目节点之间的连接边。可选的,在将样本项目作为项目图中的项目节点后,针对每一项目节点,可以根据该项目节点对应的基本数据,与其他项目节点对应的基本数据中具有相关性的数据,构建该项目节点与其他项目节点之间的连接边,以形成项目图。
一种构建用户项目交互图的方式可以是,将样本用户作为用户项目交互图中的用户节点,将样本项目作为用户项目交互图中的项目节点;随后,根据样本用户与样本项目之间的交互数据,构建用户节点与项目节点之间的关联关系,以形成用户项目交互图。
可选的,在构建用户图、项目图和用户项目交互图之后,可以分别对用户图和项目图进行预训练,以获取样本用户的基础特征和样本项目的基础特征;进而基于样本用户的基础特征和样本项目的基础特征,以及用户项目交互图,来构建项目推荐模型。
在构建项目推荐模型后,可以将获取到的用户基本数据直接输入到项目推荐模型中,项目推荐模型能够根据目标用户的基本数据,以及项目推荐模型中的参数,向目标用户推荐目标项目。
上述项目推荐方法中,引入了基于用户图、项目图和用户项目交互图构建的项目推荐模型,相比于相关技术,采用本方法通过单独建立用户图和项目图,能够在样本用户数据量过多的情况下,准确梳理样本用户之间的关系,以及样本项目之间的关系;进而,基于用户图、样本图和用户项目交互图,即可准确梳理用户和项目之间的关系,从而保证了项目推荐模型的准确性;因此通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目,能够提高项目推荐的准确性。
为了提高项目推荐的准确性,在上述实施例的基础上,在本实施例中,提供了一种构建项目推荐模型的可选方式,具体包括以下步骤。
第一步骤,基于用户图,确定样本用户的基本特征。
可选的,在构建出样本用户的用户图后,针对每一用户图中的用户节点,可以根据该用户节点与关联用户节点之间的关联关系,确定该用户节点对应样本用户的基本特征。
第二步骤,基于项目图,确定样本项目的项目特征。
可选的,在构建出样本项目的项目图后,针对每一项目图中的项目节点,可以根据该项目节点与其他项目节点之间的关联关系,确定该项目节点对应样本项目的项目特征。
第三步骤,采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化。
可选的,在构建用户项目交互图后,可以根据样本用户的基本特征对用户项目交互图中的用户节点进行初始化,根据样本项目的项目特征对用户项目交互图中的项目节点进行初始化,使得初始化后的用户项目交互图中能够包含样本用户的基本特征,以及样本项目的项目特征。
第四步骤,基于初始化的用户项目交互图,构建项目推荐模型。
可选的,在对用户项目交互图进行初始化后,可以采用初始化后的用户项目交互图对图神经网络模的网络参数进行初始化,随后,采用样本用户的基本数据和推荐项目,对图神经网络模型进行训练,以得到项目推荐模型。其中,推荐项目可以根据样本用户与样本项目的交互数据确定,在训练过程中作为监督数据。
进一步的,为了更好的学习用户与项目之间的交互特征,且一个用户与一个项目之间可能存在多种关系,因此本实施例可以引入注意力机制,将用户与项目之间的多种关系进行聚合。在模型训练过程中可以表示为:
其中,l是图神经网络的网络层数;ep表示用户项目交互图中用户节点p的嵌入;eq表示用户项目交互图中项目节点q的嵌入;em表示用户节点p和项目节点q之间的关系数据;αqm表示em的注意力权重;Wval表示注意力机制的权重矩阵;Aggr()表示聚合函数;σ为预设函数。
在本实施例中,分别采用用户图和项目图来确定样本用户的基本特征,以及样本项目的项目特征,能够使得所确定的样本用户的基础特征和样本项目的项目特征更为准确,进而采用准确的基础特征和项目特征,结合用户项目交互图,可得到准确的项目推荐模型。
为了提高样本用户基本特征获取的准确性,在上述实施例的基础上,在本实施例中,提供了一种确定样本用户基本特征的可选方式,如图3所示,具体包括以下步骤:
S301,针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点。
可以理解的是,由于用户图是基于各用户节点对应样本用户之间的关联性构建的,因此在确定用户图后,为了能够准确确定样本用户的基本特征,针对用户图中的任一用户节点,可以将与该用户节点相连接的用户节点,作为该用户节点的关联节点。
S302,确定该用户节点与各关联节点之间的关联关系。
其中,关联关系中可以包含多条关系数据,每一关系数据包括关系类型和关系值。例如,用户节点对应用户与某一关联节点对应用户的性别、年龄均相同,此时用户节点与该关联节点之间的关联关系中存在两条关系数据。
可选的,针对用户节点i与关联节点j,可以将用户节点i与关联节点j之间的一条关系数据定义为r=<t,v>,其中t为关系类型,v为关系值;随后,可以构建一个四元组(i,t,v,j),以表示用户节点i与关联节点j的连接边上的数据。
进一步的,针对用户节点i与关联节点j的任一条关系数据,可以采用公式(2)表示用户节点i与关联节点j之间的关联关系。其中,φ是合成算子;ei表示用户节点i在用户图中的嵌入;ej表示用户节点j在用户图中的嵌入;et表示关联类型在用户图中的嵌入;ev表示关系值在用户图中的嵌入。
ei=φ(ej,et,ev) (2)
随后,如公式(3)所示,可以将关系类型和关系值进行拼接。其中,||是拼接运算;此时关系数据可以采用en进行表示。进一步的,可以采用公式(4)表示上述公式(2)。
en=et||ev (3)
ei=φ(ej,en) (4)
可以理解的是,由于该用户节点i与关联节点j之间的关联关系中包含多条关联数据,因此,为了保证用户数据提取的准确性,可以将用户节点i与关联节点j在每一关联数据下的关联关系进行融合,作为用户节点i与关联节点j之间的关联关系。
进一步的,由于某一用户节点与任一关联节点之间存在多种关系数据,且各种关系数据的重要性不同,因此,为了保证关联关系确定的准确性,针对任一用户节点,可以采用注意力机制,为该用户节点与关联节点之间的多条关系数据分配注意力权重。
具体的,对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重,基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
可选的,在确定各关系数据的注意力权重后,针对用户节点i与关联节点j的任一条关系数据,可以对该关系数据分配对应的注意力权重,此时,用户节点i与关联节点j的关系数据可以采用公式(5)表示。其中,ajn表示关系数据en的注意力权重;Wval表示注意力机制的权重矩阵。
ei=αjnWvalφ(ej,en) (5)
进一步的,将各关系数据与其对应的注意力权重之积相加,作为该用户节点与该关联节点之间的关联关系。
S303,根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
可选的,针对任一用户节点,在确定该用户节点与各关联节点之间的关联关系后,可以将该用户节点与各关联节点之间的关联关系输入到特征提取模型中;随后,特征提取模型可以根据该用户节点与各关联节点之间的关联关系,以及模型本身的参数,确定该用户节点所对应的样本用户的基本特征。
在本实施例中,引入用户节点与各关联节点之间的关联关系,通过结合关联关系中的信息确定样本用户的基本特征,能够提高样本用户基本特征获取的准确性。
为了进一步的提高样本用户基本特征获取的准确性,在上述实施例的基础上,在本实施例中,提供了另一种确定样本用户基本特征的可选方式,如图4所示,具体包括以下步骤:
S401,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度。
可选的,针对任一用户节点,在得到该用户节点与各关联节点之间的关联关系,可以将该用户节点与各关联节点之间的关联关系输入到相似度模型中,相似度模型能够根据该用户节点与各关联节点之间的关联关系,以及模型本身的参数,确定该用户节点与各关联节点之间的相似度。
或者,可以采用以下步骤,确定该用户节点与各关联节点之间的相似度。
第一步骤,采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离。
可选的,如公式(6)所示,针对用户节点i,可以将该用户节点i与各关联节点(比如关联节点j)之间的关联关系输入到多层感知器中;由多层感知器提取出该用户节点与各关联节点之间关联关系的特征,并转换为距离,进而确定该用户节点与各关联节点之间的距离。
d(ei,ej)=||sigmoid(MLP(ei))-σ(MLP(ej))||1 (6)
其中,d(ei,ej)表示用户节点i与用户节点j之间的距离;sigmoid为激活函数;MLP为多层感知器可以感知关联节点j和用户节点i的相关信息;σ为预设函数。
进一步的,针对每一关联节点,结合激活函数以及多层感知器能将可以将用户节点i与该关联节点之间的关联关系投影为(0,1)中的某一数值,以表示用户节点与该关联节点之间的距离。其中,距离数值越小表示用户节点与关联节点之间的相似程度越高。
第二步骤,根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
可选的,由于距离数值越小表示用户节点与关联节点之间的相似程度越高,因此,在确定该用户节点与各关联节点之间的距离后,如公式(7)所示,可以采用数值1减去用户节点与各关联节点之间的距离,以得到用户节点与各关联节点之间的相似度。其中,s(ei,ej)表示用户节点i与关联节点j之间的相似度。
s(ei,ej)=1-d(ei,ej) (7)
S402,按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序。
可选的,由于用户图中的用户节点数量较大,每一用户节点均存在着大量关联节点,为了能够更加准确的提取出样本用户的基本特征,针对任一用户节点,可以比较该用户节点与各关联节点之间的相似度,并按照从大到小的顺序,对各关联节点进行排序。
S403,对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
可选的,由于每一用户节点存在的关联节点的数量不同,为了保证基本特征提取的准确性,可以采用自适应邻居采样器,对该用户节点对应的关联节点进行裁剪。例如可以是,针对每一用户节点,可以采用多层感知器基于用户节点与关联节点之间的相似度,参照排序关系,由前到后依次选取不同数量的关联节点,计算用户节点与关联节点之间的交叉熵的相似度损失;随后,以相似度损失值最小为目标,经过多次迭代,即可确定最优的关联节点数量,即预设数量。
进而,对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在本实施例中,引入相似度,能够选择出与用户节点相似程度更大的关联节点,并基于上述关联节点确定样本用户的基本特征,能够保证确定出的样本用户的基本特征更加准确。
为了提高样本项目基本特征获取的准确性,在上述实施例的基础上,在本实施例中,提供了一种确定样本项目基本特征的可选方式,如图5所示,具体包括以下步骤:
S501,针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点。
可以理解的是,由于项目图是基于各项目节点对应项目之间的关联性构建的,因此在确定项目图后,为了能够准确确定样本项目的项目特征,针对项目图中的任一项目节点,可以将与该项目节点相连接的项目节点作为,该项目节点的邻居节点。
S502,确定该项目节点与各邻居节点之间的关联关系。
可以理解的是,由于某一项目节点与任一邻居节点之间存在多种关系数据,且各种关系数据的重要性不同,因此,在确定项目节点与邻居节点之间的各关系数据后,针对任一项目节点,可以采用注意力机制,为该项目节点与任一邻居节点之间分配注意力权重,以保证关联关系的准确性。
可选的,对于每一邻居节点,可以采用注意力机制,确定该项目节点与该邻居节点之间各关系数据的注意力权重。进一步的,在确定各关系数据的注意力权重后,可以基于各关系数据和各关系数据的注意力权重,确定该项目节点与该邻居节点之间的关联关系。
S503,根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
可选的,针对任一项目节点,在确定该项目节点与各邻居节点之间的关联关系后,可以将该项目节点与各邻居节点之间的关联关系输入到特征提取模型中;随后,特征提取模型可以根据该项目节点与各邻居节点之间的关联关系,以及模型本身的参数,确定该项目节点所对应的样本项目的项目特征。
在本实施例中,引入项目节点与各邻居节点之间的关联关系,通过结合关联关系中的信息确定样本项目的项目特征,能够提高项目特征获取的准确性。
为了进一步的提高样本项目基本特征获取的准确性,在上述实施例的基础上,在本实施例中,提供了另一种确定样本项目基本特征的可选方式,具体包括以下步骤:
第一步骤,采用多层感知器,根据该项目节点与各邻居节点之间的关联关系,确定该项目节点与各邻居节点之间的距离。
可选的,针对任一项目节点,可以将该项目节点与各邻居节点之间的关联关系输入到多层感知器中,随后多层感知器可以提取出该项目节点与各邻居节点之间关联关系的特征,并转换为距离,进而确定该项目节点与各邻居节点之间的距离。
进一步的,针对每一邻居节点,结合激活函数以及多层感知器能将可以将项目节点与该邻居节点之间的关联关系投影为(0,1)中的某一数值,以表示项目节点与该邻居节点之间的距离。其中,距离数值越小表示项目节点与邻居节点之间的相似程度越高。
第二步骤,根据该项目节点与各邻居节点之间的距离,确定该项目节点与各邻居节点之间的相似度。
可选的,由于距离数值越小表示项目节点与邻居节点之间的相似程度越高,因此,在确定该项目节点与各邻居节点之间的距离后,可以采用数值1减去项目节点与各邻居节点之间的距离,以得到项目节点与各邻居节点之间的相似度。
第三步骤,按照从大到小的顺序,根据该项目节点与各邻居节点之间的相似度,对各邻居节点进行排序。
可选的,由于项目图中的项目节点数量较大,每一项目节点均存在着大量邻居节点,为了能够更加准确的提取出样本项目的项目特征,针对任一项目节点,可以比较该项目节点与各邻居节点之间的相似度,并按照从大到小的顺序,对各邻居节点进行排序。
第四步骤,对该项目节点与排序在前的预设数量个邻居节点之间的关联关系进行聚合,得到该项目节点所对应的样本项目的项目特征。
可选的,由于每一项目节点存在的邻居节点的数量不同,为了保证基本特征提取的准确性,针对每一项目节点,可以采用多层感知器基于项目节点与邻居节点之间的相似度,参照排序关系,由前到后依次选取不同数量的邻居节点,计算项目节点与邻居节点之间的交叉熵的相似度损失;随后,以相似度损失值最小为目标,经过多次迭代,即可确定最优的邻居节点数量。
进一步的,可以对该项目节点与排序在前的预设数量个邻居节点之间的关联关系进行聚合,得到该项目节点所对应的样本项目的项目特征。
在本实施例中,引入相似度,能够选择出与项目节点相似程度更大的邻居节点,并基于上述邻居节点确定样本项目的项目特征,能够保证确定出的项目特征更加准确。
图6为另一个实施例中项目推荐方法的流程示意图,在上述实施例的基础上,本实施例提供了一种项目推荐方法的可选实例。结合图6,具体实现过程如下:
S601,基于用户图,确定样本用户的基本特征。
可选的,可以将样本用户作为用户图中的用户节点,根据样本用户的基本数据,构建用户图中用户节点之间的连接边。
相应的,基于用户图,确定样本用户的基本特征,包括:
针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点,确定该用户节点与各关联节点之间的关联关系,根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
一种确定该用户节点与各关联节点之间的关联关系的可选方式为,对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重,其中,每一关系数据包括关系类型和关系值,基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
一种确定样本用户的基本特征的可选方式为,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度,按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序,对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
S602,基于项目图,确定样本项目的项目特征。
可选的,可以将样本项目作为项目图中的用户节点,根据样本项目的基本数据,构建项目图中用户节点之间的连接边。
相应的,基于项目图,确定样本项目的项目特征,包括:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点,确定该项目节点与各邻居节点之间的关联关系,根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
一种确定该项目节点与各邻居节点之间的关联关系的可选方式为,对于每一邻居节点,采用注意力机制,确定该项目节点与该邻居节点之间各关系数据的注意力权重,其中,每一关系数据包括关系类型和关系值,基于各关系数据和各关系数据的注意力权重,确定该项目节点与该邻居节点之间的关联关系。
一种确定样本项目的项目特征的可选方式为,根据该项目节点与各邻居节点之间的关联关系,确定该项目节点与各邻居节点之间的相似度,按照从大到小的顺序,根据该项目节点与各邻居节点之间的相似度,对各邻居节点进行排序,对该项目节点与排序在前的预设数量个邻居节点之间的关联关系进行聚合,得到该项目节点所对应的样本项目的项目特征。
S603,采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化。
S604,基于初始化的用户项目交互图,构建项目推荐模型。
其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
S605,获取目标用户的基本数据。
S606,通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目。
上述S601-S606的具体过程可以参见上述方法实施例的描述,其实现原理和技术效果类似,在此不再赘述。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的项目推荐方法的项目推荐装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个项目推荐装置实施例中的具体限定可以参见上文中对于项目推荐方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种项目推荐装置1,包括数据获取模块10和项目推荐模块20,其中:
数据获取模块10,用于获取目标用户的基本数据;
项目推荐模块20,用于通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
在一个实施例中,如图8所示,项目推荐装置1还包括模型构建模块30,其中,模型构建模块30包括:
第一特征单元31,用于基于用户图,确定样本用户的基本特征;
第二特征单元32,用于基于项目图,确定样本项目的项目特征;
初始化单元33,用于采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化;
模型构建单元34,用于基于初始化的用户项目交互图,构建项目推荐模型。
在一个实施例中,模型构建模块30中还包括用户图构建单元,其中,用户图构建单元具体用于:
将样本用户作为用户图中的用户节点;根据样本用户的基本数据,构建用户图中用户节点之间的连接边。
相应的,第一特征单元31,包括:
第一子单元,用于针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;
第二子单元,用于确定该用户节点与各关联节点之间的关联关系;
第三子单元,用于根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
在一个实施例中,第二子单元具体用于:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
在一个实施例中,第三子单元具体用于:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在一个实施例中,第三子单元还具体用于:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
在一个实施例中,模型构建模块30中还包括项目图构建单元,其中,项目图构建单元具体用于:
将样本项目作为项目图中的项目节点;根据样本项目的项目数据,构建项目图中项目节点之间的连接边。
相应的,第二特征单元32,具体用于:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;确定该项目节点与各邻居节点之间的关联关系;根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
上述项目推荐装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基本信息数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种项目推荐方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
在一个实施例中,处理器在执行计算机程序中构建项目推荐模型的逻辑时,具体可实现以下步骤:
基于用户图,确定样本用户的基本特征;基于项目图,确定样本项目的项目特征;采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化;基于初始化的用户项目交互图,构建项目推荐模型。
在一个实施例中,处理器在执行计算机程序中构建用户图的逻辑时,具体可实现以下步骤:
将样本用户作为用户图中的用户节点;根据样本用户的基本数据,构建用户图中用户节点之间的连接边。
相应的,在一个实施例中,处理器在执行计算机程序中基于用户图,确定样本用户的基本特征的逻辑时,具体可实现以下步骤:
针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;确定该用户节点与各关联节点之间的关联关系;根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
在一个实施例中,处理器在执行计算机程序中确定该用户节点与各关联节点之间的关联关系的逻辑时,具体可实现以下步骤:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
在一个实施例中,处理器在执行计算机程序中根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征的逻辑时,具体可实现以下步骤:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在一个实施例中,处理器在执行计算机程序中根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度的逻辑时,具体可实现以下步骤:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
在一个实施例中,处理器在执行计算机程序中构建项目图的逻辑时,具体可实现以下步骤:
将样本项目作为项目图中的项目节点;根据样本项目的项目数据,构建项目图中项目节点之间的连接边。
相应的,在一个实施例中,处理器在执行计算机程序中基于项目图,确定样本项目的项目特征的逻辑时,具体可实现以下步骤:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;确定该项目节点与各邻居节点之间的关联关系;根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
在一个实施例中,计算机程序中构建项目推荐模型的这一代码逻辑被处理器执行时,具体实现以下步骤:
基于用户图,确定样本用户的基本特征;基于项目图,确定样本项目的项目特征;采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化;基于初始化的用户项目交互图,构建项目推荐模型。
在一个实施例中,计算机程序中构建用户图的这一代码逻辑被处理器执行时,具体实现以下步骤:
将样本用户作为用户图中的用户节点;根据样本用户的基本数据,构建用户图中用户节点之间的连接边。
相应的,在一个实施例中,计算机程序中基于用户图,确定样本用户的基本特征的这一代码逻辑被处理器执行时,具体实现以下步骤:
针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;确定该用户节点与各关联节点之间的关联关系;根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
在一个实施例中,计算机程序中确定该用户节点与各关联节点之间的关联关系的这一代码逻辑被处理器执行时,具体实现以下步骤:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
在一个实施例中,计算机程序中根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征的这一代码逻辑被处理器执行时,具体实现以下步骤:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在一个实施例中,计算机程序中根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度的这一代码逻辑被处理器执行时,具体实现以下步骤:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
在一个实施例中,计算机程序中构建项目图的这一代码逻辑被处理器执行时,具体实现以下步骤:
将样本项目作为项目图中的项目节点;根据样本项目的项目数据,构建项目图中项目节点之间的连接边。
在一个实施例中,计算机程序中基于项目图,确定样本项目的项目特征的这一代码逻辑被处理器执行时,具体实现以下步骤:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;确定该项目节点与各邻居节点之间的关联关系;根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标用户的基本数据;
通过项目推荐模型,根据目标用户的基本数据,向目标用户推荐目标项目;其中,项目推荐模型是根据用户图、项目图和用户项目交互图构建的,用户图是根据样本用户的基本数据构建的,项目图是根据样本项目的项目数据构建的,用户项目交互图是根据样本用户与样本项目之间的交互数据构建的。
在一个实施例中,计算机程序被处理器执行构建项目推荐模型的操作时,具体实现以下步骤:
基于用户图,确定样本用户的基本特征;基于项目图,确定样本项目的项目特征;采用样本用户的基本特征和样本项目的项目特征,对用户项目交互图进行初始化;基于初始化的用户项目交互图,构建项目推荐模型。
在一个实施例中,计算机程序被处理器执行构建用户图的操作时,具体实现以下步骤:
将样本用户作为用户图中的用户节点;根据样本用户的基本数据,构建用户图中用户节点之间的连接边。
相应的,在一个实施例中,计算机程序被处理器执行基于用户图,确定样本用户的基本特征的操作时,具体实现以下步骤:
针对用户图中的任一用户节点,将用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;确定该用户节点与各关联节点之间的关联关系;根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
在一个实施例中,计算机程序被处理器执行确定该用户节点与各关联节点之间的关联关系的操作时,具体实现以下步骤:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
在一个实施例中,计算机程序被处理器执行根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征的操作时,具体实现以下步骤:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
在一个实施例中,计算机程序被处理器执行根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度的操作时,具体实现以下步骤:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
在一个实施例中,计算机程序被处理器执行构建项目图的操作时,具体实现以下步骤:
将样本项目作为项目图中的项目节点;根据样本项目的项目数据,构建项目图中项目节点之间的连接边。
在一个实施例中,计算机程序被处理器执行基于项目图,确定样本项目的项目特征的操作时,具体实现以下步骤:
针对项目图中的任一项目节点,将项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;确定该项目节点与各邻居节点之间的关联关系;根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
需要说明的是,本申请所涉及的用户信息(包括但不限于样本用户信等)和数据(包括但不限于用户基本数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种项目推荐方法,其特征在于,所述方法包括:
获取目标用户的基本数据;
通过项目推荐模型,根据所述目标用户的基本数据,向所述目标用户推荐目标项目;其中,所述项目推荐模型是根据用户图、项目图和用户项目交互图构建的,所述用户图是根据样本用户的基本数据构建的,所述项目图是根据样本项目的项目数据构建的,所述用户项目交互图是根据所述样本用户与所述样本项目之间的交互数据构建的。
2.根据权利要求1所述的方法,其特征在于,所述项目推荐模型通过如下方式构建:
基于所述用户图,确定所述样本用户的基本特征;
基于所述项目图,确定所述样本项目的项目特征;
采用所述样本用户的基本特征和所述样本项目的项目特征,对所述用户项目交互图进行初始化;
基于初始化的用户项目交互图,构建所述项目推荐模型。
3.根据权利要求2所述的方法,其特征在于,所述用户图通过如下方式构建:
将所述样本用户作为所述用户图中的用户节点;
根据所述样本用户的基本数据,构建所述用户图中用户节点之间的连接边;
相应的,所述基于所述用户图,确定所述样本用户的基本特征,包括:
针对所述用户图中的任一用户节点,将所述用户图中与该用户节点相连接的用户节点,作为该用户节点的关联节点;
确定该用户节点与各关联节点之间的关联关系;
根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征。
4.根据权利要求3所述的方法,其特征在于,所述确定该用户节点与各关联节点之间的关联关系,包括:
对于每一关联节点,采用注意力机制,确定该用户节点与该关联节点之间各关系数据的注意力权重;其中,每一关系数据包括关系类型和关系值;
基于各关系数据和各关系数据的注意力权重,确定该用户节点与该关联节点之间的关联关系。
5.根据权利要求3所述的方法,其特征在于,所述根据该用户节点与各关联节点之间的关联关系,确定该用户节点所对应的样本用户的基本特征,包括:
根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度;
按照从大到小的顺序,根据该用户节点与各关联节点之间的相似度,对各关联节点进行排序;
对该用户节点与排序在前的预设数量个关联节点之间的关联关系进行聚合,得到该用户节点所对应的样本用户的基本特征。
6.根据权利要求5所述的方法,其特征在于,所述根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的相似度,包括:
采用多层感知器,根据该用户节点与各关联节点之间的关联关系,确定该用户节点与各关联节点之间的距离;
根据该用户节点与各关联节点之间的距离,确定该用户节点与各关联节点之间的相似度。
7.根据权利要求2所述的方法,其特征在于,所述项目图通过如下方式构建:
将所述样本项目作为所述项目图中的项目节点;
根据所述样本项目的项目数据,构建所述项目图中项目节点之间的连接边;
相应的,所述基于所述项目图,确定所述样本项目的项目特征,包括:
针对所述项目图中的任一项目节点,将所述项目图中与该项目节点相连接的项目节点,作为该项目节点的邻居节点;
确定该项目节点与各邻居节点之间的关联关系;
根据该项目节点与各邻居节点之间的关联关系,确定该项目节点所对应的样本项目的项目特征。
8.一种项目推荐装置,其特征在于,所述装置包括:
数据获取模块,用于获取目标用户的基本数据;
项目推荐模块,用于通过项目推荐模型,根据所述目标用户的基本数据,向所述目标用户推荐目标项目;其中,所述项目推荐模型是根据用户图、项目图和用户项目交互图构建的,所述用户图是根据样本用户的基本数据构建的,所述项目图是根据样本项目的项目数据构建的,所述用户项目交互图是根据所述样本用户与所述样本项目之间的交互数据构建的。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310752872.2A CN116756426A (zh) | 2023-06-25 | 2023-06-25 | 项目推荐方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310752872.2A CN116756426A (zh) | 2023-06-25 | 2023-06-25 | 项目推荐方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116756426A true CN116756426A (zh) | 2023-09-15 |
Family
ID=87949369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310752872.2A Pending CN116756426A (zh) | 2023-06-25 | 2023-06-25 | 项目推荐方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116756426A (zh) |
-
2023
- 2023-06-25 CN CN202310752872.2A patent/CN116756426A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150278350A1 (en) | Recommendation System With Dual Collaborative Filter Usage Matrix | |
CN109993627B (zh) | 推荐方法、推荐模型的训练方法、装置和存储介质 | |
CN113538070B (zh) | 用户生命价值周期检测方法、装置和计算机设备 | |
CN113656699B (zh) | 用户特征向量确定方法、相关设备及介质 | |
CN111159563A (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
CN113689285A (zh) | 一种检测用户特征的方法、装置、设备及存储介质 | |
CN114821140A (zh) | 基于曼哈顿距离的图像聚类方法、终端设备及存储介质 | |
CN114417161A (zh) | 基于异构图的虚拟物品时序推荐方法、装置、介质及设备 | |
CN111767474A (zh) | 一种基于用户操作行为构建用户画像的方法及设备 | |
CN117033765A (zh) | 业务推荐方法、装置、计算机设备和存储介质 | |
CN117688390A (zh) | 内容匹配方法、装置、计算机设备、存储介质和程序产品 | |
CN116756426A (zh) | 项目推荐方法、装置、计算机设备和存储介质 | |
CN117634751B (zh) | 数据要素评估方法、装置、计算机设备以及存储介质 | |
CN116882408B (zh) | 变压器图模型的构建方法、装置、计算机设备和存储介质 | |
CN116777529B (zh) | 一种对象推荐的方法、装置、设备、存储介质及程序产品 | |
CN117078427A (zh) | 产品推荐方法、装置、设备、存储介质和程序产品 | |
CN117350801A (zh) | 虚拟产品推荐方法、装置、计算机设备、存储介质和产品 | |
CN116881546A (zh) | 资源推荐方法、装置、设备和存储介质 | |
CN118411228A (zh) | 产品推荐方法、装置、设备、存储介质和程序产品 | |
Campobello et al. | An efficient algorithm for parallel distributed unsupervised learning | |
CN107885757B (zh) | 图像检索的方法及装置 | |
CN116881543A (zh) | 金融资源对象推荐方法、装置、设备、存储介质和产品 | |
CN118227677A (zh) | 信息推荐及信息推荐模型处理方法、装置、设备和介质 | |
CN117436974A (zh) | 产品推荐方法、装置、计算机设备和存储介质 | |
CN116910604A (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 |