神经网络模型中子图的展示方法、装置和存储介质转让专利

申请号 : CN202011324500.2

文献号 : CN112508163B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 潘子豪施依欣吕雪莹申玉涵陈泽裕赖宝华吴泽武赵乔

申请人 : 北京百度网讯科技有限公司

摘要 :

本申请公开了神经网络模型中子图的展示方法、装置和存储介质,涉及深度学习等人工智能技术领域。具体实现方案为:在展示神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参数,并根据多个子图及多个子图对应的多个子图参数生成模型树形结构,以及接收用户子图选择指令,并根据子图选择指令和模型树形结构生成子图展示图并展示。由此,以可视化的方式展示神经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展示图深入了解神经网络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的模型结构。

权利要求 :

1.一种神经网络模型中子图的展示方法,包括:获取神经网络模型;

从所述神经网络模型之中读取模型参数,其中,所述模型参数包括多个子图及所述多个子图对应的多个子图参数,其中,所述子图是指所述神经网络模型中条件分支中每个分支内的计算图;

根据所述多个子图及所述多个子图对应的多个子图参数生成模型树形结构;以及接收用户子图选择指令,并根据所述子图选择指令和所述模型树形结构生成子图展示图并展示;

其中,所述子图参数包括子图属性、子图的节点和节点的属性;

所述根据所述多个子图及所述多个子图对应的多个子图参数生成模型树形结构,包括:

将所述多个子图作为所述模型树形结构的第一级节点,并根据所述子图属性设置所述第一级节点的属性;

获取所述第一级节点所对应子图之中的多个节点,并作为所述模型树形结构所述第一级节点所属的第二级节点,并根据所述节点的属性生成所述第二级节点的属性。

2.如权利要求1所述的方法,其中,所述子图参数还包括所述子图之中节点之间的对应关系/向量,所述方法还包括:根据所述节点之间的对应关系/向量生成所述第二级节点之间的节点关系。

3.如权利要求2所述的方法,其中,在所述接收用户子图选择指令之前,还包括:遍历所述模型树形结构之中的多个第一级节点,并生成多个子图展示图的名称;

检测所述神经网络模型之中子图的数量;

在所述子图的数量大于预设数量的情况下,在展示界面之中展示所述多个子图展示图的名称,以供所述用户选择。

4.如权利要求1所述的方法,其中,所述根据所述子图选择指令和所述模型树形结构生成子图展示图并展示,包括:根据所述子图选择指令从所述模型树形结构中获取对应的目标第二级节点;

从所述模型树形结构中,读取所述目标第二级节点的子图参数;

根据所述目标第二级节点的子图参数生成所述子图展示图,并展示。

5.一种神经网络模型中子图的展示装置,包括:获取模块,用于获取神经网络模型;

读取模块,用于从所述神经网络模型之中读取模型参数,其中,所述模型参数包括多个子图及所述多个子图对应的多个子图参数,其中,所述子图是指所述神经网络模型中条件分支中每个分支内的计算图;

第一生成模块,用于根据所述多个子图及所述多个子图对应的多个子图参数生成模型树形结构;以及

子图展示模块,用于接收用户子图选择指令,并根据所述子图选择指令和所述模型树形结构生成子图展示图并展示;

其中,所述子图参数包括子图属性、子图的节点和节点的属性;

所述第一生成模块,具体用于:将所述多个子图作为所述模型树形结构的第一级节点,并根据所述子图属性设置所述第一级节点的属性;

获取所述第一级节点所对应子图之中的多个节点,并作为所述模型树形结构所述第一级节点所属的第二级节点,并根据所述节点的属性生成所述第二级节点的属性。

6.如权利要求5所述的装置,其中,所述子图参数还包括所述子图之中节点之间的对应关系/向量,所述装置还包括:第二生成模块,用于根据所述节点之间的对应关系/向量生成所述第二级节点之间的节点关系。

7.如权利要求6所述的装置,其中,还包括:第三生成模块,用于遍历所述模型树形结构之中的多个第一级节点,并生成多个子图展示图的名称;

检测模块,用于检测所述神经网络模型之中子图的数量;

