CN115238191A - 对象推荐方法以及装置 - Google Patents
对象推荐方法以及装置 Download PDFInfo
- Publication number
- CN115238191A CN115238191A CN202210977110.8A CN202210977110A CN115238191A CN 115238191 A CN115238191 A CN 115238191A CN 202210977110 A CN202210977110 A CN 202210977110A CN 115238191 A CN115238191 A CN 115238191A
- Authority
- CN
- China
- Prior art keywords
- interaction
- user
- domain
- feature vector
- information
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/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/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供对象推荐方法以及装置,其中对象推荐方法包括:获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互;基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象;向目标用户推荐目标交互对象。本方案在做对象推荐时不仅考虑了用户与交互对象的域内交互信息还考虑了用户与交互对象之间更高阶更深层次的跨域交互信息,则确定的目标交互对象更加符合目标用户的喜好,提高了对象推荐的准确性。
Description
技术领域
本说明书实施例涉及数据处理技术领域,特别涉及一种对象推荐方法。
背景技术
随着互联网的快速发展,网络上信息资源迅猛增长,用户从海量的文本、视频、图像和商品等资源中找到符合自己需求的信息变得十分困难。为了改善用户体验,推出了能够为用户进行个性化推荐的推荐系统,该推荐系统通过对用户的历史行为数据的研究,统计分析出用户的兴趣偏好,从而向用户推荐符合其需求的资源。
但目前不少的项目遇到了数据稀疏的问题,这一问题导致很多推荐系统的推荐效果受影响,为了解决这一问题,跨域推荐方法(CDR,Cross-domain Recommendation)被提出,即针对某数据域数据稀疏的问题,可以根据用户在其他数据域的历史行为数据为用户在该数据域推荐对象,但由于该种方式涉及到跨域,相对于域内推荐的方式准确性比较低,因此,亟需一种能够准确实现对象推荐的方法。
发明内容
有鉴于此,本说明书实施例提供了一种对象推荐方法。本说明书一个或者多个实施例同时涉及一种对象推荐装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种对象推荐方法,包括:
获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,所述域内交互信息表征数据域内部用户与交互对象的交互,所述跨域交互信息表征多个数据域之间用户与交互对象的间接交互;
基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象;
向所述目标用户推荐所述目标交互对象。
根据本说明书实施例的第二方面,提供了一种对象推荐装置,包括:
获取模块,被配置为获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,所述域内交互信息表征数据域内部用户与交互对象的交互,所述跨域交互信息表征多个数据域之间用户与交互对象的间接交互;
确定模块,被配置为基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象;
推荐模块,被配置为向所述目标用户推荐所述目标交互对象。
根据本说明书实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述对象推荐方法的步骤。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述对象推荐方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述对象推荐方法的步骤。
本说明书一个实施例实现了获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互;基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象;向目标用户推荐该目标交互对象。即在本方案中,预先学习了数据域内部用户与交互对象的域内交互信息,以及不同数据域之间用户与交互对象的跨域交互信息,由于用户与交互对象在域内有交互说明用户对该交互对象很感兴趣,则可以向用户推荐该交互对象,而不同数据域之间用户与交互对象存在间接交互关系,说明用户与交互对象可能目前没有交互,但根据用户之间的跨域关联、交互对象之间的跨域关联、以及用户与交互对象的域内交互关系,可以确定该用户与该交互对象很可能会有交互,所以在向用户推荐对象时可以推荐该交互对象,即本方案提取了用户与交互对象之间更高阶更深层次的跨域交互信息,在做对象推荐时考虑了更丰富的交互信息,则确定的目标交互对象更加符合目标用户的喜好,提高了对象推荐的准确性,并且在某个数据域数据稀疏的情况下,由于提取了不同数据域之间用户与交互对象的间接交互关系,则能够基于该间接交互关系为用户在该数据域实现精准地对象推荐。
附图说明
图1示出了根据本说明书一个实施例提供的一种在对象推荐系统下执行对象推荐方法的处理流程图;
图2示出了根据本说明书一个实施例提供的另一种在对象推荐系统下执行对象推荐方法的处理流程图;
图3示出了根据本说明书一个实施例提供的一种对象推荐方法的流程图;
图4示出了根据本说明书一个实施例提供的一种目标交互对象显示的页面示意图;
图5示出了根据本说明书一个实施例提供的一种推荐模型训练方法的流程图;
图6示出了根据本说明书一个实施例提供的一种域内交互图的示意图;
图7示出了根据本说明书一个实施例提供的一种跨域交互图的示意图;
图8示出了根据本说明书一个实施例提供的另一种跨域交互图的示意图;
图9示出了根据本说明书一个实施例提供的又一种跨域交互图的示意图;
图10示出了根据本说明书一个实施例提供的一种基于跨域交互图确定关联特征向量的示意图;
图11示出了根据本说明书一个实施例提供的一种特征向量的处理流程图;
图12示出了根据本说明书一实施例提供的一种推荐模型训练方法的流程图;
图13示出了本说明书一个实施例提供的一种应用于流量营销场景的对象推荐方法的处理过程流程图;
图14示出了本说明书一个实施例提供的一种对象推荐装置的结构示意图;
图15示出了根据本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
图(Graph):图是描述于一组对象的结构,其中某些对象对在某种意义上是“相关的”。这些对象对应于称为顶点的数学抽象(也称为节点或点),并且每个相关的顶点对都称为边(也称为链接或线)。
图神经网络:是一种能处理图结构数据的神经网络,通过对目标结点的邻域进行信息聚合或传递,从而更新结点上的特征,进而进行下游任务的神经网络。
超图(Hyper Graph):每一个边都包含两个以上节点的图,相比于普通图,具有描述节点间高阶关系的能力。
超图神经网络:是一种能够处理超图结构数据的神经网络,能够学习到节点之间的高阶关系。
Embedding:在深度学习网络模型中常见的一个层,主要是用来处理稀疏特征的向量表示。它不但可以解决one-hot向量的长度问题,还可以将特征之间的相似性表征出来。
域(domain):机器学习领域中,通常将拥有同一数据分布的样本集称为一个“域”,推荐系统中域的概念主要是根据不同项目场景进行划分,比如“书籍推荐”和“电影推荐”属于两个不同的域。
双曲空间:拥有负常曲率(constant negative curvature)的流形空间,其具有表达层次结构的能力,例如数据本身具有一定的层次结构,则可以在双曲空间里面复原这种层次结构。
域内交互信息:表示同一个数据域内部用户与交互对象的交互关系。例如,在数据域1中,用户A与交互对象z存在交互关系,该种关系可以成为域内交互信息。
跨域交互信息:表示不同的数据域之间用户与交互对象的间接交互关系。例如,在数据域1中,用户A和用户B均与交互对象z存在交互关系,在数据域2中,用户A与交互对象m存在交互关系,但用户B在数据域中没有历史数据,则可以确定用户B与数据域2中的交互对象m之间存在间接交互关系,该种关系可以成为跨域交互信息。
机器学习模型:是一种算法的表达,可通过梳理海量数据来查找模式或进行预测。机器学习模型由数据助力,是人工智能的数学引擎。
域内交互图:根据同一个数据域中用户和交互对象的交互关系构建的异构图。
跨域交互图:根据不同数据域之间用户和用户的关联关系构建的超图,或者,根据不同数据域之间交互对象和交互对象的关联关系构建的超图。
交互标签:用于表征用户与交互对象的是否存在交互关系,是推荐模型训练中标签。
特征提取层:用于对输入的向量进行线性映射、非线性变换、以及特征提取的层。
全连接层:用于把之前提取到的所有特征向量(得到的高维特征图)映射成一维特征向量,该特征向量包含所有特征信息,可以转化为预测交互指标。
One-hot编码:又称独热编码,是一种特征提取的方法,其实就是用N位状态寄存器编码N个状态,每个状态都有独立的寄存器位,且这些寄存器位中只有一位有效。
随着智能化推荐的普及,不少的项目遇到了数据稀疏的问题,也即少部分用户贡献了大部分的user-item(用户-物品)交互。这一问题导致很多推荐系统的长尾用户(即数量大但带来利润小的用户)/物品和新用户/物品(冷启动)的推荐效果受影响。
为了解决这一问题,跨域推荐方法(CDR)被学者提出。CDR可以迁移信息丰富的域的知识到数据稀疏的域中,以帮助其提升效果。CDR问题按照目标往往被分为三类,STCDR(Single-Target Cross-Domain Recommendation单目标跨域推荐),DTCDR(Dual-TargetCross-Domain Recommendation,双目标跨域推荐)和MTCDR(Multi-Target Cross-DomainRecommendation,多目标跨域推荐)。STCDR是利用信息丰富的A域提升数据稀疏的B域效果,DTCDR是同时提升A域和B域的效果。MTCDR相对于它们更加复杂,是同时提升多个域(3个及以上)的效果。
CDR的核心问题是如何以较佳的方式实现域间信息的迁移。在许多研究中,将STCDR和DTCDR的域间信息传递使用embedding(特征向量)迁移或者内容迁移的方法。这一方法通常是基于域之间的common users(共有用户)或者common items(共有物品),使用embedding或者属性特征映射的方式来实现迁移学习。该做法在STCDR和DTCDR中表现都不错。但如果直接生搬硬套这样的思路到MTCDR,则会是一个灾难,因为它们基本都是pair-wise(成对组合)的做法,如果在MTCDR中使用,构建pair-wise的复杂度将会是N^2复杂度,这是比较难实现的。
并且,经典的用于跨域推荐的图方案有Hero Graph框架,它首次将图方法引入了MTCDR,他们将多个领域的user和item作为不同节点构建了一个域间共享的异构图,如果一个user购买了一个item,则它们构成边。然后先对每个域单独建模,再利用共享的异构图来处理跨域信息。Hero Graph为MTCDR提供了一个很好的解决思路,但它也存在着两个缺点。一是没有考虑用户-物品交互数据中更高阶的相关关系,因为现实世界中推荐系统的复杂度较高,普通图方法的两两关系建模已经难表征;二是忽略了用户和物品之间的层次关系,比如商品,通常会存在流行度(热度)、类目结构(类别)等层次关系,通过graph embedding难以捕捉这样的关系信息。
为此,本说明书提供了一种对象推荐方法,能够解决上述问题,其具体实现可以参见下述各个实施例的相关描述。
在本说明书中,提供了一种对象推荐方法,本说明书同时涉及一种对象推荐装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
参见图1,图1示出了根据本说明书一个实施例提供的一种在对象推荐系统下执行对象推荐方法的处理流程图。
如图1所示,该对象推荐系统包括服务器101和客户端102。服务器101可以为客户端102提供后台服务。用户在客户端102中进行注册或登录,则客户端102能够根据用户操作获取到用户的用户信息,服务器101可以从客户端102获取到目标用户的用户信息,然后域内交互信息和跨域交互信息是预先学习的,可以认为存储在服务器101中,则服务器101可以从本地获取到域内交互信息和跨域交互信息,该域内交互信息表征数据域内部用户与交互对象的交互,该跨域交互信息表征多个数据域之间用户与交互对象的间接交互,然后基于用户信息、域内交互信息和跨域交互信息,确定目标交互对象,再将目标交互对象发送至该目标用户的客户端102,即向目标用户推荐目标交互对象,客户端102接收到目标交互对象后进行展示,则用户能够看到推荐的目标交互对象。
本说明书实施例提供的对象推荐方法,预先学习了数据域内部用户与交互对象的域内交互信息,以及不同数据域之间用户与交互对象的跨域交互信息,由于用户与交互对象在域内有交互说明用户对该交互对象很感兴趣,则可以向用户推荐该交互对象,而不同数据域之间用户与交互对象存在间接交互关系,说明用户与交互对象可能目前没有交互,但根据用户之间的跨域关联、交互对象之间的跨域关联、以及用户与交互对象的域内交互关系,可以确定该用户与该交互对象很可能会有交互,所以在向用户推荐对象时可以推荐该交互对象,即本方案提取了用户与交互对象之间更高阶更深层次的跨域交互信息,在做对象推荐时考虑了更丰富的交互信息,则确定的目标交互对象更加符合目标用户的喜好,提高了对象推荐的准确性,并且在某个数据域数据稀疏的情况下,由于提取了不同数据域之间用户与交互对象的间接交互关系,则能够基于该间接交互关系为用户在该数据域实现精准地对象推荐。
参见图2,图2示出了根据本说明书一个实施例提供的另一种在对象推荐系统下执行对象推荐方法的处理流程图。
如图2所示,对象推荐系统包括服务器101和客户端102,服务器101包括训练单元1011和应用单元1012。
服务器的训练单元1011从客户端102获取至少两个数据域的多个样本组和每个样本组对应的交互标签,基于多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图,利用图神经网络确定域内交互图中用户的交互特征向量和交互对象的交互特征向量,并利用超图神经网络确定跨域交互图中每个节点的关联特征向量,再根据关联特征向量和交互特征向量确定每个样本组对应的预测交互指标,该预测交互指标用于表征用户与交互对象产生交互的概率,再基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整推荐模型的参数,直至达到训练停止条件,获得训练完成的推荐模型,且由于交互特征向量的计算过程是根据节点与其邻居节点的特征信息聚合得到的,因此可以认为在确定交互特征向量的过程中图神经网络模型学习到了用户与交互对象的域内交互信息,由于关联特征向量是根据参考节点的特征信息、以及与参考节点对应相同超边的其他节点的特征信息确定的,且超图中的节点之间是跨域关联的关系,因此可以认为在确定节点的关联特征向量的过程中超图神经网络学习到了节点之间的跨域交互信息。
然后服务器的训练单元1011将训练完成的推荐模型发送至服务器的应用单元1012,服务器的应用单元1012从客户端102获取到目标用户的用户信息,将用户信息输入推荐模型,经推荐模型利用域内交互信息和跨域交互信息对用户信息进行运算,确定目标交互对象,然后服务器的应用单元1012将目标交互对象发送至客户端102,客户端102为目标用户展示该目标交互对象。
本说明书实施例提供的对象推荐方法,先训练得到推荐模型,即根据样本组和样本组对应的交互标签,确定关联特征向量、用户的交互特征向量和交互对象的交互特征向量,且在确定关联特征向量的过程中学习到跨域交互信息,在确定交互特征向量的过程中学习到域内交互信息,然后根据关联特征向量和交互特征向量确定每个样本组中用户与交互对象之间的预测交互指标,根据预测交互指标和交互标签调整推荐模型的参数,直至达到训练停止条件,完成对推荐模型的训练。将获取到的用户信息输入该推荐模型,根据域内交互信息和跨域交互信息对用户信息进行处理,确定为目标用户推荐的目标交互对象。即在进行对象推荐时不仅考虑了真实与用户有交互的交互对象,还考虑了根据跨域交互信息确定的可能与用户产生交互的交互对象,基于该更全面的信息推荐的目标交互对象会更加符合目标用户的兴趣,即该对象推荐的结果准确性更高。
参见图3,图3示出了根据本说明书一个实施例提供的一种对象推荐方法的流程图,具体可以包括以下步骤。
步骤302:获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互。
其中,目标用户可以是等待客户端向其推荐交互对象的用户。用户信息可以包括能够唯一标识一个用户的信息,例如,用户信息可以是用户标识,如用户账号、用户昵称、用户ID等;用户信息还可以包括能够表征用户的兴趣爱好或喜好的信息,例如,用户信息可以是用户的属性信息,如用户的基本资料、用户的历史行为数据等,其中,用户的历史行为数据可以包括用户的点赞、收藏、评论、转发、关注、分享、浏览等信息。
其中,交互对象可以是数据域中为用户展示的各种信息。例如,交互对象可以是广告、文字、链接、图片、视频、商品等等。
其中,数据域可以是根据不同的项目场景划分的不同项目对应的数据组成的域。例如,购物场景、视频播放场景、音乐播放场景分别对应不同的数据域。
作为一种示例,用户与交互对象的交互可以是用户对交互对象的点击、浏览、播放、转化、充值、购买、收藏、评论等等操作。例如,若在数据域1内,用户A访问了交互对象a,则可以确定用户A与交互对象a之间存在交互关系,这便是域内交互信息。
作为一种示例,间接交互是指目前没有交互但预测可能存在交互,用户与交互对象的间接交互是指该用户与该交互对象目前没有交互但根据该用户与其他交互对象的交互和/或其他用户与该交互对象的交互判断该用户与该交互对象可能存在交互。也即是,不同数据域之间用户与交互对象的间接交互可以理解为,用户与该交互对象之间没有产生交互,但根据与该用户关联的其他用户与该交互对象的交互关系,和/或,根据与该交互对象关联的其他交互对象与该用户的交互关系,可以确定用户与该交互对象可能会产生交互。例如,用户A在数据域1浏览了交互对象a,在数据域2购买了交互对象b,用户B在数据域1浏览了交互对象a,则可以确定用户B与数据域2中的交互对象b存在间接交互关系,在数据域2中,用户B也有可能购买交互对象b,这便是跨域交互信息。
在本说明书一个或多个实施例中,由于有些数据域存在数据稀疏的问题,则仅根据该数据域内部用户与交互对象之间的交互关系无法很精准地为用户推荐交互对象;或者,有些用户第一次使用某个数据域对应的软件(即冷启动问题),则在该数据域中没有该用户的历史行为数据作参考,若要给该用户推荐交互对象,初始很难实现精准推荐。因此,本方案预先学习了跨域交互信息,即多个数据域之间用户与交互对象的间接交互关系,则能够实现根据其他数据域的数据为该用户在该数据域推荐交互对象的效果。
在一些实施例中,目标用户的用户信息可以是从客户端获取的,用户要使用客户端则会注册或登录,则客户端根据用户输入的信息能够获取到用户的用户信息,并将用户信息发送至服务器,则服务器可以获取到目标用户的用户信息。预先学习得到的域内交互信息和跨域交互信息可以是通过对多个数据域中用户和交互对象的历史交互数据进行处理学习到的,可以存储在服务器的本地缓存中,则服务器可以从本地缓存中获取到预先学习到的域内交互信息和跨域交互信息。
在本说明书实施例中,由于在确定目标交互对象时需要用到目标用户的用户信息、预先学习的域内交互信息和跨域交互信息,因此本步骤先获取这些信息,为后续确定目标交互对象提供数据基础。
步骤304:基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象。
其中,目标交互对象是为目标用户推荐的较符合目标用户喜好的交互对象,是目标用户很有可能交互的交互对象。
在本说明书一种可能的实现方式中,域内交互信息和跨域交互信息为对推荐模型预先训练得到,推荐模型为机器学习模型;
基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象的具体实现可以包括:
将用户信息输入推荐模型,经推荐模型利用域内交互信息和跨域交互信息对用户信息进行运算,获得目标交互对象。
其中,推荐模型是用于为用户推荐目标交互对象的机器学习模型,可预先训练得到。
也就说,可以通过对推荐模型进行训练,预先学习到域内交互信息和跨域交互信息,即在本方案中,可以通过推荐模型为目标用户推荐目标交互对象。
在本说明书一些实施例中,对推荐模型预先训练,使得推荐模型能够学习到域内交互信息和跨域交互信息,也可以理解为将域内交互信息和跨域交互信息作为推荐模型的参数,将用户信息输入推荐模型后,可以利用域内交互信息和跨域交互信息对用户信息进行处理,则该推荐模型可以输出目标交互对象。
作为一种示例,由于推荐模型是为了向用户推荐交互对象,因此在对推荐模型预先训练时,也会输入交互对象的交互对象信息,为了使得推荐模型能够根据目标用户直接推荐目标交互对象,因此,推荐模型在训练的过程中还可以学习到交互对象的特征向量并进行存储,则将用户信息输入推荐模型后,可以根据域内交互信息和跨域交互信息对用户信息进行处理,得到目标用户的增强特征向量,再根据目标用户的增强特征向量和推荐模型中存储的交互对象的增强特征向量,确定目标用户与交互对象之间的预测交互指标,即目标用户可能与交互对象发生交互的概率,再根据概率从多个交互对象中确定能够推荐给目标用户的目标交互对象。如此,仅输入目标用户的用户信息便能够将目标用户可能感兴趣的目标交互对象推荐给目标用户,不仅操作简单,而且提取了用户与交互对象之间更多的交互信息,进而提高了推荐的精准度,使得用户可以浏览到感兴趣的内容,提高了用户的体验。
作为另一种示例,推荐模型在训练的过程中可以学习到交互对象的特征向量并进行存储,但由于推荐模型会学习到各个数据域的交互对象的特征向量,而向目标用户推荐时可能仅需在某个数据域做推荐即可,因此,在对推荐模型进行训练的过程中,也可以为训练样本添加数据域的标识,如此,在使用推荐模型进行目标交互对象推荐时,可以将数据域的标识和目标用户的用户信息均输入推荐模型,可以根据域内交互信息和跨域交互信息对用户信息进行处理,得到目标用户的增强特征向量,然后根据数据域标识确定属于该数据域的待推荐交互对象,根据待推荐交互对象的增强特征向量和目标用户的增强特征向量,确定目标用户与待推荐交互对象之间的预测交互指标,即目标用户可能与待推荐交互对象发生交互的概率,再根据概率从待推荐交互对象中确定能够推荐给目标用户的目标交互对象。如此,根据数据域先确定待推荐交互对象,然后从待推荐交互对象中确定目标用户可能感兴趣的目标交互对象推荐给目标用户,减少了计算预测交互指标的计算量,提高了推荐效率,且由于提取了用户与交互对象之间域内及域间更多的交互信息,进而提高了推荐的精准度。
本说明书实施例中,由于推荐模型是机器学习模型,其预先学习了域内交互信息和跨域交互信息,因此能够在向目标用户推荐目标交互对象时考虑到用户与交互对象在数据域内的交互关系,也能考虑到用户与交互对象的间接交互关系,即考虑了用户与交互对象之间更丰富的交互信息,能够确定出目标用户感兴趣的目标交互对象推荐给目标用户,提高了对象推荐的准确性,进而提高了用户的使用体验。
在本说明书一些实施例中,推荐模型包括图神经网络和超图神经网络,将用户信息输入推荐模型,经推荐模型利用域内交互信息和跨域交互信息对用户信息进行运算,获得目标交互对象的具体实现可以包括:
利用图神经网络,根据用户信息和域内交互信息确定目标用户的交互特征向量;利用超图神经网络,根据用户信息和跨域交互信息确定目标用户的关联特征向量;基于交互特征向量和关联特征向量、以及预先获取的交互对象集中每个交互对象的交互特征向量和关联特征向量,确定目标用户与每个交互对象之间的预测交互指标;基于多个预测交互指标从交互对象集中确定目标交互对象。
其中,图神经网络是能够对图结构数据进行处理并提取图中节点之间低阶交互信息的神经网络,例如,图神经网络可以是GNN(Graph Neural Network)、GraphSAGE、GCN(Graph Convolutional Network,图卷积网络)等。超图神经网络是能够对超图结构数据进行处理并提取图中节点之间高阶交互信息的神经网络,例如,超图神经网络可以是HGNN(Hypergraph Neural Networks)。
在本说明书一个或多个实施例中,由于图神经网络可以提取节点之间的低阶交互信息,同一个数据域中用户与交互对象的域内交互信息可以通过用户与交互对象之间是否有边直观地确定,因此可以理解为域内交互信息是低阶交互信息,因此,可以在推荐模型训练的过程中基于图神经网络学习到域内交互信息。超图神经网络能够提取节点之间的高阶交互信息,不同的数据域之间用户与交互对象的间接交互关系并不能根据用户与交互对象之间是否连接有边直观得到,而是需要根据不同数据域的用户之间的跨域关联和同一数据域的用户与交互对象的交互关系确定,因此可以理解为跨域交互信息是高阶交互信息,因此,可以在推荐模型训练的过程中基于超图神经网络学习到跨域交互信息。在该种情况下,可以将域内交互信息作为图神经网络的参数,将跨域交互信息作为超图神经网络的参数。
在本说明书一个或多个实施例中,对推荐模型进行训练时推荐模型也学习了多个交互对象的交互特征向量和关联特征向量,因此,在推荐目标交互对象的过程中,能够直接获取到交互对象的交互特征向量和关联特征向量。
在一些实施例中,先根据用户信息编码得到目标用户的原始特征向量,然后将目标用户的原始特征向量输入图神经网络,根据原始特征向量和域内交互信息确定目标用户的交互特征向量,将目标用户的原始特征向量输入超图神经网络,根据原始特征向量和跨域交互信息确定目标用户的关联特征向量,基于交互特征向量和关联特征向量、以及预先获取的交互对象集中每个交互对象的交互特征向量和关联特征向量,确定目标用户的增强特征向量和每个交互对象的增强特征向量,根据二者的增强特征向量确定目标用户与每个交互对象之间的预测交互指标,即用户可能与每个交互对象产生交互的概率,将预测交互指标大于预设阈值的交互对象确定为目标交互对象,或者,将预测交互指标排在前N个交互对象确定为目标交互对象。
作为一种示例,推荐模型的训练方法可以参见下述图5对应的实施例的相关描述。由于在推荐模型训练的过程中,推荐模型学习到了域内交互信息和跨域交互信息,域内交互信息可以理解为域内交互图中节点的结构关系,根据域内交互信息可以确定目标用户在域内交互图中的位置,然后根据目标用户的特征信息和其邻居节点的特征信息,可以确定目标用户的交互特征向量;跨域交互信息可以理解为跨域交互图中节点的结构关系,根据跨域交互信息可以确定目标用户在跨域交互图中的位置,然后根据目标用户的特征信息和与其对应相同的超边的参考节点的特征信息,可以确定目标用户的关联特征向量,同理,在将目标用户与交互对象成组输入推荐模型的情况下,对交互对象进行相同的处理,可以确定交互对象的关联特征向量和交互特征向量,再根据目标用户的交互特征向量和关联特征向量、以及交互对象的交互特征向量和关联特征向量,确定目标用户与交互对象之间的预测交互指标,进而确定目标交互对象。
本说明书实施例中,根据图神经网络确定目标用户的交互特征向量,根据超图神经网络确定目标用户的关联特征向量,再根据目标用户的交互特征向量、关联特征向量、以及交互对象的交互特征向量、关联特征向量为目标用户推荐目标交互对象。即在对象推荐的过程中考虑了用户与交互对象的域内交互信息和跨域交互信息,基于更丰富的交互信息确定目标交互对象,能够提高对象推荐的准确率。
在本说明书另一种可能的实现方式中,基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象之前,还包括:
获取交互对象集,其中,交互对象集包括多个交互对象的交互对象信息;
相应地,基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象的具体实现可以包括:
基于用户信息、多个交互对象的交互对象信息、域内交互信息以及跨域交互信息,从交互对象集中确定目标交互对象。
其中,交互对象的交互对象信息可以包括能够唯一标识一个交互对象的信息,例如,交互对象信息可以是交互对象标识,如交互对象名称、交互对象标题等;交互对象信息还可以包括交互对象的属性信息。例如,若交互对象的物品,则交互对象信息可以是价格、店铺、评价等,若交互对象是歌曲,则交互对象信息可以是歌手、专辑、词曲作者等,若交互对象是书籍,则交互对象信息可以是作者、评分等。
在该种实现方式中,为目标用户推荐目标交互对象之前,需要先获取交互对象集,以确定待推荐交互对象,并根据用户信息、多个交互对象的交互对象信息、预先学习的域内交互信息和跨域交互信息,确定目标用户的增强特征向量和交互对象的增强特征向量,遍历多个交互对象,确定目标用户与每个交互对象之间的预测交互指标,进而根据该预测交互指标从交互对象集中确定目标交互对象。
在一些实施例中,可以将用户信息和多个交互对象的交互信息均输入推荐模型,则推荐模型根据域内交互信息和跨域交互信息对用户信息进行处理,以及根据域内交互信息和跨域交互信息对多个交互对象的交互对象信息进行处理,确定目标用户的增强特征向量和交互对象的增强特征向量,再根据二者的增强特征向量确定目标用户可能与每个交互对象产生交互的概率,将交互概率较高的交互对象确定为目标交互对象。
作为一种示例,先根据用户信息编码得到目标用户的原始特征向量,根据交互对象的交互对象信息编码得到交互对象的原始特征向量,然后将目标用户的原始特征向量和交互对象的原始特征向量输入图神经网络,根据原始特征向量和域内交互信息确定目标用户的交互特征向量和交互对象的交互特征向量,将目标用户的原始特征向量和交互对象的原始特征向量输入超图神经网络,根据原始特征向量和跨域交互信息确定目标用户的关联特征向量和交互对象的关联特征向量,基于目标用户的交互特征向量和关联特征向量、交互对象集中每个交互对象的交互特征向量和关联特征向量,确定目标用户的增强特征向量和每个交互对象的增强特征向量,根据二者的增强特征向量确定目标用户与每个交互对象之间的预测交互指标,即用户可能与每个交互对象产生交互的概率,将预测交互指标大于预设阈值的交互对象确定为目标交互对象,或者,将预测交互指标排在前N个的交互对象确定为目标交互对象。
其中,N是大于0的正整数,且N可以根据实际情况进行设置并调整,本申请实施例对此不做限定。
在另一些实施例中,可以将用户和交互对象作为一个输入组输入推荐模型,如此推荐模型能够确定要计算的是用户与该交互对象的预测交互指标。在该种情况下,可以将任何用户和任何交互对象组成输入组同时输入推荐模型,推荐模型依然能够正确地确定要预测的是哪个用户和哪个交互对象之间产生交互的概率。例如,将用户A和交互对象a作为一组,将用户A和交互对象b作为一组,将用户B和交互对象c作为一组,将用户C和交互对象a作为一组,将该4组同时输入推荐模型中,则推荐模型能够输出用户A与交互对象a产生交互的概率,用户A和交互对象b产生交互的概率,用户B和交互对象c产生交互的概率,用户C和交互对象a产生交互的概率。
本说明书实施例中,将目标用户的用户信息和交互对象集中多个交互对象的交互对象信息输入推荐模型中,根据预先学习的域内交互信息和跨域交互信息对用户信息和交互对象进行处理,能够使得推荐模型清楚地确定要计算的是哪个用户与哪个交互对象产生交互的概率,进而从交互对象集中为目标用户确定目标交互对象,且考虑到域内交互信息和跨域交互信息,能够提高对象推荐的准确性。
步骤306:向目标用户推荐目标交互对象。
在本说明书一个实施例中,可以将目标交互对象发送至客户端,由客户端显示该目标交互对象,即实现了向目标用户推荐目标交互对象。
参见图4,图4示出了根据本说明书一个实施例提供的一种目标交互对象显示的页面示意图。在图4中,客户端显示了交互对象a、b、c、d,这四个交互对象是向目标用户推荐的目标交互对象,若目标用户点击了交互对象a,则目标用户与交互对象a之间产生了交互。
本说明书实施例提供的对象推荐方法,获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互;基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象;向目标用户推荐该目标交互对象。即在本方案中,预先学习了数据域内部用户与交互对象的域内交互信息,以及不同数据域之间用户与交互对象的跨域交互信息,由于用户与交互对象在域内有交互说明用户对该交互对象很感兴趣,则可以向用户推荐该交互对象,而不同数据域之间用户与交互对象存在间接交互关系,说明用户与交互对象可能目前没有交互,但根据用户之间的跨域关联、交互对象之间的跨域关联、以及用户与交互对象的域内交互关系,可以确定该用户与该交互对象很可能会有交互,所以在向用户推荐对象时可以推荐该交互对象,即本方案提取了用户与交互对象之间更高阶更深层次的跨域交互信息,在做对象推荐时考虑了更丰富的交互信息,则确定的目标交互对象更加符合目标用户的喜好,提高了对象推荐的准确性,并且在某个数据域数据稀疏的情况下,由于提取了不同数据域之间用户与交互对象的间接交互关系,则能够基于该间接交互关系为用户在该数据域实现精准地对象推荐。
在本说明书实施例中,推荐模型可以包括图神经网络和超图神经网络,在基于推荐模型实现对象推荐之前,还需要对推荐模型进行训练,即在执行上述步骤304中将用户信息输入推荐模型这一步骤之前,需要执行如下推荐模型训练方法,以获得推荐模型。
参见图5,图5示出了根据本说明书一个实施例提供的一种推荐模型训练方法的流程图,具体可以包括以下步骤。
步骤502:获取至少两个数据域的多个样本组以及每个样本组对应的交互标签。
其中,样本组包括用户和交互对象,交互标签用于表征用户与交互对象是否存在交互关系,且交互标签包括1和0两种,1表示存在交互关系,0表示不存在交互关系。
作为一种示例,多个样本组可以是根据至少两个数据域中用户的历史交互数据确定的,且样本组可以包括正样本组和负样本组。正样本组对应的交互标签是1,表示该样本组中的用户与交互对象存在交互关系,负样本组对应的交互标签是0,表示该样本组中用户与交互对象不存在交互关系。
在本说明书一个或多个实施例中,针对任一数据域来说,可以获取该数据域中多个用户的历史交互数据,该历史交互数据可能包括用户对交互对象执行浏览、关注、点赞、评论、购买、播放、屏蔽、举报、取关等操作,可以将操作划分为正向操作和反向操作,正向操作是指表示用户感兴趣的操作,反向操作是指表示用户不感兴趣的操作,然后将用户执行正向操作对应的交互对象与该用户作为一组,得到一个样本组,则该样本组是正样本组,其对应的交互标签是1。还可以根据用户的历史交互数据确定用户不感兴趣的交互对象,将用户与其不感兴趣的交互对象组成一组,得到一个样本组,则该样本组是负样本组,其对应的交互标签是0。
作为一种示例,还可以将用户执行反向操作的交互对象与该用户作为一组,得到一个样本组,则该样本组是负样本组,其对应的交互标签是0。如此不仅能够丰富样本组,还能够降低将用户不感兴趣的交互对象推荐给用户的概率。
例如,在音乐播放场景下,数据域可以是音乐播放领域,则该数据域中用户的交互数据可以包括:用户A购买播放了歌曲a和歌曲b、收藏了歌曲c,用户B播放了歌曲a、取消收藏了歌曲c,用户C评论了歌曲c、取消收藏了歌曲e。则可以确定用户A和歌曲a组成一个正样本组,用户A和歌曲b组成一个正样本组,用户A和歌曲c组成一个正样本组,用户B和歌曲a组成一个正样本组,用户B和歌曲b组成一个正样本组,用户C和歌曲c组成一个正样本组,用户B和歌曲c组成一个负样本组,用户C和歌曲e组成一个负样本组。若用户A和B均没有与歌曲e交互,则可以将用户A和歌曲d组成一个负样本组,用户B和歌曲e组成一个负样本组。
通过上述方法可以获取多个数据域中用户的历史交互数据,基于用户的历史交互数据构建样本组,并为样本组确定交互标签,为后续推荐模型的训练提供数据基础。
步骤504:基于多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图。
在本说明书一个或多个实施例中,域内交互图是根据数据域内用户与交互对象之间的交互关系构建的,且必须存在交互关系才能存在边,因此,域内交互图是根据正样本组构建的。跨域交互图中两个相同类型的节点之间是否存在边与该两个节点是否与相同的另一类型的节点存在交互,因此,跨域交互图也是根据正样本组构建的。
在本说明书一种实施方式中,基于多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图的具体实现可以包括:
根据同一个数据域中多个样本组包括的用户和交互对象、以及每个样本组对应的交互标签,构建该数据域对应的域内交互图;若根据至少两个数据域的多个样本组确定多个第一样本与同一个第二样本存在交互关系,根据多个第一样本的特征信息构建跨域交互图,其中,第一样本与第二样本是不同类型,第一样本是用户或交互对象。
作为一种示例,对于第一数据域来说,可以以该第一数据域中的用户和交互对象为节点,根据每个样本组的交互标签确定正样本组,根据正样本组中用户与交互对象的交互关系,在存在交互关系的用户和交互对象对应的节点之间构建边,以此构建第一数据域对应的域内交互图。
示例性地,假设第一数据域中包括4个正样本组,第一个正样本组包括用户A和交互对象a1,第二个正样本组包括用户B和交互对象b1,第三个正样本组包括用户C和交互对象a1,第四个正样本组用户A和交互对象c1,可以以用户A、用户B、用户C、交互对象a1、交互对象b1和交互对象c1为节点,构建第一数据域对应的域内交互图。参见图6,图6示出了根据本说明书一个实施例提供的域内交互图的示意图,图6是第一数据域对应的域内交互图的示意图。
在本说明书一些实施例中,若第一样本是用户,则第二样本是交互对象,即有多个用户与同一个交互对象存在交互关系,则认为该多个用户之间存在关联关系,则构建的是以交互对象为视角,表征用户之间跨域关联关系的跨域交互图。
示例性地,参见图7,图7示出了根据本说明书一个实施例提供的一种跨域交互图的示意图。在图7中,节点A、B、C、D均是用户节点,数据域1的用户A、数据域2的用户B和数据域3的用户C均与交互对象a交互,数据域1的用户A、数据域3的用户C和数据域4的用户D均与交互对象b交互,则节点A、B和C之间存在超边e1,节点A、C和D之间存在超边e2,以此可以构建以交互对象为视角表征不同数据域的用户之间关联关系的跨域交互图。
在本说明书另一些实施例中,若第一样本是交互对象,则第二样本是用户,即有多个交互对象与同一个用户存在交互关系,则认为该多个交互对象之间存在关联关系,则构建的是以用户为视角,表征交互对象之间跨域关联关系的跨域交互图。
示例性地,参见图8,图8示出了根据本说明书一个实施例提供的另一种跨域交互图的示意图。在图8中,数据域1的交互对象a、数据域2的交互对象b和数据域3的交互对象c均与用户A交互,数据域1的交互对象a、数据域3的交互对象c和数据域4的交互对象d均与用户B交互,则节点a、b和c之间存在超边e1,节点a、c和d之间存在超边e2,以此可以构建以用户为视角表征不同数据域的交互对象之间关联关系的跨域交互图。
作为一种示例,可以先构建各个数据域对应的域内交互图,然后以交互对象为视角,将不同数据域中相同的交互对象合并,以此确定存在关联关系的用户,或者,以用户为视角,将不同数据域中相同的用户合并,以此确定存在关联关系的交互对象,进而构建跨域交互图。
示例性地,可以以交互对象为视角,根据两个数据域的域内交互图,将两个域内交互图中相同的交互对象合并,可以确定每个交互对象与哪些用户交互,进而确定哪些用户之间存在关联关系,得到跨域交互图。参见图9,图9示出了根据本说明书一个实施例提供的又一种跨域交互图的示意图。在图9中,节点A、B、C、D、E、F、G均是用户节点,且用户A、B和E属于数据域1,用户C、H和G属于数据域2,用户D和F属于数据域3,用户A、C和F与相同的交互对象存在交互关系,则节点A、C和F之间存在超边e1,用户B、D和H与相同的交互对象存在交互关系,则节点B、D和H之间存在超边e2,用户D、G和E与相同的交互对象存在交互关系,则节点D、G和E之间存在超边e3。
在本方案中,可以仅构建表征用户之间跨域关联关系的跨域交互图,也可以仅构建表征交互对象之间跨域关联关系的跨域交互图,还可以两种跨域交互图均构建。
本说明书实施例中,构建每个数据域对应的域内交互图以及不同数据域之间的跨域交互图,为后续提取域内交互信息和跨域交互信息提供数据基础。
步骤506:针对每个数据域,利用图神经网络,对该数据域对应的域内交互图中当前节点的特征信息以及邻居节点的特征信息进行聚合处理,获得当前节点的交互特征向量。
其中,当前节点是域内交互图中的任一节点,当前节点为用户或交互对象,邻居节点为与当前节点存在交互关系的节点。
其中,特征信息可以包括节点的节点标识,也可以包括节点的属性信息。若节点是用户,则特征信息可以是用户标识或用户的属性信息,若节点是交互对象,则特征信息可以是交互对象标识或交互对象的属性信息。
在一些实施例中,可以将每个数据域的域内交互图输入图神经网络,先根据域内交互图中每个节点的特征信息编码得到每个节点的初始特征向量,然后根据当前节点的初始特征向量以及邻居节点的初始特征向量进行聚合处理,获得当前节点的交互特征向量。
例如,参见图6,以用户A为当前节点,根据用户A的特征信息确定用户A的初始特征向量,根据交互对象a的特征信息确定交互对象a的初始特征向量,根据交互对象c的特征信息确定交互对象c的初始特征向量,然后通过聚合函数对用户A的初始特征向量、交互对象a的初始特征向量和交互对象c的初始特征向量进行聚合处理,得到用户A的交互特征向量,以此类推,可以确定域内交互图中每个节点的交互特征向量。
作为一种示例,可以先对域内交互图中节点的特征信息进行编码得到节点的初始特征向量,通过邻居采样函数采样域内交互图中当前节点的邻居节点,将被采样的邻居节点的初始特征向量聚合,将聚合结果与上一次迭代的输出向量合并并进行卷积处理,将卷积结果进行非线性处理,迭代若干次后将迭代结果进行归一化处理,将归一化处理的结果确定为当前节点的交互特征向量。
在本说明书实施例中,通过图神经网络对域内交互图进行处理,以提取域内交互图中用户与交互对象的域内交互信息,以及确定用户与交互对象的交互特征向量,该交互特征向量是学习了域内交互信息后得到的,可以理解为该交互特征向量不仅可以表征用户或交互对象本身的属性信息还可以表征用户与交互对象的域内交互信息,即提取了用户与交互对象的低阶交互信息,为后续对象推荐提供的更多的数据参考。
步骤508:利用超图神经网络,对跨域交互图中参考节点的特征信息以及目标节点的特征信息进行聚合处理,获得参考节点的关联特征向量。
其中,参考节点是跨域交互图中的任一节点,目标节点是与参考节点之间存在超边的节点。
在一些实施例中,可以将跨域交互图输入超图神经网络,先根据跨域交互图中每个节点的特征信息编码得到每个节点的初始特征向量,然后对跨域交互图中参考节点的特征向量以及目标节点的特征向量进行聚合处理,获得参考节点的关联特征向量。
作为一种示例,可以先确定参考节点对应的超边,根据该超边对应的其他节点和参考节点的特征向量,确定该超边的特征向量,然后将参考节点对应的所有超边的特征向量进行聚合,得到参考节点的关联特征向量。
示例性地,参见图10,图10示出了根据本说明书一个实施例提供的一种基于跨域交互图确定关联特征向量的示意图。在图10中,节点A1、B2、C3、D4均是用户节点,且用户A1属于数据域1,用户B2属于数据域2,用户C3属于数据域3,用户D4属于数据域4,且数据域1的用户A1、数据域2的用户B2和数据域3的用户C3与相同的交互对象存在交互关系,数据域1的用户A1、数据域3的用户C3和数据域4的用户D4与相同的交互对象存在交互关系,则节点A1、B2、C3之间存在超边e1,节点A1、C3、D4之间存在超边e2,可以根据节点A1、B2、C3的初始特征向量确定超边e1的特征向量,根据节点A1、C3、D4的初始特征向量确定超边e2的特征向量,再根据e1的特征向量和e2的特征向量,确定节点A1、B2、C3、D4的关联特征向量。
例如,以跨域交互图为表征交互对象之间跨域关联关系的跨域交互图为例。参见图7,以用户A为参考节点,根据用户A的特征信息确定用户A的初始特征向量,根据用户B的特征信息确定用户B的初始特征向量,根据用户C的特征信息确定用户C的初始特征向量,根据用户D的特征信息确定用户D的初始特征向量,然后根据用户A的初始特征向量、用户B的初始特征向量和用户C的初始特征向量确定超边e1的初始特征向量,根据用户A的初始特征向量、用户C的初始特征向量和用户D的初始特征向量确定超边e2的初始特征向量,超边e1的初始特征向量和超边e2的初始特征向量进行聚合,得到用户A的关联特征向量,以此类推,可以确定跨域交互图中每个节点的关联特征向量。
在本说明书实施例中,通过超图神经网络对跨域交互图进行处理,以提取跨域交互图中用户与用户的关联关系,以及交互对象与交互对象的关联关系,得到用户的关联特征向量和交互对象的关联特征向量,该用户的关联特征向量是学习了用户与用户之间的高阶关联关系后得到的,交互对象的关联特征向量是学习了交互对象与交互对象之间的高阶关联关系后得到的,即本方案提取了高阶关联关系,为后续对象推荐提供了更丰富的信息。
步骤510:基于关联特征向量、交互特征向量,确定每个样本组对应的预测交互指标。
其中,预测交互指标用于表征用户与交互对象产生交互的概率。
在本说明书一个或多个实施例中,根据构建的跨域交互图不同,确定预测交互指标的方法不同。若仅以交互对象为视角,构建表征用户之间跨域关联关系的跨域交互图,则采用下述第一种实施例的实现方式确定预测交互指标;若仅以用户为视角,构建表征交互对象之间跨域关联关系的跨域交互图,则采用下述第二种实施例的实现方式确定预测交互指标;若构建了两种跨域交互图,则采用下述第三种实施例的实现方式确定预测交互指标。
在本说明书第一种实施例中,若参考节点为用户,基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
针对第一数据域中的每个用户,将该用户的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是至少两个数据域中的任意一个;将每个用户的合并特征向量和每个交互对象的交互特征向量映射至具备层次结构表达能力的数据空间,得到第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标。
其中,具备层次结构表达能力的数据空间可以是双曲空间。层次信息用于用户与用户之间的层次或者交互对象与交互对象之间的层次。示例性地,用户的层次信息包括用户的活跃度,交互对象的层次信息可以包括交互对象的流行度(热度)、类目结构(类别)等。
在一些实施例中,将用户的交互特征向量和关联特征向量进行拼接,得到的合并特征向量不仅能够表征不同同一数据与内用户与交互对象的域内交互信息,还能够表征不同数据域之间用户与交互对象的跨域交互信息。为了得到更丰富的层次信息,可以将每个用户的合并特征向量和每个交互对象的交互特征向量映射至双曲空间,得到用户的增强特征向量和交互对象的增强特征向量,该用户的增强特征向量包括用户的层次信息,交互对象的增强特征向量包括交互对象的层次信息。
示例性地,在本方案中,可以默认确定的特征向量都是欧式空间的特征向量,因此,可以通过如下公式(1)和(2)实现特征向量从欧式空间到双曲空间的映射:
在公式(1)中,x为欧式空间的特征向量,即用户合并特征向量和交互对象的交互特征向量,exp为从欧式空间到双曲空间的操作;u是双曲空间中的参考向量,一般来说取0向量;c为曲率常数。
在该种实现方式中,通过超图神经网络确定了用户的关联特征向量,将交互对象的交互特征向量映射得到包括交互对象的层次信息的增强特征向量,将用户的关联特征向量与用户的交互特征向量进行拼接,进而映射得到包括用户的层次信息的增强特征向量,该用户的增强特征向量包含用户与交互对象之间的高阶交互信息和层次信息,使得该用户的增强特征向量更加全面准确。
作为一种示例,用户的增强特征向量可以包括用户的增强交互特征向量和增强关联特征向量,交互对象的增强特征向量包括交互对象的增强交互特征向量。示例性地,参见图11,图11示出了根据本说明书一个实施例提供的一种特征向量的处理流程图。在图11中,ua和ia是数据域a中的用户和交互对象,ub和ib是数据域b中的用户和交互对象,uc和ic是数据域c中的用户和交互对象,在每个数据域中对用户和交互对象的处理是相同的。本方案中,以数据域a中的处理为例,Gua表示用户的增强交互特征向量,Hua表示用户的增强关联特征向量,HGua表示用户的增强特征向量,Gia表示交互对象的增强交互特征向量。
在本说明书第二种实施例中,参考节点为交互对象,基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
针对第一数据域中的每个交互对象,将该交互对象的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是至少两个数据域中的任意一个;将每个用户的交互特征向量和每个交互对象的合并特征向量映射至具备层次结构表达能力的数据空间,得到第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标。
作为一种示例,可以根据上述式(1)和(2)确定用户的增强特征向量和交互对象的增强特征向量,只是公式中的x替换为用户的交互特征向量和交互对象的合并特征向量。
在该种实现方式中,通过超图神经网络确定了交互对象的关联特征向量,将用户的交互特征向量映射得到包括用户的层次信息的增强特征向量,将交互对象的关联特征向量与交互对象的交互特征向量进行拼接,进而映射得到包括交互对象的层次信息的增强特征向量,则交互对象的增强特征向量包含了用户与交互对象之间的高阶交互信息以及层次信息,使得该交互对象的增强特征向量更加全面准确。
在本说明书第三种实施例中,不仅确定了用户的关联特征向量,也确定了交互对象的关联特征向量,因此,基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
针对第一数据域中的每个用户,将该用户的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是至少两个数据域中的任意一个;针对第一数据域中的每个交互对象,将该交互对象的交互特征向量和关联特征向量进行拼接,得到合并特征向量;将每个用户的合并特征向量和每个交互对象的合并特征向量映射至具备层次结构表达能力的数据空间,得到第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标。
作为一种示例,可以根据上述式(1)和(2)确定用户的增强特征向量和交互对象的增强特征向量,只是公式中的x替换为用户的合并特征向量和交互对象的合并特征向量。
在该种实现方式中,通过超图神经网络分别确定了用户的关联特征向量和交互对象的关联特征向量,则将交互对象的关联特征向量与交互对象的交互特征向量进行拼接,进而映射得到包括交互对象的层次信息的增强特征向量,将用户的交互特征向量和关联特征向量进行拼接,进而映射得到包括用户的层次信息的增强特征向量,如此,交互对象的增强特征向量和用户的增强特征向量中均包含用户与交互对象之间的高阶交互信息和层次信息,即该两种增强特征向量都更加全面准确。
在一些实施例中,推荐模型还包括特征提取层和全连接层,基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标,包括:
将每个用户的增强特征向量和该用户的交互特征向量进行拼接,将每个用户的拼接后的特征向量输入特征提取层,得到每个用户的融合特征向量;对每个交互对象的增强特征向量输入特征提取层,得到每个交互对象的融合特征向量;将属于同一个样本组的用户的融合特征向量和交互对象的融合特征向量拼接后输入全连接层,确定该样本组对应的预测交互指标。
其中,特征提取层用于对输入的特征向量进行线性映射、非线性变换以及特征提取处理。全连接层用于对输入的特征向量进行线性映射、非线性变换以及归一化处理,得到一维特征向量,该一维特征向量可以转化为预测交互指标。
作为一种示例,还可以先将用户的增强特征向量进行维度调整,得到维度调整后的增强特征向量,则该维度调整后的增强特征向量的维度与用户的交互特征向量的维度相同,再将维度调整后的增强特征向量和该用户的交互特征向量进行拼接。
示例性地,参见图11,HGua表示用户的增强特征向量,对HGua进行维度调整处理,得到维度调整后的增强特征向量Dua,将Dua与用户的交互特征向量Gua进行拼接,将拼接后的特征向量输入特征提取层,得到用户的融合特征向量Eua,将交互对象的增强交互特征向量Gia输入特征提取层,得到交互对象的融合特征向量Eia,将属于同一个样本组的用户的融合特征向量Eua和交互对象的融合特征向量Eia拼接后输入全连接层,确定该样本组对应的预测交互指标ra。根据每个数据域中多个样本组的ra和每个样本组对应的交互标签reala确定损失值对推荐模型进行训练,直至达到训练停止条件。
本说明书实施例中,通过特征提取层和全连接层的处理,确定样本组中用户与交互对象的预测交互指标,由于输入的增强特征向量既包括用户与交互对象的域内交互信息,还包括用户与交互对象的跨域交互信息,还包括用户的层次信息以及交互对象的层次信息,即根据丰富的信息确定用户与交互对象产生交互的概率,能够得到更准确的结果。
在一些实施例中,基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标之前,还包括:
对每个样本组包括的用户和交互对象进行编码,得到每个用户的原始特征向量和每个交互对象的原始特征向量;
基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
基于关联特征向量、每个数据域中每个用户的交互特征向量和原始特征向量、每个交互对象的交互特征向量和原始特征向量,确定每个样本组对应的预测交互指标。
作为一种示例,可以先对样本组包括的用户和交互对象进行one-hot编码,确定用户的原始特征向量和交互对象的原始特征向量,即one-hot embedding。然后在后续的特征向量处理过程中,将原始特征向量拼接进去,进而采用在前的方式确定预测交互指标即可。如此能够更加保留用户和交互对象更多的信息,使得确定的用户和交互对象的增强交互特征更加全面,进而提高确定的每个样本组对应的预测交互指标的准确性。
在一些实施例中,还可以将原始特征向量作为特征提取层的输入,使得特征提取层能够提取到用户或交互对象最初始的特征信息,进而得到包括更丰富更准确信息的融合特征向量,提高确定预测交互指标的准确性,进而提高对象推荐的准确性。
步骤512:基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整推荐模型的参数,直至达到训练停止条件,获得推荐模型。
在一些实施例中,多个样本组包括正样本组和负样本组;基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整推荐模型的参数,直至达到训练停止条件,获得推荐模型,包括:
确定每个数据域中正样本组对应的第一预测交互指标和负样本组对应的第二预测交互指标;根据第一预测交互指标和第二预测交互指标,通过损失函数确定每个数据域对应的损失值;根据至少两个数据域对应的损失值调整推荐模型的参数,直至达到训练停止条件,获得推荐模型。
作为一种示例,针对第一数据域,可以根据每个样本组是正样本组还是负样本组,确定该第一数据域中正样本组对应的第一预测交互指标和负样本组对应的第二预测交互指标,根据第一预测交互指标和第二预测交互指标,通过如下公式(3)确定该第一数据域对应的损失值:
loss=-sum(log(sigmoid(ri-rj))) (3)
其中,ri代表正样本对对应的第一预测交互指标,rj代表负样本对对应的第二预测交互指标。
在一些实施例中,确定每个数据域的损失值之后,对多个损失值求和,得到损失和,若损失和大于损失阈值,则基于该损失和调整推荐模型的参数,并返回执行确定目标节点的交互特征向量的步骤,若损失和小于或等于损失阈值,则停止对推荐模型参数的调整,获得训练完成的推荐模型。
作为一种示例,在本说明书一个或多个实施例中,可以通过BPR(BayesianPersonalized Ranking,贝叶斯个性化排序)方法确定损失并对推荐模型参数进行优化,得到训练完成的推荐模型。
本说明书实施例提供的对象推荐方法,先训练得到推荐模型,即根据样本组和样本组对应的交互标签,确定关联特征向量、用户的交互特征向量和交互对象的交互特征向量,且在确定关联特征向量的过程中学习到跨域交互信息,在确定交互特征向量的过程中学习到域内交互信息,然后根据关联特征向量和交互特征向量确定每个样本组中用户与交互对象之间的预测交互指标,根据预测交互指标和交互标签调整推荐模型的参数,直至达到训练停止条件,完成对推荐模型的训练。将获取到的用户信息输入该推荐模型,根据域内交互信息和跨域交互信息对用户信息进行处理,确定为目标用户推荐的目标交互对象。即在进行对象推荐时不仅考虑了真实与用户有交互的交互对象,还考虑了根据跨域交互信息确定的可能与用户产生交互的交互对象,基于该更全面的信息推荐的目标交互对象会更加符合目标用户的兴趣,即该对象推荐的结果准确性更高。
参见图12,图12示出了根据本说明书一实施例提供的一种推荐模型训练方法的流程图。
获取至少两个数据域的多个样本组以及每个样本组对应的交互标签,根据交互标签确定正样本组和负样本组,根据每个数据域中正样本组的用户和物品(交互对象)的交互关系构建每个数据域的异构图(域内交互图),根据不同数据域之间与相同物品交互的多个用户构建用户-用户的跨域超图,根据不同数据域之间与相同用户交互的多个物品构建物品-物品的跨域超图,根据用户-用户的跨域超图确定学习到用户-用户的高阶关联信息后得到的用户的交互特征向量(10维),根据物品-物品的跨域超图确定学习到物品-物品的高阶关联信息后得到的物品的交互特征向量(10维),根据每个数据域的异构图学习到用户-物品的低阶交互信息后得到的用户的关联特征向量(10维)以及学习到用户-物品的低阶交互信息后得到的物品的关联特征向量(10维),将用户的交互特征向量和用户的关联特征向量拼接,得到学习到用户-物品的低阶交互信息、高阶交互信息后得到的用户的合并特征向量(20维),将交互对象的交互特征向量和交互对象的关联特征向量拼接,得到学习到用户-物品的低阶交互信息、高阶交互信息后得到的物品的合并特征向量(20维),将用户的合并特征向量和物品的合并特征向量映射至双曲空间,得到学习到用户-物品的低阶交互信息、高阶交互信息、用户的层次信息后得到的用户的增强特征向量(20维)、以及学习到用户-物品的低阶交互信息、高阶交互信息、物品的层次信息后得到的物品的增强特征向量(20维),将用户的增强特征向量和用户的关联特征向量拼接后输入特征提取层,得到用户的融合特征向量,将物品的增强特征向量和物品的关联特征向量拼接后输入特征提取层,得到物品的融合特征向量,将用户的融合特征向量和物品的融合特征向量输入全连接层,得到预测交互指标,根据预测交互指标和交互标签训练推荐模型。
下述结合附图13,以本说明书提供的对象推荐方法在流量营销场景的应用为例,对所述对象推荐方法进行进一步说明。其中,图13示出了本说明书一个实施例提供的一种应用于流量营销场景的对象推荐方法的处理过程流程图,具体包括以下步骤。
步骤1302:获取多个数据域的样本组以及每个样本组对应的交互标签。
其中,数据域可以包括贷款、理财、流量营销等。在流量营销场景对应的数据域中,样本组包括用户和营销服务,交互标签表示用户是否办理该营销服务;在理财场景对应的数据域中,样本组包括用户和理财产品,交互标签表示用户是否购买该理财产品;在贷款场景对应的数据域中,样本组包括用户和贷款服务,交互标签表示用户是否办理该贷款服务。
步骤1304:根据流量营销场景对应的数据域中的样本组,构建流量营销场景对应的第一异构图,根据理财场景对应的数据域中的样本组,构建理财场景对应的第二异构,根据贷款场景对应的数据域中的样本组,构建贷款场景对应的第三异构图。
步骤1306:根据是否与相同的交互对象产生交互,构建不同数据域之间用户-用户的超图。
步骤1308:利用图神经网络,确定第一异构图中每个用户的交互特征向量和每个营销服务的交互特征向量、第二异构图中每个用户的交互特征向量和每个理财产品的交互特征向量、第三异构图中每个用户的交互特征向量和每个贷款服务的交互特征向量。
作为一种示例,以第一异构图为例,在确定交互特征向量的过程中,提取了同一个数据域之间用户与营销服务的低阶交互信息(域内交互信息)。
步骤1310:利用超图神经网络,确定每个用户的关联特征向量。
作为一种示例,在确定用户的关联特征向量的过程中,提取了不同数据域之间用户与用户的高阶关联信息。
步骤1312:将流量营销场景中每个用户的关联特征向量和交互特征向量进行拼接,得到合并特征向量;将理财场景中每个用户的关联特征向量和交互特征向量进行拼接,得到合并特征向量;将贷款场景中每个用户的关联特征向量和交互特征向量进行拼接,得到合并特征向量。
步骤1314:将每个用户的合并特征向量和每个交互对象的交互特征向量映射至双曲空间,得到每个用户的增强特征向量和每个交互对象的增强特征向量。
其中,每个用户的增强特征向量包括用户的层次信息,每个交互对象的增强特征向量包括交互对象的层次信息。
步骤1316:将每个用户的增强特征向量和交互特征向量进行拼接,将拼接后的特征向量输入特征提取层,得到每个用户的融合特征向量,将每个交对象的增强特征向量输入特征提取层,得到每个交互对象的融合特征向量。
步骤1318:将属于同一个样本组的用户的融合特征向量和交互对象的融合特征向量拼接后输入全连接层,得到该样本组对应的预测交互指标。
步骤1320:确定每个数据域中正样本组对应的第一预测交互指标和负样本组对应的第二预测交互指标。
步骤1322:根据第一预测交互指标和第二预测交互指标,通过损失函数确定每个数据域对应的损失值。
步骤1324:根据多个数据域对应的损失值调整推荐模型的参数,直至达到训练停止条件,获得推荐模型。
步骤1326:将用户A和营销服务a、用户A和营销服务b、用户A和营销服务c、用户A和营销服务d组成的4个组输入推荐模型,输出4个预测交互指标。
步骤1328:将4个预测交互指标中最大的预测交互指标对应的营销服务推荐给用户A。
示例性地,假设用户A未在营销场景产生过历史交互数据,但用户A在理财场景购买过理财产品a和b,理财场景的用户B、C、D、E、F均购买过理财产品a和b,用户B、C、D、E、F在在营销场景也均办理过营销服务c,通过上述处理,能够确定营销服务c对应的预测从交互指标是最大的,因此,可以向用户A推荐营销服务c。
需要说明的是,步骤1302-步骤1328是上述图1和图5对应的实施例在流量营销场景下的应用,具体实现可以参见上述图1和图5对应的实施例的相关描述,本实施例在此不再赘述。
本说明书实施例提供的对象推荐方法,先训练得到推荐模型,即根据样本组和样本组对应的交互标签,确定关联特征向量、用户的交互特征向量和交互对象的交互特征向量,且在确定关联特征向量的过程中学习到跨域交互信息,在确定交互特征向量的过程中学习到域内交互信息,然后根据关联特征向量和交互特征向量确定每个样本组中用户与交互对象之间的预测交互指标,根据预测交互指标和交互标签调整推荐模型的参数,直至达到训练停止条件,完成对推荐模型的训练。将获取到的用户信息输入该推荐模型,根据域内交互信息和跨域交互信息对用户信息进行处理,确定为目标用户推荐的目标交互对象。即在进行对象推荐时不仅考虑了真实与用户有交互的交互对象,还考虑了根据跨域交互信息确定的可能与用户产生交互的交互对象,基于该更全面的信息推荐的目标交互对象会更加符合目标用户的兴趣,即该对象推荐的结果准确性更高。
与上述方法实施例相对应,本说明书还提供了对象推荐装置实施例,图14示出了本说明书一个实施例提供的一种对象推荐装置的结构示意图。如图14所示,该装置包括:
获取模块1402,被配置为获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互;
确定模块1404,被配置为基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象;
推荐模块1406,被配置为向目标用户推荐目标交互对象。
在本说明书一个或多个实施例中,确定模块1404,进一步被配置为:
获取交互对象集,其中,交互对象集包括多个交互对象的交互对象信息;
基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象,包括:
基于用户信息、多个交互对象的交互对象信息、域内交互信息以及跨域交互信息,从交互对象集中确定目标交互对象。
在本说明书一个或多个实施例中,域内交互信息和跨域交互信息为对推荐模型预先训练得到,推荐模型为机器学习模型;
确定模块1404,还被配置为:
将用户信息输入推荐模型,经推荐模型利用域内交互信息和跨域交互信息对用户信息进行运算,获得目标交互对象。
在本说明书一个或多个实施例中,推荐模型包括图神经网络和超图神经网络;
该装置还包括模型训练模块,该模型训练模块,被配置为:
获取至少两个数据域的多个样本组以及每个样本组对应的交互标签,其中,样本组包括用户和交互对象,交互标签用于表征用户与交互对象是否存在交互关系;
基于多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图;
针对每个数据域,利用图神经网络,对该数据域对应的域内交互图中当前节点的特征信息以及邻居节点的特征信息进行聚合处理,获得当前节点的交互特征向量,其中,当前节点是域内交互图中的任一节点,当前节点为用户或交互对象,邻居节点为与当前节点存在交互关系的节点;
利用超图神经网络,对跨域交互图中参考节点的特征信息以及目标节点的特征信息进行聚合处理,获得参考节点的关联特征向量,其中,参考节点是跨域交互图中的任一节点,目标节点是与参考节点之间存在超边的节点;
基于关联特征向量、交互特征向量,确定每个样本组对应的预测交互指标,其中,预测交互指标用于表征用户与交互对象产生交互的概率;
基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整推荐模型的参数,直至达到训练停止条件,获得推荐模型。
在本说明书一个或多个实施例中,模型训练模块,进一步被配置为:
根据同一个数据域中多个样本组包括的用户和交互对象、以及每个样本组对应的交互标签,构建该数据域对应的域内交互图;
若根据至少两个数据域的多个样本组确定多个第一样本与同一个第二样本存在交互关系,根据多个第一样本的特征信息构建跨域交互图,其中,第一样本与第二样本是不同类型,第一样本是用户或交互对象。
在本说明书一个或多个实施例中,参考节点为用户,模型训练模块,进一步被配置为:
针对第一数据域中的每个用户,将该用户的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是至少两个数据域中的任意一个;
将每个用户的合并特征向量和每个交互对象的交互特征向量映射至具备层次结构表达能力的数据空间,得到第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;
基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标。
在本说明书一个或多个实施例中,参考节点为交互对象,模型训练模块,进一步被配置为:
针对第一数据域中的每个交互对象,将该交互对象的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是至少两个数据域中的任意一个;
将每个用户的交互特征向量和每个交互对象的合并特征向量映射至具备层次结构表达能力的数据空间,得到第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;
基于第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定第一数据域中每个样本组对应的预测交互指标。
在本说明书一个或多个实施例中,推荐模型还包括特征提取层和全连接层,模型训练模块,进一步被配置为:
将每个用户的增强特征向量和该用户的交互特征向量进行拼接,将每个用户的拼接后的特征向量输入特征提取层,得到每个用户的融合特征向量;
对每个交互对象的增强特征向量输入特征提取层,得到每个交互对象的融合特征向量;
将属于同一个样本组的用户的融合特征向量和交互对象的融合特征向量拼接后输入全连接层,确定该样本组对应的预测交互指标。
在本说明书一个或多个实施例中,多个样本组包括正样本组和负样本组;
模型训练模块,进一步被配置为:
确定每个数据域中正样本组对应的第一预测交互指标和负样本组对应的第二预测交互指标;
根据第一预测交互指标和第二预测交互指标,通过损失函数确定每个数据域对应的损失值;
根据至少两个数据域对应的损失值调整推荐模型的参数,直至达到训练停止条件,获得推荐模型。
在本说明书一个或多个实施例中,模型训练模块,进一步被配置为:
对每个样本组包括的用户和交互对象进行编码,得到每个用户的原始特征向量和每个交互对象的原始特征向量;
基于关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
基于关联特征向量、每个数据域中每个用户的交互特征向量和原始特征向量、每个交互对象的交互特征向量和原始特征向量,确定每个样本组对应的预测交互指标。
在本说明书一个或多个实施例中,推荐模型包括图神经网络和超图神经网络,模型训练模块,进一步被配置为:
利用图神经网络,根据用户信息和域内交互信息确定目标用户的交互特征向量;
利用超图神经网络,根据用户信息和跨域交互信息确定目标用户的关联特征向量;
基于交互特征向量和关联特征向量、以及预先获取的交互对象集中每个交互对象的交互特征向量和关联特征向量,确定目标用户与每个交互对象之间的预测交互指标;
基于多个预测交互指标从交互对象集中确定目标交互对象。
本说明书实施例提供的对象推荐装置,获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,域内交互信息表征数据域内部用户与交互对象的交互,跨域交互信息表征多个数据域之间用户与交互对象的间接交互;基于用户信息、域内交互信息以及跨域交互信息,确定目标交互对象;向目标用户推荐该目标交互对象。即在本方案中,预先学习了数据域内部用户与交互对象的域内交互信息,以及不同数据域之间用户与交互对象的跨域交互信息,由于用户与交互对象在域内有交互说明用户对该交互对象很感兴趣,则可以向用户推荐该交互对象,而不同数据域之间用户与交互对象存在间接交互关系,说明用户与交互对象可能目前没有交互,但根据用户之间的跨域关联、交互对象之间的跨域关联、以及用户与交互对象的域内交互关系,可以确定该用户与该交互对象很可能会有交互,所以在向用户推荐对象时可以推荐该交互对象,即本方案提取了用户与交互对象之间更高阶更深层次的跨域交互信息,在做对象推荐时考虑了更丰富的交互信息,则确定的目标交互对象更加符合目标用户的喜好,提高了对象推荐的准确性,并且在某个数据域数据稀疏的情况下,由于提取了不同数据域之间用户与交互对象的间接交互关系,则能够基于该间接交互关系为用户在该数据域实现精准地对象推荐。
上述为本实施例的一种对象推荐装置的示意性方案。需要说明的是,该对象推荐装置的技术方案与上述的对象推荐方法的技术方案属于同一构思,对象推荐装置的技术方案未详细描述的细节内容,均可以参见上述对象推荐方法的技术方案的描述。
图15示出了根据本说明书一个实施例提供的一种计算设备1500的结构框图。该计算设备1500的部件包括但不限于存储器1510和处理器1520。处理器1520与存储器1510通过总线1530相连接,数据库1550用于保存数据。
计算设备1500还包括接入设备1540,接入设备1540使得计算设备1500能够经由一个或多个网络1560通信。这些网络的示例包括公用交换电话网(PSTN,Public switchedtelephone network)、局域网(LAN,local area network)、广域网(Wan)、个域网(PAN,Personal area network)或诸如因特网的通信网络的组合。接入设备1540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,network interface card))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,Wireless Local Area Network)无线接口、全球微波互联接入(Wi-MAX,Worldwide Interoperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near Field Communication)接口,等等。
在本说明书的一个实施例中,计算设备1500的上述部件以及图15中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图15所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备1500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备1500还可以是移动式或静止式的服务器。
其中,处理器1520用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述对象推荐方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的对象推荐方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述对象推荐方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述对象推荐方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的对象推荐方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述对象推荐方法的技术方案的描述。
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述对象推荐方法的步骤。
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的对象推荐方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述对象推荐方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (14)
1.一种对象推荐方法,包括:
获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,所述域内交互信息表征数据域内部用户与交互对象的交互,所述跨域交互信息表征多个数据域之间用户与交互对象的间接交互;
基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象;
向所述目标用户推荐所述目标交互对象。
2.根据权利要求1所述的方法,基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象之前,还包括:
获取交互对象集,其中,所述交互对象集包括多个交互对象的交互对象信息;
基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象,包括:
基于所述用户信息、所述多个交互对象的交互对象信息、所述域内交互信息以及所述跨域交互信息,从所述交互对象集中确定目标交互对象。
3.根据权利要求1或2所述的方法,所述域内交互信息和所述跨域交互信息为对推荐模型预先训练得到,所述推荐模型为机器学习模型;
基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象,包括:
将所述用户信息输入推荐模型,经所述推荐模型利用所述域内交互信息和所述跨域交互信息对所述用户信息进行运算,获得目标交互对象。
4.根据权利要求3所述的方法,所述推荐模型包括图神经网络和超图神经网络,将所述用户信息输入推荐模型之前,还包括:
获取至少两个数据域的多个样本组以及每个样本组对应的交互标签,其中,所述样本组包括用户和交互对象,所述交互标签用于表征用户与交互对象是否存在交互关系;
基于所述多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图;
针对每个数据域,利用所述图神经网络,对该数据域对应的域内交互图中当前节点的特征信息以及邻居节点的特征信息进行聚合处理,获得所述当前节点的交互特征向量,其中,所述当前节点是所述域内交互图中的任一节点,所述当前节点为用户或交互对象,所述邻居节点为与所述当前节点存在交互关系的节点;
利用所述超图神经网络,对所述跨域交互图中参考节点的特征信息以及目标节点的特征信息进行聚合处理,获得所述参考节点的关联特征向量,其中,所述参考节点是所述跨域交互图中的任一节点,所述目标节点是与所述参考节点之间存在超边的节点;
基于所述关联特征向量、所述交互特征向量,确定每个样本组对应的预测交互指标,其中,所述预测交互指标用于表征用户与交互对象产生交互的概率;
基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整所述推荐模型的参数,直至达到训练停止条件,获得推荐模型。
5.根据权利要求4所述的方法,基于所述多个样本组,构建每个数据域分别对应的域内交互图,以及不同数据域之间的跨域交互图,包括:
根据同一个数据域中多个样本组包括的用户和交互对象、以及每个样本组对应的交互标签,构建该数据域对应的域内交互图;
若根据所述至少两个数据域的多个样本组确定多个第一样本与同一个第二样本存在交互关系,根据所述多个第一样本的特征信息构建跨域交互图,其中,所述第一样本与所述第二样本是不同类型,所述第一样本是用户或交互对象。
6.根据权利要求4或5所述的方法,所述参考节点为用户,基于所述关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
针对第一数据域中的每个用户,将该用户的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,所述第一数据域是所述至少两个数据域中的任意一个;
将每个用户的合并特征向量和每个交互对象的交互特征向量映射至具备层次结构表达能力的数据空间,得到所述第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;
基于所述第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定所述第一数据域中每个样本组对应的预测交互指标。
7.根据权利要求4或5所述的方法,所述参考节点为交互对象,基于所述关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
针对第一数据域中的每个交互对象,将该交互对象的交互特征向量和关联特征向量进行拼接,得到合并特征向量,其中,第一数据域是所述至少两个数据域中的任意一个;
将每个用户的交互特征向量和每个交互对象的合并特征向量映射至具备层次结构表达能力的数据空间,得到所述第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量;
基于所述第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定所述第一数据域中每个样本组对应的预测交互指标。
8.根据权利要求6所述的方法,所述推荐模型还包括特征提取层和全连接层,基于所述第一数据域中每个用户的增强特征向量和每个交互对象的增强特征向量,确定所述第一数据域中每个样本组对应的预测交互指标,包括:
将每个用户的增强特征向量和该用户的交互特征向量进行拼接,将每个用户的拼接后的特征向量输入所述特征提取层,得到每个用户的融合特征向量;
对每个交互对象的增强特征向量输入所述特征提取层,得到每个交互对象的融合特征向量;
将属于同一个样本组的用户的融合特征向量和交互对象的融合特征向量拼接后输入所述全连接层,确定该样本组对应的预测交互指标。
9.根据权利要求4、5、8中任一项所述的方法,所述多个样本组包括正样本组和负样本组;
基于每个样本组对应的预测交互指标和每个样本组对应的交互标签,调整所述推荐模型的参数,直至达到训练停止条件,获得推荐模型,包括:
确定每个数据域中正样本组对应的第一预测交互指标和负样本组对应的第二预测交互指标;
根据所述第一预测交互指标和所述第二预测交互指标,通过损失函数确定每个数据域对应的损失值;
根据至少两个数据域对应的损失值调整所述推荐模型的参数,直至达到训练停止条件,获得推荐模型。
10.根据权利要求4或5所述的方法,基于所述关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标之前,还包括:
对每个样本组包括的用户和交互对象进行编码,得到每个用户的原始特征向量和每个交互对象的原始特征向量;
基于所述关联特征向量、每个数据域中每个用户的交互特征向量和每个交互对象的交互特征向量,确定每个样本组对应的预测交互指标,包括:
基于所述关联特征向量、每个数据域中每个用户的交互特征向量和原始特征向量、每个交互对象的交互特征向量和原始特征向量,确定每个样本组对应的预测交互指标。
11.根据权利要求3所述的方法,所述推荐模型包括图神经网络和超图神经网络,将所述用户信息输入推荐模型,经所述推荐模型利用所述域内交互信息和所述跨域交互信息对所述用户信息进行运算,获得目标交互对象,包括:
利用图神经网络,根据所述用户信息和所述域内交互信息确定所述目标用户的交互特征向量;
利用超图神经网络,根据所述用户信息和所述跨域交互信息确定所述目标用户的关联特征向量;
基于所述交互特征向量和所述关联特征向量、以及预先获取的交互对象集中每个交互对象的交互特征向量和关联特征向量,确定所述目标用户与每个交互对象之间的预测交互指标;
基于多个预测交互指标从所述交互对象集中确定目标交互对象。
12.一种对象推荐装置,包括:
获取模块,被配置为获取目标用户的用户信息、预先学习得到的域内交互信息和跨域交互信息,其中,所述域内交互信息表征数据域内部用户与交互对象的交互,所述跨域交互信息表征多个数据域之间用户与交互对象的间接交互;
确定模块,被配置为基于所述用户信息、所述域内交互信息以及所述跨域交互信息,确定目标交互对象;
推荐模块,被配置为向所述目标用户推荐所述目标交互对象。
13.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至12任意一项所述对象推荐方法的步骤。
14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至12任意一项所述对象推荐方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977110.8A CN115238191A (zh) | 2022-08-15 | 2022-08-15 | 对象推荐方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977110.8A CN115238191A (zh) | 2022-08-15 | 2022-08-15 | 对象推荐方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115238191A true CN115238191A (zh) | 2022-10-25 |
Family
ID=83679786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210977110.8A Pending CN115238191A (zh) | 2022-08-15 | 2022-08-15 | 对象推荐方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115238191A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028719A (zh) * | 2023-03-29 | 2023-04-28 | 杭州金智塔科技有限公司 | 对象推荐方法及装置、跨域联邦商品推荐方法及装置 |
CN116484105A (zh) * | 2023-05-08 | 2023-07-25 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置及计算机设备、存储介质、程序产品 |
-
2022
- 2022-08-15 CN CN202210977110.8A patent/CN115238191A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028719A (zh) * | 2023-03-29 | 2023-04-28 | 杭州金智塔科技有限公司 | 对象推荐方法及装置、跨域联邦商品推荐方法及装置 |
CN116484105A (zh) * | 2023-05-08 | 2023-07-25 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置及计算机设备、存储介质、程序产品 |
CN116484105B (zh) * | 2023-05-08 | 2024-06-07 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置及计算机设备、存储介质、程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214685B (zh) | 一种基于知识图谱的个性化推荐方法 | |
Pan et al. | Study on convolutional neural network and its application in data mining and sales forecasting for E-commerce | |
Xu et al. | Intelligent Classification and Personalized Recommendation of E-commerce Products Based on Machine Learning | |
CN115238191A (zh) | 对象推荐方法以及装置 | |
Ong et al. | Deep learning based-recommendation system: an overview on models, datasets, evaluation metrics, and future trends | |
CN110264277A (zh) | 由计算设备执行的数据处理方法及装置、介质和计算设备 | |
Ding et al. | Computational technologies for fashion recommendation: A survey | |
Li et al. | From edge data to recommendation: A double attention-based deformable convolutional network | |
Hou et al. | A deep reinforcement learning real-time recommendation model based on long and short-term preference | |
Fareed et al. | A collaborative filtering recommendation framework utilizing social networks | |
Jiang et al. | A fusion recommendation model based on mutual information and attention learning in heterogeneous social networks | |
WO2024061073A1 (zh) | 一种多媒体信息的生成方法及装置、计算机可读存储介质 | |
CN116823321B (zh) | 一种电商用经济管理数据分析方法及系统 | |
Zhang et al. | Multi-view dynamic heterogeneous information network embedding | |
CN116541592A (zh) | 向量生成方法、信息推荐方法、装置、设备及介质 | |
Hanafi et al. | Word Sequential Using Deep LSTM and Matrix Factorization to Handle Rating Sparse Data for E‐Commerce Recommender System | |
CN115564532A (zh) | 序列推荐模型的训练方法及装置 | |
CN116127083A (zh) | 内容推荐方法、装置、设备及存储介质 | |
CN114647787A (zh) | 一种基于多模态数据的用户个性化推荐方法 | |
CN114841765A (zh) | 一种基于元路径邻域目标泛化的序列推荐方法 | |
CN114519600A (zh) | 一种融合相邻节点方差的图神经网络ctr预估算法 | |
CN116263794A (zh) | 对比学习增强的双流模型推荐系统及算法 | |
Sun et al. | DeepPRFM: Pairwise Ranking Factorization Machine Based on Deep Neural Network Enhancement | |
Patil et al. | Micro video recommendation in multimodality using dual-perception and gated recurrent graph neural network | |
Yu et al. | Recommendation Ranking Method Combining Graph Convolutional Network and Factorization Machine |
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 |