CN111476223B - 评估交互事件的方法及装置 - Google Patents
评估交互事件的方法及装置 Download PDFInfo
- Publication number
- CN111476223B CN111476223B CN202010588751.5A CN202010588751A CN111476223B CN 111476223 B CN111476223 B CN 111476223B CN 202010588751 A CN202010588751 A CN 202010588751A CN 111476223 B CN111476223 B CN 111476223B
- Authority
- CN
- China
- Prior art keywords
- node
- vector
- layer
- nodes
- interaction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- 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
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种计算机执行的评估交互事件的方法和装置,其中方法包括,首先获取用于反映交互事件关联关系的动态交互图,然后分别以待分析的两个目标节点为当前根节点,在动态交互图中确定出对应的两个子图。将这两个子图输入神经网络模型,以得到与两个目标节点交互对应的交互表征向量,其中在神经网络模型中,处理层根据两个子图中各个节点的输入特征和子图的图结构,得到各个节点的隐含向量,融合层利用压缩‑变换机制,根据隐含向量确定节点的权重估计,并据此更新节点的输入特征,传递到下一处理层,最终通过输出层得到前述交互表征向量。于是,可以基于该交互表征向量,评估两个目标节点交互的交互事件。
Description
技术领域
本说明书一个或多个实施例涉及机器学习领域,尤其涉及利用机器学习处理和评估交互事件的方法和装置。
背景技术
在许多场景下,需要对用户交互事件进行分析和处理。交互事件是互联网事件的基本组成元素之一,例如,用户浏览页面时的点击行为,可以视为用户与页面内容区块之间的交互事件,电商中的购买行为可以视为用户与商品之间的交互事件,账户间转账行为则是用户与用户之间的交互事件。用户的一系列交互事件中蕴含了用户的细粒度习惯偏好等特点,以及交互对象的特点,是机器学习模型的重要特征来源。因此,在许多场景下,希望根据交互历史对交互参与方,以及交互事件进行特征表达和建模。
然而,交互事件涉及交互双方,并且各个参与方本身的状态可以是动态变化的,因此,综合考虑交互参与方的多方面特点对其进行准确的特征表达非常困难。由此,希望能有改进的方案,更为有效地对交互事件进行分析处理。
发明内容
本说明书一个或多个实施例描述了一种处理交互事件的方法和装置,其中将交互事件序列用动态交互图表示,对于待评估事件涉及的两个目标节点,基于这两个节点在动态交互图中的子图,以及子图中节点之间的相关性和重要度来表征这两个目标节点的交互,从而更准确地对涉及两个目标节点的事件进行评估和分析。
根据第一方面,提供了一种计算机执行的、评估交互事件的方法,所述方法包括:
获取用于反映交互事件关联关系的动态交互图,所述动态交互图包括多对节点,每对节点代表一个交互事件中的两个对象,任意节点通过连接边指向该节点所代表的对象参与的上一交互事件对应的两个节点;
分别以待分析的第一目标节点、第二目标节点为当前根节点,在所述动态交互图中确定出从当前根节点出发,经由连接边到达的预定范围的子图作为第一子图和第二子图;
将所述第一子图和第二子图输入神经网络模型进行图处理,得到交互表征向量,所述神经网络模型包括依次堆叠的L个处理层和输出层,所述L个处理层中至少一个处理层具有对应的融合层,所述图处理包括:
在所述L个处理层中的各个处理层中,根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量;
在所述融合层中,将对应处理层得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示,并对所述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;将各个节点的本层隐含向量与其对应的权重估计的组合结果,作为所述各个节点的下一层输入特征;
在所述输出层中,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到交互表征向量;
根据所述交互表征向量,评估所述第一目标节点和第二目标节点进行交互的第一事件。
在一个实施例中,经由连接边到达的预定范围内的子图包括:经由预设数目K之内的连接边到达的节点;和/或,经由连接边可达且交互时间在预设时间范围内的节点。
根据一种实施方式,所述L个处理层包括位于最底层的第一处理层,在所述第一处理层中,所述各个节点的本层输入特征包括,各个节点的节点属性特征。
进一步的,所述各个节点包括用户节点和/或物品节点,所述用户节点的节点属性特征包括以下中的至少一项:年龄、职业、教育程度、所在地区、注册时长、人群标签;所述物品节点的节点属性特征包括以下中的至少一项:物品类别、上架时间、评论数、销量。
根据一种实施方式,各个处理层为基于时序的网络处理层,用于根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,依次迭代处理各个节点,从而得到各个节点的本层隐含向量。
在上述实施方式的一个实施例中,基于时序的网络处理层为LSTM层,所述LSTM层用于:按照各个节点之间的连接边的指向关系顺序,将各个节点依次作为当前节点,根据当前节点的本层输入特征,该当前节点所指向的两个节点各自的中间向量和隐含向量,确定该当前节点的隐含向量和中间向量,将当前节点的隐含向量作为所述本层隐含向量。
根据一个实施例,所述第一压缩处理包括:对于所述各个本层隐含向量中的任意隐含向量,计算该任意隐含向量的各个向量元素的平均值,作为该任意隐含向量对应的节点的压缩表示。
根据另一实施例,所述第一压缩处理包括:对于所述各个本层隐含向量中的任意隐含向量,将该任意隐含向量压缩为更低维度的降维向量,作为对应压缩表示。
在一种实施方式中,所述各个压缩表示为各个压缩值,所述各个压缩值构成压缩向量;相应的,所述第一变换处理包括:
利用第一变换矩阵对所述压缩向量进行第一线性变换,得到第一变换向量,所述第一变换向量的维度小于所述压缩向量;
对所述第一变换向量执行第一非线性变换,得到第二变换向量;
利用第二变换矩阵对所述第二变换向量进行第二线性变换,得到第三变换向量,所述第三变换向量的维度等于所述压缩向量;
对所述第三变换向量执行第二非线性变换,得到权值向量,所述权值向量中各个元素对应于所述各个节点的权重估计。
根据一种实施方式,输出层得到交互表征向量具体包括:
对所述L个第一隐含向量和L个第二隐含向量构成的2L个隐含向量分别进行第二压缩处理,得到对应的2L个压缩表示;
对所述2L个压缩表示进行第二变换处理,得到对应的2L个权重因子;
利用所述2L个权重因子对所述2L个隐含向量进行加权组合,基于加权组合结果,得到所述交互表征向量。
在一个实施例中,所述第二压缩处理与第一压缩处理相同,所述第二变换处理与所述第一变换处理相同。。
根据一个实施例,所述第一事件为假设事件,所述评估所述第一目标节点和第二目标节点进行交互的第一事件包括,评估所述第一事件的发生概率。
根据另一实施例,所述第一事件为已发生事件,所述评估所述第一目标节点和第二目标节点进行交互的第一事件包括,评估所述第一事件的事件类别。
根据第二方面,提供了一种评估交互事件的装置,所述装置包括:
交互图获取单元,配置为获取用于反映交互事件关联关系的动态交互图,所述动态交互图包括多对节点,每对节点代表一个交互事件中的两个对象,任意节点通过连接边指向该节点所代表的对象参与的上一交互事件对应的两个节点;
子图确定单元,配置为分别以待分析的第一目标节点、第二目标节点为当前根节点,在所述动态交互图中确定出从当前根节点出发,经由连接边到达的预定范围的子图作为第一子图和第二子图;
处理单元,配置为将所述第一子图和第二子图输入神经网络模型进行图处理,得到交互表征向量,所述神经网络模型包括依次堆叠的L个处理层和输出层,所述L个处理层中至少一个处理层具有对应的融合层,其中:
各个处理层用于,根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量;
所述融合层用于,将对应处理层得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示,并对所述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;将各个节点的本层隐含向量与其对应的权重估计的组合结果,作为所述各个节点的下一层输入特征;
所述输出层用于,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到交互表征向量;
评估单元,配置为根据所述交互表征向量,评估所述第一目标节点和第二目标节点进行交互的第一事件。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
根据本说明书实施例提供的方法和装置,构建动态交互图来反映各个交互事件的时序关系以及交互对象之间的相互影响。对于待分析的两个目标节点,从该动态交互图中分别得到以这两个目标节点为根节点的两个子图,将这两个子图输入神经网络模型中。该神经网络模型在对这两个子图进行图处理过程中,利用压缩-变换机制,得到两个子图中各个节点的重要度,考虑各个节点的重要度,确定两个目标节点的交互表征向量,用于评估两个目标节点参与的交互事件。由于考虑了节点的重要度,使得交互表征向量可以更好地反映不同历史节点的不同贡献程度,具有更好的表征能力,更加有利于对目标节点之间的交互性进行准确分析和评估。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的实施场景示意图;
图2示出根据一个实施例的评估交互事件的方法流程图;
图3示出根据一个实施例的动态交互序列和由此构建的动态交互图;
图4示出在一个实施例中子图的示例;
图5示出根据一个实施例的神经网络模型的结构示意图;
图6示出LSTM处理层的工作示意图;
图7示出根据一个实施例LSTM处理层的结构;
图8示出在一个实施例中第l融合层的处理流程;
图9示出根据一个具体实施例的神经网络模型的处理过程示意图;
图10示出根据一个实施例的评估交互事件的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
如前所述,希望能够基于交互历史,对交互事件的参与方,以及交互事件本身进行特征表达和建模。
在一种方案中,基于历史交互事件构建静态的交互关系网络图,从而基于该交互关系网络图,分析各个交互对象。具体地,可以以各个历史事件的参与者作为节点,在存在交互关系的节点之间建立连接边,从而形成上述交互网络图。例如,在一个例子中,可以分别以用户和商品为节点,建立用户-商品二部图。如果某个用户购买过某件商品,则在该用户和该商品之间构建一条连接边。在另一例子中,可以构建用户转账关系图,其中每个节点代表一个用户,发生过转账记录的两个用户之间存在连接边。
然而,可以看到,以上示例中的二部图和转账关系图尽管可以示出对象之间的交互关系,但是没有包含这些交互事件的时序信息。简单地基于这样的交互关系网络图进行图嵌入,获得的特征向量也没有表达出交互事件的时间信息对节点的影响。并且,这样的静态图可扩展性不够强,对于新增交互事件和新增节点的情况,难以灵活进行处理。
在另一方案中,对于待分析的交互事件中的各个交互对象,构建该对象的行为序列,基于该行为序列,提取该对象的特征表达,进而构造事件的特征表达。然而,这样的行为序列仅表征了待分析对象本身的行为,而交互事件是多方参与的事件,参与者之间会通过交互事件间接传递影响。因此,这样的方式没有表达出交互事件中的参与对象之间的影响。
综合考虑以上因素,根据本说明书的一个或多个实施例,将动态变化的交互事件序列构建成动态交互图,其中各个交互事件中涉及的各个交互对象对应于该动态交互图中的各个节点。对于待分析的交互事件涉及的两个目标节点,从该动态交互图中得到与该目标节点相关的两个子图,将这两个子图输入神经网络模型。该神经网络模型基于这两个子图,以及子图中节点之间的相关性和重要度,得到这两个目标节点的交互向量表达,并据此评估待分析的交互事件。
图1示出根据一个实施例的实施场景示意图。如图1所示,可以将依次发生的多个交互事件按时间顺序组织成动态交互序列<E1,E2,…,EN>,其中每个元素Ei表示一个交互事件,可以表示为交互特征组的形式Ei=(ai,bi,ti),其中ai和bi是事件Ei的两个交互对象,ti是交互时间。
根据本说明书的实施例,基于该动态交互序列构建动态交互图10,用于反映交互事件的关联关系。在交互图10中,将各个交互事件中的各个交互对象ai,bi用节点表示,并在包含同一对象的事件之间建立连接边。动态交互图10的结构将在后续进行更具体的描述。
可以在上述动态交互图中确定出某个待分析的交互事件所涉及的两个目标节点,并分别以这两个目标节点为当前根节点得到对应的两个子图,即第一子图和第二子图。一般地,子图包括从当前根节点出发,经过连接边可以达到的一定范围内的节点。子图反映了,与当前根节点代表的对象直接或间接关联的历史交互事件中的其他对象对当前根节点带来的影响。
然后,将第一子图和第二子图输入到预先训练的神经网络模型中。该神经网络模型不仅根据第一子图和第二子图各自包含的节点和连接关系,还根据这两个子图中各个节点的重要度,对上述两个目标节点的交互进行特征表示。更具体地,该神经网络模型为多层神经网络,包括多个处理层和至少一个融合层,其中处理层根据节点的输入特征和连接关系,分别得到第一子图和第二子图中各个节点的隐含向量;融合层则根据各个节点的隐含向量,利用压缩-变换机制(Squeeze and Excitation),得到各个节点的权重估计,将权重估计与隐含向量的组合结果作为节点输入特征,传递到下一处理层。最终,神经网络模型根据各个处理层得到的隐含向量,综合获得两个目标节点交互的交互表征向量。基于如此得到的交互表征向量,可以对待分析的交互事件进行表达和分析,评估该交互事件的发生概率,或者事件类别。
下面描述以上构思的具体实现方式。
图2示出根据一个实施例的评估交互事件的方法流程图。可以理解,可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。下面结合具体实施例,对如图2所示的处理交互事件的方法中的各个步骤进行描述。
首先,在步骤21,获取用于反映交互事件关联关系的动态交互图。
一般地,可以如前所述基于交互事件序列构建动态交互图,以此反映交互事件的关联关系。动态交互序列,例如表示为<E1,E2,…,EN>,可以包括按照时间顺序排列的多个交互事件,其中每个交互事件Ei可以表示为一个交互特征组Ei=(ai,bi,ti),其中ai和bi是事件Ei的两个交互对象,ti是交互时间。
例如,在电商平台中,交互事件可以是用户的购买行为,其中的两个对象可以是某个用户和某个商品。在另一例子中,交互事件可以是用户对页面区块的点击行为,其中的两个对象可以是某个用户和某个页面区块。在又一例子中,交互事件可以是交易事件,例如一个用户向另一用户转账,此时两个对象为两个用户。在其他业务场景中,交互事件还可以是其他在两个对象之间发生的交互行为。
在一个实施例中,每个交互事件对应的交互特征组还可以包括事件特征或行为特征f,如此,每个交互特征组可以表示为Xi=(ai,bi,ti,f)。具体的,事件特征或行为特征f可以包括交互事件发生的背景和上下文信息,交互行为的一些属性特征,等等。
例如,在交互事件为用户点击事件的情况下,事件特征f可以包括,用户进行点击所使用的终端的类型,浏览器类型,app版本,等等;在交互事件为交易事件的情况下,事件特征f可以包括,例如,交易类型(商品购买交易、转账交易等),交易金额,交易渠道等等。
对于以上所述的动态交互序列,可以构建动态交互图。具体的,用一对节点(两个节点)表示一个交互事件涉及的两个对象,将动态交互序列中各个交互事件中的各个对象分别用节点表示。如此,一个节点可以对应到一个交互事件中的一个对象,但是同一物理对象可能对应到多个节点。例如,如果用户U1在t1时刻购买了商品M1,在t2时刻购买了商品M2,那么存在两个交互事件的特征组(U1,M1,t1)和(U1,M2,t2),那么则根据这两个交互事件分别为用户U1创建两个节点U1(t1),U1(t2)。因此可以认为,动态交互图中的节点对应于一个交互对象在一次交互事件中的状态。
对于动态交互图中的每个节点,按照以下方式构建连接边:对于任意节点i,假定其对应于交互事件i(交互时间为t),那么在动态交互序列中,从交互事件i向前回溯,也就是向早于交互时间t的方向回溯,将第一个同样包含节点i代表的对象的交互事件j(交互时间为t-,t-早于t)确定为该对象参与的上一交互事件。于是,建立从节点i指向该上一交互事件j中的两个节点的连接边。于是,这两个被指向的节点也称为节点i的关联节点。
下面结合具体例子进行描述。图3示出根据一个实施例的动态交互序列和由此构建的动态交互图。具体的,图3左侧示出按照时间顺序组织的动态交互序列,其中示例性示出分别在t1,t2,…,t6时刻发生的交互事件E1,E2,…,E6,每个交互事件包含交互涉及的两个交互对象以及交互时间(为了图示的清楚,省去了事件特征)。图3右侧示出根据左侧的动态交互序列构建的动态交互图,其中,将各个交互事件中的两个交互对象分别作为节点。下面以节点u(t6)为例,描述连接边的构建。
如图所示,该节点u(t6)代表交互事件E6中的一个交互对象David。于是,从交互事件E6出发向前回溯,找到的第一个同样包含交互对象David的交互事件为E4,也就是说,E4是David参与的上一交互事件,相应的,E4的两个交互对象对应的两个节点u(t4)和w(t4),为节点u(t6)的两个关联节点。于是,建立从节点u(t6)指向E4对应的两个节点u(t4)和w(t4)的连接边。类似的,从u(t4)(对应于交互事件E4)继续向前回溯,可以继续找到对象u也就是David参与的上一交互事件E2,于是建立从u(t4)指向E2对应的两个节点的连接边;从w(t4)向前回溯,可以找到对象w参与的上一交互事件E3,于是,建立从w(t4)指向E3对应的两个节点的连接边。如此,在节点之间构建连接边,从而形成图3的动态交互图。
以上描述了基于动态交互序列构建动态交互图的方式和过程。对于图2所示的处理交互事件的方法而言,构建动态交互图的过程可以预先进行也可以现场进行。相应地,在一个实施例中,在步骤21,根据动态交互序列现场构建动态交互图。构建方式如以上所述。在另一实施例中,可以预先基于动态交互序列构建形成动态交互图。在步骤21,读取或接收已形成的动态交互图。
可以理解,按照以上方式构建的动态交互图具有很强的可扩展性,可以非常容易地根据新增的交互事件进行动态更新。当出现新的交互事件时,可以将该新增交互事件涉及的两个对象作为两个新增节点,添加到已有动态交互图中。并且,对于每个新增节点,确定其是否存在关联节点。如果存在关联节点,则添加从该新增节点指向其两个关联节点的连接边,如此形成更新的动态交互图。
综合以上,在步骤21,获取到用于反映交互事件关联关系的动态交互图。接着,在步骤22,分别以待分析的第一目标节点、第二目标节点为当前根节点,在动态交互图中确定出对应的第一子图和第二子图。
具体地,在确定出有待分析的交互事件所涉及的两个有待分析的目标节点,即第一目标节点和第二目标节点后,可以分别以上述第一目标节点、第二目标节点作为当前根节点,在上述的动态交互图中,以当前根节点出发,将经由连接边到达的预定范围内的节点作为对应的子图,从而分别得到第一子图和第二子图。
在一个实施例中,上述预定范围内的节点可以是,至多经过预设数目K的连接边可达的节点。这里数目K为预设的超参数,可以根据业务情况选取。可以理解,该预设数目K体现了,从根节点向前回溯的历史交互事件的步数。数目K越大,则考虑越久的历史交互信息。
在另一实施例中,上述预定范围内的节点还可以是,交互时间在预定时间范围内的节点。例如,从根节点的交互时间向前回溯T时长(例如一天),在该时长范围内、且可通过连接边达到的节点。
在又一实施例中,上述预定范围既考虑连接边的数目,又考虑时间范围。换而言之,该预定范围内的节点是指,至多经过预设数目K的连接边可达、且交互时间在预定时间范围内的节点。
下面延续以上示例并结合具体例子进行描述。图4示出在一个实施例中子图的示例。在图4的例子中,假定u(t6)为第一目标节点,于是,以该节点u(t6)为根节点,确定其对应的第一子图,并假定子图是由至多经由预设数目K=2到达的节点构成。那么,从当前根节点u(t6)出发,沿连接边的指向进行遍历,经由2条连接边可以达到的节点如图中虚线区域所示。该区域中的节点和连接关系即为节点u(t6)对应的子图,即第一子图。
与之类似的,如果设定另一节点v(t6)为第二目标节点,那么可以以该节点v(t6)作为根节点再次进行遍历,从而得到第二子图。
下文中,为了描述的清楚和简单,将第一目标节点表示为u(t),将第二目标节点表示为v(t)进行说明。
如此,对于有待分析的交互事件所涉及的第一目标节点u(t)和第二目标节点v(t),分别得到了对应的第一子图和第二子图。接下来,在步骤23,将该第一子图和第二子图输入神经网络模型中进行图处理,从神经网络模型的输出得到第一目标节点和第二目标节点进行交互的交互表征向量。
可以理解,子图中包含了从根节点出发,向前回溯的历史交互事件中涉及的节点。基于子图对根节点进行向量表征,相当于根据该根节点直接或间接关联的历史交互事件进行向量表征。发明人意识到,当分别根据两个子图对两个目标节点进行向量表征,以期分析这两个目标节点共同参与的事件时,这两个目标节点的各个历史交互事件可能具有不同的重要度,应该给予不同程度的关注和权重。
例如,参照图4,当以节点u(t6)为第一目标节点,以v(t6)为第二目标节点,预测与u(t6)和v(t6)有关的事件时,第一子图和第二子图都包含有Lucy这个共有节点。显然,这个共有节点相比于其他节点,对于评估u(t6)和v(t6)共同参与的事件,具有更大的参考价值,应给与更多的关注。
基于以上考虑,在步骤23中,神经网络模型不仅根据第一子图和第二子图各自包含的节点和连接关系进行隐含向量的表征,还通过融合层对各个节点的权值进行评估,将融合有权值的隐含向量传递到下一处理层,来更好地表征交互事件。
下面对上述神经网络模型的具体结构和处理逻辑进行描述。
图5示出根据一个实施例的神经网络模型的结构示意图。如图5所示,该神经网络模型包括L个处理层,分别记为处理层1,2,...,L;至少一部分处理层具有相应的融合层,在图5中示例性示出了处理层1对应具有的融合层1,处理层2相应具有的融合层2。应理解,融合层可以灵活的设置。例如,在一个例子中,可以将神经网络模型设置为,每个处理层都具有相应融合层。在另一例子中,可以仅针对一个处理层,例如处理层1,设置对应的融合层。此外,神经网络模型还包括输出层,用于输出表征两个目标节点交互的交互表征向量。
以上的各个处理层均分别读取获得第一子图和第二子图的图结构。基于读取获得的图结构,各个处理层,例如任意的第l处理层,根据第一子图和第二子图中各个节点i的本层输入特征,即第l层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量,即第l层隐含向量。
如果第l处理层具有对应的融合层,即第l融合层,该融合层根据各个节点的第l层隐含向量,评估得到各个节点对应的权重估计,并将权重估计与对应的隐含向量组合,传递到下一处理层,即第l+1处理层,作为下一处理层的输入特征。
具体地,第l融合层从第l处理层获取各个节点i的第l层隐含向量,先对各个隐含向量分别进行压缩处理(squeeze),得到各个节点对应的压缩表示;然后,对各个压缩表示进行权值变换(excitation),得到各个节点对应的权重估计。于是,将各个节点i对应的隐含向量与该节点对应的权重估计进行组合,作为该节点i的第l+1层输入特征。
如此,融合层根据对应的处理层得到的节点的隐含向量确定节点的重要度估计,并根据该权重估计更新节点的输入特征,输入到下一处理层,从而在相邻处理层之间,处理和传递基于节点的重要性而为不同节点赋予的不同注意力。
相应地,第l+1处理层获取两个子图中各个节点的第l+1层输入特征,将其作为节点的本层输入特征,据此继续对第一子图和第二子图进行处理,得到各个节点的第l+1层隐含向量。如果该l+1处理层不具有对应的融合层,则直接将得到的第l+1层隐含向量作为下一层的节点输入特征,输出给第l+2处理层;如果该l+1处理层具有对应的第l+1融合层,则类似的利用融合层将节点的权重估计与第l+1层隐含向量进行融合,作为下一层的节点输入特征,输出给第l+2处理层,直到最后一个处理层。
在L个处理层中,位于最底层的第一处理层和位于最后一个的第L处理层需要进行特殊处理。在第一处理层中,各个节点的本层输入特征可以包括,各个节点的节点属性特征。
如前所述,动态交互图中各个节点可以代表各种交互对象,例如用户,物品,页面区块,等等。相应的,当节点为代表用户的用户节点时,节点属性特征可以包括用户的属性特征,例如以下中的至少一项:年龄、职业、教育程度、所在地区、注册时人群标签;当节点为代表物品的物品节点时,节点属性特征可以包括物品的属性特征,例如以下中的至少一项:物品类别、上架时间、评论数、销量,等等。当节点代表其他对象时,可以相应获得该对象固有的属性特征作为节点属性特征,进而作为第一处理层中节点的本层输入特征。
第L处理层作为最后一个处理层,不必具有融合层,而是直接连接到输出层。
在输出层,对L个处理层分别得到的、与第一目标节点u(t)对应的L个第一隐含向量和与第二目标节点v(t)对应的L个第二隐含向量进行融合,得到最终的交互表征向量,以此表征第一目标节点u(t)和第二目标节点v(t)进行交互的交互事件。
下面具体描述以上各个层的实现方式和计算逻辑。
如前所述,各个处理层用于根据第一/第二子图中包含的各个节点的本层输入特征,以及子图中各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量。处理层有多种实现方式。
在一个实施例中,各个处理层采用已有的图嵌入算法,对第一/第二子图进行图嵌入处理,在处理过程中,根据各个节点的本层输入特征以及图结构(即节点连接关系),得到各个第一/第二节点的本层隐含向量。
在另一实施例中,各个处理层采用基于时序的网络处理层,例如包括循环神经网络RNN处理层,长短期记忆LSTM处理层,等等。基于时序的网络处理层,可以根据第一/第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,按照时序依次迭代处理各个节点,从而得到各个节点的本层隐含向量。
下面结合LSTM处理层以及第一子图,描述以上过程。具体的,当采用LSTM处理层处理第一子图时,可以按照第一子图中各个节点之间的连接边的指向关系顺序,将各个节点依次作为当前节点,根据当前节点的本层输入特征,该当前节点所指向的两个节点各自的中间向量和隐含向量,确定该当前节点的隐含向量和中间向量,将当前节点的隐含向量作为其本层隐含向量。
图6示出LSTM处理层的工作示意图。根据动态交互图的连接方式,第一子图中的某个节点可以通过连接边指向该节点代表的对象所参与的上一交互事件的两个节点。假定第一子图中的节点z(t)为当前节点,其通过连接边指向节点j1和节点j2。如图6所示,在T时刻,LSTM处理层分别处理得到节点j1和节点j2的表示向量H1和H2,包括中间向量c和隐含向量h;在接下来的T+时刻,LSTM处理层根据节点z(t)的本层输入特征Xz(t),之前处理得到的j1和j2的表示向量H1和H2,得到节点z(t)的表示向量Hz(t)。可以理解,该节点z(t)的表示向量可以在后续时刻,用于处理得到指向节点z(t)的节点的表示向量,如此实现迭代处理。
图7示出根据一个实施例LSTM处理层的结构。在图7的示例中,与图6一致的,将当前节点记为z(t),节点j1和节点j2表示当前节点通过连接边指向的两个节点,简单起见称为第一关联节点和第二关联节点。Xz(t)表示当前节点的本层输入特征,cj1和hj1分别表示第一关联节点j1的中间向量和隐含向量,cj2和hj2分别表示第二关联节点j2的中间向量和隐含向量。以上的Xz(t)、cj1和hj1、cj2和hj2,均作为LSTM处理层某一时刻的输入。在一个实施例中,输入数据中还包括时间差Δ,表示当前节点z(t)所在事件的发生时刻与所连接的两个节点j1和j2所在事件的发生时刻的时间差。
图7具体示出根据上述输入,得到当前节点z(t)的中间向量和隐含向量的计算逻辑。具体地,如图7所示,将当前节点的本层输入特征Xz(t)、第一关联节点j1的隐含向量hj1和第二关联节点j2的隐含向量hj2,以及可选的时间差Δ,分别输入算法相同、参数不同的第一和第二变换函数,分别得到第一变换向量和第二变换向量。
此外,还将当前节点的本层输入特征Xz(t)、第一关联节点j1的隐含向量hj1和第二关联节点j2的隐含向量hj2,以及可选的时间差Δ,分别输入第三变换函数和第四变换函数,分别得到第三变换向量rz(t)和第四变换向量Oz(t)。
接着,基于上述组合向量和第三变换向量rz(t),确定当前节点z(t)的中间向量cz(t),并基于如此得到的节点z(t)的中间向量cz(t)和第四变换向量Oz(t),确定该节点z(t)的隐含向量hz(t)。
各个变换函数的具体形式可以根据需要设置,其中的参数通过神经网络模型的训练而确定。
于是,根据图7所示的结构和算法,LSTM处理层根据当前节点z(t)的本层输入特征X,该节点所指向的两个关联节点j1和j2各自的中间向量和隐含向量,确定该节点z(t)的中间向量cz(t)和隐含向量hz(t)。
当将第一子图输入以上如图6和图7所示的LSTM处理层,LSTM处理层于是根据第一子图中节点之间的指向关系,依次迭代地处理各个节点,从而可以得到第一子图中各个节点的中间向量和隐含向量。例如,在图4所示的第一子图的例子中,对于最底层的节点,可以基于节点输入特征,以及通过缺省、填补等方式确定出的关联节点,得到最底层节点的中间向量和隐含向量,然后逐层向上迭代,得到各个节点的中间向量和隐含向量。例如,当将节点u(t4)作为当前节点时,根据节点u(t4)的本层输入特征,该节点指向的两个关联节点u(t2)和节点r(t2)各自的中间向量和隐含向量,得到当前节点u(t4)的中间向量和隐含向量。类似的得到节点w(t4)的中间向量和隐含向量后,将第一目标节点u(t6)作为当前节点时,根据节点u(t6)的本层输入特征,两个关联节点u(t4)和节点w(t4)各自的中间向量和隐含向量,得到节点u(t6)的中间向量和隐含向量。如此得到第一子图中各个节点的中间向量和隐含向量。类似的,对于第二子图,LSTM处理层进行同样的处理,从而得到第二子图中各个节点的中间向量和隐含向量。
于是,通过例如LSTM处理层的多种方式,各个处理层处理得到第一子图和第二子图中各个节点的本层隐含向量。
下面描述第l处理层对应具有的第l融合层的处理过程。
图8示出在一个实施例中第l融合层的处理流程。如图8所示,首先在步骤81,第l融合层将对应处理层,即第l处理层,得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示;在步骤82,对上述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;然后,在步骤83,将各个节点的本层隐含向量与其对应的权重估计进行组合,将各个组合结果作为各个节点的下一层输入特征,输入到第l+1处理层。
具体地,第l融合层可以从第l处理层获取到第一子图和第二子图中各个节点的第l层隐含向量。在一个实施例中,可以取第一子图和第二子图中节点的并集U,假定并集中包含N个节点,如此在步骤81,可以获取到上述N个节点各自的本层隐含向量,分别对其进行第一压缩处理。下面以并集U中任意一个节点a为例进行说明。第l处理层得到的针对该节点a的本层隐含向量可以记为。
在一个实施例中,可以对任意节点a的本层隐含向量进行降维处理,从而将其压缩为维度更低的降维向量,作为其压缩表示。降维处理可以采用多种方式实现,例如,利用降维变换矩阵。假定本层隐含向量维度为D,可以利用维度为k*D的降维变换矩阵C(其中k<D),对隐含向量进行变换,即可得到维度为k的降维向量。
在另一实施例中,可以对任意节点a的本层隐含向量进行池化处理,得到一个池化值作为其压缩表示。池化处理可以是平均池化,即,求得本层隐含向量中各个向量元素的平均值,或者,池化处理可以是最大池化,即得到各个向量元素中最大值。
之后,在步骤82,对各个节点对应的各个压缩表示进行第一变换处理,得到各个节点对应的权重估计。
在一个具体例子中,采用以下公式(2)进行第一变换处理:
根据公式(2),首先利用第一变换矩阵对压缩向量进行第一线性变换,得到第一变换向量。第一变换矩阵是(N/r)*N维矩阵,其中r为预设的压缩系数,为超参数;而压缩向量为N维向量,因此,得到的第一变换向量的维度为N/r,小于压缩向量的维度N。
最后,对第三变换向量执行第二非线性变换,该变换的变换函数可以是例如sigmoid函数,从而得到(0,1)之间的结果。经过第二非线性变换,得到N维的权值向量,其中N个元素分别对应于N个节点的权重估计值。相应的,权值向量中与节点a对应的元素即表示该节点a的权重估计值。
在另一实施例中,各个节点对应的压缩表示为降维向量,如此,N个节点的压缩表示为降维矩阵。可以针对该降维矩阵进行与公式(2)类似的运算,得到的为权重估计矩阵,其中节点a的权重估计对应于中的一行或一列向量。
在得到各个节点的权重估计的基础上,在步骤83,将各个节点的本层隐含向量与其对应的权重估计进行组合,将组合结果作为各个节点的下一层输入特征,输入到第l+1处理层。具体的,在一个实施例中,通过以下公式(3)进行组合:
如此,第l+1处理层基于各个节点的第l+1层输入特征,以及节点之间的连接关系,继续对第一子图和第二子图进行处理。如此迭代,直到最后的第L层处理层。第L处理层由于不再接续后续处理层,不必具有对应的融合层。并且,如图5所示,每个处理层都连接到输出层,将其得到的本层隐含向量传送至输出层。下面描述输出层的处理过程。
可以理解,前述的L个处理层中的各个处理层,依次迭代地针对第一子图和第二子图形成的节点并集U中的N个节点,处理得到其本层隐含向量。上述N个节点自然包括作为第一子图根节点的第一目标节点u(t),和作为第二子图根节点的第二目标节点v(t)。于是,输出层可以从L个处理层分别得到的L组本层隐含向量中,获取到与第一目标节点u(t)对应的L个第一隐含向量,,…,,和与第二目标节点v(t)对应的L个第二隐含向量,,…,,对上述L个第一隐含向量和L个第二隐含向量进行融合,得到交互表征向量。
在一种实施方式中,输出层对L个第一隐含向量进行池化操作或加权组合,得到第一目标节点对应的第一目标特征向量;类似的,对L个第二隐含向量进行池化操作或加权组合,得到第二目标节点对应的第二目标特征向量;然后,将第一目标特征向量和第二目标特征向量进行拼接或组合,作为上述交互表征向量。
在另一实施方式中,输出层采用与融合层相似的构思,利用压缩-变换的方式,对上述L个第一隐含向量和L个第二隐含向量进行融合。
具体的,在一个实施例中,输出层对上述L个第一隐含向量和L个第二隐含向量构成的2L个隐含向量分别进行第二压缩处理,得到对应的2L个压缩表示。
如前所述,融合层所采用的第一压缩处理可以有多种实现方式,这里,输出层所采用的第二压缩处理也可以采用多种方式实现,并且其实现方式可以与第一压缩处理相同或不同。
通过第二压缩处理,可以得到上述2L个隐含向量各自对应的2L个压缩表示。接着,输出层对这2L个压缩表示进行第二变换处理,得到对应的2L个权重因子。该第二变换处理可以与融合层为得到权重估计所采用的第一变换处理相同或不同。
在一个具体例子中,第二变换处理采用以下公式(5)进行:
其中,S为2L个压缩表示形成的压缩向量,Q为权重因子向量,其包含2L个元素,对应于上述2L个隐含向量的权重因子。变换矩阵和可以与公式(2)相同或不同,非线性变换函数和可以与公式(2)相同或不同。在该例子中,采用与第一变换处理相似的方式,执行第二变换处理,得到2L个权重因子。
于是接着,可以利用2L个权重因子对上述2L个隐含向量进行加权组合,基于加权组合结果,得到交互表征向量。
具体的,在一个例子中,通过以下公式(6)确定交互表征向量M:
在其他例子中,还可以对公式(6)进行修改,得到其他变体方案,例如,还可以将加权组合的结果,对层数L求平均,作为交互表征向量;或者,直接将加权组合结果作为交互表征向量。这样的变体均不超出本方案的设计构思。
如此,通过以上各种方式,输出层得到用于表征第一目标节点u(t)和第二目标节点v(t)的交互事件的交互表征向量。
图9示出根据一个具体实施例的神经网络模型的处理过程示意图。具体的,如图9所示,在l=1的处理层中,根据第一子图和第二子图中各个节点的本层输入特征(节点属性特征)以及节点连接关系,对第一子图和第二子图进行处理,得到各个节点的第1层隐含向量。与处理层1对应的融合层获取到各个节点的第1层隐含向量,包括任意节点a的第1层隐含向量,并对各个节点的第1层隐含向量进行压缩,得到各自对应的压缩表示,例如,节点a对应的压缩表示。接着,对各个节点的压缩表示进行变换,得到其权重估计。例如,节点a对应的权重估计为。于是,将各个节点的第1层隐含向量与其对应的权重估计进行组合,作为下一处理层(l=2)的节点输入特征。例如,可以将节点a的第1层隐含向量与其对应的权重估计的组合,作为节点a的第2处理层的输入特征。
尽管图9中仅示出了第1处理层对应的融合层的处理过程,但是可以理解,其他处理层也可以选择性地设置有类似的融合层。
然后,输出层从L个处理层获取到,与第一目标节点u(t)对应的L个隐含向量,以及与第二目标节点v(t)对应的L个隐含向量,这2L个隐含向量形成集合P。采用类似的思想,输出层对集合P中各个隐含向量也进行压缩,得到各个隐含向量对应的压缩表示S。基于该压缩表示进行变换,得到各个隐含向量对应的权重因子的集合Q。最终,利用集合Q中各个权重因子对集合P中各个隐含向量进行加权组合,得到最终的交互表征向量M。
在以上神经网络模型的整个处理过程中,多个处理层分别基于各个节点的本层输入特征和节点连接关系,得到各个节点的本层隐含向量;而融合层则根据对应处理层确定的本层隐含向量,确定各个节点的权重估计,并将隐含向量和权重估计的组合,作为下一处理层确定隐含向量的基础。如此,充分考虑了两个子图中各个节点的重要度,对两个目标节点之间的交互进行表征,使得交互表征向量更好地体现不同节点的不同贡献,具有更强的表征能力。
回到图2,在通过神经网络模型获得第一目标节点u(t)和第二目标节点v(t)的交互表征向量M后,就可以基于该交互表征向量,评估第一目标节点和第二目标节点进行交互的第一事件。
在一个实施例中,上述第一事件可以是尚未发生的假设交互事件。相应的,步骤24中对第一事件进行评估可以包括,评估第一事件的发生概率,也就是评估上述第一目标节点和第二目标节点发生交互的可能性。
在另一实施例中,上述第一事件是已经发生的当前交互事件。相应的,步骤24中对第一事件进行评估可以包括,评估该当前交互事件的事件类别。例如,在一个例子中,用户A发起与对象B的交易,从而产生当前交互事件。在接收到这样的交易请求时(例如在用户A请求支付时),可以将用户A和用户B分别作为第一和第二目标节点,基于这两个目标节点的交互表征向量对该当前交互事件进行分析,从而确定该交易事件的事件类别,例如是否为涉嫌套现的欺诈交易,交易的风险等级,等等。
可以根据对事件的评估需求,训练上述神经网络模型。
在一个实施例中,希望利用上述神经网络模型输出的两个目标节点交互的交互表征向量,评估这两个目标节点交互的概率。在这样的情况下,可以从历史交互事件序列中采集发生过交互的节点对作为正样本,并获取未发生过交互的节点对作为负样本,对上述神经网络模型进行训练。
在另一个实施例中,希望利用上述神经网络模型输出的两个目标节点交互的交互表征向量,评估这两个目标节点参与的事件的事件类别。在这样的情况下,可以获取历史交互事件中,事件类别已知的样本事件中的两个节点作为样本节点。具体地,将这两个样本节点分别对应的两个子图输入神经网络模型,得到两个样本节点对应的交互表征向量,然后根据该交互表征向量预测前述样本事件的事件类别,得到类别预测结果。根据类别预测结果与样本事件的真实事件类别,确定预测损失,并以减小预测损失为目标,调整神经网络模型的参数,从而训练该神经网络模型。
综合以上,在本说明书实施例的方案中,构建动态交互图来反映各个交互事件的时序关系以及交互对象之间的相互影响。对于待分析的两个目标节点,从该动态交互图中分别得到以这两个目标节点为根节点的两个子图,将这两个子图输入神经网络模型中。该神经网络模型在对这两个子图进行图处理过程中,利用压缩-变换机制,得到两个子图中各个节点的重要度,考虑各个节点的重要度,确定两个目标节点的交互表征向量,用于评估两个目标节点参与的交互事件。由于考虑了节点的重要度,使得交互表征向量可以更好地反映不同历史节点的不同贡献程度,具有更好的表征能力,更加有利于对目标节点之间的交互性进行准确分析和评估。
根据另一方面的实施例,提供了一种评估交互事件的装置,该装置可以部署在任何具有计算、处理能力的设备、平台或设备集群中。图10示出根据一个实施例的评估交互事件的装置的示意性框图。如图10所示,该装置100包括:
交互图获取单元110,配置为获取用于反映交互事件关联关系的动态交互图,所述动态交互图包括多对节点,每对节点代表一个交互事件中的两个对象,任意节点通过连接边指向该节点所代表的对象参与的上一交互事件对应的两个节点;
子图确定单元120,配置为分别以待分析的第一目标节点、第二目标节点为当前根节点,在所述动态交互图中确定出从当前根节点出发,经由连接边到达的预定范围的子图作为第一子图和第二子图;
图处理单元130,配置为将所述第一子图和第二子图输入神经网络模型131进行图处理,所述神经网络模型131包括依次堆叠的L个处理层和输出层,所述L个处理层中至少一个处理层具有对应的融合层,其中:
各个处理层用于,根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量;
所述融合层用于,将对应处理层得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示,并对所述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;将各个节点的本层隐含向量与其对应的权重估计的组合结果,作为所述各个节点的下一层输入特征;
所述输出层用于,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到交互表征向量;
评估单元140,配置为根据所述交互表征向量,评估所述第一目标节点和第二目标节点进行交互的第一事件。
需要理解,上述神经网络模型131可以包含在所述装置100中作为其一部分,也可以部署在所述装置100之外。图10示意性示出神经网络模型131包含在装置100中的情况。
根据一个实施例中,子图确定单元120确定的、经由连接边到达的预定范围内的子图包括:
经由预设数目K之内的连接边到达的节点;和/或
经由连接边可达且交互时间在预设时间范围内的节点。
在一个实施例中,L个处理层包括位于最底层的第一处理层,在所述第一处理层中,所述各个第一节点的本层输入特征包括,各个第一节点的节点属性特征。
进一步的,在不同例子中,第一节点可以包括用户节点和/或物品节点,所述用户节点的节点属性特征包括以下中的至少一项:年龄、职业、教育程度、所在地区、注册时长、人群标签;所述物品节点的节点属性特征包括以下中的至少一项:物品类别、上架时间、评论数、销量。
根据一个实施例,各个处理层可以是基于时序的网络处理层,用于根据所述各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,依次迭代处理各个节点,从而得到各个节点的本层隐含向量。
进一步的,在一个实施例中,所述基于时序的网络处理层可以是LSTM层,所述LSTM层用于:按照各个节点之间的连接边的指向关系顺序,将各个节点依次作为当前节点,根据当前节点的本层输入特征,该当前节点所指向的两个节点各自的中间向量和隐含向量,确定该当前节点的隐含向量和中间向量,将当前节点的隐含向量作为所述本层隐含向量。
在一个实施例中,所述融合层具体用于,对于所述各个本层隐含向量中的任意隐含向量,计算该任意隐含向量的各个向量元素的平均值,作为该任意隐含向量对应的节点的压缩表示。
在另一实施例中,所述融合层具体用于,对于所述各个本层隐含向量中的任意隐含向量,将该任意隐含向量压缩为更低维度的降维向量,作为对应压缩表示。
根据一种实施方式,所述各个压缩表示为各个压缩值,所述各个压缩值构成压缩向量;所述融合层具体用于:
利用第一变换矩阵对所述压缩向量进行第一线性变换,得到第一变换向量,所述第一变换向量的维度小于所述压缩向量;
对所述第一变换向量执行第一非线性变换,得到第二变换向量;
利用第二变换矩阵对所述第二变换向量进行第二线性变换,得到第三变换向量,所述第三变换向量的维度等于所述压缩向量;
对所述第三变换向量执行第二非线性变换,得到权值向量,所述权值向量中各个元素对应于所述各个节点的权重估计。
根据一个实施例,所述输出层具体用于:
对所述L个第一隐含向量和L个第二隐含向量构成的2L个隐含向量分别进行第二压缩处理,得到对应的2L个压缩表示;
对所述2L个压缩表示进行第二变换处理,得到对应的2L个权重因子;
利用所述2L个权重因子对所述2L个隐含向量进行加权组合,基于加权组合结果,得到所述交互表征向量。
进一步的,在一个实施例中,所述第二压缩处理与第一压缩处理相同,所述第二变换处理与所述第一变换处理相同。
根据一种实施方式,所述第一事件为假设事件,在这样的情况下,所述评估单元140配置为,评估所述第一事件的发生概率。
根据另一种实施方式,所述第一事件为已发生事件,在这样的情况下,所述评估单元140配置为,评估所述第一事件的事件类别。
根据以上的方法和装置,对于待评估事件涉及的两个目标节点,可以基于这两个节点在动态交互图中的子图来表征这两个目标节点之间的交互,从而更准确地对涉及两个目标节点的事件进行评估和分析。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (26)
1.一种计算机执行的、评估交互事件的方法,所述方法包括:
获取用于反映交互事件关联关系的动态交互图,所述动态交互图包括多对节点,每对节点代表一个交互事件中的两个对象,任意节点通过连接边指向该节点所代表的对象参与的上一交互事件对应的两个节点;
分别以待分析的第一目标节点、第二目标节点为当前根节点,在所述动态交互图中确定出从当前根节点出发,经由连接边到达的预定范围的子图作为第一子图和第二子图;
将所述第一子图和第二子图输入神经网络模型进行图处理,得到所述第一目标节点和所述第二目标节点进行交互的交互表征向量,所述神经网络模型包括依次堆叠的输出层和L个处理层,所述L个处理层中至少一个处理层具有对应的融合层,所述图处理包括:
在所述L个处理层中的各个处理层中,根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量;
在所述融合层中,将对应处理层得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示,并对所述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;将各个节点的本层隐含向量与其对应的权重估计的组合结果,作为所述各个节点的下一层输入特征;
在所述输出层中,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到所述交互表征向量;
根据所述交互表征向量,评估所述第一目标节点和第二目标节点进行交互的第一事件;
其中,所述各个压缩表示为各个压缩值,所述各个压缩值构成压缩向量;所述第一变换处理包括:
利用第一变换矩阵对所述压缩向量进行第一线性变换,得到第一变换向量,所述第一变换向量的维度小于所述压缩向量;
对所述第一变换向量执行第一非线性变换,得到第二变换向量;
利用第二变换矩阵对所述第二变换向量进行第二线性变换,得到第三变换向量,所述第三变换向量的维度等于所述压缩向量;
对所述第三变换向量执行第二非线性变换,得到权值向量,所述权值向量中各个元素对应于所述各个节点的权重估计。
2.根据权利要求1所述的方法,其中,所述经由连接边到达的预定范围内的子图包括:
经由预设数目K之内的连接边到达的节点;和/或
经由连接边可达且交互时间在预设时间范围内的节点。
3.根据权利要求1所述的方法,其中,所述L个处理层包括位于最底层的第一处理层,在所述第一处理层中,所述各个节点的本层输入特征包括,各个节点的节点属性特征。
4.根据权利要求3所述的方法,其中,所述各个节点包括用户节点和/或物品节点,所述用户节点的节点属性特征包括以下中的至少一项:年龄、职业、教育程度、所在地区、注册时长、人群标签;所述物品节点的节点属性特征包括以下中的至少一项:物品类别、上架时间、评论数、销量。
5.根据权利要求1所述的方法,其中,所述各个处理层为基于时序的网络处理层,用于根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,依次迭代处理各个节点,从而得到各个节点的本层隐含向量。
6.根据权利要求5所述的方法,其中,所述基于时序的网络处理层为LSTM层,所述LSTM层用于:按照各个节点之间的连接边的指向关系顺序,将各个节点依次作为当前节点,根据当前节点的本层输入特征,该当前节点所指向的两个节点各自的中间向量和隐含向量,确定该当前节点的隐含向量和中间向量,将当前节点的隐含向量作为所述本层隐含向量。
7.根据权利要求1所述的方法,其中,所述第一压缩处理包括:
对于所述各个本层隐含向量中的任意隐含向量,计算该任意隐含向量的各个向量元素的平均值,作为该任意隐含向量对应的节点的压缩表示。
8.根据权利要求1所述的方法,其中,所述第一压缩处理包括:
对于所述各个本层隐含向量中的任意隐含向量,将该任意隐含向量压缩为更低维度的降维向量,作为对应的压缩表示。
9.根据权利要求1所述的方法,其中,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到交互表征向量,包括:
对所述L个第一隐含向量和L个第二隐含向量构成的2L个隐含向量分别进行第二压缩处理,得到对应的2L个压缩表示;
对所述2L个压缩表示进行第二变换处理,得到对应的2L个权重因子;
利用所述2L个权重因子对所述2L个隐含向量进行加权组合,基于加权组合结果,得到所述交互表征向量。
10.根据权利要求9所述的方法,其中,所述第二压缩处理与第一压缩处理相同,所述第二变换处理与所述第一变换处理相同。
11.根据权利要求1所述的方法,其中,所述第一事件为假设事件,所述评估所述目标第一节点和所述目标第二节点进行交互的第一事件包括,评估所述第一事件的发生概率。
12.根据权利要求1所述的方法,其中,所述第一事件为已发生事件,所述评估所述目标第一节点和所述目标第二节点进行交互的第一事件包括,评估所述第一事件的事件类别。
13.一种评估交互事件的装置,所述装置包括:
交互图获取单元,配置为获取用于反映交互事件关联关系的动态交互图,所述动态交互图包括多对节点,每对节点代表一个交互事件中的两个对象,任意节点通过连接边指向该节点所代表的对象参与的上一交互事件对应的两个节点;
子图确定单元,配置为分别以待分析的第一目标节点、第二目标节点为当前根节点,在所述动态交互图中确定出从当前根节点出发,经由连接边到达的预定范围的子图作为第一子图和第二子图;
图处理单元,配置为将所述第一子图和第二子图输入神经网络模型进行图处理,得到所述第一目标节点和所述第二目标节点进行交互的交互表征向量,所述神经网络模型包括依次堆叠的输出层和L个处理层,所述L个处理层中至少一个处理层具有对应的融合层,其中:
各个处理层用于,根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,分别处理得到各个节点的本层隐含向量;
所述融合层用于,将对应处理层得到的各个本层隐含向量分别进行第一压缩处理,得到各个节点对应的各个压缩表示,并对所述各个压缩表示进行第一变换处理,得到各个节点对应的权重估计;将各个节点的本层隐含向量与其对应的权重估计的组合结果,作为所述各个节点的下一层输入特征;
所述输出层用于,对所述L个处理层分别得到的、与所述第一目标节点对应的L个第一隐含向量和与所述第二目标节点对应的L个第二隐含向量进行融合,得到所述交互表征向量;
评估单元,配置为根据所述交互表征向量,评估所述第一目标节点和第二目标节点进行交互的第一事件;
其中,所述各个压缩表示为各个压缩值,所述各个压缩值构成压缩向量;所述融合层具体用于:
利用第一变换矩阵对所述压缩向量进行第一线性变换,得到第一变换向量,所述第一变换向量的维度小于所述压缩向量;
对所述第一变换向量执行第一非线性变换,得到第二变换向量;
利用第二变换矩阵对所述第二变换向量进行第二线性变换,得到第三变换向量,所述第三变换向量的维度等于所述压缩向量;
对所述第三变换向量执行第二非线性变换,得到权值向量,所述权值向量中各个元素对应于所述各个节点的权重估计。
14.根据权利要求13所述的装置,其中,所述经由连接边到达的预定范围内的子图包括:
经由预设数目K之内的连接边到达的节点;和/或
经由连接边可达且交互时间在预设时间范围内的节点。
15.根据权利要求13所述的装置,其中,所述L个处理层包括位于最底层的第一处理层,在所述第一处理层中,所述各个节点的本层输入特征包括,各个节点的节点属性特征。
16.根据权利要求15所述的装置,其中,所述各个节点包括用户节点和/或物品节点,所述用户节点的节点属性特征包括以下中的至少一项:年龄、职业、教育程度、所在地区、注册时长、人群标签;所述物品节点的节点属性特征包括以下中的至少一项:物品类别、上架时间、评论数、销量。
17.根据权利要求13所述的装置,其中,所述各个处理层为基于时序的网络处理层,用于根据所述第一子图和第二子图中包含的各个节点的本层输入特征,以及各个节点之间的连接边的指向关系,依次迭代处理各个节点,从而得到各个节点的本层隐含向量。
18.根据权利要求17所述的装置,其中,所述基于时序的网络处理层为LSTM层,所述LSTM层用于:按照各个节点之间的连接边的指向关系顺序,将各个节点依次作为当前节点,根据当前节点的本层输入特征,该当前节点所指向的两个节点各自的中间向量和隐含向量,确定该当前节点的隐含向量和中间向量,将当前节点的隐含向量作为所述本层隐含向量。
19.根据权利要求13所述的装置,其中,所述融合层具体用于,对于所述各个本层隐含向量中的任意隐含向量,计算该任意隐含向量的各个向量元素的平均值,作为该任意隐含向量对应的节点的压缩表示。
20.根据权利要求13所述的装置,其中,所述融合层具体用于,对于所述各个本层隐含向量中的任意隐含向量,将该任意隐含向量压缩为更低维度的降维向量,作为对应压缩表示。
21.根据权利要求13所述的装置,其中,所述输出层具体用于:
对所述L个第一隐含向量和L个第二隐含向量构成的2L个隐含向量分别进行第二压缩处理,得到对应的2L个压缩表示;
对所述2L个压缩表示进行第二变换处理,得到对应的2L个权重因子;
利用所述2L个权重因子对所述2L个隐含向量进行加权组合,基于加权组合结果,得到所述交互表征向量。
22.根据权利要求21所述的装置,其中,所述第二压缩处理与第一压缩处理相同,所述第二变换处理与所述第一变换处理相同。
23.根据权利要求13所述的装置,其中,所述第一事件为假设事件,所述评估单元配置为,评估所述第一事件的发生概率。
24.根据权利要求13所述的装置,其中,所述第一事件为已发生事件,所述评估单元配置为,评估所述第一事件的事件类别。
25.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-12中任一项的所述的方法。
26.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010588751.5A CN111476223B (zh) | 2020-06-24 | 2020-06-24 | 评估交互事件的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010588751.5A CN111476223B (zh) | 2020-06-24 | 2020-06-24 | 评估交互事件的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111476223A CN111476223A (zh) | 2020-07-31 |
CN111476223B true CN111476223B (zh) | 2020-09-22 |
Family
ID=71765376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010588751.5A Active CN111476223B (zh) | 2020-06-24 | 2020-06-24 | 评估交互事件的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111476223B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113538030B (zh) * | 2020-10-21 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 一种内容推送方法、装置及计算机存储介质 |
CN112507210A (zh) * | 2020-11-18 | 2021-03-16 | 天津大学 | 一种属性网络上事件检测的交互式可视化方法 |
CN114817751B (zh) * | 2022-06-24 | 2022-09-23 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备、存储介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241440A (zh) * | 2018-09-29 | 2019-01-18 | 北京工业大学 | 一种基于深度学习的面向隐式反馈推荐方法 |
CN110689110A (zh) * | 2019-08-28 | 2020-01-14 | 阿里巴巴集团控股有限公司 | 处理交互事件的方法及装置 |
CN111242283A (zh) * | 2020-01-09 | 2020-06-05 | 支付宝(杭州)信息技术有限公司 | 评估交互事件的自编码器的训练方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10706741B2 (en) * | 2013-09-03 | 2020-07-07 | Roger Midmore | Interactive story system using four-valued logic |
CN110490274B (zh) * | 2019-10-17 | 2020-02-07 | 支付宝(杭州)信息技术有限公司 | 评估交互事件的方法及装置 |
CN110765260A (zh) * | 2019-10-18 | 2020-02-07 | 北京工业大学 | 一种基于卷积神经网络与联合注意力机制的信息推荐方法 |
-
2020
- 2020-06-24 CN CN202010588751.5A patent/CN111476223B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241440A (zh) * | 2018-09-29 | 2019-01-18 | 北京工业大学 | 一种基于深度学习的面向隐式反馈推荐方法 |
CN110689110A (zh) * | 2019-08-28 | 2020-01-14 | 阿里巴巴集团控股有限公司 | 处理交互事件的方法及装置 |
CN111242283A (zh) * | 2020-01-09 | 2020-06-05 | 支付宝(杭州)信息技术有限公司 | 评估交互事件的自编码器的训练方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111476223A (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111210008B (zh) | 利用lstm神经网络模型处理交互数据的方法及装置 | |
CN111476223B (zh) | 评估交互事件的方法及装置 | |
CN110490274B (zh) | 评估交互事件的方法及装置 | |
CN110598847B (zh) | 处理交互序列数据的方法及装置 | |
Harris et al. | Decentralized and collaborative AI on blockchain | |
CN110543935B (zh) | 处理交互序列数据的方法及装置 | |
CN110689110B (zh) | 处理交互事件的方法及装置 | |
CN111242283B (zh) | 评估交互事件的自编码器的训练方法及装置 | |
CN110555469B (zh) | 处理交互序列数据的方法及装置 | |
Chou et al. | Predictive analytics for customer repurchase: Interdisciplinary integration of buy till you die modeling and machine learning | |
CN112580789B (zh) | 训练图编码网络、预测交互事件的方法及装置 | |
CN111523682B (zh) | 训练交互预测模型、预测交互对象的方法及装置 | |
CN110705688A (zh) | 对操作事件进行风险评估的神经网络***、方法及装置 | |
CN112541575A (zh) | 图神经网络的训练方法及装置 | |
CN112085293A (zh) | 训练交互预测模型、预测交互对象的方法及装置 | |
CN110674181A (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 | |
WO2021139513A1 (zh) | 处理交互序列数据的方法及装置 | |
CN115309997B (zh) | 一种基于多视图自编码特征的商品推荐方法及装置 | |
CN116977019A (zh) | 一种商户推荐方法、装置、电子设备及存储介质 | |
CN114861072B (zh) | 一种基于层间组合机制的图卷积网络推荐方法及装置 | |
CN112085279B (zh) | 训练交互预测模型、预测交互事件的方法及装置 | |
CN115564532A (zh) | 序列推荐模型的训练方法及装置 | |
CN115081253A (zh) | 数据处理方法以及装置 | |
Joseph et al. | Non-parametric estimation of multi-dimensional marked Hawkes processes | |
CN110727705A (zh) | 信息推荐方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40034545 Country of ref document: HK |