模型构建方法和电子设备与流程

文档序号:32522794发布日期:2022-12-13 20:06阅读:93来源:国知局
模型构建方法和电子设备与流程

1.本技术属于人工智能技术领域,具体涉及一种模型构建方法和电子设备。


背景技术:

2.在广告推荐场景中,通常需要通过模型对多个归因节点进行学习。目前对多个归因节点进行学习的模型的构建方法可以采用异构的多专家网络参数共享方式,异构的多专家网络参数共享的模型通常包括多门混合专家算法(multi-gate mixture-of-experts,mmoe)模型和定制闸门控制(customized gate control,cgc)/渐进分层提取(progressive layered extraction,ple)模型。
3.其中,mmoe模型中每个专家网络均与上层所有目标塔连接,且每个目标塔需要利用一个门网络去学习与之连接的不同共享向量的权重,容易造成模型的参数量的迅速增大,模型结构难以训练收敛,模型结构较复杂。cgc/ple模型中采用一个共享专家网络与多个其他专家网络组合,除了共享专家网络与所有目标塔连接外,其他专家网络中每个专家网络只与部分目标塔随机均匀连接,相对于mmoe模型,cgc/ple模型的结构较简单,但专家网络输出的共享向量与目标塔随机均匀连接的方式存在因不相关归因节点而导致负迁移现象的缺陷。可见,相关技术中的模型构建方法往往难以同时满足模型结构简单,且能够缓解负迁移现象的需求。


技术实现要素:

4.本技术实施例的目的是提供一种模型构建方法和电子设备,能够解决模型构建方法往往难以同时满足模型结构简单,且能够缓解负迁移现象的需求的问题。
5.第一方面,本技术实施例提供了一种模型构建方法,该方法包括:
6.根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点,n、m为大于1的整数;
7.构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;
8.构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;
9.构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。
10.第二方面,本技术实施例提供了一种模型构建的装置,装置包括:
11.划分模块,用于根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点,n、m为大于1的整数;
12.第一构建模块,用于构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;
13.第二构建模块,用于构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;
14.第三构建模块,用于构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。
15.第三方面,本技术实施例提供了一种电子设备,该电子设备包括处理器和存储器,存储器存储可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。
16.第四方面,本技术实施例提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。
17.第五方面,本技术实施例提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现如第一方面的方法。
18.第六方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面的方法。
19.在本技术实施例中,电子设备能够根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点;构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。这样,可以基于多个归因节点的关系树来构建专家网络,从而使各归因节点对应的融合模块与至少一个第一专家网络之间的连接关系是以该关系树为依据,换而言之,每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而可以有效缓解负迁移现象。同时,无需每个专家网络与所有归因节点对应的融合模块连接,模型结构更简单。
附图说明
20.图1是本技术实施例提供的模型构建方法的流程示意图;
21.图2是本技术实施例提供的模型构建方法中关系树的一个示意图;
22.图3是本技术实施例提供的模型构建方法中模型的一个示意图;
23.图4是本技术实施例提供的模型构建方法的一个场景实施例流程示意图;
24.图5是本技术实施例提供的模型构建装置的结构示意图;
25.图6是本技术实施例提供的电子设备的结构示意图;
26.图7是本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
27.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本技术保护的范围。
28.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
29.下面结合附图,通过具体的实施例及其应用场景对本技术实施例提供的模型构建方法进行详细地说明。
30.图1是本技术实施例提供的模型构建方法的流程示意图。模型构建方法可以包括:
31.步骤101,根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点,n、m为大于1的整数。
32.在步骤101中,可以预先构建包括多个归因节点的关系树。例如,以广告投放为例,如图2所示,多个归因节点可以包括归因节点1至归因节点13,归因节点1至归因节点13可以分别对应“点击”、“下载”、“游戏注册”、“游戏付费”、“自定义激活”、“次留激活”、“自定义注册”、“自定义付费”、“自定义拉活”、“表单提交”、“网页购买”、“按钮点击”和“游戏预约”等。
33.可以根据这些归因节点的业务分类和业务次序来构建关系树,例如可以将“点击”(即归因节点1)作为该关系树的层级“0”对应的归因节点。然后根据业务分类可分为应用下载类别的归因节点,普通网页类别的归因节点和游戏预约类别的归因节点。然后结合业务次序确定每个类别下的归因节点的层级。
34.例如,应用下载类别下的层级“1”对应的归因节点可以包括“下载”(即归因节点2)和“自定义拉活”(即归因节点9)。然后根据不同的应用程序(application,app),在游戏app下的层级“3”和层级“4”对应的归因节点可以分别为“游戏注册”(即归因节点3)、“游戏付费”(即归因节点4)。应用app下的层级“3”对应的归因节点可以包括“自定义激活”(即归因节点5)、“自定义注册”(即归因节点7)和“自定义付费”(即归因节点8),其中“自定义激活”的链路下还可以包括层级“4”对应的“次留激活”(即归因节点6)。
35.普通网页类别下的层级“1”对应的归因节点可以包括“表单提交”(即归因节点10)、“网页购买”(即归因节点11)和“按钮点击”(即归因节点12)。游戏预约类别下的层级“1”对应的归因节点可以包括“游戏预约”(即归因节点13)。
36.可以理解的是,上述归因节点仅作为一个举例用于理解本技术实施例所提供的技术方案,不作为本技术实施例的具体限定。
37.构建关系树后,可以基于该关系树划分多个归因节点,得到n个归因节点组,每个
归因节点组包括至少m个归因节点。其中,m的取值可以根据经验值进行设定,也可以是基于关系树的层级数确定,例如m可以为4。
38.可以根据业务分类,将关系树中同一类别下的所有归因节点确定为一个归因节点组。还可以根据业务分类和业务次序,将同一归因链路上的归因节点确定为一个归因节点组,如归因节点1至4可以作为一个归因节点组,归因节点1、2、5和6也可以作为一个归因节点组。
39.在一些示例中,还可以将所有归因节点,即归因节点1至13作为其中一个归因节点组。
40.步骤102,构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量。
41.在步骤102中,如图3所示,可以根据归因节点组的数量确定专家网络的数量,以此构建模型的共享向量层。共享向量层可以包括与n个归因节点组一一对应的n个专家网络,每个专家网络可以由一个单层的全连接神经网络组成。
42.专家网络的输入可以为样本,输出可以为固定维度的共享向量。共享向量的维度可以根据实际情况进行设定,如共享向量的维度可以为1024,共享向量mi的表达式可以如公式(1)所示:
[0043][0044]
其中,样本可以是拼接用户、物料、上下文特征等信息,经过特征处理后得到。以广告投放为例,用户可以是指观看广告的用户,物料可以是指广告投放平台、投放形式等场景信息,上下文特征可以是指广告投放频率、权重等特征信息。
[0045]
如图3所示,专家网络1对应的归因节点组可以包括归因节点1至4,则专家网络1在输入样本的情况下,可以输出归因节点1至4的共享向量。
[0046]
在一些示例中,n个专家网络中还可以包括全局专家网络,全局专家网络对应的归因节点组包括所有多个归因节点。如图3所示,n个归因节点组中还可以包括归因节点组6(归因节点1至13),全局专家网络对应归因节点6。
[0047]
这样,可以通过增加一个全局专家网络,其输出的共享向量包含所有归因节点,进一步改善了其他共享向量在训练过程中的过拟合现象。
[0048]
步骤103,构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量。
[0049]
在步骤103中,每个归因节点可以对应构建一个融合模块,向量融合层包括与多个归因节点一一对应的多个融合模块对应。可以根据专家网络对应的归因节点组确定专家网络与融合模块之间的连接关系。示例地,如图3所示,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节
点。
[0050]
例如,融合模块2可以对应归因节点2,则至少一个第一专家网络可以是对应的归因节点组中包括归因节点2的所有专家网络,即专家网络1、专家网络2、专家网络3、专家网络5和全局专家网络。融合模块6可以对应归因节点6,则至少一个第一专家网络可以是对应的归因节点组中包括归因节点6的所有专家网络,即专家网络2和全局专家网络。换而言之,专家网络1对应的归因节点组可以包括归因节点1至4,因此,专家网络1可以与融合模块1(对应归因节点1)、融合模块2(对应归因节点2)、融合模块3(对应归因节点3)和融合模块4(对应归因节点4)。这样,进一步保证了每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而进一步缓解负迁移现象。
[0051]
融合模块可以的输入可以为与其连接的至少一个第一专家网络输出的共享向量,输出为融合向量。融合向量可以是根据各共享向量的权重值与各共享向量的乘积之和计算得到,其中个共享向量的权重值可以是根据对应的归因节点组匹配获取到的,也可以是基于归因节点组中的不同归因节点的层级等特征信息计算得到。
[0052]
步骤104,构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。
[0053]
在步骤104中,如图3所示,还可以构建模型的输出层,可以根据每个归因节点构建一个目标塔,输出层可以包括构建的多个目标塔,目标塔可以与融合模块连接,在将融合模块输出的融合向量输入至目标塔后,目标塔可以输出融合模块对应的归因节点的预测值。该预测值可以是指归因节点的被触发率。例如,若归因节点为“下载”,预测值可以为点击“下载”的概率。
[0054]
在本技术实施例中,模型构建方法能够根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点;构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。这样,可以基于多个归因节点的关系树来构建专家网络,从而使各归因节点对应的融合模块与至少一个第一专家网络之间的连接关系是以该关系树为依据,换而言之,每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而可以有效缓解负迁移现象。同时,无需每个专家网络与所有归因节点对应的融合模块连接,模型结构更简单。
[0055]
可选地,在一些实施例中,上述步骤101之前,模型构建方法还可以包括:
[0056]
获取多个归因节点的业务分类和业务次序;
[0057]
根据业务分类和业务次序,构建包括多个归因节点的关系树,其中,业务分类指示关系树的横向类别关系,业务次序指示关系树的纵向层级关系。
[0058]
在本实施例中,如图2所示,可以获取多个归因节点的业务分类和业务次序,根据业务分类和业务次序来构建关系树。示例地,关系树的横向类别关系可以以业务分类为依据,关系树的纵向层级关系可以以业务次序为依据。
[0059]
如上文所言,参阅图2,可以将“点击”作为该关系树的层级“0”对应的归因节点。应用下载类别下的层级“1”对应的归因节点可以包括“下载”和“自定义拉活”。然后在游戏app下的层级“3”和层级“4”对应的归因节点可以分别为“游戏注册”、“游戏付费”。应用app下的层级“3”对应的归因节点可以包括“自定义激活”“自定义注册”和“自定义付费”,其中“自定义激活”的链路下还可以包括层级“4”对应的“次留激活”。普通网页类别下的层级“1”对应的归因节点可以包括“表单提交”、“网页购买”和“按钮点击”。游戏预约类别下的层级“1”对应的归因节点可以包括“游戏预约”。
[0060]
换而言之,以一个游戏app的广告举例,其归因链路可能为“点击-下载-游戏注册-游戏付费”;以一个应用app的广告举例,其归因链路可能为“点击-下载-自定义激活-次留激活”。
[0061]
本实施例中,根据多个归因节点的业务分类和业务次序来构建包括多个归因节点的关系树,可以直观的体现各归因节点之间的相关性,可以作为后续专家网络与融合模块之间的连接关系的参考依据,从而可以缓解因不相关归因节点而导致的负迁移现象。
[0062]
可选地,在一些实施例中,上述步骤101可以包括:
[0063]
将关系树中同一归因链路上的归因节点确定为一个第一组合;
[0064]
将归因节点的数量大于或等于m的第一组合,确定为一个归因节点组;
[0065]
合并业务分类中的同一类别的第二组合,得到第三组合,第二组合为归因节点的数量小于m的第一组合;
[0066]
将归因节点的数量大于或等于m的第三组合,确定为一个归因节点组;
[0067]
拼接业务次序中的同一层级的第四组合,得到第五组合,第四组合为归因节点的数量小于m的第三组合;
[0068]
将归因节点的数量大于或等于m的第五组合,确定为一个归因节点组;
[0069]
通过业务次序中的同一层级的归因节点对第六组合进行补充,第六组合为归因节点的数量小于m的第五组合;
[0070]
在补充后的第六组合中的归因节点的数量大于或等于m的情况下,将补充后的第六组合确定为一个归因节点组组。
[0071]
在本实施例中,请参阅图2,可以先根据关系树中的归因链路确定第一组合,以此保证同一归因链路上的归因节点组合在同一共享向量层中。例如,可以将同一归因链路上的归因节点确定为一个第一组合,第一组合可以包括:
[0072]
第一组合1(归因节点1至4)、第一组合2(归因节点1、2、5和6)、第一组合3(归因节点1、2和7)、第一组合4(1、2和8)、第一组合5(归因节点1和9)、第一组合6(归因节点1和10)、第一组合7(归因节点1和11)、第一组合8(归因节点1和12)和第一组合9(归因节点1和13)。
[0073]
以m为4为例,可以将归因节点的数量大于或等于4的第一组合确定为一个归因节点组。即第一组合1和第一组合2可以分别确定为归因节点组。
[0074]
可以认为归因节点数量小于4的第一组合为第二组合。即第一组合3至第一组合9均为第二组合。可以合并业务分类中的同一类别的第二组合,得到第三组合。示例地,由于
第一组合3和第一组合4属于应用app这一业务分类,因此可以合并第一组合3和第一组合4,得到第三组合1(归因节点1、2、7和8)。由于第一组合6、第一组合7和第一组合8属于普通网址类别这一业务分类,因此可以合并第一组合6、第一组合7和第一组合8,得到第三组合2(归因节点1、10、11和12)。由于第一组合5、第一组合9没有属于同一类别的其他第二组合,此时可以认为二者的合并对象为空,即可以直接将第一组合5和第一组合9也作为第三组合。
[0075]
可以将归因节点的数量大于或等于m的第三组合确定为一个归因节点组。即第三组合1和第三组合2可以分别确定为归因节点组。
[0076]
可以认为归因节点的数量小于m的第三组合为第四组合。即第一组合5和第一组合9可以为第四组合。然后可以拼接业务次序中的同一层级的第四组合,得到第五组合。由于第一组合5和第一组合9属于同一层级,因此可以拼接第一组合5和第一组合9,得到第五组合1(归因节点1、9和13)。
[0077]
可以将归因节点的数量大于或等于m的第五组合,确定为一个归因节点组,还可以认为归因节点的数量小于m的第五组合为第六组合。由于第五组合1中的归因节点的数量小于4,因此可以认为第五组合1为第六组合,此时可以通过业务次序中的同一层级的归因节点对第六组合进行补充。示例地,可以根据同一层级中的归因节点与待拼接的第六组合中的归因节点的相关性,确定用于补充该第六组合的目标归因节点。例如可以将归因节点2确定为目标归因节点来补充第五组合1,补充后的第六组合包括归因节点1、2、9和13,此时由于归因节点的数量大于或等于m,因此可以将补充后的第六组合确定为一个归因节点组。
[0078]
在上述示例中,n个归因节点组可以包括归因节点组1(归因节点1至4)、归因节点组2(归因节点1、2、5和6)、归因节点组3(归因节点1、2、7和8)、归因节点组4(归因节点1、10、11和12)和归因节点组5(归因节点1、2、9和13)。如图3所示,可以构建与归因节点组1至5一一对应的专家网络1至5。
[0079]
本实施例中,通过合并、拼接以及补充等处理,以保证每个归因节点组中归因节点的数量,有效改善了因归因节点的数量过少,导致共享向量层在训练时容易过拟合的现象。
[0080]
可选地,在一些实施例中,上述各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量,可以包括:
[0081]
各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,执行第一操作,得到融合向量;
[0082]
输出融合向量;
[0083]
其中,第一操作可以包括:
[0084]
获取至少一个第一专家网络中各第一专家网络的权重值;
[0085]
根据权重值和至少一个第一专家网络输出的共享向量,得到融合向量。
[0086]
在本实施例中,可以将至少一个第一专家网络输出的共享向量输出至融合模块中,此时融合模块可以代替门网络机制,获取各第一专家网络的权重值。可以理解的是,获取各第一专家网络的权重值,可以是根据预设权重值与预设归因节点组之间的对应关系,直接匹配最合适的预设权重值作为个第一专家网络的权重值,也可以是基于各第一专家网络对应的归因节点组的一些特征参数计算得到,例如可以根据归因节点组中所包括的归因节点的层级来计算权重值。
[0087]
可以根据权重值和至少一个第一专家网络输出的共享向量,得到融合向量,并输出该融合向量。融合向量m
融合
的计算方法可以如公式(2)所示:
[0088][0089]
其中,w(n,mi)表示共享向量mi与融合模块n连接时的权重值,表示输入融合模块n的共享向量的集合。
[0090]
例如,以融合模块6为例,融合模块6连接专家网络2和全局专家网络,因此结合公式(1)和公式(2),融合模块6输出的融合向量的表达式如公式(3)所示:
[0091][0092]
这样,融合模块可以直接基于权重值和共享向量来输出融合向量,无需通过复杂的门网络去学习,有效减少了模型的参数量,模型结构更简单。
[0093]
可选地,在一些实施例中,上述获取至少一个第一专家网络中各第一专家网络的权重值,可以包括:
[0094]
根据目标融合模块对应的第一归因节点,以及至少一个目标专家网络中各目标专家网络对应的第二归因节点组,确定目标融合模块与各目标专家网络之间的第一距离;
[0095]
根据目标融合模块与各目标专家网络之间的第一距离,计算得到各目标专家网络的权重值;
[0096]
其中,目标融合模块为多个融合模块中的任一融合模块,至少一个目标专家网络与目标融合模块连接。
[0097]
在本实施例中,下文将以目标融合模块为融合模块6,至少一个目标专家网络为专家网络2和全局专家网络为例进行说明。
[0098]
可以根据归因节点6和专家网络2对应的归因节点组2(归因节点1、2、5和6),确定融合模块6与专家网络2之间的第一距离。并根据归因节点6和全局专家网络对应的归因节点组6(归因节点1至13),确定融合模块6与全局专家网络之间的第一距离。其中,第一距离的计算公式如公式(4)所示:
[0099][0100]
其中,d(n,mi)表示融合模块n与共享向量mi的第一距离,d(n,m)表示第一归因节点与第二归因节点组中的任一归因节点的距离,该距离可以基于不同归因节点的层级确定。
[0101]
可以根据目标融合模块与各目标专家网络之间的第一距离,计算得到各目标专家网络的权重值。权重值的计算公式如公式(5)所示:
[0102][0103]
其中,w(n,mi)表示共享向量mi与融合模块n连接时的权重值,表示输入融合模块n的共享向量的集合,d(n,mi)表示融合模块n与共享向量mi的第一距离。
[0104]
这样,各目标专家网络的权重值可以直接基于目标融合模块与各目标专家网络之间的第一距离计算得到,无需通过复杂的门网络去学习,进一步简化了模型。
[0105]
可选地,在一些实施例中,上述根据目标融合模块对应的第一归因节点,以及至少一个目标专家网络中各目标专家网络对应的第二归因节点组,确定目标融合模块与各目标专家网络之间的第一距离,可以包括:
[0106]
根据第一归因节点的层级、第二归因节点组中各第二归因节点的层级,以及第一归因节点与各第二归因节点的最小公共祖先的层级,确定第一归因节点与各第二归因节点之间的第二距离;
[0107]
计算第一归因节点与各第二归因节点之间的第二距离之和,得到目标融合模块与各目标专家网络之间的第一距离。
[0108]
在本实施例中,可以根据第一归因节点的层级、第二归因节点组中各第二归因节点的层级,以及第一归因节点与各第二归因节点的最小公共祖先的层级,确定第一归因节点与各第二归因节点之间的第二距离。第二距离的计算公式如公式(6)所示:
[0109]
d(i,j)=d(root,i)+d(root,j)-2d(root,lca)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0110]
其中,d(i,j)表示归因节点i与归因节点j之间的第二距离,root表示层级,lca表示归因节点i与归因节点j的最小公共祖先。
[0111]
以计算归因节点3与归因节点5的第二距离为例,归因节点3与归因节点5的最小公共祖先为归因节点2,因此:
[0112]
d(3,5)=d(root,3)+d(root,5)-2d(root,2)=2+2-2*1=2
[0113]
可以知道归因节点3与归因节点5的第二距离为2。
[0114]
计算第一归因节点与各第二归因节点之间的第二距离之和,得到目标融合模块与各目标专家网络之间的第一距离。第一距离的计算公式如公式(4)所示,此处不做赘述。
[0115]
基于此,结合公式(4)、(5)和(6),可以计算专家网络2和全局专家网络连接融合模块6时的权重值。
[0116]
专家网络2输出的共享向量m2与融合模块6之间的第一距离为:
[0117]
d(6,m2)=d(6,1)+d(6,2)+d(6,5)+d(6,6)=6
[0118]
全局专家网络输出的共享向量m
share
与融合模块6之间的第一距离为:
[0119]
d(6,m
share
)=d(6,1)+d(6,2)+

