组件分类模型训练方法及装置与流程

未命名 07-12 阅读:94 评论:0


1.本说明书涉及机器学习技术领域,特别涉及组件分类模型训练方法及装置。


背景技术:

2.随着互联网技术的发展,越来越多的业务开始线上化,而伴随着业务线上化,各类应用程序和网页作为承载业务与用户进行交互的桥梁,被业务提供方设计的更加美观和方便;在针对应用程序或者网页中的组件进行设计时,设计师为了在做ui设计的过程中,为了能够保持设计一致性,提高生产效率和管理设计系统等目的,通常需要统一构建组件库,并且可以和其他设计师共享组件库,从而能够提高组件设计效率,以及更加方便管理设计好的组件。然而,在设计好的组件落库时,需要对组件进行识别和分类后才能够完成存储,现有技术中,识别和分类大多数采用人工手动,不仅效率低下,且会耗费更多的时间和人力资源,因此亟需一种有效的方案以解决上述问题。


技术实现要素:

3.有鉴于此,本说明书实施例提供了一种组件分类模型训练方法。本说明书同时涉及一种组件分类模型训练装置,一种组件分类方法,一种组件分类装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
4.根据本说明书实施例的第一方面,提供了一种组件分类模型训练方法,包括:
5.获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;
6.针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;
7.将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;
8.基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
9.可选地,所述获取组件结构树,包括:
10.获取样本对象对应的初始组件结构树;
11.按照所述初始组件分类模型的训练策略,对所述初始组件结构树进行结构检测;
12.在结构检测结果满足预设结构检测条件的情况下,将所述初始组件结构树作为所述组件结构树;
13.在结构检测结果不满足预设结构检测条件的情况下,对所述初始组件结构树进行切分,根据切分结果确定所述组件结构树。
14.可选地,所述针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,包括:
15.根据所述组件结构树中组件节点包含的组件属性信息,确定所述组件结构树中各个组件节点对应的节点属性类型;
16.按照所述节点属性类型针对所述组件结构树中各个组件节点选择更新策略,并利用所述更新策略对各个组件节点包含的组件属性信息进行更新;
17.对所述组件结构树中组件节点包含的更新后的组件属性信息进行遍历,根据遍历结果生成记录更新后的组件属性信息的组件表格。
18.可选地,所述根据遍历结果生成记录更新后的组件属性信息的组件表格,包括:
19.根据遍历结果生成记录更新后的组件属性信息的初始组件表格;
20.按照所述初始组件分类模型的模型训练策略,在所述初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;
21.根据插入结果生成记录更新后的组件属性信息的组件表格。
22.可选地,所述对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量,包括:
23.针对所述组件表格中每行表格对应的组件属性信息分别进行嵌入处理,获得每行表格分别对应的子组件嵌入向量;
24.对每行表格对应的子组件嵌入向量进行合并,获得所述组件嵌入向量。
25.可选地,所述组件表格中任意目标行表格对应的子组件嵌入向量的确定,包括:
26.在所述组件表格中确定目标行表格对应的目标组件属性信息,并在所述目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;
27.通过对所述顺序标识信息、所述层级标识信息、所述文本信息和所述特征信息分别进行嵌入处理,获得顺序标识向量、层级标识向量、文本向量和特征向量;
28.对所述顺序标识向量、所述层级标识向量、所述文本向量和所述特征向量进行拼接,获得所述目标行表格对应的子组件嵌入向量。
29.可选地,所述将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息,包括:
30.将所述组件嵌入向量输入至所述初始组件分类模型,通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量;
31.基于所述组件编码向量确定隐藏状态向量,并将所述隐藏状态向量作为组件分类向量;
32.通过所述初始组件分类模型中的解码器对所述组件分类向量进行解码处理,获得所述组件结构树中组件节点对应的预测组件分类信息。
33.可选地,所述通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量,包括:
34.利用所述初始组件分类模型中的编码器对所述嵌入编码向量和权重矩阵进行计算,获得查询向量、键向量和值向量;
35.根据所述查询向量、所述键向量和所述值向量进行相似度分值计算,根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。
36.可选地,所述基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型,包括:
37.获取所述组件结构树中组件节点对应的基准组件分类信息;
38.根据交叉熵损失函数对所述基准组件分类信息和所述预测组件分类信息进行计算,获得目标损失值;
39.利用所述目标损失值对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
40.根据本说明书实施例的第二方面,提供了一种组件分类方法,包括:
41.获取目标对象对应的目标组件结构树;
42.将所述目标组件结构树输入至上述方法中的组件分类模型进行处理,获得所述目标组件结构树中各个目标组件节点对应的组件类型信息;
43.根据所述组件类型信息对所述目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。
44.根据本说明书实施例的第三方面,提供了一种组件分类模型训练装置,包括:
45.获取模块,被配置为获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;
46.重构模块,被配置为针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;
47.处理模块,被配置为将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;
48.调参模块,被配置为基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
49.根据本说明书实施例的第四方面,提供了一种组件分类装置,包括:
50.获取结构树模块,被配置为获取目标对象对应的目标组件结构树;
51.输入模型模块,被配置为将所述目标组件结构树输入至上述方法中的组件分类模型进行处理,获得所述目标组件结构树中各个目标组件节点对应的组件类型信息;
52.分类组件模块,被配置为根据所述组件类型信息对所述目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。
53.根据本说明书实施例的第五方面,提供了一种计算设备,包括:
54.存储器和处理器;
55.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令时实现所述组件分类模型训练方法或者组件分类方法的步骤。
56.根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述组件分类模型训练方法或者组件分类方法的步骤。
57.本说明书提供的组件分类模型训练方法,为了能够提高组件分类效率,可以构建能够针对组件进行识别和分类的初始组件分类模型,此后可以先获取组件结构树,且组件结构树中的组件节点包含组件属性信息,此时可以针对组件结构树进行重构,以获得记录组件属性信息的组件表格,此时再针对组件表格中记录的组件属性信息进行嵌入处理,即可得到组件结构树对应的组件嵌入向量;进一步的,再将组件嵌入向量输入至初始组件分类模型,进行处理,即可得到组件结构树中组件节点对应的预测组件分类信息,再基于组件
结构树中组件节点对应的基准组件分类信息和预测组件分类信息,对初始组件分类模型进行调参,即可完成一次的训练,以此类推,直至获得满足训练停止条件的组件分类模型即可。实现通过建模的方式对组件进行分类,可以有效的提高组件识别和分类效率,从而方便下游业务使用。
附图说明
58.图1是本说明书一实施例提供的一种组件分类模型训练方法的示意图;
59.图2是本说明书一实施例提供的一种组件分类模型训练方法的流程图;
60.图3是本说明书一实施例提供的一种组件分类模型训练方法中组件结构树的示意图;
61.图4是本说明书一实施例提供的一种组件分类方法的流程图;
62.图5是本说明书一实施例提供的一种组件分类方法的处理流程图;
63.图6是本说明书一实施例提供的一种组件分类模型训练装置的结构示意图;
64.图7是本说明书一实施例提供的一种组件分类装置的结构示意图;
65.图8是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
66.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
67.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
68.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
69.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
70.transformer模型:一种深度学习模型,采用注意机制,对输入数据每个部分的重要性进行微分加权,广泛应用于各项自然语言处理任务。
71.在本说明书中,提供了一种组件分类模型训练方法,本说明书同时涉及一种组件分类模型训练装置,一种组件分类方法,一种组件分类装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
72.参见图1所示的示意图,本说明书提供的组件分类模型训练方法,为了能够提高组件分类效率,可以构建能够针对组件进行识别和分类的初始组件分类模型,此后可以先获取组件结构树,且组件结构树中的组件节点包含组件属性信息,此时可以针对组件结构树
进行重构,以获得记录组件属性信息的组件表格,此时再针对组件表格中记录的组件属性信息进行嵌入处理,即可得到组件结构树对应的组件嵌入向量;进一步的,再将组件嵌入向量输入至初始组件分类模型,进行处理,即可得到组件结构树中组件节点对应的预测组件分类信息,再基于组件结构树中组件节点对应的基准组件分类信息和预测组件分类信息,对初始组件分类模型进行调参,即可完成一次的训练,以此类推,直至获得满足训练停止条件的组件分类模型即可。实现通过建模的方式对组件进行分类,可以有效的提高组件识别和分类效率,从而方便下游业务使用。
73.图2示出了根据本说明书一实施例提供的一种组件分类模型训练方法的流程图,具体包括以下步骤:
74.步骤s202,获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息。
75.本实施例提供的组件分类模型训练方法训练好的组件分类模型,可以对任意设计完成的组件进行类型识别,以方便将识别完成类型的组件写入到组件库,以方便在应用阶段,可以按照类型选择相关联的组件使用。其中,组件是指一种可重复使用的元素,用于在用户交互页面中插入使用,包括但不限于文本框、形状、图标、可触控按钮等各种设计元素,本实施例在此不作任何限定。
76.实际应用中,设计师通常会在组件设计稿上完成组件的设计,并在设计完成后会将其写入组件库,以方便在用户交互页面设计时可以复用,而在设计阶段,一张设计稿中可能包含多个设计好的组件,且设计好的组件一般都存在嵌入关系或者关联关系,即多个组件可能为需要配合使用的组件,比如商品加入购物车的页面设计时,通常设计师会同时设计商品信息展示组件、商品价格展示组件、加入购物车组件、购买组件等,而这些组件是具有层级关系的,为了方便在应用时可以选择一个或多个使用,需要将设计好的组件按照层级关系构建出结构树,之后再依照结构树的结构信息写入组件库进行持久化。但是在构建出结构树后,写入数据时通常需要通过人工完成组件类别的确定,会消耗大量的人力资源。为节省人力资源,且提高组件的分类效率,本实施例提供的组件分类模型训练方法,实现针对组件分类任务建模,利用建模并训练好的组件分类模型代替人工完成组件分类,可以有效的提高组件识别和分类效率,从而方便下游业务使用。
77.具体的,组件结构树具体是指用于训练初始组件分类模型的样本,其根据设计稿中包含的组件对应的层级关系构建,每个组件节点为一个图层对应的组件构建的节点,且各个组件节点中包含组件属性信息,用于记录组件节点对应的组件的属性;相应的,组件属性信息具体是指组件节点对应的组件的属性描述信息,包括组件类型、组件属性值、组件层级关系等。
78.基于此,在模型训练阶段,为了能够提高模型识别精度,且能够同时完成对设计稿中包含的全部组件进行类型识别,可以先获取作为样本的组件结构树,且组件结构树中组件节点包含着组件对应的组件属性信息,方便后续以组件属性信息出发完成模型训练。
79.进一步的,考虑到模型训练阶段获取到的组件结构树可能并非能够直接应用的结构树,因此可以对获取到的初始组件结构树进行切分,以得到满足条件的组件结构树使用;本实施例中,具体实现方式如下:
80.获取样本对象对应的初始组件结构树;按照所述初始组件分类模型的训练策略,
对所述初始组件结构树进行结构检测;在结构检测结果满足预设结构检测条件的情况下,将所述初始组件结构树作为所述组件结构树;在结构检测结果不满足预设结构检测条件的情况下,对所述初始组件结构树进行切分,根据切分结果确定所述组件结构树。
81.具体的,样本对象具体是指样本组件设计稿,相应的,初始组件结构树具体是指基于样本组件设计稿生成的组件结构树;相应的,训练策略具体是指初始组件分类模型训练阶段需要遵守的策略,用于限制模型输入内容的尺寸大小。相应的,预测结构检测条件具体是指检测初始组件结构树是否能够直接用于模型训练的条件,避免出现初始结构树层级太多,而超过模型预测上限,无法使用的问题发生。
82.基于此,在获取样本对象对应的初始组件结构树后,为了避免出现初始组件结构树无法使用的问题,可以先按照初始组件分类模型的训练策略,对初始组件结构树进行结构检测;在结构检测结果满足预设结构检测条件的情况下,说明初始组件结构树可以直接使用,则将初始组件结构树作为组件结构树即可;在结构检测结果不满足预设结构检测条件的情况下,说明初始组件结构树尺寸太大,无法直接使用,因此可以先对初始组件结构树进行切分,以实现根据切分结果确定组件结构树。实际应用中,在切分初始组件结构树时,可以根据实际需求选择切分点,本实施例在此不作任何限定。
83.比如,参见图3中(a)所示的组件结构树,其根节点为root,根节点下有三个孩子节点,分别为c1_1,c1_2,c1_3,而c1_3下还有c2_1节点,c2_1下还有c3_1节点,当确定该组件结构树尺寸太大时,可以选择c1_3节点为切分点,之后对该组件结构树进行切分,得到新的组件结构树中,c1_3节点为跟节点,其孩子节点为c2_1节点,c2_1的孩子节点为c3_1节点,以用于下游业务使用。
84.综上,在获取到初始组件结构树之后,为了能够方便下游业务使用,可以根据实际需求对组件结构树进行切分,从而得到能够训练模型使用的组件结构树,以提高模型训练精度。
85.步骤s204,针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量。
86.具体的,在上述获取到组件结构树,且组件结构树中的组件节点包含组件属性信息后,进一步的,为了能够在模型训练阶段,可以使模型学习到结合组件结构树中组件节点之间的层级关系完成组件分类,此时可以先对组件结构树进行重构,以得到记录组件属性信息的组件表格,实现将组件节点对应组件的组件属性信息,都记录在组件表格中,此后表格为基础,对表格中记录的组件属性信息进行嵌入处理,得到对应组件结构树的组件嵌入向量,以方便下游业务使用组件结构树的组件嵌入向量对初始组件分类模型进行训练,使得模型可以学习到组件层级关系,以及组件之间的依赖关系,以提高组件分类模型的组件分类精准度。
87.其中,组件表格具体是指每行对应每个组件节点,每行中的每列记录组件属性信息的表格;相应的,嵌入处理具体是指将组件表格中的组件属性信息转换为低维向量的处理,用于后续可以输入模型完成预测。
88.进一步的,在进行组件结构树重构时,实则是对不同类型的组件属性信息进行更新,以得到能够记录到表格中的组件属性信息;本实施例中,具体实现方式如下:
89.根据所述组件结构树中组件节点包含的组件属性信息,确定所述组件结构树中各
个组件节点对应的节点属性类型;按照所述节点属性类型针对所述组件结构树中各个组件节点选择更新策略,并利用所述更新策略对各个组件节点包含的组件属性信息进行更新;对所述组件结构树中组件节点包含的更新后的组件属性信息进行遍历,根据遍历结果生成记录更新后的组件属性信息的组件表格。
90.具体的,节点属性类型具体是指组件节点对应的类型,包括但不限于文本类型、数字类型和枚举类型;相应的,选择更新策略具体是指结合节点属性类型选择的策略,用于将枚举类型转换为数字类型,数字类型和文本类型不变。
91.基于此,在获取到组件结构树之后,为了能够将其用于训练初始组件分类模型,可以先根据组件结构树中组件节点包含的组件属性信息,确定组件结构树中各个组件节点对应的节点属性类型;之后再按照节点属性类型针对组件结构树中各个组件节点选择更新策略,用于实现针对文本类型和数字类型的组件节点选择不变更策略,针对枚举类型的组件节点选择变更为数字类型的策略,之后再利用更新策略对各个组件节点包含的组件属性信息进行更新;即可实现将组件节点的类型都转换为文本类型和数字类型,避免枚举类型导致记录更复杂信息的问题发生,此后再对组件结构树中组件节点包含的更新后的组件属性信息进行遍历,即可根据遍历结果生成记录更新后的组件属性信息的组件表格。
92.综上,通过将组件节点的类型统一为方便记录的类型,可以方便在生成组件表格时,通过每行记录每个组件节点对应的组件属性信息,以方便后续生成嵌入向量使用。
93.更进一步的,在遍历完成后,为了能够在模型训练阶段可以融合组件层级关系和组件依赖关系,充分使得模型学习该能力,从而提高模型训练精度,可以在表格中插入新的列;本实施例中,具体实现方式如下:
94.根据遍历结果生成记录更新后的组件属性信息的初始组件表格;按照所述初始组件分类模型的模型训练策略,在所述初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;根据插入结果生成记录更新后的组件属性信息的组件表格。
95.具体的,初始组件表格具体是指根据更新后的组件属性信息生成的组件表格,其仅记录各个表格的自身属性,并未记录节点之间的层级关系;相应的,模型训练策略具体是指训练模型时需要使用的信息策略,用于在样本预处理阶段,可以将样本处理为满足模型训练需求的组件表格;相应的,组件节点层级信息具体是指记录组件结构树中组件节点之间层级关系的信息;相应的,组件节点顺序信息具体是指用于记录组件结构树中组件节点先后遍历顺序的信息。
96.基于此,在对组件结构树中组件节点包含的更新后的组件属性信息进行遍历后,可以先根据遍历结果生成记录更新后的组件属性信息的初始组件表格;此时考虑到表格中并未记录节点之间的层级关系和顺序关系,而该关系是训练模型可以结合上下文完成组件分类的基础,因此可以按照初始组件分类模型的模型训练策略,在初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;实现根据插入结果生成记录更新后的组件属性信息的组件表格。
97.沿用上例,在得到如图3中(a)所示的组件结构树后,可以确定,该组件结构树中的根节点为root节点,根节点下有三个孩子节点,分别为c1_1,c1_2,c1_3,而c1_3下还有c2_1节点,c2_1下还有c3_1节点,每个组件节点对应各自的属性列表,并确定组件节点涉及三种类型,分别为文本类型、数字类型和枚举类型。其中,文本类型的属性信息可以直接保留在
text属性字段中,同理,数字类型的属性信息也可以直接保留。而枚举类型的属性信息则需要向数字类型进行映射,当原始属性attr_t的取值为(min,middle,max)三个中的一个,将其与数字一一对应后,可以得到属性map={min:1,middle:2,max:3},实现将枚举类型变为数字类型。
98.此时,每个组件节点都会有相应的属性列表,除根节点为,各个孩子节点的命名规则可以按照c{level}_{order}完成,即确定各个组件节点的命名以及属性列表如图3中(a)所示,其中,c1_2表示组件结构树中第一层(level)的第2个(order)节点,同理,其他节点的解释均可参见c1_2的解释,本实施例在此不作限定。
99.进一步的,在得到处理好属性信息的组件结构树后,可以采用广度优先遍历算法,实现按照广度优先遍历的顺序,将组件结构树转换为组件表格,用于实现对如图3中(a)所示的组件结构树进行遍历后,得到如下表(1)所示的组件表格,其中,组件表格中的每一行对应一个组件节点,每一列对应一个维度的属性信息:
[0100][0101][0102]
(1)
[0103]
其中,nid列记录组件节点标识,pid列记录组件节点所在组件结构树中的层级,oid列记录组件节点的唯一全局顺序id,通过pid和oid可以保留原始组件结构树中的层级信息。text列记录组件节点属性列表中的文本内容,attr_1-attr_n列记录组件节点在不同维度属性信息,方便后续使用如表(1)所示的组件表格进行嵌入处理后,用于组件分类模型的训练。
[0104]
综上,通过将组件结构树重构为组件表格,可以实现通过组件表格记录组件节点之间的层次信息和全局顺序信息,以方便后续构建嵌入向量后,也记录该信息,实现在模型训练阶段可以学习,从而提高模型预测精度。
[0105]
在得到组件表格后,实则是对组件表格中每行表格分别进行嵌入处理,从而得到组件结构树对应的组件嵌入向量;本实施例中,具体实现方式如下:
[0106]
针对所述组件表格中每行表格对应的组件属性信息分别进行嵌入处理,获得每行
表格分别对应的子组件嵌入向量;对每行表格对应的子组件嵌入向量进行合并,获得所述组件嵌入向量。
[0107]
具体的,子组件嵌入向量具体是指组件表格中每行表格对应的组件属性信息进行嵌入处理后得到的向量表达。基于此,在得到记录组件属性信息的组件表格后,可以针对组件表格中每行表格对应的组件属性信息分别进行嵌入处理,从而获得每行表格分别对应的子组件嵌入向量;之后再对每行表格对应的子组件嵌入向量进行合并,即可获得组件结构树对应的组件嵌入向量,以方便下游业务使用。
[0108]
其中,组件表格中任意目标行表格对应的子组件嵌入向量的确定,包括:在所述组件表格中确定目标行表格对应的目标组件属性信息,并在所述目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;通过对所述顺序标识信息、所述层级标识信息、所述文本信息和所述特征信息分别进行嵌入处理,获得顺序标识向量、层级标识向量、文本向量和特征向量;对所述顺序标识向量、所述层级标识向量、所述文本向量和所述特征向量进行拼接,获得所述目标行表格对应的子组件嵌入向量。
[0109]
具体的,目标行表格具体是指组件表格中任意一个组件节点对应的行表格,本实施例仅以一个目标行表格为例进行子嵌入向量的描述,其他均可参见本实施例中相同或相应的描述,在此不作过多赘述。相应的,顺序标识信息具体是指目标行表格对应组件节点的全局唯一顺序标识;相应的,层级标识信息具体是指组件节点在组件结构树中所属层级的标识;相应的,文本信息具体是指组件属性信息中的文本字符;相应的,特征向量具体是指组件节点在不同维度对应的属性特征。
[0110]
基于此,首先可以在组件表格中确定目标行表格对应的目标组件属性信息,其次在目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;再次通过对顺序标识信息、所述层级标识信息、文本信息和所述特征信息分别进行嵌入处理,即可获得顺序标识信息对应的顺序标识向量,层级标识信息对应的层级标识向量,文本信息对应的文本向量,以及特征信息对应的特征向量;最后再对顺序标识向量、层级标识向量、文本向量和特征向量进行拼接,即可获得目标行表格对应的子组件嵌入向量。
[0111]
沿用上例,在得到如表(1)所示的组件表格后,可以按照如图3中(b)所示的嵌入处理方式进行嵌入处理操作。即:在组件表格中选择各个组件节点对应的pid,之后在l_e阶段可以使用设定函数将每个组件节点对应的pid值进行向量映射处理,得到每个组件节点对应l_e阶段且长度为768的向量levelembed;之后在组件表格中选择各个组件节点对应的oid,之后在o_e阶段可以使用设定函数将每个组件节点对应的oid值进行向量映射处理,得到每个组件节点对应o_e阶段且长度为768的向量orderembed;在组件表格中选择各个组件对应的text,之后在t_e阶段使用bert模型对文字进行编码,取bert模型最后一层的隐状态向量进行平均化处理,得到每个组件节点对应t_e阶段且长度为768的向量textembed;在组件表格中选择各个组件节点对应的attr_1-attr_n,之后在a_e阶段使用全连接层对每个件节点对应的attr_1-attr_n值进行向量映射处理,得到每个组件节点对应a_e阶段且长度为768的向量attributeembed。
[0112]
此时,通过映射函数,实现将每个组件节点的文本信息text编码为长度768的向量textembed;层级信息pid和oid编码为两个长度为768的orderembed和levelembed;属性信息attr_1-attr_n编码为一个长度为768的attributeembed;最后将每个组件节点对应的
textembed、orderembed、levelembed和attributeembed进行拼接,即可得到组件表格对应的嵌入向量inputembedding,以方便后续对初始组件分类模型训练使用。实际应用中,在利用设定函数将oid转换为向量时,实则是设定将信息转换为768维度的函数。
[0113]
综上,通过结合组件表格中不同组件节点的组件属性信息进行嵌入处理,且将嵌入处理得到的子组件嵌入向量进行融合,可以实现融合组件自身属性信息、组件层级信息和组件顺序信息完成嵌入向量的生成,实现在后续训练模型时,可以使得模型学习到上下文信息,以结合该信息完成组件分类,可以确保组件分类准确度更高。
[0114]
步骤s206,将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息。
[0115]
具体的,在上述得到组件结构树对应的组件嵌入向量后,此时即可将组件嵌入向量输入至初始组件分类模型进行处理,实现将初始组件分类模型作为分类器,以对组件结构树中各个组件节点对应的组件进行分类,以得到初始组件分类模型预测的预测组件分类信息,以方便后续结合组件结构树对应的标签,完成对模型的调参。
[0116]
其中,初始组件分类模型具体是指能够对组件结构树中的各个组件节点对应的组件进行分类的模型,该模型使用transformers实现。相应的,预测组件分类信息具体是指针对组件结构树中各个组件节点对应的组件进行类别识别后,得到的类别信息,其包括但不限于文本框类别信息、形状类别信息、图标类别信息、按钮类别信息等。
[0117]
进一步的,初始组件分类模型在对组件结构树中组件节点对应的组件类别记性识别时,实则是通过具有编解码结构的模型完成的处理;本实施例中,具体实现方式如下:
[0118]
将所述组件嵌入向量输入至所述初始组件分类模型,通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量;基于所述组件编码向量确定隐藏状态向量,并将所述隐藏状态向量作为组件分类向量;通过所述初始组件分类模型中的解码器对所述组件分类向量进行解码处理,获得所述组件结构树中组件节点对应的预测组件分类信息。
[0119]
具体的,组件编码向量具体是指利用初始组件分类模型中的编码器对组件嵌入向量进行编码处理后得到的向量表达,用于提取每个组件节点对应组件的特征,相应的,隐状态向量具体是指在组件编码向量中选择第一维的元素组成的向量表达,其融合了组件节点的上下层级关系,以及节点之间的依赖关系等。
[0120]
基于此,在得到组件结构树对应的组件嵌入向量后,可以先将组件嵌入向量输入至初始组件分类模型,以通过初始组件分类模型中的编码器对组件嵌入向量进行编码处理,此时可以获得组件编码向量;而为了能够对组件结构树中每个组件节点对应的组件进行分类,可以基于组件编码向量确定隐藏状态向量,并将隐藏状态向量作为组件分类向量;最后通过初始组件分类模型中的解码器对组件分类向量进行解码处理,即可获得组件结构树中组件节点对应的预测组件分类信息。
[0121]
更进一步的,在进行编码时,实则是结合多头注意力机制完成的;本实施例中,具体实现方式如下:
[0122]
利用所述初始组件分类模型中的编码器对所述嵌入编码向量和权重矩阵进行计算,获得查询向量、键向量和值向量;根据所述查询向量、所述键向量和所述值向量进行相似度分值计算,根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。
[0123]
基于此,在利用初始组件分类模型中的编码器进行编码阶段,可以利用初始组件分类模型中的编码器对嵌入编码向量和权重矩阵进行计算,以获得查询向量、键向量和值向量;此后再根据查询向量、键向量和值向量进行相似度分值计算,即可实现根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。
[0124]
也就是说,使用transformers模型作为组件分类模型,可以使用transformers模型的核心模块self-attention模块。self-attention(多头注意力机制)机制可以将输入序列中的每个元素(比如每个词)都看作是查询(query)、键(key)和值(value),并计算它们之间的相似度得分,再用这些得分来加权计算所有值的加权和,从而得到输出结果,即组件编码向量。
[0125]
在实现过程中,可以将输入序列表示为一个矩阵x(组件嵌入向量),其中每行表示一个元素(比如一个词),每列表示输入向量的一个维度。此后,通过将矩阵x乘以三个权重矩阵(分别表示query、key和value)来计算query、key和value的向量表示,即:q=xwq,k=xwk,v=xwv其中w^q、w^k和w^v都是学习的参数矩阵。
[0126]
在此基础上,可以通过计算query向量和key向量之间的点积,再将结果除以一个标量,来计算它们之间的相似度得分。具体地,假设有一个query向量q和一个key向量k,它们的点积为:score(q,k)=q*k。以此类推进行后续计算即可。实现通过transformer的selfattention机制,可以捕捉长依赖关系,可以应对不同位置的依赖关系,更好地对层级关系、父子节点的信息进行建模。
[0127]
沿用上例,在得到嵌入向量inputembedding后,可以将组件结构树对应的嵌入向量inputembedding输入至transformers模型进行处理,经过处理确定组件结构树中c1_1组件节点对应的组件类型为文本框,c1_2组件节点对应的组件类型为文本框;c1_3组件节点对应的组件类型为图标,c2_1组件节点对应的组件类型为按钮,c3_1组件节点对应的组件类型为按钮,以用于后续结合样本标签对transformers模型进行调参。
[0128]
综上,通过采用具有编解码结构的transformers模型作为组件分类模型,可以实现在组件分类阶段融合组件节点之间的层级关系和依赖关系,使得模型可以学习到结合层级关系完成组件分类,从而有效的提高了模型分类精度。
[0129]
步骤s208,基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
[0130]
具体的,在上述得到组件结构树中各个组件节点对应的预测组件分类信息后,进一步的,为了能够训练出满足使用需求的模型,可以基于组件结构树中组件节点对应的基准组件分类信息和预测组件分类信息,对初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
[0131]
其中,基准组件分类信息具体是指组件结构树中组件节点对应的真实组件分类信息,相应的,训练停止条件具体是指停止对初始组件分类模型进行训练的条件,包括但不限于损失值比较条件、迭代次数条件或者验证条件等,本实施例在此不作任何限定。
[0132]
进一步的,在调参阶段,可以结合预测结果和标签完成损失值的计算,从而调整模型;本实施例中,具体实现方式如下:
[0133]
获取所述组件结构树中组件节点对应的基准组件分类信息;根据交叉熵损失函数
对所述基准组件分类信息和所述预测组件分类信息进行计算,获得目标损失值;利用所述目标损失值对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
[0134]
基于此,调参阶段,可以先获取组件结构树中组件节点对应的基准组件分类信息;之后根据交叉熵损失函数对基准组件分类信息和预测组件分类信息进行计算,获得目标损失值;此时可以利用目标损失值对初始组件分类模型进行调参,调参后不满足训练停止条件的情况下,可以选择新的样本继续进行训练,直至获得满足训练停止条件的组件分类模型即可。
[0135]
也就是说,对于transformers模型的最后一层,可以先取组件编码向量的隐状态向量作为分类向量,之后将分类向量通过softmax层进行处理,即可得到组件结构树中组件节点对应的预测组件分类信息,此时再利用组件结构树中组件节点对应的基准组件分类信息和组件结构树中组件节点对应的预测组件分类信息,计算交叉熵损失函数,并根据计算得到的损失值对模型进行调参,直至获得满足训练停止条件的组件分类模型即可。
[0136]
沿用上例,在得到组件结构树中各个组件节点对应的预测分类信息后,可以再读取组件结构树中各个组件节点对应的基准分类信息,之后结合交叉熵损失函数进行损失值的计算,利用计算得到的损失值对模型进行调参,即可获得中间组件分类模型,此后可以选择新的样本继续进行训练,直至得到损失值小于损失值阈值的模型作为组件分类模型即可。
[0137]
本说明书提供的组件分类模型训练方法,为了能够提高组件分类效率,可以构建能够针对组件进行识别和分类的初始组件分类模型,此后可以先获取组件结构树,且组件结构树中的组件节点包含组件属性信息,此时可以针对组件结构树进行重构,以获得记录组件属性信息的组件表格,此时再针对组件表格中记录的组件属性信息进行嵌入处理,即可得到组件结构树对应的组件嵌入向量;进一步的,再将组件嵌入向量输入至初始组件分类模型,进行处理,即可得到组件结构树中组件节点对应的预测组件分类信息,再基于组件结构树中组件节点对应的基准组件分类信息和预测组件分类信息,对初始组件分类模型进行调参,即可完成一次的训练,以此类推,直至获得满足训练停止条件的组件分类模型即可。实现通过建模的方式对组件进行分类,可以有效的提高组件识别和分类效率,从而方便下游业务使用。
[0138]
与上述方法实施例相对应,本说明书还提供了组件分类方法实施例,图4示出了本说明书一实施例提供的一种组件分类方法的流程图。如图4所示,该方法包括:
[0139]
步骤s402,获取目标对象对应的目标组件结构树;
[0140]
步骤s404,将所述目标组件结构树输入至上述方法中的组件分类模型进行处理,获得所述目标组件结构树中各个目标组件节点对应的组件类型信息;
[0141]
步骤s406,根据所述组件类型信息对所述目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。
[0142]
本实施例提供的组件分类方法中未详尽描述的内容均可参见上述实施例中相同或相应的描述,本实施例在此不作过多赘述。
[0143]
具体的,目标对象具体是指组件设计稿,组件处理任务具体是指针对目标对象中包含的目标组件进行处理的任务,包括但不限于存储至数据的任务。
[0144]
基于此,在设计师完成组件设计后,可以将目标对象提交给服务端,服务端此时可以先获取目标对象对应的目标组件结构树;之后将目标组件结构树输入至上述方法中的组件分类模型进行处理,即可获得目标组件结构树中各个目标组件节点对应的组件类型信息;此后再,根据组件类型信息对目标对象中包含的目标组件进行分类,即可实现根据分类结果执行组件处理任务。
[0145]
举例说明,用户甲提交了设计稿到服务端后,服务端会先生成设计稿对应的组件结构树,此后再将组件结构树输入至组件分类模型进行处理,经过处理将确定组件结构树中各个组件节点对应的组件类型信息,之后可以将组件类型信息分配给每个组件节点对应的组件,之后按照组件对应的类别信息进行落库即可,实现按照类型将组件写入到组件库中。
[0146]
综上,通过采用训练好的组件分类模型进行组件分类处理,可以有效的提高组件分类效率和准确度,从而节省更多的人力资源。
[0147]
下述结合附图5,以本说明书提供的组件分类方法在应用程序中组件识别场景中的应用为例,对所述组件分类方法进行进一步说明。其中,图5示出了本说明书一实施例提供的一种组件分类方法的处理流程图,具体包括以下步骤:
[0148]
步骤s502,获取样本对象对应的初始组件结构树,按照初始组件分类模型的训练策略,对初始组件结构树进行结构检测。
[0149]
步骤s504,在结构检测结果不满足预设结构检测条件的情况下,对初始组件结构树进行切分,根据切分结果确定组件结构树;其中,组件结构树中的组件节点包含组件属性信息。
[0150]
步骤s506,根据组件结构树中组件节点包含的组件属性信息,确定组件结构树中各个组件节点对应的节点属性类型。
[0151]
步骤s508,按照节点属性类型针对组件结构树中各个组件节点选择更新策略,并利用更新策略对各个组件节点包含的组件属性信息进行更新。
[0152]
步骤s510,对组件结构树中组件节点包含的更新后的组件属性信息进行遍历,根据遍历结果生成记录更新后的组件属性信息的组件表格。
[0153]
具体的,根据遍历结果生成记录更新后的组件属性信息的初始组件表格;按照初始组件分类模型的模型训练策略,在初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;根据插入结果生成记录更新后的组件属性信息的组件表格
[0154]
步骤s512,针对组件表格中每行表格对应的组件属性信息分别进行嵌入处理,获得每行表格分别对应的子组件嵌入向量。
[0155]
步骤s514,对每行表格对应的子组件嵌入向量进行合并,获得组件嵌入向量。
[0156]
具体的,组件表格中任意目标行表格对应的子组件嵌入向量的确定,包括:在组件表格中确定目标行表格对应的目标组件属性信息,并在目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;通过对顺序标识信息、层级标识信息、文本信息和特征信息分别进行嵌入处理,获得顺序标识向量、层级标识向量、文本向量和特征向量;对顺序标识向量、层级标识向量、文本向量和特征向量进行拼接,获得目标行表格对应的子组件嵌入向量。
[0157]
步骤s516,将组件嵌入向量输入至初始组件分类模型,通过初始组件分类模型中
的编码器对组件嵌入向量进行编码处理,获得组件编码向量。
[0158]
具体的,利用初始组件分类模型中的编码器对嵌入编码向量和权重矩阵进行计算,获得查询向量、键向量和值向量;根据查询向量、键向量和值向量进行相似度分值计算,根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。
[0159]
步骤s518,基于组件编码向量确定隐藏状态向量,并将隐藏状态向量作为组件分类向量。
[0160]
步骤s520,通过初始组件分类模型中的解码器对组件分类向量进行解码处理,获得组件结构树中组件节点对应的预测组件分类信息。
[0161]
步骤s522,获取组件结构树中组件节点对应的基准组件分类信息。
[0162]
步骤s524,根据交叉熵损失函数对基准组件分类信息和预测组件分类信息进行计算,获得目标损失值。
[0163]
步骤s526,利用目标损失值对初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。
[0164]
步骤s528,获取目标对象对应的目标组件结构树。
[0165]
步骤s530,将目标组件结构树输入至组件分类模型进行处理,获得目标组件结构树中各个目标组件节点对应的组件类型信息。
[0166]
步骤s532,根据组件类型信息对目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。
[0167]
本说明书提供的组件分类模型训练方法,为了能够提高组件分类效率,可以构建能够针对组件进行识别和分类的初始组件分类模型,此后可以先获取组件结构树,且组件结构树中的组件节点包含组件属性信息,此时可以针对组件结构树进行重构,以获得记录组件属性信息的组件表格,此时再针对组件表格中记录的组件属性信息进行嵌入处理,即可得到组件结构树对应的组件嵌入向量;进一步的,再将组件嵌入向量输入至初始组件分类模型,进行处理,即可得到组件结构树中组件节点对应的预测组件分类信息,再基于组件结构树中组件节点对应的基准组件分类信息和预测组件分类信息,对初始组件分类模型进行调参,即可完成一次的训练,以此类推,直至获得满足训练停止条件的组件分类模型即可。实现通过建模的方式对组件进行分类,可以有效的提高组件识别和分类效率,从而方便下游业务使用。
[0168]
与上述方法实施例相对应,本说明书还提供了组件分类模型训练装置实施例,图6示出了本说明书一实施例提供的一种组件分类模型训练装置的结构示意图。如图6所示,该装置包括:
[0169]
获取模块602,被配置为获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;
[0170]
重构模块604,被配置为针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;
[0171]
处理模块606,被配置为将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;
[0172]
调参模块608,被配置为基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止
条件的组件分类模型。
[0173]
一个可选的实施例中,所述获取模块602进一步被配置为:
[0174]
获取样本对象对应的初始组件结构树;按照所述初始组件分类模型的训练策略,对所述初始组件结构树进行结构检测;在结构检测结果满足预设结构检测条件的情况下,将所述初始组件结构树作为所述组件结构树;在结构检测结果不满足预设结构检测条件的情况下,对所述初始组件结构树进行切分,根据切分结果确定所述组件结构树。
[0175]
一个可选的实施例中,所述重构模块604进一步被配置为:
[0176]
根据所述组件结构树中组件节点包含的组件属性信息,确定所述组件结构树中各个组件节点对应的节点属性类型;按照所述节点属性类型针对所述组件结构树中各个组件节点选择更新策略,并利用所述更新策略对各个组件节点包含的组件属性信息进行更新;对所述组件结构树中组件节点包含的更新后的组件属性信息进行遍历,根据遍历结果生成记录更新后的组件属性信息的组件表格。
[0177]
一个可选的实施例中,所述重构模块604进一步被配置为:
[0178]
根据遍历结果生成记录更新后的组件属性信息的初始组件表格;按照所述初始组件分类模型的模型训练策略,在所述初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;根据插入结果生成记录更新后的组件属性信息的组件表格。
[0179]
一个可选的实施例中,所述重构模块604进一步被配置为:
[0180]
针对所述组件表格中每行表格对应的组件属性信息分别进行嵌入处理,获得每行表格分别对应的子组件嵌入向量;对每行表格对应的子组件嵌入向量进行合并,获得所述组件嵌入向量。
[0181]
一个可选的实施例中,所述组件表格中任意目标行表格对应的子组件嵌入向量的确定,包括:
[0182]
在所述组件表格中确定目标行表格对应的目标组件属性信息,并在所述目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;通过对所述顺序标识信息、所述层级标识信息、所述文本信息和所述特征信息分别进行嵌入处理,获得顺序标识向量、层级标识向量、文本向量和特征向量;对所述顺序标识向量、所述层级标识向量、所述文本向量和所述特征向量进行拼接,获得所述目标行表格对应的子组件嵌入向量。
[0183]
一个可选的实施例中,所述处理模块606进一步被配置为:
[0184]
将所述组件嵌入向量输入至所述初始组件分类模型,通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量;基于所述组件编码向量确定隐藏状态向量,并将所述隐藏状态向量作为组件分类向量;通过所述初始组件分类模型中的解码器对所述组件分类向量进行解码处理,获得所述组件结构树中组件节点对应的预测组件分类信息。
[0185]
一个可选的实施例中,所述处理模块606进一步被配置为:
[0186]
利用所述初始组件分类模型中的编码器对所述嵌入编码向量和权重矩阵进行计算,获得查询向量、键向量和值向量;根据所述查询向量、所述键向量和所述值向量进行相似度分值计算,根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。
[0187]
一个可选的实施例中,所述调参模块608进一步被配置为:
[0188]
获取所述组件结构树中组件节点对应的基准组件分类信息;根据交叉熵损失函数
communication)接口,等等。
[0198]
在本技术的一个实施例中,计算设备800的上述部件以及图8中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图8所示的计算设备结构框图仅仅是出于示例的目的,而不是对本技术范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0199]
计算设备800可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(pc,personal computer)的静止计算设备。计算设备800还可以是移动式或静止式的服务器。
[0200]
其中,处理器820用于执行计算机可执行指令时实现组件分类模型训练方法或者组件分类方法的步骤。
[0201]
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的组件分类模型训练方法或者组件分类方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述组件分类模型训练方法或者组件分类方法的技术方案的描述。
[0202]
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于组件分类模型训练方法或者组件分类方法的步骤。
[0203]
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的组件分类模型训练方法或者组件分类方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述组件分类模型训练方法或者组件分类方法的技术方案的描述。
[0204]
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0205]
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据专利实践的要求进行适当的增减,例如在某些地域,根据专利实践,计算机可读介质不包括电载波信号和电信信号。
[0206]
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
[0207]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0208]
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