展示模块,用于在所述子图的数量大于预设数量的情况下,在展示界面之中展示所述多个子图展示图的名称,以供所述用户选择。

8.如权利要求6所述的装置,其中,所述子图展示模块,包括:获取单元,用于根据所述子图选择指令从所述模型树形结构中获取对应的目标第二级节点;

读取单元,用于从所述模型树形结构中,读取所述目标第二级节点的子图参数;

子图展示单元,用于根据所述目标第二级节点的子图参数生成所述子图展示图,并展示。

9.一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1‑4中任一项所述的方法。

10.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1‑4中任一项所述的方法。

11.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1‑4任一项所述方法的步骤。

说明书 :

神经网络模型中子图的展示方法、装置和存储介质

技术领域

[0001] 本申请涉及计算机技术领域,具体涉及深度学习等人工智能技术领域,尤其涉及神经网络模型中子图的展示方法、装置和存储介质。

背景技术

[0002] 深度学习属于机器学习领域中的子方向,是一种含有多个隐藏层的多层感知器的结构。深度学习通过组合低层特征形成更加抽象的高层表示特征,即可完成端到端的模型
训练。当前深度学习已经在图像识别、语音识别、自然语言处理、计算生物、推荐系统等领域
成效显著。
[0003] 相关技术中,深度学习可视化工具仅为用户提供神经网络模型的准确率信息,在对模型进行优化的过程中,仅可视化的提供神经网络模型的准确率信息,后续优化模型结
构的难度较大。

发明内容

[0004] 本申请提供了一种用于神经网络模型中子图的展示方法、装置和存储介质。
[0005] 根据本申请的一方面,提供了一种神经网络模型中子图的展示方法,包括:获取神经网络模型;从所述神经网络模型之中读取模型参数,其中,所述模型参数包括多个子图及
所述多个子图对应的多个子图参数;根据所述多个子图及所述多个子图对应的多个子图参
数生成模型树形结构;以及接收用户子图选择指令,并根据所述子图选择指令和所述模型
树形结构生成子图展示图并展示。
[0006] 根据本申请的另一方面,提供了一种神经网络模型中子图的展示装置,包括:获取模块,用于获取神经网络模型;读取模块,用于从所述神经网络模型之中读取模型参数,其
中,所述模型参数包括多个子图及所述多个子图对应的多个子图参数;第一生成模块,用于
根据所述多个子图及所述多个子图对应的多个子图参数生成模型树形结构;以及子图展示
模块,用于接收用户子图选择指令,并根据所述子图选择指令和所述模型树形结构生成子
图展示图并展示。
[0007] 根据本申请的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器
执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本
申请的神经网络模型中子图的展示方法。
[0008] 根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请实施例公开的电子设备的神经网络模
型中子图的展示方法。
[0009] 上述申请中的一个实施例具有如下优点或有益效果:
[0010] 在展示神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参数,并根据多个子图及多个子图对应的多个子图参数
生成模型树形结构,以及接收用户子图选择指令,并根据子图选择指令和模型树形结构生
成子图展示图并展示。由此,结合子图选择指令和模型树形结构中对应子图的子图参数,准
确生成了对应子图的子图展示图,以可视化的方式展示神经网络模型中对应子图的子图展
示图,方便用户通过所展示的子图展示图深入了解神经网络模型中子图的内部结构信息,
进而可方便后续优化神经网络模型的模型结构。
[0011] 应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。

附图说明

[0012] 附图用于更好地理解本方案,不构成对本申请的限定。其中:
[0013] 图1是根据本申请第一实施例提供的一种神经网络模型中子图的展示方法的流程示意图;
[0014] 图2是根据本申请第二实施例的一种神经网络模型中子图的展示方法的流程示意图;
[0015] 图3是根据本申请的一个实施例中的包括子图展示图的展示界面的示例图;
[0016] 图4是根据本申请第三实施例提供的一种神经网络模型中子图的展示装置的结构示意图;
[0017] 图5是根据本申请第四实施例提供的一种神经网络模型中子图的展示装置的结构示意图;
[0018] 图6是用来实现本申请实施例的神经网络模型中子图的展示方法的电子设备的框图。

