CN111985622A - 一种图神经网络训练方法和*** - Google Patents
一种图神经网络训练方法和*** Download PDFInfo
- Publication number
- CN111985622A CN111985622A CN202010864281.0A CN202010864281A CN111985622A CN 111985622 A CN111985622 A CN 111985622A CN 202010864281 A CN202010864281 A CN 202010864281A CN 111985622 A CN111985622 A CN 111985622A
- Authority
- CN
- China
- Prior art keywords
- graph
- sub
- training
- node
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- 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)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (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
技术领域
本说明书涉及机器学习领域,特别涉及一种图神经网络训练方法和***。
背景技术
随着图神经网络在工业界应用的兴起,处理数据的增加使得图的规模越来越大。例如在社交网络中,可能涉及10亿多个用户,1000亿以上的关系,如果抽象为图的话,图的规模为10亿多的节点。图的规模的增大,使得图神经网络的训练较为困难。
因此,希望提供一种图神经网络训练的方法。
发明内容
本说明书一个方面提供一种图神经网络训练的方法。所述方法包括:获取全图,将所述全图根据预设条件划分为多个子图;从所述多个子图中选择参与图神经网络训练的至少一个子图,根据所述参与图神经网络训练的至少一个子图得到训练图,基于所述训练图,得到所述训练图中每一个节点的节点特征向量;基于所述训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到所述训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量;基于所述训练图的节点融合向量,根据节点标签得到损失函数,基于所述损失函数对初始图神经网络进行迭代训练,以获得所述图神经网络。
在一些实施例中,将所述全图根据预设条件划分为多个子图包括:利用社区发现算法将所述全图根据预设条件划分为多个子图。
在一些实施例中,所述预设条件包括:子图的邻居节点的数量以及所述子图包含的边的数量满足第一条件,且所述子图包含的节点的数量小于或等于预设阈值。
在一些实施例中,从所述多个子图中选择参与图神经网络训练的至少一个子图包括:对于所述多个子图中的每个子图,基于所述子图以及所述子图的T度邻居,得到更新后的子图;从多个所述更新后的子图中选择参与图神经网络训练的至少一个子图。
在一些实施例中,所述根据所述参与图神经网络训练的至少一个子图得到训练图,包括:基于所述参与图神经网络训练的至少一个子图的并集生成所述训练图。
本说明书另一个方面提供一种图神经网络训练的***。所述***包括:第一确定模块,用于获取全图,以及将所述全图根据预设条件划分为多个子图;第二确定模块,用于从所述多个子图中选择参与图神经网络训练的至少一个子图,根据所述参与图神经网络训练的至少一个子图得到训练图,基于所述训练图,得到所述训练图中每一个节点的节点特征向量;融合模块,用于基于所述训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到所述训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量;训练模块,用于基于所述训练图的节点融合向量,根据节点标签得到损失函数,基于所述损失函数对初始图神经网络进行迭代训练,以获得所述图神经网络。
本说明书另一个方面提供一种图神经网络训练的装置,包括处理器,所述处理器用于执行如前所述的图神经网络训练方法。
本说明书另一个方面提供计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如前所述的图神经网络训练方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的图神经网络训练方法的应用场景示意图;
图2是根据本说明书一些实施例所示的图神经网络训练***的示例性模块图;
图3是根据本说明书一些实施例所示的图神经网络训练方法的示例性流程图;
图4A和图4B是根据本说明书一些实施例所示的图神经网络训练方法的示意图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“***”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
虽然本说明书对根据本说明书的实施例的***中的某些模块或单元做出了各种引用,然而,任何数量的不同模块或单元可以被使用并运行在客户端和/或服务器上。所述模块仅是说明性的,并且所述***和方法的不同方面可以使用不同模块。
本说明书中使用了流程图用来说明根据本说明书的实施例的***所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本说明书实施例提供一种图神经网络的训练方法。在一些实施例中,可以以各个样本为节点,用节点之间的边表示样本之间的关系,以构成反映样本数据属性特征的全图。当样本数据量或样本之间的关系特征较多时,其对应的图的规模较大,使用样本构成的全图进行图神经网络训练时,数据量较大,可能导致初始图神经网络的***难以容纳和计算、训练成本较高等问题。在一些实施例中,可以通过将样本数据构成的全图划分为多个子图,从多个子图中选择至少一个子图,基于选择的至少一个子图训练获得图神经网络。在一些实施例中,可以基于子图的邻居节点对子图进行更新,基于更新后的子图训练图神经网络。
图1是根据本说明书一些实施例所示的图神经网络训练方法的应用场景示意图。
如图1所示,场景100可以包括服务器110、终端设备120以及存储设备130。
场景100可以应用于多种图神经网络训练的场景。例如,服务器110可以从存储设备130和/或终端设备120获取用户的个人消费、还款、借款、转入等记录数据,用户和用户之间的转账、代付等关系数据作为样本数据,基于该样本数据构成的全图训练用于理财推荐的图神经网络。又例如,服务器110可以从存储设备130和/或终端设备120获取用户的商品购买、浏览、退货、退款、换货等数据为样本数据,基于该样本数据构成的全图训练用于向用户推荐商品的图神经网络。再例如,服务器110可以从存储设备130和/或终端设备120获取用户和用户的社交关系数据为样本数据,基于该样本数据训练用于向用户推荐社交团体/组织/可能认识的人的图神经网络。
在一些实施例中,服务器110可以将以各个样本为节点构成的全图140划分为多个彼此之间关联性更大的节点的子图,从划分的多个子图中选择参与图神经网络训练的至少一个子图得到训练图;基于所述训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到每一个当前节点融合了邻居节点特征以及边特征的节点融合向量;基于节点融合向量,根据节点标签得到损失函数,基于所述损失函数对初始图神经网络模型112进行迭代训练,以获得训练好的图神经网络模型114。
在一些实施例中,全图140可以基于从终端设备120获取的样本数据构成。在一些实施例中,服务器110可以从存储设备130获取全图140。在一些实施例中,服务器110可以将划分的多个子图存入存储设备130。在一些实施例中,服务器110可以从终端设备获取样本数据,基于样本数据构成全图140,并将其存入存储设备130。在一些实施例中,可以将训练好的图神经网络模型114发送给终端设备120,终端设备120可以使用图神经网络模型114进行相关的预测。
服务器110可以包括各类具备计算能力的设备,如计算机。在一些实施例中,服务器可以是独立的服务器或者服务器组,该服务器组可以是集中式的或者分布式的。在一些实施例中,服务器可以是区域的或者远程的。在一些实施例中,服务器可在云平台上执行。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等中的一种或其任意组合。在一些实施例中,服务器110可通过网络访问存储于终端设备120、存储设备130中的信息和/或资料。在一些实施例中,服务器110可直接与终端设备120、存储设备130连接以访问存储于其中的信息和/或资料。在一些实施例中,服务器110可包含处理器。该处理器可处理与图神经网络训练有关的数据和/或信息,以执行一个或多个本说明书中描述的功能。
终端设备120可以是各类具有信息接收和/或发送功能的设备,如计算机、手机、文字扫描设备、显示设备、打印机等。终端设备120可以是用户使用的电子设备,可以包括各类移动设备、智能设备、可穿戴设备等,例如,手机、智能手镯、车载计算机等。在一些实施例中,用户可以通过终端设备120获取图神经网络模型114预测的推荐信息。
存储设备130可以用于存储数据和/或指令。存储设备130可以包括一个或多个存储组件,每个存储组件可以是一个独立的设备,也可以是其他设备的一部分。在一些实施例中,存储设备130可包括随机存取存储器(RAM)、只读存储器(ROM)、大容量存储器、可移动存储器、易失性读写存储器等或其任意组合。示例性的,大容量储存器可以包括磁盘、光盘、固态磁盘等。在一些实施例中,所述存储设备130可在云平台上实现。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。数据指对信息的数字化表示,可以包括各种类型,比如二进制数据、文本数据、图像数据、视频数据等。指令指可控制设备或器件执行特定功能的程序。
全图140是指基于所有样本数据构成的用于反映样本属性、样本与样本之间关系的图。全图140可以包括以各个样本为节点的点集合,与通过连接两个节点构成的用于表示样本与样本之间关联性的边集合。在一些实施例中,基于不同类型的样本数据可以构建多种不同类型的全图。例如,可以以用户之间的社交关系为边构建社交全图,以用户之间的转账、代付等关系为边构建资金全图。又例如,可以基于用户、商品、以及用户与商品之间的浏览购买关系构建购物全图,基于商品、店家、供应商、以及三者之间的关系构建供应链全图,基于包裹、站点、配送员、以及三者之间的关系构建物流全图。再例如,可以基于用户、用户的设备、和登录注册关系构建媒介全图,基于网页、作者、以及他们之间创造和引用的关系构建网页全图等。在一些实施例中,还可以基于地图上面的各种建筑、和其地理位置的关系构建天然的地理全图;基于知识、和不同知识之间的关系构建知识全图。基于反映样本与样本之间关联关系的全图训练图神经网络,可以在使用图神经网络进行预测时获得更加准确的预测结果。
在一些实施例中,存储设备130可以为服务器110和/或终端设备120的一部分。在一些实施例中,初始图神经网络模型112和/或训练好的图神经网络模型114可以存储在终端设备120和/或存储设备130中。
图2是根据本说明书一些实施例所示的图神经网络训练***的示例性模块图。
如图2所示,在一些实施例中,图神经网络训练***200可以包括第一确定模块210、第二确定模块220、融合模块230和训练模块240。这些模块也可以作为应用程序或一组由处理引擎读取和执行的指令实现。此外,模块可以是硬件电路和应用/指令的任何组合。例如,当处理引擎或处理器执行应用程序/一组指令时,模块可以是处理器的一部分。
第一确定模块210可以用于确定子图。在一些实施例中,第一确定模块210可以获取全图,并将全图根据预设条件划分为多个子图。在一些实施例中,第一确定模块210可以利用社区发现算法将全图根据预设条件划分为多个子图。在一些实施例中,预设条件可以包括子图的邻居节点的数量以及所述子图包含的边的数量满足第一条件,且所述子图包含的节点的数量小于或等于预设阈值。在一些实施例中,对于多个子图中的每个子图,第一确定模块210可以基于子图以及子图的T度邻居,得到更新后的子图。
第二确定模块220可以用于确定训练图。在一些实施例中,第二确定模块220可以从多个子图中选择参与图神经网络训练的至少一个子图,根据参与图神经网络训练的至少一个子图得到训练图。在一些实施例中,第二确定模块220可以从多个更新后的子图中选择参与图神经网络训练的至少一个子图。在一些实施例中,第二确定模块220可以基于参与图神经网络训练的至少一个子图的并集生成训练图。在一些实施例中,第二确定模块220可以基于训练图,得到训练图中每一个节点的节点特征向量。
融合模块230可以用于确定节点的融合向量。在一些实施例中,融合模块230可以基于训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量。
训练模块240可以用于训练图神经网络。在一些实施例中,训练模块240可以基于训练图的节点融合向量,根据节点标签得到损失函数,基于损失函数对初始图神经网络进行迭代训练,以获得图神经网络。
应当理解,所示的***及其模块可以利用各种方式来实现。例如,在一些实施例中,***200及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和***可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的***及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于***200及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该***的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子***与其他模块连接。在一些实施例中,第一确定模块210、第二确定模块220、融合模块230和训练模块240可以是一个***中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。在一些实施例中,第一确定模块210、第二确定模块220、融合模块230和训练模块240可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
图3是根据本说明书一些实施例所示的图神经网络训练方法的示例性流程图。
本说明书实施例中,图是指一种数据结构,是一组对象(节点)及其关系(边)的建模。其中,图的所有节点构成节点集合,图的所有边构成边集合,边集合中的每一条边都有唯一的出发点和到达点,且每条边的出发点和到达点都是该图节点集合的成员。示例的,以网页为节点、以网页之间的引用关系为边建模,可以得到网页的图;以用户为节点、以用户之间的转账、代付等关系为边可以得到资金的图。
图神经网络(Graph Neural Network,GNN)是一种人工神经网络,其可以通过学习图上的拓扑信息和属性信息实现数据/信息的分类或预测。例如,基于以用户为节点、以用户之间的转账、代付等关系为边构建的图训练初始图神经网络时,初始图神经网络可以通过学习该图中用户的属性信息和关系信息获得训练好的图神经网络,训练好的图神经网络可以用于预测用户的购物偏好、信贷风险等。
本说明书实施例提供的图神经网络训练方法,可以用于图卷积网络(GraphConvolution Networks,GCN)、图注意力网络(Graph Attention Networks)、图自编码器(Graph Autoencoders)、图生成网络(Graph Generative Networks)和图时空网络(GraphSpatial-temporal Networks)等任意一种或多种图神经网络的训练。
如图3所示,流程300可以通过处理器(如服务器110)或图神经网络训练***200执行。其包括:
步骤310,获取全图,将全图划分为多个子图。在一些实施例中,步骤310可以由第一确定模块210执行。
本说明书实施例中,全图可以是包含全部节点(即全部样本数据)、边(样本之间关系)、以及全部节点和/或边的属性的图。节点的属性是指样本数据的自身特征,边的属性是指具有关联关系的样本之间的特征。例如,全图可以是包含支付宝全部用户的图,则节点的属性可以为用户的支付宝资产、账龄、每月消费等特征,边的特征可以为用户与用户之间的转账次数、转账金额、转账日期等特征。
在一些实施例中,处理器可以从数据库获取全图,例如,存储设备130。在一些实施例中,处理器可以从终端设备(如终端设备120)获取全图。在一些实施例中,处理器可以从数据源(如开源数据库)获取全图。在一些实施例中,处理器可以获取样本数据,基于样本数据生成全图。
子图是全图的一部分,即子图中的节点集合是全图节点集合的任一子集。在一些实施例中,预设条件可以包括子图中节点的数量小于或等于预设阈值,和/或子图的邻居节点的数量以及子图包含的边的数量满足第一条件。仅作为示例,预设阈值可以为5万、10万、30万、100万、300万等数值。预设阈值可以根据实际情况自行设定,例如,可以基于初始图神经网络***的性能,当***处理数据的性能较好时预设阈值设置为200万,性能较差时预设阈值设置为5万,本说明书对此不做限制。第一条件可以用于限制子图之间的边的数量。在一些实施例中,可以以子图之间的边的数量远小于子图中包含的边的数量为目标,设置第一条件。例如,第一条件可以为子图的邻居节点的数量与子图包含的边的数量的比值小于0.0001。在一些实施例中,第一条件可以为子图中边的数量大于预设数量值。在一些实施例中,第一条件和/或预设阈值可以根据子图划分方法确定。例如,若划分方法可以直接将全图中相关性更大的节点划分为一个子图,则可以不设置第一条件或预设阈值。
邻居节点是指图中与某一节点通过一条或多条边连接的节点,即与节点具有关联关系的节点。如果图中的节点P1经过T(T≥1)条边可到达节点P2,则节点P2是节点P1的T度邻居,T的值越小,节点与T度邻居之间的关联性越大。子图的邻居节点是指与子图中的节点相邻且不包含在该子图中的节点。例如,图4A和4B中所示,每个圆形(包括实心圆、网状圆、线条圆、空心圆)表示一个节点,节点之间用边连接,图4A中网状圆表示的节点为实心圆表示的节点A的1度邻居,线条圆表示的节点为节点A的2度邻居,图4B中子图B中网状圆表示的节点为子图A的1度邻居,线条圆表示的节点为子图A的2度邻居。
在一些实施例中,处理器可以基于社区发现算法,将全图划分为多个子图。通过社区发现算法可以将全图中的边密集的节点划分到同一子图。例如,利用社区发现算法可以将包含支付宝用户转账关系的全图划分为多个子图,子图内部的用户之间转账频率较高,子图内部的用户与该子图外的用户之间转账频率较低或没有转账关系。在一些实施例中,社区发现算法可以包括但不限于标签传播算法(Label Propagation,LPA)、Girvan-Newman算法、HANP(Hop Attention&Node Preference)算法等。
通过将全图划分为多个子图,可以将全图中关联性更大的节点划分到一个子图中,关联性较小或没有关联的节点划分到不同的子图中。例如,若将全图的节点对应为一个学校的学生,全图的边对应学生之间的朋友关系,则子图的节点可以对应为学校中的一个班级,子图的边可以对应为该班级中学生之间的朋友关系。
步骤320,从多个子图中选择参与图神经网络训练的至少一个子图,根据选择参与图神经网络训练的至少一个子图得到训练图,基于训练图,得到训练图中每一个节点的节点特征向量。在一些实施例中,步骤320可以由第二确定模块220执行。
在一些实施例中,处理器可以从步骤310获得的多个子图中随机选择参与图神经网络训练的M个,基于M个子图得到训练图。在一些实施例中,M可以为任意正整数。例如,可以选择1个子图作为训练图。又例如,可以选择5个、或10个、或50个子图,得到训练图。在一些实施例中,当选择参与图神经网络训练的子图为多个时,可以基于选择的M个子图的并集得到训练图。
在一些实施例中,处理器可以获取每个子图的T度邻居,使用每个子图的T度邻居对其进行更新,得到更新后的多个子图。仅作为示例,处理器可以将子图的T度邻居与子图的并集作为更新后的子图。在一些实施例中,T可以为任意正整数。优选地,T的取值可以在1-3范围内。例如,图4B所示,若T=2,则更新后的子图A可以包括子图A以及区域410中的2个网状圆表示的节点、6个线条圆表示的节点,以及它们之间的边。在一些实施例中,处理器可以从更新后的多个子图中,随机选择参与图神经网络训练的M个子图。
在一些实施例中,处理器可以基于训练图,得到训练图中每一个节点的节点特征向量。节点特征向量可以反映该节点的属性。例如,若节点为用户,其节点特征向量可以为包含用户的支付宝资产、账龄、每月消费等多项特征信息的向量。在一些实施例中,处理器可以对节点的属性进行预处理,以减少节点特征向量的维度。例如,可以将具有n维属性(即n个特征)的节点,通过点特征预处理函数、或整流线性单元函数、或其他相关的函数处理成为d0维向量。
步骤330,基于训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量。在一些实施例中,步骤330可以由融合模块230执行。
图神经网络训练时,需要基于图神经网络的层数R,对训练图中的边执行R轮传播操作,节点执行R轮聚合操作。通过对于每个节点和边执行R轮传播和聚合操作,可以获得训练图中每个节点融合了邻居节点特征以及边特征的节点融合向量。为方案理解,节点初次执行聚合操作之前的初始点特征向量记为初始点0阶点向量,节点在图神经网络第r层执行第r轮聚合操作后的特征向量记为r阶点向量,边在图神经网络第r层执行第r轮传播操作后的特征向量记为r阶边向量,0≤r≤R。具体地,对于训练图中的每一条边,将边属性、以及上一轮传播和聚合操作之后得到的初始点r-1阶点向量和到达点r-1阶点向量作为输入,用第r个传播函数得到该边的r阶传播向量;对于每一个节点,将出发点为自己的所有边的所有的r阶传播向量,和自身的r-1阶点向量作为输入,用第r个聚合函数得到该节点的r阶点向量;重复执行前述传播和聚合操作R轮,对于训练图中的每个节点得到该节点的R阶点向量,即融合了该节点所有T度邻居节点特征以及边特征的节点融合向量。
在一些实施例中,图神经网络的层数R可以与节点的T度邻居的度数T取值相同,例如,R=T=2。在一些实施例中,图神经网络的层数R可以与节点的T度邻居的度数T取值不同,例如,R=2,T=0。特别地,当T=0时,不获取每个子图的T度邻居,即直接从步骤310中获得的多个子图中选择参与图神经网络训练的至少一个子图。
步骤340,基于训练图的节点融合向量,根据节点标签得到损失函数,基于损失函数对初始图神经网络进行迭代训练,以获得图神经网络。在一些实施例中,步骤340可以由训练模块240执行。
节点标签是指该节点对应的样本数据的真实标签。例如,用于预测分类的图神经网络,节点标签可以为对应的样本数据属于的真实类别。
在一些实施例中,可以基于训练图中每个节点的节点融合向量,得到该节点的预测值,基于该预测值与节点标签得到损失函数。例如,可以将训练图中每个节点的节点融合向量作为输入,基于预测器函数得到每个节点的预测值,基于该预测值与节点标签得到损失函数。在一些实施例中,可以基于损失函数更新初始图神经网络的初始参数。初始参数是指初始图神经网络在训练之前的各个函数对应的参数。例如,初始参数可以包括但不限于预测器函数初始参数、点特征预处理函数初始参数、R个传播函数初始参数、R个聚合函数初始参数。在一些实施例中,初始参数可以通过初始化方法获得。例如,初始化方法可以是将预测器函数、点特征预处理函数、R个传播函数、R个聚合函数对应的矩阵中的参数赋值为不超过100的随机实数。
迭代训练即重复执行多次相同的操作,例如重复执行上述步骤320、步骤330以及步骤340中基于损失函数更新初始图神经网络的参数。即每轮训练均会选择参与图神经网络训练的至少一个子图。在一些实施例中,迭代执行次数可以基于损失函数确定。例如,迭代次数可以为损失函数值小于预设阈值或者模型收敛时的执行次数。
将迭代训练EP次之后的参数作为训练的结果,即获得了由预测器函数、点特征预处理函数、R个传播函数、R个聚合函数构成的图神经网络,即训练好的图神经网络。
在一些实施例中,图神经网络的迭代训练过程中,每轮训练时使用的训练图可以共享一份图神经网络参数。
在一具体实施例中,假设图神经网络的层数与节点的邻居节点的度数均为T,则在步骤310中处理器可以通过社区发现算法将全图G划分为P个子图[g1,g2,…,gP]。可选地,处理器可以获取每个子图gp的T度邻居,将每个子图的T度邻居合并到该子图中,得到更新后的子图gp∪NT,其中,任意p满足1≤p≤P。在步骤320中,处理器可以通过初始化方法将组成初始图神经网络***的预测器函数Dec的参数θ、点特征预处理Trans的参数μ、T个传播函数Mt的T个参数[ω0,ω1,…,ωT-1]、T个聚合函数Aggt的T个参数[W0,W1,…,WT-1]初始化,例如,可以初始化为随机自然数3。其中每一个函数对应一个神经网络,每个函数对应的参数表示对应神经网络的可学习的二维矩阵,图神经网络***由前述2T+2个函数对应的神经网络结构共同构成。
假设迭代训练次数为Ep,在每轮训练中,处理器可以从得到的P个子图中随机选择i个子图,基于i个子图、以及i个子图中每个子图上的所有边和节点、以及它们的属性参与图神经网络训练。处理器可以基于i个子图的并集∪{gi}得到训练图Bk,其中,k表示迭代训练的轮数,1≤k≤Ep。进一步地,处理器可以通过点特征预处理函数Trans将训练图Bk每一个节点的n维属性(可以表示为n维向量,向量中每个元素都是自然数),处理成为d0维向量,得到每个节点的节点特征向量其中中上标0表示经过T轮计算前的初始0阶点向量,下标i表示对应的节点。
在步骤330中,可以将训练图中每个节点i的初始0阶点向量作为输入,通过T个传播函数和聚合函数的计算,得到每个节点i融合了邻居节点特征以及边特征的节点融合向量具体地,在第t次(1≤t≤T)传播和聚合计算中,对于训练图Bk中的每一条边,将边属性(i、j分别表示边的起始点和到达点)、以及上一轮得到的初始点t-1阶点向量和到达点t-1阶向量作为输入,通过第t个传播函数Mt得到该边的t阶传播向量进一步地,对于训练图Bk中每一个节点i,将出发点为自己的所有边的所有的t阶传播向量和自身的t-1阶点向量作为输入,通过第t个聚合函数Aggt得到节点i的t阶点向量其中节点j为节点i的邻居节点。
将训练图中的每条边和每个节点依次通过T个传播函数Mt和T个聚合函数Aggt计算后,即可得到训练图Bk上每一个节点i的T阶点向量即节点融合向量。其中,t表示T次计算中每次计算得到的向量,T表示所有T次计算之后得到的向量。
在步骤340中,处理器可以将训练图中每一个节点的节点融合向量作为输入,通过预测器函数Dec得到每一个节点i的预测值 可选地,可以将每个节点i的预测值与其真实标签yi作为输入,通过损失函数求出这一轮计算中的损失,使用该损失对参数进行更新。例如,可以使用每一轮训练得到的损失对预测器函数Dec的参数θ、点特征预处理Trans的参数μ、T个传播函数Mt的T个参数[ω0,ω1,…,ωT-1]、T个聚合函数Aggt的T个参数[W0,W1,…,WT-1]中每一个参数求导,并且用导数更新该参数。在迭代训练的第k次训练中,可以基于k-1次训练后更新的参数进行训练。重复执行上述步骤,将更新Ep次之后的参数作为训练的结果,即可得到由预测器函数、点特征预处理函数、T个传播函数、T个聚合函数构成的训练好的图神经网络。
本领域技术人员应当理解,上述训练图神经网络的方法仅作为示例,并非对本说明书的限制,在一些可替代性实施例中,构成图神经网络的函数可以为任意可行的函数,函数对应的参数可以为任意合理的值。
应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图4A和图4B是根据本说明书一些实施例所示的图神经网络训练方法的示意图。
在一具体实施例中,如图4B所示,若T=2,将全图切分为子图A和子图B,则子图A的所有1度邻居为区域410中的2个网状圆表示的节点、所有2度邻居为区域410中的6个线条圆表示的节点,子图A的1度邻居、2度邻居、子图A中实心圆表示的节点构成更新后的子图A;子图B的所有1度邻居为区域420(右下方)中的2个网状圆表示的节点、所有2度邻居为区域420中的6个线条圆表示的节点,子图B的1度邻居、2度邻居、子图B中实心圆表示的节点构成更新后的子图B。
在迭代训练的第一轮训练时,可以将更新后的子图A作为训练图,对训练图中的每个节点通过初始图神经网络中的点特征预处理函数、传播函数、聚合函数、预测器函数进行计算,获得损失函数,基于损失函数对初始图神经网络的初始参数进行更新。在迭代训练的第二轮训练时,可以将更新后的子图B作为训练图,对训练图中的每个节点通过初始图神经网络中的点特征预处理函数、传播函数、聚合函数、预测器函数进行计算,获得损失函数,基于损失函数对初始图神经网络的参数进行更新。
第一轮训练时,可以得到子图A的32个实心圆表示的节点的预测值和损失函数,共有40个节点(32个实心圆表示的节点、2个网状圆表示的节点、6个线条圆表示的节点)参与计算。第二轮训练的时,可以得到子图B的41个实心圆表示的节点的预测值和损失函数,共有49个节点(41个实心圆表示的节点、2个网状圆表示的节点、6个线条圆表示的节点)参与计算。
在上述训练过程中,为了计算一个实心圆表示的节点的预测值,平均需要计算(40+49)/(32+41)=1.22个节点。
如图4A所示,若选择全图中的部分节点参与图神经网络训练,例如,第一轮训练的时候,选择实心圆表示的节点A、节点B和它们的1度邻居(网状圆表示的节点)以及2度邻居(线条圆表示的节点)进行训练,则可以得到节点A、节点B的预测值和损失函数。节点A有8个1度邻居、16个2度邻居,节点B点有5个1度邻居、7个2度邻居,共有36个邻居节点参与计算。第二轮训练的时候,选择实心圆表示的节点C、节点D和它们的1度邻居以及2度邻居进行训练,可以得到节点C、节点D的预测值和损失函数。节点C有5个1度邻居、9个2度邻居,节点D有8个1度邻居、13个2度邻居,共有35个邻居节点参与计算。在这种方法中,为了计算一个节点的预测值,平均需要计算(36+35+4)/4=18.75个点。
本说明书实施例可能带来的有益效果包括但不限于:将全图拆分成多个内部节点关联性更大的子图,基于子图进行图神经网络迭代训练,可以减小图神经网络***的数据计算量,以及训练时的计算冗余度。
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的***组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的***。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (12)
1.一种图神经网络训练方法,包括:
获取全图,将所述全图根据预设条件划分为多个子图;
从所述多个子图中选择参与图神经网络训练的至少一个子图,根据所述参与图神经网络训练的至少一个子图得到训练图,基于所述训练图,得到所述训练图中每一个节点的节点特征向量;
基于所述训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到所述训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量;
基于所述训练图的节点融合向量,根据节点标签得到损失函数,基于所述损失函数对初始图神经网络进行迭代训练,以获得所述图神经网络。
2.根据权利要求1所述的方法,所述将所述全图根据预设条件划分为多个子图,包括:
利用社区发现算法将所述全图根据预设条件划分为多个子图。
3.根据权利要求1所述的方法,所述预设条件包括:
子图的邻居节点的数量以及所述子图包含的边的数量满足第一条件,且所述子图包含的节点的数量小于或等于预设阈值。
4.根据权利要求1所述的方法,从所述多个子图中选择参与图神经网络训练的至少一个子图包括:
对于所述多个子图中的每个子图,基于所述子图以及所述子图的T度邻居,得到更新后的子图;
从多个所述更新后的子图中选择参与图神经网络训练的至少一个子图。
5.根据权利要求1所述的方法,所述根据所述参与图神经网络训练的至少一个子图得到训练图,包括:
基于所述参与图神经网络训练的至少一个子图的并集生成所述训练图。
6.一种图神经网络训练***,包括:
第一确定模块,用于获取全图,以及将所述全图根据预设条件划分为多个子图;
第二确定模块,用于从所述多个子图中选择参与图神经网络训练的至少一个子图,根据所述参与图神经网络训练的至少一个子图得到训练图,基于所述训练图,得到所述训练图中每一个节点的节点特征向量;
融合模块,用于基于所述训练图中每一个节点的节点特征向量以及节点之间的边,进行传播和聚合,得到所述训练图中每一个当前节点融合了邻居节点特征以及边特征的节点融合向量;
训练模块,用于基于所述训练图的节点融合向量,根据节点标签得到损失函数,基于所述损失函数对初始图神经网络进行迭代训练,以获得所述图神经网络。
7.根据权利要求6所述的***,所述第一确定模块用于:
利用社区发现算法将所述全图根据预设条件划分为多个子图。
8.根据权利要求6所述的***,所述预设条件包括:
子图的邻居节点的数量以及所述子图包含的边的数量满足第一条件,且所述子图包含的节点的数量小于或等于预设阈值。
9.根据权利要求6所述的***,所述第一确定模块用于:对于所述多个子图中的每个子图,基于所述子图以及所述子图的T度邻居,得到更新后的子图;以及
第二确定模块用于从多个所述更新后的子图中选择参与图神经网络训练的至少一个子图。
10.根据权利要求6所述的***,所述第二确定模块用于:
基于所述参与图神经网络训练的至少一个子图的并集生成所述训练图。
11.一种图神经网络训练装置,包括处理器,所述处理器用于执行如权利要求1~5任一项所述的方法。
12.一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如权利要求1~5中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010864281.0A CN111985622A (zh) | 2020-08-25 | 2020-08-25 | 一种图神经网络训练方法和*** |
US17/574,428 US20220138502A1 (en) | 2020-08-25 | 2022-01-12 | Graph neural network training methods and systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010864281.0A CN111985622A (zh) | 2020-08-25 | 2020-08-25 | 一种图神经网络训练方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111985622A true CN111985622A (zh) | 2020-11-24 |
Family
ID=73444064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010864281.0A Pending CN111985622A (zh) | 2020-08-25 | 2020-08-25 | 一种图神经网络训练方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111985622A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112862093A (zh) * | 2021-01-29 | 2021-05-28 | 北京邮电大学 | 一种图神经网络训练方法及装置 |
CN113011282A (zh) * | 2021-02-26 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 图数据处理方法、装置、电子设备及计算机存储介质 |
CN113222143A (zh) * | 2021-05-31 | 2021-08-06 | 平安科技(深圳)有限公司 | 图神经网络训练方法、***、计算机设备及存储介质 |
US20210374174A1 (en) * | 2020-05-27 | 2021-12-02 | Beijing Baidu Netcom Science and Technology Co., Ltd | Method and apparatus for recommending multimedia resource, electronic device and storage medium |
CN113837382A (zh) * | 2021-09-26 | 2021-12-24 | 杭州网易云音乐科技有限公司 | 图神经网络的训练方法和*** |
CN113988264A (zh) * | 2021-10-29 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | 获得用于执行流量预测业务的图神经网络的方法及装置 |
WO2022116142A1 (zh) * | 2020-12-04 | 2022-06-09 | 深圳大学 | 一种基于图神经网络的资源调度方法 |
WO2022152161A1 (zh) * | 2021-01-14 | 2022-07-21 | 蚂蚁智信(杭州)信息技术有限公司 | 混合图神经网络模型的训练、预测 |
CN115221976A (zh) * | 2022-08-18 | 2022-10-21 | 抖音视界有限公司 | 一种基于图神经网络的模型训练方法及装置 |
CN115293919A (zh) * | 2022-07-22 | 2022-11-04 | 浙江大学 | 面向社交网络分布外泛化的图神经网络预测方法及*** |
-
2020
- 2020-08-25 CN CN202010864281.0A patent/CN111985622A/zh active Pending
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210374174A1 (en) * | 2020-05-27 | 2021-12-02 | Beijing Baidu Netcom Science and Technology Co., Ltd | Method and apparatus for recommending multimedia resource, electronic device and storage medium |
WO2022116142A1 (zh) * | 2020-12-04 | 2022-06-09 | 深圳大学 | 一种基于图神经网络的资源调度方法 |
WO2022152161A1 (zh) * | 2021-01-14 | 2022-07-21 | 蚂蚁智信(杭州)信息技术有限公司 | 混合图神经网络模型的训练、预测 |
CN112862093A (zh) * | 2021-01-29 | 2021-05-28 | 北京邮电大学 | 一种图神经网络训练方法及装置 |
CN112862093B (zh) * | 2021-01-29 | 2024-01-12 | 北京邮电大学 | 一种图神经网络训练方法及装置 |
CN113011282A (zh) * | 2021-02-26 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 图数据处理方法、装置、电子设备及计算机存储介质 |
CN113222143B (zh) * | 2021-05-31 | 2023-08-01 | 平安科技(深圳)有限公司 | 图神经网络训练方法、***、计算机设备及存储介质 |
CN113222143A (zh) * | 2021-05-31 | 2021-08-06 | 平安科技(深圳)有限公司 | 图神经网络训练方法、***、计算机设备及存储介质 |
CN113837382A (zh) * | 2021-09-26 | 2021-12-24 | 杭州网易云音乐科技有限公司 | 图神经网络的训练方法和*** |
CN113837382B (zh) * | 2021-09-26 | 2024-05-07 | 杭州网易云音乐科技有限公司 | 图神经网络的训练方法和*** |
CN113988264A (zh) * | 2021-10-29 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | 获得用于执行流量预测业务的图神经网络的方法及装置 |
CN115293919A (zh) * | 2022-07-22 | 2022-11-04 | 浙江大学 | 面向社交网络分布外泛化的图神经网络预测方法及*** |
CN115293919B (zh) * | 2022-07-22 | 2023-08-04 | 浙江大学 | 面向社交网络分布外泛化的图神经网络预测方法及*** |
CN115221976A (zh) * | 2022-08-18 | 2022-10-21 | 抖音视界有限公司 | 一种基于图神经网络的模型训练方法及装置 |
WO2024037354A1 (zh) * | 2022-08-18 | 2024-02-22 | 抖音视界有限公司 | 一种基于图神经网络的模型训练方法及装置 |
CN115221976B (zh) * | 2022-08-18 | 2024-05-24 | 抖音视界有限公司 | 一种基于图神经网络的模型训练方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11227190B1 (en) | Graph neural network training methods and systems | |
CN111985622A (zh) | 一种图神经网络训练方法和*** | |
Xu et al. | Unleashing the power of edge-cloud generative ai in mobile networks: A survey of aigc services | |
Calders et al. | Preface to ECML PKDD 2014: Joint European Conference on Machine Learning and Knowledge Discovery in Databases | |
US9223900B2 (en) | Machine optimization devices, methods, and systems | |
Miao et al. | Context‐based dynamic pricing with online clustering | |
Verstrepen et al. | Collaborative filtering for binary, positiveonly data | |
US20220138502A1 (en) | Graph neural network training methods and systems | |
WO2009094672A2 (en) | Belief propagation for generalized matching | |
Li et al. | MV-GCN: multi-view graph convolutional networks for link prediction | |
Okon et al. | An improved online book recommender system using collaborative filtering algorithm | |
Benkessirat et al. | A new collaborative filtering approach based on game theory for recommendation systems | |
CN113269232B (zh) | 模型训练方法、向量化召回方法、相关设备及存储介质 | |
Barthel et al. | Improved evaluation and generation of grid layouts using distance preservation quality and linear assignment sorting | |
CN111340522A (zh) | 资源推荐方法、装置、服务器及存储介质 | |
CN116541608B (zh) | 房源推荐方法、装置、电子设备及存储介质 | |
Lee et al. | Self-supervised graph representation learning via positive mining | |
Gandhi et al. | Spatio-temporal multi-graph networks for demand forecasting in online marketplaces | |
CN114417845B (zh) | 一种基于知识图谱的相同实体识别方法和*** | |
CN109886299A (zh) | 一种用户画像方法、装置、可读存储介质及终端设备 | |
Ahmadov et al. | Deep learning-based approach for forecasting intermittent online sales | |
Soni et al. | Big data analytics for market prediction via consumer insight | |
Lv | Smart product marketing strategy in a cloud service wireless network based on SWOT analysis | |
Rahul et al. | Introduction to Data Mining and Machine Learning Algorithms | |
Moula et al. | Customer type discovery in hotel revenue management: a data mining approach |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201124 |
|
RJ01 | Rejection of invention patent application after publication |