技术特征:
1.一种组件分类模型训练方法,其特征在于,包括:获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。2.根据权利要求1所述的方法,其特征在于,所述获取组件结构树,包括:获取样本对象对应的初始组件结构树;按照所述初始组件分类模型的训练策略,对所述初始组件结构树进行结构检测;在结构检测结果满足预设结构检测条件的情况下,将所述初始组件结构树作为所述组件结构树;在结构检测结果不满足预设结构检测条件的情况下,对所述初始组件结构树进行切分,根据切分结果确定所述组件结构树。3.根据权利要求1所述的方法,其特征在于,所述针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,包括:根据所述组件结构树中组件节点包含的组件属性信息,确定所述组件结构树中各个组件节点对应的节点属性类型;按照所述节点属性类型针对所述组件结构树中各个组件节点选择更新策略,并利用所述更新策略对各个组件节点包含的组件属性信息进行更新;对所述组件结构树中组件节点包含的更新后的组件属性信息进行遍历,根据遍历结果生成记录更新后的组件属性信息的组件表格。4.根据权利要求3所述的方法,其特征在于,所述根据遍历结果生成记录更新后的组件属性信息的组件表格,包括:根据遍历结果生成记录更新后的组件属性信息的初始组件表格;按照所述初始组件分类模型的模型训练策略,在所述初始组件表格中插入记录组件节点层级信息和组件节点顺序信息的列;根据插入结果生成记录更新后的组件属性信息的组件表格。5.根据权利要求1所述的方法,其特征在于,所述对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量,包括:针对所述组件表格中每行表格对应的组件属性信息分别进行嵌入处理,获得每行表格分别对应的子组件嵌入向量;对每行表格对应的子组件嵌入向量进行合并,获得所述组件嵌入向量。6.根据权利要求5所述的方法,其特征在于,所述组件表格中任意目标行表格对应的子组件嵌入向量的确定,包括:在所述组件表格中确定目标行表格对应的目标组件属性信息,并在所述目标组件属性信息中读取顺序标识信息、层级标识信息、文本信息和特征信息;通过对所述顺序标识信息、所述层级标识信息、所述文本信息和所述特征信息分别进
行嵌入处理,获得顺序标识向量、层级标识向量、文本向量和特征向量;对所述顺序标识向量、所述层级标识向量、所述文本向量和所述特征向量进行拼接,获得所述目标行表格对应的子组件嵌入向量。7.根据权利要求1所述的方法,其特征在于,所述将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息,包括:将所述组件嵌入向量输入至所述初始组件分类模型,通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量;基于所述组件编码向量确定隐藏状态向量,并将所述隐藏状态向量作为组件分类向量;通过所述初始组件分类模型中的解码器对所述组件分类向量进行解码处理,获得所述组件结构树中组件节点对应的预测组件分类信息。8.根据权利要求7所述的方法,其特征在于,所述通过所述初始组件分类模型中的编码器对所述组件嵌入向量进行编码处理,获得组件编码向量,包括:利用所述初始组件分类模型中的编码器对所述嵌入编码向量和权重矩阵进行计算,获得查询向量、键向量和值向量;根据所述查询向量、所述键向量和所述值向量进行相似度分值计算,根据计算结果确定包含层级依赖关系和节点依赖关系的组件编码向量。9.根据权利要求1-8任一项所述的方法,其特征在于,所述基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型,包括:获取所述组件结构树中组件节点对应的基准组件分类信息;根据交叉熵损失函数对所述基准组件分类信息和所述预测组件分类信息进行计算,获得目标损失值;利用所述目标损失值对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。10.一种组件分类方法,其特征在于,包括:获取目标对象对应的目标组件结构树;将所述目标组件结构树输入至权利要求1-9任一项所述方法中的组件分类模型进行处理,获得所述目标组件结构树中各个目标组件节点对应的组件类型信息;根据所述组件类型信息对所述目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。11.一种组件分类模型训练装置,其特征在于,包括:获取模块,被配置为获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;重构模块,被配置为针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;处理模块,被配置为将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;调参模块,被配置为基于所述组件结构树中组件节点对应的基准组件分类信息和所述
预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。12.一种组件分类装置,其特征在于,包括:获取结构树模块,被配置为获取目标对象对应的目标组件结构树;输入模型模块,被配置为将所述目标组件结构树输入至权利要求1-9任一项所述方法中的组件分类模型进行处理,获得所述目标组件结构树中各个目标组件节点对应的组件类型信息;分类组件模块,被配置为根据所述组件类型信息对所述目标对象中包含的目标组件进行分类,并根据分类结果执行组件处理任务。13.一种计算设备,其特征在于,包括存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现权利要求1至10任意一项所述方法的步骤。14.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至10任意一项所述方法的步骤。

技术总结
本说明书提供组件分类模型训练方法及装置,其中所述组件分类模型训练方法包括:获取组件结构树,其中,所述组件结构树中的组件节点包含组件属性信息;针对所述组件结构树进行重构,获得记录组件属性信息的组件表格,并对所述组件表格中记录的组件属性信息进行嵌入处理,获得组件嵌入向量;将所述组件嵌入向量输入至初始组件分类模型进行处理,获得所述组件结构树中组件节点对应的预测组件分类信息;基于所述组件结构树中组件节点对应的基准组件分类信息和所述预测组件分类信息,对所述初始组件分类模型进行调参,直至获得满足训练停止条件的组件分类模型。止条件的组件分类模型。止条件的组件分类模型。


技术研发人员:孙子钧 刘洋 张天宇 吴通通 杨帆 赵薇 柳景明
受保护的技术使用者:北京看云软件有限公司
技术研发日:2023.04.17
技术公布日:2023/7/7
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