CN115114519A - 基于人工智能的推荐方法、装置、电子设备及存储介质 - Google Patents
基于人工智能的推荐方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115114519A CN115114519A CN202210517253.0A CN202210517253A CN115114519A CN 115114519 A CN115114519 A CN 115114519A CN 202210517253 A CN202210517253 A CN 202210517253A CN 115114519 A CN115114519 A CN 115114519A
- Authority
- CN
- China
- Prior art keywords
- node
- vector
- nodes
- aggregation
- feature
- 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/951—Indexing; Web crawling techniques
-
- 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/9538—Presentation of query results
-
- 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
Abstract
本申请提供了一种基于人工智能的推荐方法、装置、电子设备及存储介质;方法包括:获取异构图,对异构图中每个节点的节点数据进行特征提取,得到每个节点的嵌入向量;对每个节点的每个一跳邻居节点的嵌入向量、每个节点的嵌入向量进行特征聚合,得到每个节点的第一聚合向量;对每个节点的不同类型的邻居节点的嵌入向量、每个节点的嵌入向量进行特征聚合,得到每个节点的第二聚合向量;融合每个节点的第一、第二聚合向量,得到每个节点的融合特征向量;基于与待推荐对象存在交互关系的标签节点的融合特征向量,确定待推荐对象的标签兴趣向量,标签兴趣向量用于供执行对应待推荐对象的推荐。通过本申请,能够提升针对待推荐对象进行推荐的准确性。
Description
技术领域
本申请涉及人工智能技术,尤其涉及一种基于人工智能的推荐方法、装置、电子设备及存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
信息推荐是人工智能的重要应用,可以通过人工智能对待推荐对象在不同场景的兴趣做融合和建模,以建模结果表达待推荐对象的兴趣,从而基于建模结果获取待推荐对象可能感兴趣的推荐内容,向待推荐对象发送推荐内容。相关技术中暂无较好的方式表征待推荐对象的兴趣,进而影响了推荐处理的准确性。
发明内容
本申请实施例提供一种基于人工智能的推荐方法、装置、电子设备及计算机可读存储介质、计算机程序产品,能够提升针对待推荐对象进行推荐处理的准确性。
本申请实施例的技术方案是这样实现的:
获取包括多个节点的异构图,其中,所述异构图中所述节点的节点类型包括对象组节点、物品节点以及标签节点;
对所述异构图中每个所述节点的节点数据进行特征提取处理,得到每个所述节点对应的嵌入向量;
对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量;
对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量;
对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量;
基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,其中,所述标签兴趣向量用于供执行对应所述待推荐对象的推荐处理。
本申请实施例提供一种基于人工智能的推荐方法,包括:
本申请实施例提供一种基于人工智能的推荐装置,包括:
数据采集模块,配置为获取包括多个节点的异构图,其中,所述异构图中所述节点的节点类型包括对象组节点、物品节点以及标签节点;
特征提取模块,配置为对所述异构图中每个所述节点的节点数据进行特征提取处理,得到每个所述节点对应的嵌入向量;
特征聚合模块,配置为对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量;
所述特征聚合模块,还配置为对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量;
特征融合模块,配置为对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量;
所述特征融合模块,还配置为基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,其中,所述标签兴趣向量用于供执行对应所述待推荐对象的推荐处理。
本申请实施例提供一种电子设备,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例所述的基于人工智能的推荐方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现本申请实施例所述的基于人工智能的推荐方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现本申请实施例所述的基于人工智能的推荐方法。
本申请实施例具有以下有益效果:
通过对异构图中提取到的节点的嵌入向量进行不同方式的聚合处理,得到了异构图中节点的不同粒度的聚合向量,不同粒度的聚合向量可以表征对象组针对标签或者物品不同方面的兴趣,将聚合向量融合得到融合特征向量,融合了不同粒度的语义特征,能够更准确的体现对象组针对标签或者物品的兴趣。基于待推荐对象与标签节点之间的交互关系得到了待推荐对象的标签兴趣向量,使得标签兴趣向量能够表征待推荐对象对标签的兴趣,标签兴趣向量能够用于对待推荐对象进行推荐处理,进而提升了推荐处理的准确度,使得推荐结果能够更符合待推荐对象的需求。
附图说明
图1是本申请实施例提供的基于人工智能的推荐方法的应用场景的示意图;
图2是本申请实施例提供的用于基于人工智能的推荐的电子设备的结构示意图;
图3A是本申请实施例提供的基于人工智能的推荐方法的流程示意图;
图3B是本申请实施例提供的基于人工智能的推荐方法的流程示意图;
图3C是本申请实施例提供的基于人工智能的推荐方法的流程示意图;
图3D是本申请实施例提供的基于人工智能的推荐方法的流程示意图;
图4是本申请实施例提供的基于人工智能的推荐方法的流程示意图;
图5是本申请实施例提供的异构图的示意图;
图6是本申请实施例提供的异构图神经网络模型的结构示意图;
图7是本申请实施例提供的异构图神经网络模型基于异构图进行特征提取处理的过程示意图;
图8是本申请实施例提供的基于人工智能的推荐方法一个可选的流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
需要指出,在本申请实施例中,涉及到用户信息、用户反馈数据等相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)图神经网络模型(GNN,Graph Neural Network),传统的神经网络比较适合用于欧式空间的数据,图神经网络模型是把神经网络用在图结构(Graph)中的网络模型。图神经网络的种类很多,包括图卷积网络(GCN,Graph Convolutional Networks)、图注意力网络(GAT,Graph Attention Network)、图自编码器(GAE,Graph Auto-Encoders)等。
2)独热(One-Hot)向量,独热向量是一种稀疏向量表示,本申请实施例中的稀疏向量表示的值为0或者1,一个独热向量的各分量值中只有一个1,其它的值为0。
3)物品,本申请实施例中物品可以是广告、广告素材或者商品相关的图文、视频等。
4)标签,标签是物品中提取的关键词、类目、属性及属性对应的参数等。
5)异构图,由不同类型的节点或不同类型的边构成的关系图,称为异构图。例如:对象组节点与标签节点、物品节点是属于不同类型的节点,对象组节点、标签节点以及物品节点之间存在关联关系,对象组与标签、物品交互,则对象组与标签或者物品存在交互关系,一个物品携带多个标签,则该物品与多个标签之间存在包含关系。根据分别对应的关系,构建对象组节点、标签节点以及物品节点的关系图,该关系图为异构图。
6)邻居节点,邻居节点是与节点之间存在关联关系的节点,与节点之间仅存在一条边的邻居节点,是节点的一跳邻居节点。二跳邻居节点是与节点的一跳邻居节点有直接相连边的节点。
7)嵌入(Embedding)向量,由稀疏向量(例如:独热向量)转化为的稠密的连续向量。嵌入表(Embedding Table),存储嵌入向量的查询表,根据类目索引可以在嵌入表中查询对应的嵌入向量。
本申请实施例提供一种基于人工智能的推荐方法、基于人工智能的推荐装置、电子设备、计算机可读存储介质及程序产品,能够提升针对待推荐对象进行推荐处理的准确性。
下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、车载终端等各种类型的用户终端,也可以实施为服务器。本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。本申请实施例可以由服务器实现,或者由终端设备以及服务器协同实现,下面,将说明电子设备实施为服务器时的示例性应用。
参考图1,图1是本申请实施例提供的基于人工智能的推荐方法的应用模式示意图;示例的,涉及的服务器包括:兴趣识别服务器201、推荐服务器202(属于推荐系统,例如视频平台、广告平台、购物平台的服务器)、网络300及第一终端设备401。兴趣识别服务器201与推荐服务器202之间通过网络300进行通信,或者通过其他方式进行通信,第一终端设备401通过网络300连接推荐服务器202,网络300可以是广域网或者局域网,又或者是二者的组合。
示例的,对象可以是用户,物品可以是广告,推荐服务器202是广告平台的服务器,兴趣识别服务器201基于对象数据、物品数据和标签数据进行特征提取、特征聚合等处理,得到每个标签节点的融合特征向量,融合特征向量用于表征在推荐系统中用户组对该标签的兴趣,待推荐用户通过终端设备401通过网络300与广告推荐系统产生会话,终端设备401将交互行为信息发送到兴趣识别服务器201,从交互行为信息确定会话中待推荐用户交互过的标签(或者,交互过的物品对应的标签),兴趣识别服务器201确定待推荐用户的标签兴趣向量,并将标签兴趣向量发送到推荐服务器202,推荐服务器202基于标签兴趣向量向终端设备发送推荐结果。
在一些实施例中,兴趣识别服务器201、推荐服务器202中部分服务器或全部服务器也可以实施为一个统一的服务器。
本申请实施例可以通过区块链技术实现,可以将本申请实施例的获取的标签兴趣向量存储在区块链中,以增强标签兴趣向量的可靠性。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
本申请实施例可以通过数据库技术实现,数据库(Database),简而言之可视为电子化的文件柜存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
数据库管理系统(Database Management System,DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible Markup Language,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如结构化查询语言(SQL,Structured Query Language)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。
在一些实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备以及服务器之间可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
本申请实施例,还可以通过云技术实现,云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图像类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,将来每个物品都有可能存在自己的哈希编码识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
见图2,图2是本申请实施例提供的电子设备的结构示意图,包括:至少一个处理器410、存储器450、至少一个网络接口420。电子设备400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等。
在一些实施例中,本申请实施例提供的基于人工智能的推荐装置可以采用软件方式实现,图2示出了存储在存储器450中的基于人工智能的推荐装置455,其可以是程序和插件等形式的软件,包括以下软件模块:数据采集模块4551、特征提取模块4552、特征聚合模块4553、特征融合模块4554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
将结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的基于人工智能的推荐方法。
参见图3A,图3A是本申请实施例提供的基于人工智能的推荐方法的流程示意图,将结合图3A示出的步骤进行说明。
在步骤301中,获取包括多个节点的异构图。
这里,异构图中节点的节点类型包括对象组节点、物品节点以及标签节点。
示例的,为便于解释说明,本申请实施例中以视频平台的推荐系统为例进行说明,物品可以为视频平台中的视频、商品广告等,对象是用户。标签可以是视频的关键词(例如:视频所属的领域为科普、影评、物品测评、游戏等)、类别(例如:视频的类别为电影、新闻或者动画)、属性(例如:短视频、直播、视频长度、中文视频、外文视频、视频的观看限制年龄等)。
示例的,可以从视频平台的服务器中直接提取数据,或者通过爬虫从网络中爬取数据,得到用于构建异构图的数据。异构图中,对象组节点与物品节点、标签节点之间均可以存在交互关系。交互关系包括间接交互关系与直接交互关系,对象组对物品曾经实施过交互行为,则物品与对象组之间存在交互关系,物品对应的标签与对象组之间通过该物品存在间接交互关系;当对象组通过视频平台的搜索引擎搜索过标签,或者通过标签栏直接对标签进行了点击,则标签与对象组直接存在直接交互关系。
在一些实施例中,步骤301通过以下方式实现:获取对象数据、物品数据以及标签数据,其中,对象数据对应于多个对象;基于对象数据中每个对象的属性对多个对象进行分类处理,得到不同类型的多个对象组;将每个对象组、每个物体以及每个标签作为节点,将每个节点对应的数据作为节点数据;基于每个对象组、每个物体以及每个标签之间的关系对每个节点进行连线,得到异构图。
示例的,对象为用户,对象数量较多,且单一的对象的交互行为较为稀疏,为节约计算资源以及提升计算速度,可以将对象根据对象的基础属性(对象的属性包括:年龄、性别、地域、工作等。)划分为多个对象组(例如:1000个对象组),每个对象组的对象数量可以是不同的(由于不同属性的对象中使用推荐平台的人数不同,例如:根据年龄划分的对象组,年轻人频繁使用推荐平台,而老年人中使用推荐平台的人较少,则20岁年龄的对象组可以是每组包括100人,65岁年龄的对象组可以是每组包括10人)。
示例的,对象组中包含多个对象,可以将与对象组之间存在于预设次数以上的交互的物品或者标签认定为与对象组之间存在交互关系,避免了稀疏特征对特征提取造成影响。预设次数与对象组的对象数量之间正相关,例如:对象组有50人,则对象组与某一标签之间至少有10次交互,才确定对象组与该标签之间存在交互关系。
示例的,本申请实施例中,为便于统计,基于对象组与标签之间的直接交互关系、对象组与物品至之间的直接交互关系、物品与物品出现在同一次会话的关联关系、标签与标签属于同一物品的关联关系,将每个对象组、每个标签、每个物品作为节点,基于上述关系对节点进行连线,得到异构图。参考图5,图5是本申请实施例提供的异构图的示意图。以下结合图示说明四种关系,图中U1节点、U2节点是对象组节点,W1节点、W2节点以及W3节点是物品节点,P1节点、P2节点以及P3节点是标签节点。图5中标签节点与对象组节点之间均存在间接交互关系。
在步骤302中,对异构图中每个节点的节点数据进行特征提取处理,得到每个节点对应的嵌入向量。
示例的,嵌入向量是稠密的连续向量,稠密是指向量中所包含的特征的较为稠密,向量的分量值中的0值较少。
在一些实施例中,步骤302通过以下方式实现:对异构图中每个节点的节点数据进行映射处理,得到每个节点的独热向量;对每个节点的独热向量进行线性变换处理,得到每个节点对应的嵌入向量。
示例的,独热向量的每个维度对应于一种属性,属性对应的分量值可以用0或者1表示,0表示该节点数据包含了该种属性,1表示该节点不存在该种属性。为使每个节点的独热向量处于的向量空间相同,可以设置初始向量(例如:每一位分量值均为1的向量),若节点数据中存在对应的属性,将初始向量该属性对应的分量值设置为1,若否则设置为0,进而将节点数据映射为独热向量,得到每个节点的独热向量。
在一些实施例中,独热向量还可以是只有第i项为1,其余项为0的向量,i是节点在整个异构图中的编号。以物品节点为例,针对物品节点,将每个物品节点的物品数据转换成每个物品节点对应的独热向量,基于物品类型内每个节点对应的独热向量,构成物品独热向量矩阵表示为以下公式(1):
其中,vk1表征物品节点1对应的独热向量,vk2表征物品节点2对应的独热向量。对象组节点与标签节点同理,不再赘述。
示例的,线性变换处理具体为:获取每个节点类型对应的线性变换矩阵,对每个节点的独热向量与节点对应的类型对应的线性变换矩阵进行相乘处理。线性变换矩阵可以是不同类型对应的嵌入表(Embedding Table)矩阵,则物品类型对应的嵌入表矩阵为Vk,用于表征物品类型对应的嵌入表。标签类型对应的嵌入表矩阵为Tk,用于表征标签类型对应的嵌入表。对象组类型对应的嵌入表矩阵为Uk,用于表征对象组类型对应的嵌入表。每个节点的嵌入向量可以通过将每个节点的独热向量与每个节点对应的类型的嵌入表矩阵相乘得到,嵌入向量可以通过以下公式(3)、(4)、(5)确定:
在步骤303中,对每个节点对应的每个一跳邻居节点的嵌入向量以及每个节点的嵌入向量进行特征聚合处理,得到每个节点对应的第一聚合向量。
示例的,一跳邻居节点是与节点之间仅存在一条线的节点,也即,与节点之间存在直接关系的节点。
在一些实施例中,在一些实施例中,参考图3B,图3B是本申请实施例提供的基于人工智能的推荐方法的流程示意图,步骤303通过针对每个节点进行执行步骤3031至步骤3034实现,以下具体说明。
在步骤3031中,基于异构图确定节点的每个一跳邻居节点。
示例的,基于异构图中每个节点之间的连线,可以确定节点的每个一跳邻居节点。为便于解释,以下继续以物品节点进行举例。参考图5,其中,物品节点W2的一跳邻居节点包括对象组节点U1、对象节点U2、标签节点P1、物品节点W1和物品节点W3。
在步骤3032中,基于节点类型对每个一跳邻居节点的嵌入向量进行分类处理,得到每个节点类型对应的一跳邻居节点的嵌入向量,将每个节点类型对应的嵌入向量进行组合,得到每个节点类型对应的一跳邻居节点向量矩阵。
示例的,对物品节点W2的一跳邻居节点进行分类,得到物品节点类型(物品节点W1和物品节点W3)、对象节点类型(对象组节点U1、对象节点U2)、标签节点类型(标签节点P1)分别对应的节点,将每个类型的节点类型对应的嵌入向量进行组合,则得到每个节点类型对应的一跳邻居节点向量矩阵。
在步骤3033中,对每个一跳邻居节点向量矩阵进行转换处理,得到每个节点类型对应的类型内嵌入向量。
示例的,类型内嵌入向量也即,将同类型的节点的嵌入向量对应的特征进行融合得到的向量。
步骤3033通过以下方式实现:针对每个一跳邻居节点向量矩阵进行以下处理:对一跳邻居节点向量矩阵进行映射处理,得到一跳邻居节点向量矩阵的注意力矩阵,其中,注意力矩阵包括:查询矩阵、键矩阵以及值矩阵;对查询矩阵与键矩阵之间的乘积进行归一化处理(基于Softmax函数进行归一化处理),将归一化处理的结果与值矩阵之间的乘积,作为节点类型对应的类型内嵌入向量。
示例的,基于一跳邻居节点向量矩阵Fv获取物品节点对应的查询矩阵Q,键矩阵K,值矩阵V的计算公式(7.1)、(7.2)、(7.2)如下:
Q=WQ*Fv (7.1)
K=WK*Fv (7.2)
V=WV*Fv (7.3)
对于物品类型的节点输出的类型内聚合嵌入向量hv(上文的类型内嵌入向量),可以通过以下公式(8)得到:
其中,dh表示Q、K、V的矩阵长度,Fv的矩阵长度可以表示为dv。同理的,基于上述处理方式,可以分别得到对象组的类型内聚合嵌入向量hu及标签的类型内嵌入向量ht。
在步骤3034中,基于节点的每个类型内嵌入向量进行聚合处理,得到节点对应的第一聚合向量。
示例的,聚合处理可以通过Concat函数或者加权计算实现,例如:通过concat函数可以将物品节点的第一聚合向量表征为以下公式(9.1):
hi 1=concat(hu,hv,ht) (9.1)
在一些实施例中,标签节点或者对象组节点之间没有直接进行交互,则标签节点周围不存在对象节点类型的一跳邻居节点,则标签节点的第一聚合向量表征为以下公式(9.2):
hi 1=concat(hv,ht) (9.2)
对应的,如果对象组节点周围不存在标签节点类型的一跳邻居节点,则对象组节点的第一聚合向量表征为以下公式(9.3):
hi 1=concat(hu,hv) (9.3)
也即,本申请实施例中,可以根据节点之间的实际关系确定节点的第一聚合向量,使得第一聚合向量能够更准确的表征节点之间的关系,表征节点的特征,进而提升了本申请实施例获取的标签兴趣向量的准确性。同时,当节点之间不存在对应的关系时,则不基于该关系进行计算,节约计算资源,提升了计算标签兴趣向量的速度。
在步骤304中,对每个节点的不同类型的邻居节点的嵌入向量以及每个节点的嵌入向量进行特征聚合处理,得到每个节点对应的第二聚合向量。
示例的,不同类型的邻居节点可以是多跳邻居节点,也即,与节点之间存在间接关系的节点。
在一些实施例中,参考图3C,图3C是本申请实施例提供的基于人工智能的推荐方法的流程示意图,步骤304通过步骤3041至步骤3044实现,以下具体说明。
在步骤3041中,基于异构图确定每个节点的不同类型的邻居节点。
继续参考图5,基于异构图可以确定物品节点W2的不同类型的邻居节点是对象组节点U1、对象组节点U2、标签节点P1、标签节点P2以及标签节点P3。
在步骤3042中,对每个节点的嵌入向量与每个节点对应的不同类型的邻居节点进行合并处理,得到每个节点的类型间嵌入向量。
示例的,合并处理可以通过Concat函数实现,假设:物品节点k,节点k的邻居节点有标签节点(对应的嵌入向量为)、对象组节点(对应的嵌入向量为),物品节点k的类型间聚合嵌入向量fk可以表示为以下公式(10.1):
在步骤3043中,针对每个节点确定以下两者的加和:节点对应的类型间嵌入向量,节点的邻居节点对应的类型间嵌入向量。
在步骤3044中,对加和进行映射处理,对映射处理的结果进行激活处理,得到每个节点对应的第二聚合向量。
示例的,映射处理可以通过将加和与映射矩阵相乘实现,激活处理可以通过Relu函数实现,则节点i的第二聚合向量hi 2,表示为以下公式(12):
其中,WG表示映射矩阵,Relu是激活函数。
本申请实施例中,基于节点周围不同类型节点的嵌入向量生成节点类型之间的类型间嵌入向量,聚合不同类型节点的语义特征,使得节点的第二聚合向量的细粒度更高,第二聚合向量能够更准确地表征对象针对标签节点或者物品节点的兴趣,进而,利用标签兴趣向量能够更准确地向用户进行推荐处理。
在步骤305中,对每个节点对应的第一聚合向量与第二聚合向量进行融合处理,得到每个节点对应的融合特征向量。
在一些实施例中,步骤305以下方式实现:对每个节点对应的第一聚合向量以及第二聚合向量进行聚合处理,得到每个节点的第三聚合向量;对每个节点的第三聚合向量进行激活处理,并对激活处理的结果进行平均池化处理,得到每个节点对应的融合特征向量。
示例的,针对每个节点,将节点的第一聚合向量hi 1以及第二聚合向量合并(利用Concat函数),得到第三聚合向量hi表示为以下公式(13):
hi=concat(hi 1,hi 2) (13)
对第三聚合向量hi激活函数(Relu)和平均池化操作(Average Pooling)进行下采样,得到节点的融合特征向量oi,表示为以下公式(14):
oi=average_pooling(relu(WFhi)) (14)
其中,WF是映射矩阵。
在步骤306中,基于与待推荐对象存在交互关系的标签节点对应的融合特征向量,确定待推荐对象的标签兴趣向量。
这里,标签兴趣向量用于供执行对应待推荐对象的推荐处理。
示例的,存在交互关系的标签节点,是待推荐对象曾经实施过交互行为的标签对应的节点。标签兴趣向量是以向量形式表示的待推荐对象的兴趣特征。
在一些实施例中,在一些实施例中,参考图3D,图3D是本申请实施例提供的基于人工智能的推荐方法的流程示意图,步骤306通过步骤3061至步骤3063实现,以下具体说明。
在步骤3061中,获取待推荐对象的交互标签。
这里,交互标签是待推荐对象曾经实施过交互行为的标签。
示例的,交互行为包括间接的交互行为(例如:用户交互了标签对应的视频)与直接的交互行为(例如:用户直接点击了标签,或者搜索了标签)。待推荐对象可以是对象组以外的对象。
在步骤3062中,对每个交互标签与异构图进行匹配处理,得到异构图中与待推荐对象存在交互关系的交互标签节点。
示例的,为使每个交互标签均为异构图中存在的标签,在异构图构建完成后,可以随推荐系统中标签数据的更新对异构图进行更新,进而确保异构图中的标签覆盖大部分的标签。将与交互标签文本内容相同的异构图中的标签对应的节点作为交互标签节点。
在一些实施例中,若交互标签是异构图中不存在的标签,则将交互标签存储,基于交互标签更新异构图,同时,将与该交互标签相似度最高的标签作为与该交互标签匹配的标签,将匹配的标签作为交互标签。
在步骤3063中,对每个交互标签节点对应的融合特征向量进行叠加,得到待推荐对象的标签兴趣向量。
在一些实施例中,步骤3063通过以下方式实现:基于每个交互标签节点与待推荐对象之间的交互次数,确定每个交互标签节点对应的权重,其中,权重与交互次数正相关;基于每个交互标签节点的融合特征向量与每个交互标签节点对应的权重进行加权计算处理,得到待推荐对象的标签兴趣向量。
在一些实施例中,特征提取处理通过调用异构图神经网络模型中的特征提取层实现的,特征聚合处理是通过调用异构图神经网络模型的特征聚合层实现的,融合处理是通过调用异构图神经网络模型的特征融合层实现的;其中,特征聚合层包括至少两个特征聚合分支,每个特征聚合分支用于执行不同方式的特征聚合处理。
参考图6,图6是本申请实施例提供的异构图神经网络模型的结构示意图;异构图神经网络模型600中,特征提取层601,用于对异构图进行特征提取得到每个节点的嵌入向量。特征聚合层602,用于基于每个节点的嵌入向量执行不同类型的聚合处理,得到不同的聚合向量。特征融合层603,用于对每种聚合处理方式得到的聚合向量进行融合处理,得到每个节点的融合特征向量。特征聚合层602内部包括至少两个特征聚合分支,每个特征聚合分支用于执行不同方式的特征聚合处理。每个特征聚合分支并行地执行特征聚合处理。
在一些实施例中,为提升异构图神经网络模型进行特征提取、特征融合的准确性,还可以进行以下处理:基于每个节点的融合特征向量以及每个节点的邻居节点融合特征向量之间的相似度,确定异构图神经网络模型的目标损失;基于目标损失对异构图神经网络模型进行反向传播处理,得到异构图神经网络模型的更新参数;基于更新参数替换异构图神经网络模型中对应的原始参数,得到更新后的异构图神经网络模型。
以下结合公式说明目标损失,基于邻居节点之间的相似度可以确定目标损失函数,目标损失函数L表示为以下公式(15):
其中Ni表示节点i的邻居节点集合,oi是节点i的融合特征向量,ok表示属于邻居节点集合的节点的融合特征向量,oj表示不属于邻居节点集合的节点的融合特征向量,σ(oi Tok)是节点i和节点i的邻居节点k之间的相似度,σ(oi T ok)是节点i和与节点i不是邻居节点的节点j之间的相似度。
在一些实施例中,参考图4,图4是本申请实施例提供的基于人工智能的推荐方法的流程示意图,在步骤306之后,通过步骤401至步骤404向待推荐对象发送推荐物品的推荐消息,以下具体说明。
在步骤401中,获取标签数据库中每个标签对应的标签特征向量。
示例的,标签数据库可以是推荐系统的数据库,标签数据库中存储有大量的标签、标签对应的标签特征向量以及标签与物品之间的对应关系,可以基于标签确定对应的物品、物品对应的推荐消息。标签特征向量可以是仅基于标签与物品之间的关系提取的特征向量,还可以是基于标签数据映射得到的特征向量。
在步骤402中,确定每个标签特征向量与标签兴趣向量之间的相似度。
示例的,相似度可以是余弦相似度,相似度越高则说明标签特征向量对应的标签与待推荐对象的标签兴趣越相近,标签越能够符合待推荐对象的需求。
在步骤403中,基于每个相似度对每个标签进行降序排序,将降序排序的结果中头部的至少一个标签对应的物品作为待推荐物品。
示例的,每个标签可以对应于至少一个物品,统计至少一个标签对应的每个物体,得到物品列表,将物品列表中出现次数最多的至少一个物品作为待推荐物品。例如:选取降序排序的结果中头部的5个标签,统计5个标签分别对应的每个物品,得到物品列表,统计物品列表中每个物品的出现次数,将出现次数最多的4个物品作为待推荐物品。
在步骤404中,向待推荐对象发送每个待推荐物品的推荐消息。
示例的,例如:待推荐物品是新闻视频,则推荐消息可以是新闻视频的标题、新闻视频的封面图像等,将新闻视频的封面图像、标题等推荐消息发送到终端设备401,终端设备401将推荐消息展示给待推荐对象,实现对待推荐对象的推荐处理。
本申请实施例通过对异构图中提取到的节点的嵌入向量进行不同方式的聚合处理,得到了异构图中节点的不同粒度的聚合向量,不同粒度的聚合向量可以表征对象组针对标签或者物品不同方面的兴趣,将聚合向量融合得到融合特征向量,融合了不同粒度的语义特征,能够更准确的体现对象组针对标签或者物品的兴趣。基于待推荐对象与标签节点之间的交互关系得到了待推荐对象的标签兴趣向量,使得标签兴趣向量能够表征待推荐对象对标签的兴趣,标签兴趣向量能够用于对待推荐对象进行推荐处理,进而提升了推荐处理的准确度,使得推荐结果能够更符合待推荐对象的需求。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
本申请实施例提供的基于人工智能的推荐方法可以应用在如下应用场景中:
在广告领域,推荐技术发展迅猛。广告素材类型包括视频、图文等。若将每个广告或者商品作为一个物品,每个物品对应的视频和图文中蕴含着丰富的信息,这些信息很难在封面图和标题中完整展示给用户。为了方便广告推荐系统快速理解物品内容并发现用户的兴趣点,基于用户的标签推荐被提出并广泛使用在广告推荐系统中。广告推荐系统从每个物品中提取标签,这些标签能够表示物品中不同粒度的兴趣点,基于标签数据对用户的兴趣进行建模,通过建模结果表征用户对标签的兴趣偏好,从而针对不同用户生成个性化的标签兴趣(以向量形式表征的用户兴趣特征),使得标签相关的指标(如标签点击率等)和物品相关的指标(如转化效果等)均得到提升。好的个性化标签兴趣模型不仅能够帮助广告推荐系统更好的理解用户的喜好提升广告的推荐和转化效果,而且可以提升用户的体验,有利于整个广告推荐系统的长期良性发展。
目前常用的用户标签偏好学习算法都是直接根据用户在标签上的点击或者转化行为对用户的兴趣进行建模,但是,在广告推荐系统中用户在标签上的行为非常稀疏,导致算法模型学习到的用户标签偏好不能很好的表达用户的真正喜好。
本申请实施例提供的基于人工智能的推荐方法,能够基于广告推荐系统存储的数据构建了融合广告(或者商品)、标签、用户组的异构图,对异构图进行特征提取以及特征聚合处理,得到用户标签兴趣向量。在异构图聚合处理过程中使用域内特征聚合算法、域间特征聚合算法和多跳特征聚合算法,能够从用户丰富的物品行为信息中,捕捉用户对于标签的偏好信息,进而,基于本申请实施例提供的基于人工智能的推荐方法得到的用户的标签兴趣向量,能够更准确地对用户进行广告(或者商品)推荐。
示例的,参考图8,图8是本申请实施例提供的基于人工智能的推荐方法一个可选的流程示意图,以下以服务器为执行主体,将结合图8示出的步骤进行说明。
在步骤801中,构建异构图。
示例的,待推荐对象是用户,物品是广告,标签是广告相关的关键词、类别。服务器使用爬虫从网络中爬取对象数据、物品数据以及标签数据,或者从广告推荐系统中直接获取对象数据、物品数据以及标签数据。将每个标签作为一个节点,将每个物品作为一个节点。由于对象数量庞大,而每个对象的行为相对稀疏,因此将对象按照基础属性特征(例如:性别、年龄、工作、地域等)分成多个(例如:10000个)不同类型的对象组,以对象组替代对象作为节点。异构图中的边可以表征节点之间的存在关系,基于以下四种关系构建异构图。参考图5,图5是本申请实施例提供的异构图的示意图。以下结合图示说明四种关系,图中U1节点、U2节点是对象组节点,W1节点、W2节点以及W3节点是物品节点,P1节点、P2节点以及P3节点是标签节点。
1、物品与物品之间的关系,出现在同一个会话(Session,对象访问广告推荐系统发生的一次会话)中的物品之间存在关联关系。例如:物体节点W1对应的物体和物体节点W2对应的物体出现在同一个会话。
2、对象组与物品之间的关系,例如:某物品被某对象组交互(例如:观看或者点击)超过3次,则对象组与该物体之间存在关联关系。例如:对象组节点U2对应的用户组与物体节点W3对应的物体存在关系。
3、标签与标签之间的关系,物品和其携带的标签之间存在包含关系。例如:物体节点W3携带标签节点P2对应的标签。
4、物品与标签的关系,两个标签属于同一个物品,则两个物品之间存在关联关系。例如:标签节点P3对应的标签和标签节点P2对应的标签属于同一物体节点W3对应的物体。
在步骤802中,对异构图的每个节点进行特征提取,得到每个节点的嵌入向量。
本申请实施例提供的基于人工智能的推荐方法可以通过调用异构图神经网络模型实现,参考图6,图6是本申请实施例提供的异构图神经网络模型的结构示意图;异构图神经网络模型600中,特征提取层601,用于对异构图进行特征提取得到每个节点的嵌入向量。特征聚合层602,用于基于每个节点的嵌入向量执行不同类型的聚合处理,得到不同的聚合向量。特征融合层603,用于对每种聚合处理方式得到的聚合向量进行融合处理,得到每个节点的融合特征向量。
示例的,针对物品节点,将每个物品节点的物品数据转换成每个物品节点对应的独热向量(本申请实施例中独热向量是只有第i项为1,其余项为0的向量),基于物品类型内每个节点对应的独热向量,构成物品独热向量矩阵表示为以下公式(1):
其中,vk1表征物品节点1对应的独热向量,vk2表征物品节点2对应的独热向量。
其中,tk1表征标签节点1对应的独热向量,tk2表征标签节点2对应的独热向量。
其中,uk1表征对象组节点1对应的独热向量,uk2表征对象组节点2对应的独热向量。
示例的,获取不同类型对应的嵌入表(Embedding Table)矩阵,在构建异构图神经网络模型时,可以对各类型的嵌入表矩阵进行初始化。物品类型对应的嵌入表矩阵为Vk,用于表征物品类型对应的嵌入表。标签类型对应的嵌入表矩阵为Tk,用于表征标签类型对应的嵌入表。对象组类型对应的嵌入表矩阵为Uk,用于表征对象组类型对应的嵌入表。
每个节点的嵌入向量可以通过将每个节点的独热向量与每个节点对应的类型的嵌入表矩阵相乘得到,嵌入向量可以通过以下公式(4)、(5)、(6)确定:
在步骤803中,获取异构图的每个节点的一跳邻居聚合特征以及图特征聚合特征。
针对一跳邻居聚合特征(上文中的第一聚合向量),每种类型的节点的一跳邻居聚合特征获取方式相同,以下以物品类型内节点为例,定义某个物品节点的嵌入向量为该物品节点和其物品类型内的一跳邻居节点集合组成的矩阵Fv可以表征为
基于矩阵Fv获取物品节点对应的查询矩阵Q,键矩阵K,值矩阵V的计算公式(7.1)、(7.2)、(7.2)如下:
Q=WQ*Fv (7.1)
K=WK*Fv (7.2)
V=WV*Fv (7.3)
对于物品类型的节点输出的类型内聚合嵌入向量hv(上文的类型内嵌入向量),可以通过以下公式(8)得到:
其中,dh表示Q、K、V的矩阵长度,Fv的矩阵长度可以表示为dv。再分别计算对象组类型和标签类型的节点类型内嵌入向量,分别得到对象组的类型内聚合嵌入向量hu及标签的类型内嵌入向量ht。
最终第i个节点的一跳邻居特征聚合嵌入向量hi 1(上文的第一聚合向量)表示为以下公式(9.1):
hi 1=concat(hu,hv,ht) (9.1)
针对图特征聚合特征(上文中的第二聚合向量),对于每个异构图中的节点而言,将其邻居节点中与该节点属于不同类型的邻居节点的嵌入向量聚合,可以得到该节点的类型间聚合嵌入向量,节点k是物品节点,节点k的邻居节点有标签节点、对象组节点,节点k的类型间聚合嵌入向量可以表示为以下公式(10.1):
其中,针对任意一个节点,确定与该节点处于不同类型的邻居节点,将该节点的嵌入向量和类型间邻居节点的嵌入向量进行聚合处理(Concat),得到该节点的类型间聚合嵌入向量。
示例的,对每个节点的类型间聚合嵌入向量与每个节点的不同类型的邻居节点的类型间聚合嵌入向量(上文的类型间嵌入向量),可以得到节点的图特征聚合向量hi 2(上文的第二聚合向量),表示为以下公式(12):
其中,fi表示第i个节点的类型间聚合嵌入向量,fj表示第j个节点的类型间聚合嵌入向量,S是邻居节点的集合,WG表示映射矩阵,Relu是激活函数。
在步骤804中,基于每个节点的一跳邻居聚合特征以及图特征聚合特征,确定每个节点的融合特征向量。
针对每个节点,将节点的一跳邻居特征聚合嵌入向量hi 1和图特征聚合向量hi 2合并,得到合并后的嵌入向量hi表示为以下公式(13):
hi=concat(hi 1,hi 2) (13)
再使用激活函数(Relu)和平均池化操作(Average Pooling)进行下采样,得到节点的融合特征向量oi,表示为以下公式(14):
oi=average_pooling(relu(WFhi)) (14)
在一些实施例中,在步骤804之后,还可以基于邻居节点之间的相似度确定目标损失函数,目标损失函数表示为以下公式(15):
其中Ni表示节点i的邻居节点集合,ok表示属于邻居节点集合的节点的融合特征向量,oj表示不属于邻居节点集合的节点的融合特征向量。可以基于目标损失函数对模型进行优化训练。
在步骤805中,基于与待推荐用户交互过的标签对应的标签节点的融合特征向量,确定待推荐用户的标签兴趣向量。
示例的,本申请实施例可以通过异构图神经网络模型实现,参考图7,图7是本申请实施例提供的异构图神经网络模型基于异构图进行特征提取处理的过程示意图;对象数据、物品数据以及标签数据分别被输入到特征提取层601,特征提取层601输出对象节点(也即,对象组节点)的嵌入向量、物品节点的嵌入向量、标签节点的嵌入向量,每个节点的嵌入向量被输入特征聚合层602,特征聚合层602中包括分支6021以及分支6022,分支6021基于每个节点的嵌入向量依次进行图特征聚合处理、激活处理(Relu),分支6022基于每个节点的嵌入向量依次进行一跳邻居聚合处理、归一化处理(Softmax)以及合并处理(Concat)。特征聚合层602输出不同聚合处理方式得到的每个节点的两种聚合向量至特征融合层603,特征融合层603基于每个节点的两种聚合向量依次进行融合处理(依次进行Concat处理、Relu处理)、平均池化处理(Average Poo ling),得到每个节点的融合特征向量。
在一些实施例中,在步骤805之后,还可以通过以下方式对待推荐用户进行广告推荐:将待推荐用户的标签兴趣向量作为参考向量,计算广告推荐系统中的每个标签对应的特征向量与参考向量之间的相似度,将相似度降序排序中靠前的至少部分标签关联的广告或者商品推荐给待推荐用户。
本申请实施例中,基于广告系统存储的数据构建了融合广告素材、标签、用户的异构图,调用模型对异构图进行特征提取以及特征聚合处理,得到用户标签兴趣向量。在异构图聚合处理过程中使用域内特征聚合算法、域间特征聚合算法和多跳特征聚合算法,从用户丰富的物品行为信息中,捕捉用户对于标签的偏好信息,进而,基于本申请实施例得到的标签兴趣向量能够对用户进行更准确的推荐处理。
下面继续说明本申请实施例提供的基于人工智能的推荐装置455的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的基于人工智能的推荐装置455中的软件模块可以包括:数据采集模块4551,配置为获取包括多个节点的异构图,其中,所述异构图中所述节点的节点类型包括对象组节点、物品节点以及标签节点;特征提取模块4552,配置为对所述异构图中每个所述节点的节点数据进行特征提取处理,得到每个所述节点对应的嵌入向量;特征聚合模块4553,配置为对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量;所述特征聚合模块4553,还配置为对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量;特征融合模块4554,配置为对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量;所述特征融合模块4554,还配置为基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,其中,所述标签兴趣向量用于供执行对应所述待推荐对象的推荐处理。
在一些实施例中,特征聚合模块4553,配置为针对每个所述节点进行以下处理:基于所述异构图确定所述节点的每个所述一跳邻居节点;基于节点类型对每个所述一跳邻居节点的嵌入向量进行分类处理,得到每个所述节点类型对应的一跳邻居节点的嵌入向量,将每个所述节点类型对应的嵌入向量进行组合,得到每个所述节点类型对应的一跳邻居节点向量矩阵;对每个所述一跳邻居节点向量矩阵进行转换处理,得到每个所述节点类型对应的类型内嵌入向量;基于所述节点的每个所述类型内嵌入向量进行聚合处理,得到所述节点对应的第一聚合向量。
在一些实施例中,特征聚合模块4553,配置为针对每个所述一跳邻居节点向量矩阵进行以下处理:对所述一跳邻居节点向量矩阵进行映射处理,得到所述一跳邻居节点向量矩阵的注意力矩阵,其中,所述注意力矩阵包括:查询矩阵、键矩阵以及值矩阵;对所述查询矩阵与所述键矩阵之间的乘积进行归一化处理,将所述归一化处理的结果与所述值矩阵之间的乘积,作为所述节点类型对应的类型内嵌入向量。
在一些实施例中,特征聚合模块4553,配置为基于所述异构图确定每个所述节点的不同类型的邻居节点;对每个所述节点的嵌入向量与每个所述节点对应的不同类型的邻居节点进行合并处理,得到每个所述节点的类型间嵌入向量;针对每个所述节点确定以下两者的加和:所述节点对应的类型间嵌入向量,所述节点的邻居节点对应的类型间嵌入向量;对所述加和进行映射处理,对所述映射处理的结果进行激活处理,得到每个所述节点对应的第二聚合向量。
在一些实施例中,特征融合模块4554,配置为对每个所述节点对应的所述第一聚合向量以及所述第二聚合向量进行聚合处理,得到每个所述节点的第三聚合向量;对每个所述节点的第三聚合向量进行激活处理,并对所述激活处理的结果进行平均池化处理,得到每个所述节点对应的融合特征向量。
在一些实施例中,特征融合模块4554,配置为获取所述待推荐对象的交互标签,其中,所述交互标签是所述待推荐对象曾经实施过交互行为的标签;对每个所述交互标签与所述异构图进行匹配处理,得到所述异构图中与所述待推荐对象存在交互关系的交互标签节点;对每个所述交互标签节点对应的融合特征向量进行叠加,得到所述待推荐对象的标签兴趣向量。
在一些实施例中,特征融合模块4554,配置为基于每个所述交互标签节点与所述待推荐对象之间的交互次数,确定每个所述交互标签节点对应的权重,其中,所述权重与所述交互次数正相关;基于每个所述交互标签节点的融合特征向量与每个所述交互标签节点对应的权重进行加权计算处理,得到所述待推荐对象的标签兴趣向量。
在一些实施例中,所述特征提取处理通过调用异构图神经网络模型中的特征提取层实现的,所述特征聚合处理是通过调用所述异构图神经网络模型的特征聚合层实现的,所述融合处理是通过调用所述异构图神经网络模型的特征融合层实现的;其中,所述特征聚合层包括至少两个特征聚合分支,每个所述特征聚合分支用于执行不同方式的所述特征聚合处理。
在一些实施例中,所述特征融合模块4554,还配置为基于每个所述节点的融合特征向量以及每个所述节点的邻居节点融合特征向量之间的相似度,确定所述异构图神经网络模型的目标损失;基于所述目标损失对所述异构图神经网络模型进行反向传播处理,得到所述异构图神经网络模型的更新参数;基于所述更新参数替换所述异构图神经网络模型中对应的原始参数,得到更新后的所述异构图神经网络模型。
在一些实施例中,所述特征融合模块4554,还配置为获取标签数据库中每个所述标签对应的标签特征向量;确定每个所述标签特征向量与所述标签兴趣向量之间的相似度;基于每个所述相似度对每个所述标签进行降序排序,将所述降序排序的结果中头部的至少一个标签对应的物品作为待推荐物品;向所述待推荐对象发送每个所述待推荐物品的推荐消息。
在一些实施例中,所述数据采集模块4551,还配置为获取对象数据、物品数据以及标签数据,其中,所述对象数据对应于多个对象;基于所述对象数据中每个所述对象的属性对所述多个对象进行分类处理,得到不同类型的多个对象组;将每个所述对象组、每个物体以及每个标签作为节点,将每个节点对应的数据作为节点数据;基于每个所述对象组、每个所述物体以及每个所述标签之间的关系对每个所述节点进行连线,得到异构图。
在一些实施例中,所述特征提取模块4552,还配置为对所述异构图中每个所述节点的节点数据进行映射处理,得到每个所述节点的独热向量;对每个所述节点的独热向量进行线性变换处理,得到每个所述节点对应的嵌入向量。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的基于人工智能的推荐方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的基于人工智能的推荐方法,例如,如图3A示出的基于人工智能的推荐方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EP ROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,通过本申请实施例对异构图中提取到的节点的嵌入向量进行不同方式的聚合处理,得到了异构图中节点的不同粒度的聚合向量,不同粒度的聚合向量可以表征对象组针对标签或者物品不同方面的兴趣,将聚合向量融合得到融合特征向量,融合了不同粒度的语义特征,能够更准确的体现对象组针对标签或者物品的兴趣。基于待推荐对象与标签节点之间的交互关系得到了待推荐对象的标签兴趣向量,使得标签兴趣向量能够表征待推荐对象对标签的兴趣,标签兴趣向量能够用于对待推荐对象进行推荐处理,进而提升了推荐处理的准确度,使得推荐结果能够更符合待推荐对象的需求。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (15)
1.一种基于人工智能的推荐方法,其特征在于,所述方法包括:
获取包括多个节点的异构图,其中,所述异构图中所述节点的节点类型包括对象组节点、物品节点以及标签节点;
对所述异构图中每个所述节点的节点数据进行特征提取处理,得到每个所述节点对应的嵌入向量;
对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量;
对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量;
对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量;
基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,其中,所述标签兴趣向量用于供执行对应所述待推荐对象的推荐处理。
2.如权利要求1所述的方法,其特征在于,所述对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量,包括:
针对每个所述节点进行以下处理:
基于所述异构图确定所述节点的每个所述一跳邻居节点;
基于节点类型对每个所述一跳邻居节点的嵌入向量进行分类处理,得到每个所述节点类型对应的一跳邻居节点的嵌入向量,将每个所述节点类型对应的嵌入向量进行组合,得到每个所述节点类型对应的一跳邻居节点向量矩阵;
对每个所述一跳邻居节点向量矩阵进行转换处理,得到每个所述节点类型对应的类型内嵌入向量;
基于所述节点的每个所述类型内嵌入向量进行聚合处理,得到所述节点对应的第一聚合向量。
3.如权利要求2所述的方法,其特征在于,所述对每个所述一跳邻居节点向量矩阵进行转换处理,得到每个所述节点类型对应的类型内嵌入向量,包括:
针对每个所述一跳邻居节点向量矩阵进行以下处理:
对所述一跳邻居节点向量矩阵进行映射处理,得到所述一跳邻居节点向量矩阵的注意力矩阵,其中,所述注意力矩阵包括:查询矩阵、键矩阵以及值矩阵;
对所述查询矩阵与所述键矩阵之间的乘积进行归一化处理,将所述归一化处理的结果与所述值矩阵之间的乘积,作为所述节点类型对应的类型内嵌入向量。
4.如权利要求1所述的方法,其特征在于,所述对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量,包括:
基于所述异构图确定每个所述节点的不同类型的邻居节点;
对每个所述节点的嵌入向量与每个所述节点对应的不同类型的邻居节点进行合并处理,得到每个所述节点的类型间嵌入向量;
针对每个所述节点确定以下两者的加和:所述节点对应的类型间嵌入向量,所述节点的邻居节点对应的类型间嵌入向量;
对所述加和进行映射处理,对所述映射处理的结果进行激活处理,得到每个所述节点对应的第二聚合向量。
5.如权利要求1所述的方法,其特征在于,所述对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量,包括:
对每个所述节点对应的所述第一聚合向量以及所述第二聚合向量进行聚合处理,得到每个所述节点的第三聚合向量;
对每个所述节点的第三聚合向量进行激活处理,并对所述激活处理的结果进行平均池化处理,得到每个所述节点对应的融合特征向量。
6.如权利要求1所述的方法,其特征在于,所述基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,包括:
获取所述待推荐对象的交互标签,其中,所述交互标签是所述待推荐对象曾经实施过交互行为的标签;
对每个所述交互标签与所述异构图进行匹配处理,得到所述异构图中与所述待推荐对象存在交互关系的交互标签节点;
对每个所述交互标签节点对应的融合特征向量进行叠加,得到所述待推荐对象的标签兴趣向量。
7.如权利要求6所述的方法,其特征在于,所述对每个所述交互标签节点对应的融合特征向量进行叠加,得到所述待推荐对象的标签兴趣向量,包括:
基于每个所述交互标签节点与所述待推荐对象之间的交互次数,确定每个所述交互标签节点对应的权重,其中,所述权重与所述交互次数正相关;
基于每个所述交互标签节点的融合特征向量与每个所述交互标签节点对应的权重进行加权计算处理,得到所述待推荐对象的标签兴趣向量。
8.如权利要求1至7任一项所述的方法,其特征在于,
所述特征提取处理通过调用异构图神经网络模型中的特征提取层实现的,所述特征聚合处理是通过调用所述异构图神经网络模型的特征聚合层实现的,所述融合处理是通过调用所述异构图神经网络模型的特征融合层实现的;
其中,所述特征聚合层包括至少两个特征聚合分支,每个所述特征聚合分支用于执行不同方式的所述特征聚合处理。
9.如权利要求8所述的方法,其特征在于,所述方法还包括:
基于每个所述节点的融合特征向量以及每个所述节点的邻居节点融合特征向量之间的相似度,确定所述异构图神经网络模型的目标损失;
基于所述目标损失对所述异构图神经网络模型进行反向传播处理,得到所述异构图神经网络模型的更新参数;
基于所述更新参数替换所述异构图神经网络模型中对应的原始参数,得到更新后的所述异构图神经网络模型。
10.如权利要求1至7任一项所述的方法,其特征在于,所述基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量之后,所述方法还包括:
获取标签数据库中每个所述标签对应的标签特征向量;
确定每个所述标签特征向量与所述标签兴趣向量之间的相似度;
基于每个所述相似度对每个所述标签进行降序排序,将所述降序排序的结果中头部的至少一个标签对应的物品作为待推荐物品;
向所述待推荐对象发送每个所述待推荐物品的推荐消息。
11.如权利要求1至7任一项所述的方法,其特征在于,所述获取包括多个节点的异构图,包括:
获取对象数据、物品数据以及标签数据,其中,所述对象数据对应于多个对象;
基于所述对象数据中每个所述对象的属性对所述多个对象进行分类处理,得到不同类型的多个对象组;
将每个所述对象组、每个物体以及每个标签作为节点,将每个节点对应的数据作为节点数据;
基于每个所述对象组、每个所述物体以及每个所述标签之间的关系对每个所述节点进行连线,得到异构图。
12.一种基于人工智能的推荐装置,其特征在于,所述基于人工智能的推荐装置包括:
数据采集模块,配置为获取包括多个节点的异构图,其中,所述异构图中所述节点的节点类型包括对象组节点、物品节点以及标签节点;
特征提取模块,配置为对所述异构图中每个所述节点的节点数据进行特征提取处理,得到每个所述节点对应的嵌入向量;
特征聚合模块,配置为对每个所述节点对应的每个一跳邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第一聚合向量;
所述特征聚合模块,还配置为对每个所述节点的不同类型的邻居节点的嵌入向量以及每个所述节点的嵌入向量进行特征聚合处理,得到每个所述节点对应的第二聚合向量;
特征融合模块,配置为对每个所述节点对应的所述第一聚合向量与所述第二聚合向量进行融合处理,得到每个所述节点对应的融合特征向量;
所述特征融合模块,还配置为基于与待推荐对象存在交互关系的所述标签节点对应的所述融合特征向量,确定所述待推荐对象的标签兴趣向量,其中,所述标签兴趣向量用于供执行对应所述待推荐对象的推荐处理。
13.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至11任一项所述的基于人工智能的推荐方法。
14.一种计算机可读存储介质,存储有可执行指令,其特征在于,所述可执行指令被处理器执行时实现权利要求1至11任一项所述的基于人工智能的推荐方法。
15.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现权利要求1至11任一项所述的基于人工智能的推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210517253.0A CN115114519A (zh) | 2022-05-12 | 2022-05-12 | 基于人工智能的推荐方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210517253.0A CN115114519A (zh) | 2022-05-12 | 2022-05-12 | 基于人工智能的推荐方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115114519A true CN115114519A (zh) | 2022-09-27 |
Family
ID=83327331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210517253.0A Pending CN115114519A (zh) | 2022-05-12 | 2022-05-12 | 基于人工智能的推荐方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114519A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115905533A (zh) * | 2022-11-24 | 2023-04-04 | 重庆邮电大学 | 一种多标签文本智能分类方法 |
-
2022
- 2022-05-12 CN CN202210517253.0A patent/CN115114519A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115905533A (zh) * | 2022-11-24 | 2023-04-04 | 重庆邮电大学 | 一种多标签文本智能分类方法 |
CN115905533B (zh) * | 2022-11-24 | 2023-09-19 | 湖南光线空间信息科技有限公司 | 一种多标签文本智能分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9147154B2 (en) | Classifying resources using a deep network | |
Zhong et al. | Comsoc: adaptive transfer of user behaviors over composite social network | |
CN110569361A (zh) | 一种文本识别方法及设备 | |
US20120215791A1 (en) | Entity fingerprints | |
CN112559896B (zh) | 信息推荐方法、装置、设备及计算机可读存储介质 | |
CN111831636A (zh) | 一种数据处理方法、装置、计算机系统及可读存储介质 | |
CN112507246B (zh) | 一种融合全局和局部社会兴趣影响的社会推荐方法 | |
CN114138985B (zh) | 文本数据处理的方法、装置、计算机设备以及存储介质 | |
CN115659008B (zh) | 大数据信息反馈的信息推送系统、方法、电子设备及介质 | |
CN111723256A (zh) | 一种基于信息资源库的政务用户画像构建方法及其系统 | |
US11550884B2 (en) | Systems and methods for providing user validation | |
Peng et al. | HARSAM: A hybrid model for recommendation supported by self-attention mechanism | |
CN110399564B (zh) | 帐号分类方法和装置、存储介质及电子装置 | |
Bai et al. | A rumor detection model incorporating propagation path contextual semantics and user information | |
CN116051192A (zh) | 处理数据的方法和装置 | |
CN115114519A (zh) | 基于人工智能的推荐方法、装置、电子设备及存储介质 | |
CN116823410B (zh) | 数据处理方法、对象处理方法、推荐方法及计算设备 | |
Tsai et al. | Analysis of Application Data Mining to Capture Consumer Review Data on Booking Websites | |
Gan et al. | CDMF: a deep learning model based on convolutional and dense-layer matrix factorization for context-aware recommendation | |
Zeng et al. | Context-aware social media recommendation based on potential group | |
CN115168609A (zh) | 一种文本匹配方法、装置、计算机设备和存储介质 | |
CN109062551A (zh) | 基于大数据开发命令集的开发框架 | |
CN114398980A (zh) | 跨模态哈希模型的训练方法、编码方法、装置及电子设备 | |
CN116521937A (zh) | 视频表单的生成方法、装置、设备及存储介质、程序产品 | |
CN111460300A (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 |