CN116384473B - 一种计算图改进、信息推送方法及装置 - Google Patents
一种计算图改进、信息推送方法及装置 Download PDFInfo
- Publication number
- CN116384473B CN116384473B CN202310652126.6A CN202310652126A CN116384473B CN 116384473 B CN116384473 B CN 116384473B CN 202310652126 A CN202310652126 A CN 202310652126A CN 116384473 B CN116384473 B CN 116384473B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- information
- user
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004364 calculation method Methods 0.000 title claims abstract description 54
- 230000006872 improvement Effects 0.000 title abstract description 8
- 230000010076 replication Effects 0.000 claims abstract description 31
- 230000011218 segmentation Effects 0.000 claims abstract description 19
- 230000003362 replicative effect Effects 0.000 claims abstract description 7
- 238000011144 upstream manufacturing Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 3
- 239000013598 vector Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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
Abstract
本说明书实施例提供了一种计算图改进、信息推送方法及装置。信息推送模型用于针对用户确定多条待选推送信息的评分。在该方法中,获取用户特征和待选推送信息特征,并据此特征对计算图的特征输入节点和其他节点进行类别标记,标记为与用户特征相关联的第一类,或者与待选推送信息特征相关联的第二类。接着,在属于第一类的特征输入节点与其下游节点之间增加切分节点,切分节点可以对输入的高维数据进行切分,并输出得到的低维数据。还要从其他节点中确定自身类别为第一类、其下游节点的类别为第二类的节点,作为用户特征叶节点。接着,在用户特征叶节点与其下游节点之间增加复制节点,复制节点对输入的低维数据进行复制,输出得到的高维数据。
Description
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种计算图改进、信息推送方法及装置。
背景技术
随着社会的发展和技术的进步,出现了越来越多的服务平台为用户提供各种服务。很多的服务平台能够通过服务器和客户端为用户提供便捷的线上服务。例如,电子商务平台能够为用户提供各种商品信息,供用户浏览、选择和购买;内容网站为用户提供各种各样的内容服务,等等。为了提供更丰富的服务,服务平台也会在保证用户数据隐私和安全性,并得到用户授权使用用户数据的前提下,根据用户的浏览、点击记录等数据为用户推送更丰富的内容,供用户选择。这在一定程度上给用户提供了便利。在推送场景中,常常利用训练后的信息推送模型为用户推送信息。目前,提高利用信息推送模型为用户进行信息推送时的效率仍然是亟待解决的问题。
因此,希望能有改进的方案,可以提高使用信息推送模型为用户进行信息推送时的效率。
发明内容
本说明书一个或多个实施例描述了一种计算图改进、信息推送方法及装置,以提高使用信息推送模型为用户进行信息推送时的效率。具体的技术方案如下。
第一方面,实施例提供了一种信息推送模型的计算图的改进方法,所述信息推送模型用于针对用户确定多条待选推送信息的评分,所述计算图包含多个节点以及表征节点之间数据流向的边;所述方法包括:
获取用户特征和待选推送信息特征;
基于所述用户特征和待选推送信息特征,对所述计算图的特征输入节点和其他节点进行类别标记;标记的类别包括:与所述用户特征相关联的第一类,与所述待选推送信息特征相关联的第二类;
在属于所述第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点;所述切分节点用于对输入的与所述用户特征相关联的高维数据进行切分,输出得到的低维数据;
从多个所述其他节点中确定自身类别为所述第一类,且其下游节点的类别为所述第二类的节点,作为用户特征叶节点;
在所述用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点;所述复制节点用于对输入的与所述用户特征相关联的低维数据进行复制,输出得到的高维数据。
在一种实施方式中,所述获取用户特征和待选推送信息特征的步骤,包括:
接收推送请求;
从所述推送请求中获取所述用户特征和所述待选推送信息特征。
在一种实施方式中,所述对所述计算图的特征输入节点和其他节点进行类别标记的步骤,包括:
基于所述用户特征和所述待选推送信息特征,对所述特征输入节点进行类别标记;
基于所述特征输入节点的类别以及节点之间的数据流向,对所述其他节点进行类别标记。
在一种实施方式中,所述对所述特征输入节点进行类别标记的步骤,包括:
当一个所述特征输入节点中的特征仅涉及所述用户特征时,将该特征输入节点标记为所述第一类;
当一个所述特征输入节点中的特征涉及所述待选推送信息特征时,将该特征输入节点标记为所述第二类。
在一种实施方式中,所述特征输入节点中的特征涉及所述待选推送信息特征,包括:
所述特征输入节点中的特征仅涉及所述待选推送信息特征;和/或,
所述特征输入节点中的特征涉及所述用户特征和所述待选推送信息特征。
在一种实施方式中,所述对所述其他节点进行类别标记的步骤,包括:
当一个所述其他节点的所有上游节点均属于所述第一类时,将该其他节点标记为所述第一类;
当一个所述其他节点的上游节点中包含属于所述第二类的节点时,将该其他节点标记为所述第二类。
在一种实施方式中,所述对所述其他节点进行类别标记的步骤,包括:
通过对多个所述其他节点进行的若干次遍历和判断,对多个所述其他节点进行类别标记。
在一种实施方式中,所述高维数据包含与所述多条待选推送信息的数量相同的多条复制数据;所述切分节点的执行逻辑包括:
对所述多条复制数据进行切分,保留所述多条复制数据中的一条复制数据,得到低维数据。
在一种实施方式中,所述复制节点的执行逻辑包括:
将所述低维数据作为一条数据,将该条数据复制成与所述多条待选推送信息的数量相同的多条数据,并将所述多条数据构建得到高维数据。
第二方面,实施例提供了一种信息推送方法,包括:
接收推送请求,所述推送请求用于指示针对第一用户确定多条第一待选推送信息的评分;
获取改进了计算图的信息推送模型,所述计算图采用第一方面提供的方法进行了改进;
通过所述信息推送模型,针对所述第一用户确定所述多条第一待选推送信息的评分;
基于所述评分,从所述多条第一待选推送信息中选择相应的第一待选推送信息,向所述第一用户推送。
第三方面,实施例提供了一种信息推送模型的计算图的改进装置,所述信息推送模型用于针对用户确定多条待选推送信息的评分,所述计算图包含多个节点以及表征节点之间数据流向的边;所述装置包括:
获取模块,配置为获取用户特征和待选推送信息特征;
标记模块,配置为基于所述用户特征和待选推送信息特征,对所述计算图的特征输入节点和其他节点进行类别标记;标记的类别包括:与所述用户特征相关联的第一类,与所述待选推送信息特征相关联的第二类;
增加模块,配置为在属于所述第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点;所述切分节点用于对输入的与所述用户特征相关联的高维数据进行切分,输出得到的低维数据;
确定模块,配置为从多个所述其他节点中确定自身类别为所述第一类,且其下游节点的类别为所述第二类的节点,作为用户特征叶节点;
复制模块,配置为在所述用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点;所述复制节点用于对输入的与所述用户特征相关联的低维数据进行复制,输出得到的高维数据。
第四方面,实施例提供了一种信息推送装置,包括:
接收模块,配置为接收推送请求,所述推送请求用于指示针对第一用户确定多条第一待选推送信息的评分;
模型模块,配置为获取改进了计算图的信息推送模型,所述计算图采用第一方面提供的方法进行了改进;
评分模块,配置为通过所述信息推送模型,针对所述第一用户确定所述多条第一待选推送信息的评分;
推送模块,配置为基于所述评分,从所述多条第一待选推送信息中选择相应的第一待选推送信息,向所述第一用户推送。
第五方面,实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面和第二方面中任一项所述的方法。
第六方面,实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面和第二方面中任一项所述的方法。
本说明书实施例提供的方法及装置中,将计算图中的节点进行类别标记,从中找到与用户特征相关联的特征输入节点,在该特征输入节点与其下游节点之间增加切分节点,以便对高维数据进行降维。接着,在用户特征叶节点与其下游节点之间增加复制节点,从而将低维数据扩充成高维数据,以便适应与待选推送信息对应的高维数据之间的运算。通过对高维数据的一降一升,使用低维数据执行与用户特征相关的计算,再将得到的低维数据复制成高维数据,以配合与待选推送信息相关的高维数据之间的运算,尽可能地减少不必要的重复计算,因此能够提高使用信息推送模型为用户进行信息推送时的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2为实施例提供的一种计算图改进方法的流程示意图;
图3为计算图中的节点以及数据流向的一种示意图;
图4为实施例提供的一种信息推送方法的流程示意图;
图5为实施例提供的一种计算图的改进装置的示意性框图;
图6为实施例提供的一种信息推送装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。其中,信息推送模型的计算图包含1、2、3、…、12等节点,节点之间的箭头表征数据流的流向。当向该信息推送模型输入用户的用户特征和多条待选推送信息时,该信息推送模型可以利用其计算图进行计算,确定多条待选推送信息针对该用户的评分,从多条待选推送信息中选择评分最高的若干个,向该用户进行推送。其中,用户特征可以采用其嵌入向量来实现。
信息推送模型可以采用神经网络模型来实现,例如采用深度神经网络或卷积神经网络来实现。在机器学习和认知科学领域,神经网络是一种模仿生物神经网络的结构和功能的计算模型,可以用于对函数进行估计或近似。利用大量用户样本对神经网络进行训练,能够得到信息推送模型,并应用于实际的预测任务中。
基于信息推送模型的程序代码能够生成计算图。该计算图中包含多个节点以及表征节点之间数据流向的边。计算图中的节点也可以称为神经元,多个节点共同执行计算任务。节点分为不同类型,包括特征输入节点、计算节点、模型权重参数节点和评分输出节点等。在Tensorflow等机器学习架构中,特征输入节点可以是placeholder类型,计算节点可以是operation类型,模型权重参数节点可以是variable类型。
其中,特征输入节点是整个计算图中用于输入特征的节点,也是计算图中数据流的起始节点,输入的特征包括用户特征和待选推送信息特征。例如,在图1中,10、11和12为特征输入节点,用于输入特征。3、5和7为模型权重参数节点,1为评分输出节点,2、4、6、8和9为中间计算节点。多个特征输入节点可以用于分别输入不同特征字段对应的数据。例如,10可以用于输入文章浏览次数字段数据,11可以用于输入点赞次数字段数据。图1中的计算图仅仅是一个例子,在实际应用中,计算图的结构多种多样,节点的数量也可多可少。
在任意一次推送任务中,待选推送信息的条数可能很大,例如其数量可能达到几千条或上万条等,计算图中与待选推送信息对应的数据的维度往往很高。信息推送模型的计算图往往需要利用用户特征和待选推送信息特征共同进行计算。为了实现两种特征之间维度的匹配,用户特征往往会被扩充为与待选推送信息特征匹配的高维数据。
为了提高使用信息推送模型为用户进行信息推送时的效率,本说明书实施例提供了一种针对计算图的改进方法。该方法包括:步骤S210,获取用户特征和待选推送信息特征;步骤S220,基于用户特征和待选推送信息特征,对计算图的特征输入节点和其他节点进行类别标记,标记的类别包括:与用户特征相关联的第一类,与待选推送信息特征相关联的第二类;步骤S230,在属于第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点,切分节点用于对输入的与用户特征相关联的高维数据进行切分,输出得到的低维数据;步骤S240,从多个其他节点中确定自身类别为第一类,且其下游节点的类别为第二类的节点,作为用户特征叶节点。步骤S250,在用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点,复制节点用于对输入的与用户特征相关联的低维数据进行复制,输出得到的高维数据。
在本实施例中,在对计算图进行的上述改进中,通过对计算图的分析处理确定了重复计算的部分,即仅与用户特征相关联的节点部分。将高维数据切分为低维数据,去掉了重复计算的部分,能够降低计算资源的消耗。在用户特征相关联的节点与待选推送信息相关联的节点的连接处,再将低维数据复制为高维数据,实现了用户特征与待选推送信息特征之间的维度匹配。因此,本实施例能够在保证顺利计算的同时提高推送效率。
下面结合图2对本实施例进行详细说明。
图2为实施例提供的一种计算图改进方法的流程示意图。信息推送模型用于针对用户确定n条待选推送信息的评分。该n条待选推送信息是为该用户进行推送的待选的推送信息。计算图包含多个节点以及表征节点之间数据流向的边。
图3为计算图中的节点以及数据流向的一种示意图。该计算图包含1~12这12个节点,节点之间的箭头线标识出数据流向。例如,节点7通过箭头线指向节点5,则数据是从节点7流向节点5的。也就是说,节点7是上游节点,节点5是下游节点。总结来说,上游节点的输出数据输入给下游节点,上游节点与下游节点之间是相对关系。例如,节点5又是节点4的上游节点,节点4是节点5的下游节点。
计算图主要是用于基于用户特征和待选推送信息特征进行数据计算的。因此,在计算图中特征数据与模型权重参数可能会在多个节点之间经历多重数据计算,从而形成了数据的流动。下面会结合图3对图2所示实施例进行说明。
该方法可以通过计算设备执行,该计算设备可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等来实现。该方法包括以下步骤。
在步骤S210中,获取用户特征和待选推送信息特征。
用户特征通常可以采用“字段+值”的形式表示。例如,用户特征中包含文章浏览次数,其数值是12次。这里,获取的用户特征可以是用户特征的字段,获取的待选推送信息特征也可以是待选推送信息特征的字段。
获取的用户特征的数量可以是一个或多个。例如,获取的用户特征中的字段可以是一个或多个。获取的待选推送信息特征的数量可以是一个或多个。例如,获取的待选推送信息中的字段可以是一个或多个。
用户特征,可以包括用户基本属性特征、用户行为特征、用户上下文特征和其他与用户相关的特征等。待选推送对象可以是商品、文字内容或视频内容等。待选推送信息是与待选推送对象相关联的信息。
需要说明的是,本说明书一个或多个实施例中提及的用户特征,均是在得到用户确切的许可的情况下使用的,并会对用户特征进行严格的隐私保护,不会泄露隐私数据。
在获取用户特征和待选推送信息特征时,可以由开发人员输入,计算设备可以根据输入操作获取到用户特征和待选推送信息特征。
也可以是基于推送请求获取。任意一个推送请求携带用户特征和多条待选推送信息。在具体实施时,可以在接收推送请求之后,从推送请求中获取用户特征和待选推送信息特征。在获取时,可以根据推送请求的协议,确定推送请求中用户特征的位置,以及待选推送信息的位置。
例如,在一条推送请求中携带有一个用户A的3个用户特征:文章浏览次数,30;点赞次数21。该推送请求中携带有1000件商品的商品信息,也就是携带有1000条商品信息,每条商品信息包含相同的2个字段“价格”和“用途”。
在步骤S220中,基于上述用户特征和待选推送信息特征,对计算图的特征输入节点和其他节点进行类别标记。
其中,上述其他节点包括计算图中除特征输入节点之外的节点,其他节点的数量通常有很多个。标记的类别包括:与用户特征相关联的第一类,与待选推送信息特征相关联的第二类。在图3中,第一类采用U标识,第二类采用I标识。图3中节点旁边给出了类别的标记。部分节点并没有标注U或者I,说明存在一些节点,既不与用户特征相关联,也不与待选推送信息特征相关联,例如节点3、5和7。
计算图中通常包含多个特征输入节点,每个特征输入节点用于输入一个与特征字段对应的特征嵌入向量或特征矩阵。例如,在图3中,特征输入节点10用于输入与文章浏览次数相关的数据,特征输入节点11用于输入与点赞次数相关的数据,特征输入节点12用于输入与价格相关的数据。
属于第一类的节点是存在重复计算,可以进行简化的节点。属于第二类的节点是不存在重复计算,无法进行简化的节点。待选推送信息的数量相比于用户的数量是更大的,一般需要对涉及用户特征的节点进行特征扩充,以便在数据维度上与待推送信息进行匹配,这就造成了第一类节点中的重复计算。
以图3中的特征输入节点10、11和12为例,节点11是和节点10属于第一类,节点12属于第二类。在某一次推送计算中,节点12中的数据是1000*30维的特征矩阵,其中,1000是待选推送信息的条数值,30是待选推送信息的特征维度值,1000条待选推送信息的特征向量构成了1000*30维的特征矩阵,该特征矩阵属于高维数据。节点10和节点11中的数据也是1000*30维的特征矩阵,但该特征矩阵是使用一条用户的特征向量扩充得到的。其中的每一行30维特征都等于该特征向量,共有1000行相同的特征向量。节点10和节点11,以及以节点10和节点11为上游节点的节点8中都存在重复计算。
在获取用户特征的字段和待选推送信息特征的字段之后,可以先对特征输入节点进行类别标记,再基于标记的特征输入节点来标记其他节点。在对计算图的特征输入节点和其他节点进行类别标记时,可以包括以下步骤:
步骤1,基于用户特征和待选推送信息特征,对特征输入节点进行类别标记;
步骤2,基于特征输入节点的类别以及节点之间的数据流向,对其他节点进行类别标记。
在对特征输入节点进行类别标记时,可以将特征输入节点对应的特征与上述用户特征和待选推送信息特征进行比对。特征输入节点对应的特征,就是特征输入节点中用于向下游节点输送的特征,通常可以在计算图的配置文件中确定。在该计算图中,多个特征输入节点对应的特征可以划分为两类,一类是用户特征,一类是待选推送信息特征。
当一个特征输入节点中的特征仅涉及用户特征时,将该特征输入节点标记为第一类。当一个特征输入节点中的特征涉及待选推送信息特征时,将该特征输入节点标记为第二类。
其中,仅涉及用户特征可以理解为不涉及待选推送信息特征,且涉及用户特征。特征输入节点中的特征涉及待选推送信息特征,包括以下情况。
特征输入节点中的特征仅涉及待选推送信息特征。仅涉及待选推送信息特征,可以理解为涉及待选推送信息特征,且不涉及用户特征。
特征输入节点中的特征涉及用户特征和待选推送信息特征,即同时涉及两者。在这种情况中,可以是将用户特征与待选推送信息特征相乘或相加后,作为输入特征。
在步骤2中,对其他节点进行类别标记时,可以基于已标记的特征输入节点的类别以及节点之间的数据流向,对其他节点进行判断。具体可以判断该其他节点的上游节点的类型。
判断标准如下。当一个其他节点的所有上游节点均属于第一类时,将该其他节点标记为第一类;当一个其他节点的上游节点中包含属于第二类的节点时,将该其他节点标记为第二类。
在具体执行时,可以通过对多个其他节点进行的若干次遍历和上述判断,对这多个其他节点进行类别标记。例如,在任意一次遍历中,针对一个其他节点X,其所有上游节点包括第一节点和第二节点。如果第一节点和第二节点尚未标记,则放弃对该其他节点X的标记。如果第一节点和第二节点中一个尚未标记,一个标记为第二类,则将该其他节点X标记为第二类。如果第一节点和第二节点中一个记为第一类,一个标记为第二类,则将该其他节点X标记为第二类。如果第一节点和第二节点中两个都标记为第二类,则将该其他节点X标记为第二类。
例如,在任意一次遍历中,对于节点6,判断其上游节点8和9的类别,如果节点8和9的类别尚未标记,则放弃对节点6的标记,继续判断其他节点。如果判断出上游节点9是第二类,不管上游节点8尚未标记,还是已标记为第一类,或是已标记为第二类,均将节点6标记为第二类。
在计算图中,每个节点中存储有其上游节点的节点标识。通过上述对其他节点进行的若干次遍历,可以获取到每个节点的下游节点的节点标识。这样,每个节点的上游节点和下游节点均可以获取到。
如果一个其他节点的上游节点中包含属于第二类的节点,说明该其他节点执行的运算中包含与待选推送信息特征相关的高维数据,该其他节点中不存在重复计算,无法进行简化,因此标记为第二类。
在步骤S230中,在属于第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点。该特征输入节点为切分节点的上游节点,该下游节点为切分节点的下游节点。在增加切分节点时,并不改变原有的数据流向。
例如,在图3中,节点10是属于第一类的特征输入节点,节点8是节点10的下游节点。则可以在节点10和节点8之间增加切分节点,节点10是切分节点的上游节点,节点8是切分节点的下游节点。
该切分节点用于对输入的与用户特征相关联的高维数据进行切分,输出得到的低维数据。得到的低维数据也是与用户特征相关联的数据,低维数据可以采用向量表示,或者低维矩阵表示,这取决于对高维数据切掉的数据条数,被切掉的数据条数可以预先设置。高维数据可以是高维矩阵或其他数据形式。
上述高维数据包含与n条待选推送信息的数量n相同的n条复制数据。例如,高维矩阵包含n行d列,n行都是相同的向量,都等于用户的特征向量。
在一种实施方式中,切分节点的执行逻辑包括:对n条复制数据进行切分,保留n条复制数据中的一条复制数据,得到低维数据。也可以保留多条,这里的多条是比n条少的数量。在保留复制数据时,可以保留上述高维数据中的任意一条,也可以保留第一条。保留第一条时处理速度更快。例如,高维数据的形状为[n,d],经过切分后变成[1,d]。
在步骤S240中,从多个其他节点中确定自身类别为第一类,且其下游节点的类别为第二类的节点,作为用户特征叶节点。
在实施时,可以基于对计算图中节点的类别标记,对其他节点进行遍历和判断,寻找自身类别为第一类,其下游节点的类别为第二类的节点。在判断时,针对任意一个其他节点,可以判断其自身的类别是否为第一类,判断其下游节点的类别是否为第二类。如果判断结果均为是,则将该其他节点确定为用户特征叶节点。如果存在任意一个判断结果为否,则不予以处理。
用户特征叶节点,是在由第一类节点构成的数据流中的最末端叶节点。例如,在图3中,节点10和节点8均是属于第一类的节点。节点10→节点8构成了一段数据流,节点8是这段数据流的最末端叶节点,其下游节点6是第二类节点,因此该节点8可以被作为用户特征叶节点。
在步骤S250中,在用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点。该用户特征叶节点为复制节点的上游节点,该下游节点为复制节点的下游节点。在增加复制节点时,不改变原有的数据流向。
例如,在图3中,节点8是用户特征叶节点,节点8的下游节点是节点6,在节点8和节点6之间增加复制节点。节点8是复制节点的上游节点,节点6是复制节点的下游节点。
该复制节点用于对输入的与用户特征相关联的低维数据进行复制,输出得到的高维数据。这里的高维数据也是与用户特征相关联的数据。
在一种实施方式中,复制节点的执行逻辑包括:将低维数据作为一条数据,将该条数据复制成与n条待选推送信息的数量n相同的n条数据,并将n条数据构建得到高维数据。n是整数。在构建时,可以根据需要,将n条数据作为高维矩阵的n行数据,或者作为n列数据。例如,低维数据的形状为[1,d],经过复制后形成的高维数据的形状为[n,d]。
上述步骤S210~S250可以在线下进行。在完成对计算图的改进后,保存改进后的计算图,并可以将改进后的计算图用于线上的信息推送。
图4为实施例提供的一种信息推送方法的流程示意图。该方法可以通过计算设备执行。该方法包括以下步骤。
步骤S410,接收推送请求。该推送请求用于指示针对第一用户确定多条第一待选推送信息的评分。其中,第一用户是任意一个用户,多条第一待选推送信息是业务为该第一用户确定的待选推送信息。
步骤S420,获取改进了计算图的信息推送模型。该计算图采用图2实施例提供的方法进行了改进。
步骤S430,通过信息推送模型,针对第一用户确定多条第一待选推送信息的评分。针对每一条待选推送信息,信息推送模型均会给出一个评分。该评分体现了对该第一用户推送该条待选推送信息时,第一用户点击该条推送信息的可能性。
在实施时,将第一用户的用户特征以及多条第一待选推送信息的特征输入信息推送模型,通过信息推送模型中的计算图的计算,得到多条第一待选推送信息的评分。
步骤S440,基于该评分,从多条第一待选推送信息中选择相应的第一待选推送信息,向第一用户推送。可以将评分最高的若干条第一待选推送信息推送给第一用户,也可以根据业务需要设定选择规则。
在本实施例中,由于计算图经过了改进,其计算速度会更快更简洁,因此在确定评分时效率也更高,从而提高了为用户进行信息推送时的整体效率。
上述各个实施例中提及的用户或者第一用户,可以使用对应的用户标识来代表。
在上述各个实施例中,不需要修改信息推送模型的开发代码,可以去除推送场景中与用户特征相关的计算中的大量重复计算,降低了对推送请求的响应时间和CPU数量。特别是在复杂的用户表征网络中节省的效果非常明显。
本说明书中,第一类、第一用户和第一待选推送信息等词语中的“第一”,以及文中相应的“第二”(如果有),仅仅是为了区分和描述方便,并不具有任何限定意义。
上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
图5为实施例提供的一种计算图的改进装置的示意性框图。该计算图是信息推送模型的计算图。信息推送模型用于针对用户确定多条待选推送信息的评分,计算图包含多个节点以及表征节点之间数据流向的边。该装置实施例与图2所示方法实施例相对应。该装置500部署在计算设备中,该计算设备可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等来实现。该装置500包括:
获取模块510,配置为获取用户特征和待选推送信息特征;
标记模块520,配置为基于所述用户特征和待选推送信息特征,对所述计算图的特征输入节点和其他节点进行类别标记;标记的类别包括:与所述用户特征相关联的第一类,与所述待选推送信息特征相关联的第二类;
增加模块530,配置为在属于所述第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点;所述切分节点用于对输入的与所述用户特征相关联的高维数据进行切分,输出得到的低维数据;
确定模块540,配置为从多个其他节点中确定自身类别为所述第一类,且其下游节点的类别为所述第二类的节点,作为用户特征叶节点;
复制模块550,配置为在所述用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点;所述复制节点用于对输入的与所述用户特征相关联的低维数据进行复制,输出得到的高维数据。
在一种实施方式中,获取模块510具体配置为:
接收推送请求;
从所述推送请求中获取所述用户特征和所述待选推送信息特征。
在一种实施方式中,标记模块520包括第一标记子模块和第二标记子模块;(图中未示出)
第一标记子模块,配置为基于所述用户特征和所述待选推送信息特征,对所述特征输入节点进行类别标记;
第二标记子模块,配置为基于所述特征输入节点的类别以及节点之间的数据流向,对所述其他节点进行类别标记。
在一种实施方式中,第一标记子模块具体配置为:
当一个所述特征输入节点中的特征仅涉及所述用户特征时,将该特征输入节点标记为所述第一类;
当一个所述特征输入节点中的特征涉及所述待选推送信息特征时,将该特征输入节点标记为所述第二类。
在一种实施方式中,所述特征输入节点中的特征涉及所述待选推送信息特征,包括:
所述特征输入节点中的特征仅涉及所述待选推送信息特征;
所述特征输入节点中的特征涉及所述用户特征和所述待选推送信息特征;
在一种实施方式中,第二标记子模块具体配置为:
当一个所述其他节点的所有上游节点均属于所述第一类时,将该其他节点标记为所述第一类;
当一个所述其他节点的上游节点中包含属于所述第二类的节点时,将该其他节点标记为所述第二类。
在一种实施方式中,第二标记子模块具体配置为:
通过对多个所述其他节点进行的若干次遍历和判断,对多个所述其他节点进行类别标记。
在一种实施方式中,所述高维数据包含与所述多条待选推送信息的数量相同的多条复制数据;所述切分节点的执行逻辑包括:
对所述多条复制数据进行切分,保留所述多条复制数据中的一条复制数据,得到低维数据。
在一种实施方式中,所述复制节点的执行逻辑包括:
将所述低维数据作为一条数据,将该条数据复制成与所述多条待选推送信息的数量相同的多条数据,并将所述多条数据构建得到高维数据。
图6为实施例提供的一种信息推送装置的示意性框图。该装置部署在计算设备中,该计算设备可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等来实现。该装置实施例与图4所示方法实施例相对应。该装置600包括:
接收模块610,配置为接收推送请求,所述推送请求用于指示针对第一用户确定多条第一待选推送信息的评分;
模型模块620,配置为获取改进了计算图的信息推送模型,该计算图采用图2所示方法实施例提供的方法进行了改进;
评分模块630,配置为通过所述信息推送模型,针对所述第一用户确定所述多条第一待选推送信息的评分;
推送模块640,配置为基于所述评分,从所述多条第一待选推送信息中选择相应的第一待选推送信息,向所述第一用户推送。
上述各个装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1至图4任一项所述的方法。
本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图1至图4任一项所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (14)
1.一种信息推送模型的计算图的改进方法,所述信息推送模型用于针对用户确定多条待选推送信息的评分,所述计算图包含多个节点以及表征节点之间数据流向的边;所述方法包括:
获取用户特征和待选推送信息特征;
基于所述用户特征和所述待选推送信息特征,对所述计算图的特征输入节点和其他节点进行类别标记;标记的类别包括:与所述用户特征相关联且不与所述待选推送信息特征相关联的第一类,与所述待选推送信息特征相关联的第二类;
在属于所述第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点;所述切分节点用于对输入的与所述用户特征相关联的高维数据进行切分,输出得到的低维数据;
从多个所述其他节点中确定自身类别为所述第一类,且其下游节点的类别为所述第二类的节点,作为用户特征叶节点;
在所述用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点;所述复制节点用于对输入的与所述用户特征相关联的低维数据进行复制,输出得到的高维数据。
2.根据权利要求1所述的方法,所述获取用户特征和待选推送信息特征的步骤,包括:
接收推送请求;
从所述推送请求中获取所述用户特征和所述待选推送信息特征。
3.根据权利要求1所述的方法,所述对所述计算图的特征输入节点和其他节点进行类别标记的步骤,包括:
基于所述用户特征和所述待选推送信息特征,对所述特征输入节点进行类别标记;
基于所述特征输入节点的类别以及节点之间的数据流向,对所述其他节点进行类别标记。
4.根据权利要求3所述的方法,所述对所述特征输入节点进行类别标记的步骤,包括:
当一个所述特征输入节点中的特征仅涉及所述用户特征时,将该特征输入节点标记为所述第一类;
当一个所述特征输入节点中的特征涉及所述待选推送信息特征时,将该特征输入节点标记为所述第二类。
5.根据权利要求4所述的方法,所述特征输入节点中的特征涉及所述待选推送信息特征,包括:
所述特征输入节点中的特征仅涉及所述待选推送信息特征;和/或,
所述特征输入节点中的特征涉及所述用户特征和所述待选推送信息特征。
6.根据权利要求3所述的方法,所述对所述其他节点进行类别标记的步骤,包括:
当一个所述其他节点的所有上游节点均属于所述第一类时,将该其他节点标记为所述第一类;
当一个所述其他节点的上游节点中包含属于所述第二类的节点时,将该其他节点标记为所述第二类。
7.根据权利要求3所述的方法,所述对所述其他节点进行类别标记的步骤,包括:
通过对多个所述其他节点进行的若干次遍历和判断,对多个所述其他节点进行类别标记。
8.根据权利要求1所述的方法,所述高维数据包含与所述多条待选推送信息的数量相同的多条复制数据;所述切分节点的执行逻辑包括:
对所述多条复制数据进行切分,保留所述多条复制数据中的一条复制数据,得到低维数据。
9.根据权利要求1所述的方法,所述复制节点的执行逻辑包括:
将所述低维数据作为一条数据,将该条数据复制成与所述多条待选推送信息的数量相同的多条数据,并将所述多条数据构建得到高维数据。
10.一种信息推送方法,包括:
接收推送请求,所述推送请求用于指示针对第一用户确定多条第一待选推送信息的评分;
获取改进了计算图的信息推送模型,所述计算图采用权利要求1所述的方法进行了改进;
通过所述信息推送模型,针对所述第一用户确定所述多条第一待选推送信息的评分;
基于所述评分,从所述多条第一待选推送信息中选择相应的第一待选推送信息,向所述第一用户推送。
11.一种信息推送模型的计算图的改进装置,所述信息推送模型用于针对用户确定多条待选推送信息的评分,所述计算图包含多个节点以及表征节点之间数据流向的边;所述装置包括:
获取模块,配置为获取用户特征和待选推送信息特征;
标记模块,配置为基于所述用户特征和待选推送信息特征,对所述计算图的特征输入节点和其他节点进行类别标记;标记的类别包括:与所述用户特征相关联且不与所述待选推送信息特征相关联的第一类,与所述待选推送信息特征相关联的第二类;
增加模块,配置为在属于所述第一类的特征输入节点与其下游节点之间,沿数据流方向增加切分节点;所述切分节点用于对输入的与所述用户特征相关联的高维数据进行切分,输出得到的低维数据;
确定模块,配置为从多个所述其他节点中确定自身类别为所述第一类,且其下游节点的类别为所述第二类的节点,作为用户特征叶节点;
复制模块,配置为在所述用户特征叶节点与其下游节点之间,沿数据流方向增加复制节点;所述复制节点用于对输入的与所述用户特征相关联的低维数据进行复制,输出得到的高维数据。
12.一种信息推送装置,包括:
接收模块,配置为接收推送请求,所述推送请求用于指示针对第一用户确定多条第一待选推送信息的评分;
模型模块,配置为获取改进了计算图的信息推送模型,所述计算图采用权利要求1所述的方法进行了改进;
评分模块,配置为通过所述信息推送模型,针对所述第一用户确定所述多条第一待选推送信息的评分;
推送模块,配置为基于所述评分,从所述多条第一待选推送信息中选择相应的第一待选推送信息,向所述第一用户推送。
13.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项所述的方法。
14.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310652126.6A CN116384473B (zh) | 2023-06-02 | 2023-06-02 | 一种计算图改进、信息推送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310652126.6A CN116384473B (zh) | 2023-06-02 | 2023-06-02 | 一种计算图改进、信息推送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116384473A CN116384473A (zh) | 2023-07-04 |
CN116384473B true CN116384473B (zh) | 2023-08-08 |
Family
ID=86963763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310652126.6A Active CN116384473B (zh) | 2023-06-02 | 2023-06-02 | 一种计算图改进、信息推送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116384473B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377829A (zh) * | 2019-07-24 | 2019-10-25 | 中国工商银行股份有限公司 | 应用于电子设备的功能推荐方法和装置 |
CN110717106A (zh) * | 2019-10-14 | 2020-01-21 | 支付宝(杭州)信息技术有限公司 | 信息推送的方法及装置 |
CN111125574A (zh) * | 2018-10-31 | 2020-05-08 | 北京字节跳动网络技术有限公司 | 用于生成信息的方法和装置 |
CN111428131A (zh) * | 2020-03-17 | 2020-07-17 | 苏宁金融科技(南京)有限公司 | 信息推送方法、装置及系统 |
CN112069398A (zh) * | 2020-08-24 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 一种基于图网络的信息推送方法及装置 |
CN113590936A (zh) * | 2021-07-02 | 2021-11-02 | 支付宝(杭州)信息技术有限公司 | 信息推送的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665225B (zh) * | 2016-07-29 | 2022-01-28 | 北京京东尚科信息技术有限公司 | 信息推送方法和装置 |
-
2023
- 2023-06-02 CN CN202310652126.6A patent/CN116384473B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125574A (zh) * | 2018-10-31 | 2020-05-08 | 北京字节跳动网络技术有限公司 | 用于生成信息的方法和装置 |
CN110377829A (zh) * | 2019-07-24 | 2019-10-25 | 中国工商银行股份有限公司 | 应用于电子设备的功能推荐方法和装置 |
CN110717106A (zh) * | 2019-10-14 | 2020-01-21 | 支付宝(杭州)信息技术有限公司 | 信息推送的方法及装置 |
CN111428131A (zh) * | 2020-03-17 | 2020-07-17 | 苏宁金融科技(南京)有限公司 | 信息推送方法、装置及系统 |
CN112069398A (zh) * | 2020-08-24 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 一种基于图网络的信息推送方法及装置 |
CN113590936A (zh) * | 2021-07-02 | 2021-11-02 | 支付宝(杭州)信息技术有限公司 | 信息推送的方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于知识图谱的深度推荐系统研究;王越群;《中国博士学位论文全文数据库 信息科技辑》;第I138-180页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116384473A (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020207196A1 (zh) | 用户标签生成方法、装置、存储介质和计算机设备 | |
CN110866181B (zh) | 资源推荐的方法、装置及存储介质 | |
US8655737B1 (en) | Brand name synonymy | |
CN111382283B (zh) | 资源类别标签标注方法、装置、计算机设备和存储介质 | |
CN110674144A (zh) | 用户画像生成方法、装置、计算机设备和存储介质 | |
CN114238573B (zh) | 基于文本对抗样例的信息推送方法及装置 | |
CN108665293B (zh) | 特征重要性获取方法及装置 | |
CN113837842A (zh) | 一种基于用户行为数据的商品推荐方法及设备 | |
CN108153792A (zh) | 一种数据处理方法和相关装置 | |
CN111046188A (zh) | 用户偏好度确定方法、装置、电子设备及可读存储介质 | |
CN112989169A (zh) | 目标对象识别方法、信息推荐方法、装置、设备及介质 | |
CN113343091A (zh) | 面向产业和企业的科技服务推荐计算方法、介质及程序 | |
CN113191896A (zh) | 一种招标信息的推荐方法、装置及计算机设备 | |
CN113327132A (zh) | 多媒体推荐方法、装置、设备及存储介质 | |
CN113918807A (zh) | 数据推荐方法、装置、计算设备及计算机可读存储介质 | |
US8577814B1 (en) | System and method for genetic creation of a rule set for duplicate detection | |
US11392751B1 (en) | Artificial intelligence system for optimizing informational content presentation | |
CN116384473B (zh) | 一种计算图改进、信息推送方法及装置 | |
CN115471283B (zh) | 广告批量投放方法、装置、设备及存储介质 | |
CN114282119B (zh) | 一种基于异构信息网络的科技信息资源检索方法及系统 | |
CN115730217A (zh) | 模型的训练方法、物料的召回方法及装置 | |
CN115935082A (zh) | 一种用户冷启动内容推荐方法、计算设备及存储介质 | |
Paul et al. | User-item-based hybrid recommendation system by employing mahout framework | |
CN113656586A (zh) | 情感分类方法、装置、电子设备及可读存储介质 | |
CN112784061A (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 |