+d(6,12)+d(6,13)=39
[0120]
共享向量m2与融合模块6连接时的权重值为:
[0121]
[0122]
共享向量m
share
与融合模块6连接时的权重值为:
[0123][0124]
本实施例中,可以基于层级计算归因节点之间的第二距离,再根据第二距离计算目标融合模块与各目标专家网络之间的第一距离,以此计算得到各目标专家网络的权重值,无需通过复杂的门网络去学习,进一步简化了模型。
[0125]
可选地,在一些实施例中,上述构建输出层之后,模型构建方法还可以包括:
[0126]
构建模型的损失层,损失层包括与多个目标塔一一对应的多个损失函数,各损失函数在输入目标塔输出的预测值,以及样本中的目标塔对应的归因节点的真实值的情况下,输出目标塔的损失值;
[0127]
基于损失值,调整目标塔的连接链路上的神经元参数。
[0128]
在本实施例中,还可以构建模型的损失层,损失层可以包括与多个目标塔一一对应的多个损失函数,其中损失函数可以为交叉熵函数。
[0129]
可以将目标塔输出的预测值与样本中的目标塔对应的归因节点的真实值均输入损失函数中,其中,真实值可以是指归因节点的转化率。例如,若归因节点为“下载”,真实值可以为已经成功“下载”的概率。
[0130]
在一些示例中,可以计算预测值与真实值的乘积,得到损失值,在损失值满足预设门阀阈值的情况下,可以认为模型内部的神经元参数较准确。若损失值不满足预设门阀阈值,则可以基于损失值进行反向传输,不断调整优化目标塔的连接链路上的神经元参数,直至损失值满足条件为止。
[0131]
这样,可以通过损失层的损失值不断优化模型中的神经元参数,有效提高了模型的精度。
[0132]
为了便于理解上述实施例提供的模型构建方法,以下以一个具体的场景实施例对上述模型构建方法进行说明。图4为本技术实施例提供的模型构建方法的一个场景实施例流程示意图。
[0133]
该场景实施例可以包括以下步骤:
[0134]
步骤401,开始。
[0135]
步骤402,构建包括多个归因节点的关系树。示例地,可以基于多各归因节点的业务分类和业务次序构建关系树。
[0136]
步骤403,对多个归因节点进行划分,得到归因节点组。示例地,可以基于同一归因链路对多个归因节点进行分组,并经过组合合并、组合拼接和组合补充等处理,得到归因节点的数量满足要求的归因节点组。
[0137]
步骤404,构建模型的共享向量层。示例地,根据归因节点组的数量确定专家网络的数量,并基于此构建专家网络,形成共享向量层,每个专家网络的输入为样本,输出为固定维度的共享向量。
[0138]
步骤405,构建模型的向量融合层。示例地,为每个归因节点构建一个融合模块,形成向量融合层,并根据关系树确定融合模块与专家网络之间的连接关系,每个融合模块的
输入为与之连接的专家网络输出的共享向量,并计算融合时不同共享向量的权重值,加权合并后输出融合向量。
[0139]
步骤406,构建模型的输出层。每个归因节点构建一个目标塔,即为一个全连接神经网络,目标塔与融合模块对应连接,每个目标塔的输入为与之连接的融合模块输出的融合向量,输出为该归因节点的预测值。
[0140]
步骤407,构建模型的损失层。每个目标塔构建一个损失函数,损失函数的输入为目标塔输出的预测值,以及样本中对应的真实值,输出损失值,损失值用于反向传输,优化模型中的神经元参数。
[0141]
这样,可以基于包括多个归因节点的关系树来构建专家网络,从而使各归因节点对应的融合模块与至少一个第一专家网络之间的连接关系是以该关系树为依据,换而言之,每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而可以有效缓解负迁移现象。同时,无需每个专家网络与所有归因节点对应的融合模块连接,模型结构更简单。
[0142]
本技术实施例提供的模型构建方法,执行主体可以为模型构建装置。本技术实施例中以模型构建装置执行模型构建的方法为例,说明本技术实施例提供的模型构建的装置。
[0143]
如图5所示,本技术实施例提供一种模型构建的装置500,可以包括:
[0144]
划分模块501,用于根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点,n、m为大于1的整数;
[0145]
第一构建模块502,用于构建模型的共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;
[0146]
第二构建模块503,用于构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;
[0147]
第三构建模块504,用于构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。
[0148]
这样,可以基于多个归因节点的关系树来构建专家网络,从而使各归因节点对应的融合模块与至少一个第一专家网络之间的连接关系是以该关系树为依据,换而言之,每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而可以有效缓解负迁移现象。同时,无需每个专家网络与所有归因节点对应的融合模块连接,模型结构更简单。
[0149]
可选地,在一些实施例中,模型构建装置504还可以包括:
[0150]
第四构建模块,用于构建模型的损失层,损失层包括与多个目标塔一一对应的多个损失函数,各损失函数在输入目标塔输出的预测值,以及样本中的目标塔对应的归因节点的真实值的情况下,输出目标塔的损失值;
[0151]
基于损失值,调整目标塔的连接链路上的神经元参数。
[0152]
这样,可以通过损失层的损失值不断优化模型中的神经元参数,有效提高了模型的精度。
[0153]
可选地,在一些实施例中,上述第二构建模块503,还可以用于:
[0154]
各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,执行第一操作,得到融合向量;
[0155]
输出融合向量;
[0156]
其中,第一操作可以包括:
[0157]
获取至少一个第一专家网络中各第一专家网络的权重值;
[0158]
根据权重值和至少一个第一专家网络输出的共享向量,得到融合向量。
[0159]
这样,融合模块可以直接基于权重值和共享向量来输出融合向量,无需通过复杂的门网络去学习,有效减少了模型的参数量,模型结构更简单。
[0160]
可选地,在一些实施例中,上述第二构建模块503,还可以用于:
[0161]
根据目标融合模块对应的第一归因节点,以及至少一个目标专家网络中各目标专家网络对应的第二归因节点组,确定目标融合模块与各目标专家网络之间的第一距离;
[0162]
根据目标融合模块与各目标专家网络之间的第一距离,计算得到各目标专家网络的权重值;
[0163]
其中,目标融合模块为多个融合模块中的任一融合模块,至少一个目标专家网络与目标融合模块连接。
[0164]
这样,各目标专家网络的权重值可以直接基于目标融合模块与各目标专家网络之间的第一距离计算得到,无需通过复杂的门网络去学习,进一步简化了模型。
[0165]
可选地,在一些实施例中,上述第二构建模块503,还可以用于:
[0166]
根据第一归因节点的层级、第二归因节点组中各第二归因节点的层级,以及第一归因节点与各第二归因节点的最小公共祖先的层级,确定第一归因节点与各第二归因节点之间的第二距离;
[0167]
计算第一归因节点与各第二归因节点之间的第二距离之和,得到目标融合模块与各目标专家网络之间的第一距离。
[0168]
本实施例中,可以基于层级计算归因节点之间的第二距离,再根据第二距离计算目标融合模块与各目标专家网络之间的第一距离,以此计算得到各目标专家网络的权重值,无需通过复杂的门网络去学习,进一步简化了模型。
[0169]
可选地,在一些实施例中,模型构建装置500还可以包括:
[0170]
获取模块,用于获取多个归因节点的业务分类和业务次序;
[0171]
关系树构建模块,用于根据业务分类和业务次序,构建包括多个归因节点的关系树,其中,业务分类指示关系树的横向类别关系,业务次序指示关系树的纵向层级关系。
[0172]
本实施例中,根据多个归因节点的业务分类和业务次序来构建包括多个归因节点的关系树,可以直观的体现各归因节点之间的相关性,可以作为后续专家网络与融合模块之间的连接关系的参考依据,从而可以缓解因不相关归因节点而导致的负迁移现象。
[0173]
可选地,在一些实施例中,划分模块501还可以用于:
[0174]
将关系树中同一归因链路上的归因节点确定为一个第一组合;
[0175]
将归因节点的数量大于或等于m的第一组合,确定为一个归因节点组;
[0176]
合并业务分类中的同一类别的第二组合,得到第三组合,第二组合为归因节点的数量小于m的第一组合;
[0177]
将归因节点的数量大于或等于m的第三组合,确定为一个归因节点组;
[0178]
拼接业务次序中的同一层级的第四组合,得到第五组合,第四组合为归因节点的数量小于m的第三组合;
[0179]
将归因节点的数量大于或等于m的第五组合,确定为一个归因节点组;
[0180]
通过业务次序中的同一层级的归因节点对第六组合进行补充,第六组合为归因节点的数量小于m的第五组合;
[0181]
在补充后的第六组合中的归因节点的数量大于或等于m的情况下,将补充后的第六组合确定为一个归因节点组。
[0182]
本实施例中,通过合并、拼接以及补充等处理,以保证每个归因节点组中归因节点的数量,有效改善了因归因节点的数量过少,导致共享向量层在训练时容易过拟合的现象。
[0183]
本技术实施例中的模型构建装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(mobile internet device,mid)、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,还可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本技术实施例不作具体限定。
[0184]
本技术实施例中的模型构建装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本技术实施例不作具体限定。
[0185]
本技术实施例提供的模型构建装置能够实现图1至图4的方法实施例实现的各个过程,为避免重复,这里不再赘述。
[0186]
可选地,如图6所示,本技术实施例还提供一种电子设备600,包括处理器601和存储器602,存储器602上存储有可在所述处理器601上运行的程序或指令,该程序或指令被处理器601执行时实现上述模型构建方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0187]
需要说明的是,本技术实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
[0188]
图7为实现本技术实施例的一种电子设备的硬件结构示意图。
[0189]
该电子设备700包括但不限于:射频单元701、网络模块702、音频输出单元703、输入单元704、传感器705、显示单元706、用户输入单元707、接口单元708、存储器709、以及处理器710等部件。
[0190]
本领域技术人员可以理解,电子设备700还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器710逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图7中示出的电子设备结构并不构成对电子设备的限
定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
[0191]
其中,处理器710可以用于:
[0192]
根据包括多个归因节点的关系树,划分多个归因节点,得到n个归因节点组,每个归因节点组包括至少m个归因节点,n、m为大于1的整数;
[0193]
构建模型共享向量层,共享向量层包括与n个归因节点组一一对应的n个专家网络,各专家网络在输入样本的情况下,输出各专家网络对应的归因节点组的共享向量;
[0194]
构建模型的向量融合层,向量融合层包括与多个归因节点一一对应的多个融合模块,各融合模块连接至少一个第一专家网络,第一专家网络对应的归因节点组中包括与第一专家网络连接的融合模块对应的归因节点,各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,输出融合向量;
[0195]
构建模型的输出层,输出层包括多个目标塔,多个目标塔与多个融合模块一一对应连接,各目标塔在输入融合模块输出的融合向量的情况下,输出融合模块对应的归因节点的预测值。
[0196]
这样,可以基于多个归因节点的关系树来构建专家网络,从而使各归因节点对应的融合模块与至少一个第一专家网络之间的连接关系是以该关系树为依据,换而言之,每个专家网络输出的共享向量能够输入至具有相关性的一些归因节点对应的融合模块中,从而可以有效缓解负迁移现象。同时,无需每个专家网络与所有归因节点对应的融合模块连接,模型结构更简单。
[0197]
可选地,在一些实施例中,处理器710可以用于:
[0198]
构建模型的损失层,损失层包括与多个目标塔一一对应的多个损失函数,各损失函数在输入目标塔输出的预测值,以及样本中的目标塔对应的归因节点的真实值的情况下,输出目标塔的损失值;
[0199]
基于损失值,调整目标塔的连接链路上的神经元参数。
[0200]
这样,可以通过损失层的损失值不断优化模型中的神经元参数,有效提高了模型的精度。
[0201]
可选地,在一些实施例中,处理器710可以用于:
[0202]
各融合模块在输入至少一个第一专家网络输出的共享向量的情况下,执行第一操作,得到融合向量;
[0203]
输出融合向量;
[0204]
其中,第一操作可以包括:
[0205]
获取至少一个第一专家网络中各第一专家网络的权重值;
[0206]
根据权重值和至少一个第一专家网络输出的共享向量,得到融合向量。
[0207]
这样,融合模块可以直接基于权重值和共享向量来输出融合向量,无需通过复杂的门网络去学习,有效减少了模型的参数量,模型结构更简单。
[0208]
可选地,在一些实施例中,处理器710可以用于:
[0209]
根据目标融合模块对应的第一归因节点,以及至少一个目标专家网络中各目标专家网络对应的第二归因节点组,确定目标融合模块与各目标专家网络之间的第一距离;
[0210]
根据目标融合模块与各目标专家网络之间的第一距离,计算得到各目标专家网络
的权重值;
[0211]
其中,目标融合模块为多个融合模块中的任一融合模块,至少一个目标专家网络与目标融合模块连接。
[0212]
这样,各目标专家网络的权重值可以直接基于目标融合模块与各目标专家网络之间的第一距离计算得到,无需通过复杂的门网络去学习,进一步简化了模型。
[0213]
可选地,在一些实施例中,处理器710可以用于:
[0214]
根据第一归因节点的层级、第二归因节点组中各第二归因节点的层级,以及第一归因节点与各第二归因节点的最小公共祖先的层级,确定第一归因节点与各第二归因节点之间的第二距离;
[0215]
计算第一归因节点与各第二归因节点之间的第二距离之和,得到目标融合模块与各目标专家网络之间的第一距离。
[0216]
本实施例中,可以基于层级计算归因节点之间的第二距离,再根据第二距离计算目标融合模块与各目标专家网络之间的第一距离,以此计算得到各目标专家网络的权重值,无需通过复杂的门网络去学习,进一步简化了模型。
[0217]
可选地,在一些实施例中,射频单元701可以用于:获取多个归因节点的业务分类和业务次序;
[0218]
处理器710可以用于:根据业务分类和业务次序,构建包括多个归因节点的关系树,其中,业务分类指示关系树的横向类别关系,业务次序指示关系树的纵向层级关系。
[0219]
本实施例中,根据多个归因节点的业务分类和业务次序来构建包括多个归因节点的关系树,可以直观的体现各归因节点之间的相关性,可以作为后续专家网络与融合模块之间的连接关系的参考依据,从而可以缓解因不相关归因节点而导致的负迁移现象。
[0220]
可选地,在一些实施例中,处理器710可以用于:
[0221]
将关系树中同一归因链路上的归因节点确定为一个第一组合;
[0222]
将归因节点的数量大于或等于m的第一组合,确定为一个归因节点组;
[0223]
合并业务分类中的同一类别的第二组合,得到第三组合,第二组合为归因节点的数量小于m的第一组合;
[0224]
将归因节点的数量大于或等于m的第三组合,确定为一个归因节点组;
[0225]
拼接业务次序中的同一层级的第四组合,得到第五组合,第四组合为归因节点的数量小于m的第三组合;
[0226]
将归因节点的数量大于或等于m的第五组合,确定为一个归因节点组;
[0227]
通过业务次序中的同一层级的归因节点对第六组合进行补充,第六组合为归因节点的数量小于m的第五组合;
[0228]
在补充后的第六组合中的归因节点的数量大于或等于m的情况下,将补充后的第六组合确定为一个归因节点组。
[0229]
本实施例中,通过合并、拼接以及补充等处理,以保证每个归因节点组中归因节点的数量,有效改善了因归因节点的数量过少,导致共享向量层在训练时容易过拟合的现象。
[0230]
应理解的是,本技术实施例中,输入单元704可以包括图形处理器(graphics processing unit,gpu)7041和麦克风7042,图形处理器7041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元
706可包括显示面板7061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板7061。用户输入单元707包括触控面板7071以及其他输入设备7072中的至少一种。触控面板7071,也称为触摸屏。触控面板7071可包括触摸检测装置和触摸控制器两个部分。其他输入设备7072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0231]
存储器709可用于存储软件程序以及各种数据。存储器709可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器709可以包括易失性存储器或非易失性存储器,或者,存储器709可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。本技术实施例中的存储器709包括但不限于这些和任意其它适合类型的存储器。
[0232]
处理器710可包括一个或多个处理单元;可选的,处理器710集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器710中。
[0233]
本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述模型构建方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0234]
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器rom、随机存取存储器ram、磁碟或者光盘等。
[0235]
本技术实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述模型构建方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0236]
应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0237]
本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述模型构建方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0238]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有
的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0239]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
[0240]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1