具体实施方式

[0019] 以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识
到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同
样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0020] 下面参考附图描述本申请实施例的神经网络模型中子图的展示方法、装置和存储介质。
[0021] 图1是根据本申请第一实施例提供的一种神经网络模型中子图的展示方法的流程示意图。
[0022] 如图1所示,该神经网络模型中子图的展示方法可以包括:
[0023] 步骤101,获取神经网络模型。
[0024] 其中,需要说明的是,上述神经网络模型中子图的展示方法的执行主体为神经网络模型中子图的展示装置,该神经网络模型中子图的展示装置可以由软件和/或硬件的方
式实现,该实施例中的神经网络模型中子图的展示装置(为了方便后续描述,简称“子图展
示装置”)可以配置在电子设备中,本实施例中的电子设备可以包括终端设备和服务器等设
备,其中,终端设备可以包括个人计算机、平板电脑、智能电话等设备,该实施例对终端设备
不作限定。其中,需要说明的是,本实施例中的子图展示装置除了具有神经网络模型的子图
的展示功能外,还可以具有深度学习框架,以方便用户通过深度学习框架进行神经网络模
型的学习。
[0025] 其中,在不同应用场景中,上述神经网络模型的获取方式不同,举例说明如下:
[0026] 作为一种可能的实现方式,在用户使用对应客户端的过程中,可根据用户在客户端上的操作,为用户展示多个候选神经网络模型,并根据用户选择指令,获取用户从多个候
选神经网络模型中选择的神经网络模型,并将选择的神经网络模型发送至子图展示装置,
从而使得子图展示装置获取神经网络模型。
[0027] 其中,可以理解的是,上述子图展示装置可以与上述客户端进行信息交互。
[0028] 作为另一种可能的实现方式,在用户直接使用子图展示装置的过程中,子图展示装置可获取用户所上传的神经网络模型。
[0029] 作为另一种可能的实现方式,在用户直接使用子图展示装置的过程中,子图展示装置可获取该用户所管理的多个候选神经网络模型,并获取该用户从多个候选神经网络模
型中所选中的神经网络模型。
[0030] 步骤102,从神经网络模型之中读取模型参数,其中,模型参数包括多个子图及多个子图对应的多个子图参数。
[0031] 其中,神经网络模型可以表示成一张由算子组成的计算图。算子是神经网络模型中的最基本的计算单元,其计算开销影响着模型的训练效率。
[0032] 其中,子图是指神经网络模型中条件分支中每个分支内的计算图。
[0033] 其中,子图参数是子图中的参数,子图参数可以包括但不限于子图属性、子图的节点和节点的属性,还可以包括该子图中的所有中间变量、算子等。
[0034] 其中,子图属性是指子图的属性信息,子图的属性信息可以包括子图的标识、子图的类型、子图名称信息等。在一些实施例中,子图的类型可以根据子图中的算子的类型进行
分类。可以理解的是,神经网络模型中包括各种功能的算子,例如,神经网络模型可以包括
特征提取算子、归一化算子等各种功能的算子。
[0035] 其中,需要理解的是,在不同应用场景中,从神经网络模型之中读取模型参数的实现方式不同,举例说明如下:
[0036] 作为一种可能的实现方式,可获取该神经网络模型的模型文件,并对该模型文件进行解析,以得到该神经网络模型中的解析结果,并根据解析结果读取模型参数。
[0037] 作为一种可能的实施方式,可通过调用模型工厂(ModelFactory)模块对神经网络模型的模型文件,按照字节码进行解析,以得到神经网络模型的解析结果。
[0038] 具体而言,ModelFactory模块首先判断该神经网络模型的模型文件是否为预设格式,并在该神经网络模型的模型文件为预设格式的情况下,该模型文件保存到缓存器,然
后,从缓存器中读取该模型文件进行解析,以得到神经网络模型的模型参数。
[0039] 作为一种示例性的实施方式,在该神经网络网络模型的模型文件的格式不为预设格式的情况下,可对神经网络网络模型的模型文件进行格式转换,以将神经网络网络模型
的模型文件转换为预设格式的模型文件,从而可通过ModelFactory模块对转换后的模型文
件进行解析,以得到神经网络模型中的模型参数。
[0040] 例如,ModelFactory模块所支持的文件格式为文件格式1,而神经网络模型的模型文件的格式为文件格式2,在确定文件格式1和文件格式2不同的情况下,可获取从文件格式
2转换为文件格式1的转换规则,然后,根据转换规则,对该神经网络模型的模型文件进行文
件转换,以得到转换后的模型文件,转换后的模型文件的文件格式为文件格式1,并通过
ModelFactory模块对转换格式后的模型文件进行解析,以得到神经网络模型的模型参数。
[0041] 其中,预设格式是预先设置的文件格式类型,例如,预设格式可以为PaddlePaddle格式。
[0042] 作为另一种可能的实现方式,可通过预设的分析模型,对该神经网络模型进行分析,以得到该神经网络模型的分析结果,并根据分析结果确定神经网络模型的模型参数。
[0043] 步骤103,根据多个子图及多个子图对应的多个子图参数生成模型树形结构。
[0044] 其中,上述根据多个子图及多个子图对应的多个子图参数生成模型树形结构可通过多种方式实现,示例如下:
[0045] 作为一种可能的实现方式,可基于预设的模型定义,确定多个子图中子图之间的关系,然后,根据子图之间的关系以及多个子图对应的多个子图参数生成模型树形结构。
[0046] 其中,模型树形结构是以子图为节点,并根据子图之间的关系,确定模型树形结构中的第一级节点之间的关系,然后,将子图参数作为节点的属性信息。
[0047] 作为另一种可能的实现方式,为了后续可结合子图参数快速生成对应子图的子图展示图,上述子图参数可以包括子图属性、子图的节点和节点的属性。在本申请的一个实施
例中,上述根据多个子图及多个子图对应的多个子图参数生成模型树形结构的可能实现方
式可以为:将多个子图作为模型树形结构的第一级节点,并根据子图属性设置第一级节点
的属性;获取第一级节点所对应子图之中的多个节点,并作为模型树形结构第一级节点所
属的第二级节点,并根据节点的属性生成第二级节点的属性。由此,生成了可以对子图进行
表示的模型树形结构,方便后续通过模型树形结构中的第一级节点和第二级节点快速获取
对应子图的子图参数,进而可提高生成对应子图的子图展示图的效率。
[0048] 在本申请的一个实施例中,为了方便后续用户可视化了解子图中各节点之间的关系信息,子图参数还包括子图之中节点之间的对应关系/向量,根据节点之间的对应关系/
向量生成第二级节点之间的节点关系。
[0049] 其中,在一些实施例中,节点与节点之间的关系信息可以通过对应关系进行表示。在一些实施例中,节点与节点之间的关系信息可以通过节点之间的向量进行表示,向量的
方向可以表示两个节点之间的指向关系,向量从开始节点指向结束节点。通过向量的方向,
可以了节点之间的数据流向信息。
[0050] 步骤104,接收用户子图选择指令,并根据子图选择指令和模型树形结构生成子图展示图并展示。
[0051] 其中,上述根据子图选择指令和模型树形结构生成子图展示图并展示的实现方式有多种,示意性说明如下:
[0052] 作为一种示例性的实施方式,根据子图选择指令中的子图标识,确定模型树形结构中与该子图标识对应的节点,并从模型树形结构中获取该节点对应的属性信息,并根据
节点对应的属性信息确定该子图标识对应的子图参数,然后,结合该子图参数,生成该子图
标识对应的子图展示图,并展示子图展示图。其中,在本实施例中节点的属性信息与该子图
标识对应的子图参数对应。
[0053] 其中,子图参数可以包括但不限于子图属性、子图的节点、节点的初始化参数以及节点的属性。
[0054] 其中,节点的属性可以包括节点的节点名称、节点标识以及节点类型等信息。其中,在本示例中节点的初始化参数可以包括节点的初始化权重。在一些实施例中,节点的初
始化参数可以包括节点的初始化权重以及初始化偏置。
[0055] 作为一种示例性的实施方式,为了使得用户可通过子图展示图清楚了解对应子图中节点与节点之间的关系,方便用户对子图的结构情况进行更清楚地了解,进而优化模型
结构。在用户使用具有子图展示功能的软件或者网页的过程中,可在软件或者网页中展示
包含多个子图的子图列表,获取用户从子图列表中选出的目标子图,并获取针对目标子图
所选择的显示类型信息,在显示类型信息为显示节点名称的情况下,从模型树形结构中获
取与目标子图对应的目标节点,并获取该目标节点对应的属性信息,然后,根据显示类型信
息,从属性信息中,获取目标子图中节点的节点名称信息,并从属性信息中获取目标子图中
节点与节点之间的关系,然后,根据节点的节点名称信息以及节点与节点之间的关系信息,
生成该目标子图对应的子图展示图。其中,可以理解的是,目标节点对应的属性信息与目标
子图对应的子图参数对应。
[0056] 其中,子图展示图展示目标子图之中节点与节点之间的对应关系,以及每个节点的节点名称。
[0057] 作为另一种示例性的实施方式,在用户使用具有子图展示功能的软件或者网页的过程中,可在软件或者网页中展示包含多个子图的子图列表,获取用户从子图列表中选出
的目标子图,并获取针对目标子图所选择的显示类型信息,在显示类型信息为显示初始化
参数情况下,获取与目标子图对应的节点,然后,从模型树形结构中获取与该节点对应的目
标节点,并获取该目标节点的属性信息,然后,根据显示类型信息,从目标节点的属性信息
中获取目标子图中每个节点的初始化参数,以及节点与节点之间的关系信息,根据每个节
点的初始化参数,以及节点与节点之间的关系信息,生成该目标子图对应的子图展示图。
[0058] 其中,子图展示图展示目标子图之中节点的初始化参数,以及节点与节点之间的关系。
[0059] 其中,需要说明的是,通过在展示界面中展示包括多个子图的子图列表,并展示多种显示类型信息,由此,可以方便对子图以及显示类型信息进行选择,方便用户操作。
[0060] 其中,显示类型信息包括但不限于显示初始化参数以及显示节点名称等。
[0061] 在一些实施例中,为了满足用户个性化展示的需求,在子图选择指令中还可以包括展示模式。
[0062] 其中,展示模式包括纵向展示模式(即垂直展示模式)和横向展示模式(即水平展示模式)。
[0063] 在一些实施例中,在子图选择指令中的展示模式为纵向展示模式的情况下,以纵向展示的方式展示子图展示图。其中,以纵向展示的方式展示子图展示图是指子图展示图
中的展示内容以自上而下的方式展示。
[0064] 在一些实施例中,在子图选择指令中的展示模式为横向展示模式的情况下,以横向展示的方式展示子图展示图。其中,以横向展示的方式展示子图展示图是指子图展示图
中的展示内容以自左向右的方式展示。
[0065] 其中,关于根据子图选择指令和模型树形结构生成子图展示图并展示的其他实现方式将在后续实施例中进行描述。
[0066] 本申请实施例的神经网络模型中子图的展示方法,在展示神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参
数,并根据多个子图及多个子图对应的多个子图参数生成模型树形结构,以及接收用户子
图选择指令,并根据子图选择指令和模型树形结构生成子图展示图并展示。由此,结合子图
选择指令和模型树形结构中对应子图的子图参数,准确生成了对应子图的子图展示图,以
可视化的方式展示神经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展
示图深入了解神经网络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的
模型结构。
[0067] 图2是根据本申请第一实施例提供的一种神经网络模型中子图的展示方法的流程示意图。其中,需要说明的是,本实施例是对上述实施例的进一步细化或者优化。
[0068] 如图2所示,该神经网络模型中子图的展示方法可以包括:
[0069] 步骤201,获取神经网络模型。
[0070] 步骤202,从神经网络模型之中读取模型参数,其中,模型参数包括多个子图及多个子图对应的多个子图参数。
[0071] 步骤203,根据多个子图及多个子图对应的多个子图参数生成模型树形结构。
[0072] 在本申请的一个实施例中,子图参数包括子图属性、子图的节点和节点的属性,将多个子图作为模型树形结构的第一级节点,并根据子图属性设置第一级节点的属性;获取
第一级节点所对应子图之中的多个节点,并作为模型树形结构第一级节点所属的第二级节
点,并根据节点的属性生成第二级节点的属性。
[0073] 其中,需要说明的是,关于步骤201至步骤203的具体实现方式,可参见上述实施例的相关描述,此处不再赘述。
[0074] 步骤204,遍历模型树形结构之中的多个第一级节点,并生成多个子图展示图的名称。
[0075] 步骤205,检测神经网络模型之中子图的数量。
[0076] 步骤206,在子图的数量大于预设数量的情况下,在展示界面之中展示多个子图展示图的名称,以供用户选择。
[0077] 其中,预设数量是预先设置的数量,例如,预设数量为1。也就是说,可判断神经网络模型之中子图的数量是否大于1,如果判断出该神经网络模型之中子图的数量大于1,即
确定出该神经网络模型之中子图的数量为多个,则在展示界面之中展示多个子图展示图的
名称,以供用户选择。
[0078] 在本实施例中,在检测到神经网络模型之中子图的数量大于预设数量的情况下,在展示界面之中展示多个子图展示图的名称,方便了用户通过展示界面快速选择自己需要
展示的子图展示图,方便了用户选择子图展示图。
[0079] 步骤207,接收用户子图选择指令,并根据子图选择指令获取用户选择的子图展示图的名称,根据用户选择的子图展示图的名称,获取对应的目标第一级节点。
[0080] 步骤208,根据目标第一级节点,从模型树形结构中获取对应的目标第二级节点。
[0081] 步骤209,从模型树形结构中,读取目标第二级节点的子图参数。
[0082] 步骤210,根据目标第二级节点的子图参数生成子图展示图,并展示。
[0083] 在本申请的一个实施例中,为了满足个性化展示子图展示图的需求,还可以对子图展示图的显示类型进行选择。
[0084] 其中,显示类型信息包括但不限于显示初始化参数以及显示节点名称等。
[0085] 在一些实施例中,为了满足用户个性化展示的需求,在子图选择指令中还可以包括展示模式。
[0086] 其中,展示模式包括纵向展示模式(即垂直)和横向展示模式(即水平)。
[0087] 在一些实施例中,在子图选择指令中的展示模式为纵向展示模式的情况下,以纵向展示的方式展示子图展示图。其中,以纵向展示的方式展示子图展示图是指子图展示图
中的展示内容以自上而下的方式展示。
[0088] 在一些实施例中,在子图选择指令中的展示模式为横向展示模式的情况下,以横向展示的方式展示子图展示图。其中,以横向展示的方式展示子图展示图是指子图展示图
中的展示内容以自左向右的方式展示。
[0089] 例如,展示界面的示例图,如图3所示,在图3中的展示界面中展示两个子图展示图的名称,子图展示图名称1和子图展示图名称2,并展示两种显示类型信息,分别为显示初始
化参数和显示节点名称。对应地,通过图3可以看出,用户所选择的子图展示图名称为子图
展示图名称1,并选择显示类型信息为显示初始化参数,并选择方向为垂直方向的情况下,
展示界面的显示区域A上展示的子图展示图。对于显示区域A的子图展示图,可通过展示界
面上的放大或者缩小控件对子图展示图进行相应放大或者缩小。
[0090] 在本申请的一个实施例中,为了方便用户保存子图展示图,以方便再次查看对应神经网络模型对应的子图展示图,如图3所示,本示例的展示界面还包括导出文件选项,并
可根据用户选择的文件类型,导出对应文件类型的子图展示图。其中,文件类型包括PNG
(Portable Network Graphics,便携式网络图形)和SVG(Scalable Vector Graphics,可缩
放矢量图形)等类型。
[0091] 本申请实施例的神经网络模型中子图的展示方法,在对神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参数,
并将多个子图作为模型树形结构的第一级节点,并根据子图属性设置第一级节点的属性,
以及获取第一级节点所对应子图之中的多个节点,并作为模型树形结构第一级节点所属的
第二级节点,并根据节点的属性生成第二级节点的属性,以及遍历模型树形结构之中的多
个第一级节点,并生成多个子图展示图的名称,检测神经网络模型之中子图的数量;在子图
的数量大于预设数量的情况下,在展示界面之中展示多个子图展示图的名称,以供用户选
择,接收用户子图选择指令,根据子图选择指令从模型树形结构中获取对应的目标第二级
节点,从模型树形结构中,读取目标第二级节点的子图参数;根据目标第二级节点的子图参
数生成子图展示图,并展示。由此,结合子图选择指令,从模型树形结构获取对应的目标第
一级节点,然后,根据模型树形结构,获取目标第一级节点所对应的第二级节点,并根据第
二级节点的子图参数,快速,且准确生成了对应子图的子图展示图,以可视化的方式展示神
经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展示图深入了解神经网
络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的模型结构。
[0092] 为了实现上述实施例,本申请实施例还提供一种神经网络模型中子图的展示装置。
[0093] 图4是根据本申请第三实施例提供的一种神经网络模型中子图的展示装置的结构示意图。
[0094] 如图4所示,该神经网络模型中子图的展示装置400可以包括获取模块401、读取模块402、第一生成模块403和子图展示模块404,其中:
[0095] 获取模块401,用于获取神经网络模型。
[0096] 读取模块402,用于从神经网络模型之中读取模型参数,其中,模型参数包括多个子图及多个子图对应的多个子图参数。
[0097] 第一生成模块403,用于根据多个子图及多个子图对应的多个子图参数生成模型树形结构。以及
[0098] 子图展示模块404,用于接收用户子图选择指令,并根据子图选择指令和模型树形结构生成子图展示图并展示。
[0099] 其中,需要说明的是,前述对神经网络模型中子图的展示方法实施例的解释说明也适用于本实施例,本实施对此不再赘述。
[0100] 本申请实施例的神经网络模型中子图的展示装置,在展示神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参
数,并根据多个子图及多个子图对应的多个子图参数生成模型树形结构,以及接收用户子
图选择指令,并根据子图选择指令和模型树形结构生成子图展示图并展示。由此,结合子图
选择指令和模型树形结构中对应子图的子图参数,准确生成了对应子图的子图展示图,以
可视化的方式展示神经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展
示图深入了解神经网络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的
模型结构。
[0101] 在本申请的一个实施例中,上述子图参数包括子图属性、子图的节点和节点的属性。
[0102] 在本申请的一个实施例中,第一生成模块,具体用于:将多个子图作为模型树形结构的第一级节点,并根据子图属性设置第一级节点的属性;获取第一级节点所对应子图之
中的多个节点,并作为模型树形结构第一级节点所属的第二级节点,并根据节点的属性生
成第二级节点的属性。在本申请的一个实施例中,子图参数还包括子图之中节点之间的对
应关系/向量,如图5所示,该装置可以包括获取模块501、读取模块502、第一生成模块503、
子图展示模块504和第二生成模块505,其中:
[0103] 其中,关于获取模块501、读取模块502、第一生成模块503、子图展示模块504的详细描述可参见请参考图5所示实施例中获取模块401、读取模块402、第一生成模块403、子图
展示模块404的说明,此处不再进行描述。
[0104] 第二生成模块505,用于根据节点之间的对应关系/向量生成第二级节点之间的节点关系。
[0105] 在本申请的一个实施例中,如图5所示,该装置还可以包括:
[0106] 第三生成模块506,用于遍历模型树形结构之中的多个第一级节点,并生成多个子图展示图的名称;
[0107] 检测模块507,用于检测神经网络模型之中子图的数量;
[0108] 展示模块508,用于在子图的数量大于预设数量的情况下,在展示界面之中展示多个子图展示图的名称,以供用户选择。
[0109] 在本申请的一个实施例中,如图5所示,子图展示模块504,可以包括:
[0110] 获取单元5041,用于根据子图选择指令从模型树形结构中获取对应的目标第二级节点。
[0111] 读取单元5042,用于从模型树形结构中,读取目标第二级节点的子图参数。
[0112] 子图展示单元5043,用于根据目标第二级节点的子图参数生成子图展示图,并展示。
[0113] 其中,需要说明的是,前述对神经网络模型中子图的展示方法实施例的解释说明也适用于本实施例,本实施对此不再赘述。
[0114] 本申请实施例的神经网络模型中子图的展示装置,在对神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参数,
并将多个子图作为模型树形结构的第一级节点,并根据子图属性设置第一级节点的属性,
以及获取第一级节点所对应子图之中的多个节点,并作为模型树形结构第一级节点所属的
第二级节点,并根据节点的属性生成第二级节点的属性,以及遍历模型树形结构之中的多
个第一级节点,并生成多个子图展示图的名称,检测神经网络模型之中子图的数量;在子图
的数量大于预设数量的情况下,在展示界面之中展示多个子图展示图的名称,以供用户选
择,接收用户子图选择指令,根据子图选择指令从模型树形结构中获取对应的目标第二级
节点,从模型树形结构中,读取目标第二级节点的子图参数;根据目标第二级节点的子图参
数生成子图展示图,并展示。由此,结合子图选择指令,从模型树形结构获取对应的目标第
一级节点,然后,根据模型树形结构,获取目标第一级节点所对应的第二级节点,并根据第
二级节点的子图参数,快速,且准确生成了对应子图的子图展示图,以可视化的方式展示神
经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展示图深入了解神经网
络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的模型结构。
[0115] 根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
[0116] 如图6所示,是根据本申请实施例的神经网络模型中子图的展示方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作
台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还
可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其
它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,
并且不意在限制本文中描述的和/或者要求的本申请的实现。
[0117] 如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安
装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进
行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的
显示设备)上显示图形用户界面(Graphical User Interface,简称GUI)的图形信息的指
令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存
储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服
务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
[0118] 存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的神经网络模型
中子图的展示方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令
用于使计算机执行本申请所提供的神经网络模型中子图的展示方法。
[0119] 存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的神经网络模型中子图的展示方法对
应的程序指令/模块(例如,附图4所示的获取模块401、读取模块402、第一生成模块403和子
图展示模块404)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模
块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的神经网络
模型中子图的展示方法。
[0120] 存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据神经网络模型中子图的展示
的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可
以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器
件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存
储器可以通过网络连接至神经网络模型中子图的展示的电子设备。上述网络的实例包括但
不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0121] 神经网络模型中子图的展示的方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式
连接,图6中以通过总线连接为例。
[0122] 输入装置603可接收输入的数字或字符信息,以及产生与神经网络模型中子图的展示的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、
轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604
可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示
设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在
一些实施方式中,显示设备可以是触摸屏。
[0123] 此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(Application Specific Integrated Circuit,专用集成电路)、计算机硬件、
固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计
算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上
执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至
少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储
系统、该至少一个输入装置、和该至少一个输出装置。
[0124] 这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些
计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指
令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光
盘、存储器、可编程逻辑装置(PLD,Programmable Logic Device)),包括,接收作为机器可
读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数
据提供给可编程处理器的任何信号。
[0125] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视
器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来
将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的
反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用
任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0126] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算
系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界
面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部
件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数
字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网
(Local Area Network,LAN)、广域网(Wide Area Network,WAN)和互联网。
[0127] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计
算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或
云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("
Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服
务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0128] 根据本申请实施例的技术方案,在展示神经网络模型中的子图展示图的过程中,结合从神经网络模型之中读取多个子图及多个子图对应的多个子图参数,并根据多个子图
及多个子图对应的多个子图参数生成模型树形结构,以及接收用户子图选择指令,并根据
子图选择指令和模型树形结构生成子图展示图并展示。由此,结合子图选择指令和模型树
形结构中对应子图的子图参数,准确生成了对应子图的子图展示图,以可视化的方式展示
神经网络模型中对应子图的子图展示图,方便用户通过所展示的子图展示图深入了解神经
网络模型中子图的内部结构信息,进而可方便后续优化神经网络模型的模型结构。。
[0129] 其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工
智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等
技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及
机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
[0130] 应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,
只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
[0131] 上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请
的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。