一种处理神经网络模型文件的方法及终端与流程

文档序号:15518915发布日期:2018-09-25 18:56阅读:225来源:国知局

本发明实施例涉及通信技术领域,尤其涉及一种处理神经网络模型文件的方法及终端。



背景技术:

随着通信技术的发展,神经网络(neuralnetworks,nns),如卷积神经网络(convolutionalneuralnetworks,cnn)的算法应用越来越广泛,如应用于图像识别、语音识别和文本分类等场景中。

现有技术中,用户需要使用一个神经网络算法时,通常需要编写特定的程序代码,才能得到特定功能的神经网络模型文件。

存在的问题是,用户编写程序代码的过程通常比较复杂,如此使得终端获得该程序代码对应神经网络模型文件过程耗时。



技术实现要素:

本发明实施例提供一种处理神经网络模型文件的方法及终端,以解决终端获取神经网络模型文件的过程耗时的问题。

为了解决上述技术问题,本发明实施例是这样实现的:

第一方面,提供一种处理神经网络模型文件的方法,该方法包括:在终端显示神经网络模型设置界面的情况下,终端接收用户的第一输入,第一输入为用户触发输入第一模型数据的操作,第一模型数据至少包括第一种类参数;响应于第一输入,终端根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

第二方面,本发明实施例还提供了一种处理神经网络模型文件的方法,该方法包括:服务器接收终端发送的第一模型数据,第一模型数据至少包括第一种类参数;服务器根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件;服务器向终端发送第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,该文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

第三方面,本发明实施例还提供了一种终端,该终端包括接收模块和获取模块;接收模块,用于在终端显示神经网络模型设置界面的情况下,接收用户的第一输入,第一输入为用户触发输入第一模型数据的操作,第一模型数据至少包括第一种类参数;获取模块,用于响应于接收模块接收的第一输入,根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

第四方面,本发明实施例还提供了一种服务器,该服务器包括:接收模块、获取模块和发送模块;接收模块,用于接收终端发送的第一模型数据,第一模型数据至少包括第一种类参数;获取模块,用于根据接收模块接收的第一模型数据,获取第一种类参数指示的第一神经网络模型文件;发送模块,用于向终端发送获取模块获取的第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

第五方面,本发明实施例提供了一种终端,包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面的处理神经网络模型文件的方法的步骤。

第六方面,本发明实施例提供了一种服务器,包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第二方面的处理神经网络模型文件的方法的步骤。

第七方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面的处理神经网络模型文件的方法的步骤。

第八方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第二方面的处理神经网络模型文件的方法的步骤。

本发明实施例中,终端可以向用户提供神经网络模型设置界面,以支持用户输入需求的神经网络模型文件的模型数据,使得终端可以根据该模型数据获取该神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以使得终端获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。

附图说明

图1为本发明实施例提供的一种可能的安卓操作系统的架构示意图;

图2为本发明实施例提供的一种处理神经网络模型文件的方法的流程示意图;

图3为本发明实施例提供的另一种处理神经网络模型文件的方法的流程示意图;

图4为本发明实施例提供的另一种处理神经网络模型文件的方法的流程示意图;

图5为本发明实施例提供的另一种处理神经网络模型文件的方法的流程示意图;

图6为本发明实施例提供的一种可能的终端的结构示意图;

图7为本发明实施例提供的另一种可能的终端的结构示意图;

图8为本发明实施例提供的一种可能的服务器的结构示意图;

图9为本发明实施例提供的一种终端的硬件结构示意图;

图10为本发明实施例提供的一种服务器的硬件结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本文中的“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。“多个”是指两个或多于两个。

需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

本发明实施例提供的处理神经网络模型文件的方法及终端,用户不需要编写复杂的程序代码,而是通过终端的神经网络模型设置界面与终端交互,便可以获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。

本发明实施例中的终端可以为具有操作系统的终端。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本发明实施例不作具体限定。

下面以安卓操作系统为例,介绍一下本发明实施例提供的处理神经网络模型文件的方法所应用的软件环境。

如图1所示,为本发明实施例提供的一种可能的安卓操作系统的架构示意图。在图1中,安卓操作系统的架构包括4层,分别为:应用程序层、应用程序框架层、系统运行库层和内核层(具体可以为linux内核层)。

其中,应用程序层包括安卓操作系统中的各个应用程序(包括系统应用程序和第三方应用程序)。

应用程序框架层是应用程序的框架,开发人员可以在遵守应用程序的框架的开发原则的情况下,基于应用程序框架层开发一些应用程序。

系统运行库层包括库(也称为系统库)和安卓操作系统运行环境。库主要为安卓操作系统提供其所需的各类资源。安卓操作系统运行环境用于为安卓操作系统提供软件环境。

内核层是安卓操作系统的操作系统层,属于安卓操作系统软件层次的最底层。内核层基于linux内核为安卓操作系统提供核心系统服务和与硬件相关的驱动程序。

以安卓操作系统为例,本发明实施例中,开发人员可以基于上述如图1所示的安卓操作系统的系统架构,开发实现本发明实施例提供的处理神经网络模型文件的方法的软件程序,从而使得该处理神经网络模型文件的方法可以基于如图1所示的安卓操作系统运行。即处理器或者终端设备可以通过在安卓操作系统中运行该软件程序实现本发明实施例提供的处理神经网络模型文件的方法。

本发明一种具体的实施例中,通过图2所示的处理神经网络模型文件的方法的流程图对本发明实施例提供的处理神经网络模型文件的方法进行详细描述。其中,虽然在方法流程图中示出了本发明实施例提供的处理神经网络模型文件的方法的逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。例如,图2中示出的处理神经网络模型文件的方法可以包括s201和s202:

s201、在终端显示神经网络模型设置界面的情况下,终端接收用户的第一输入,第一输入为用户触发输入第一模型数据的操作,第一模型数据至少包括第一种类参数。

其中,第一种类参数用于指示第一神经网络模型文件的文件种类,该文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。也就是说,本发明实施例提供的神经网络模型文件可以对应图像识别类、语音识别类或文本分类等类别的神经网络算法。

可选的,上述图像识别类具体可以包括人物图像识别、动物图像识别、静物图像识别、手写字体识别(如手写数字识别、手写汉字识别或手写英文字母识别等)。

可以理解的是,上述终端显示的神经网络模型设置界面可以由终端中的一个应用程序提供,或者,该神经网络模型设置界面可以由终端的浏览器中的一个网页提供的,本发明实施例对此不作具体限定。

其中,上述神经网络模型设置界面可以包括用于用户进行第一输入的区域,例如,用于用户进行第一输入的选项、控件或输入框等。具体的,上述神经网络模型设置界面可以包括用于用户输入第一模型数据的区域。

一般而言,终端具有触控屏,该触控屏可以用于接收用户的输入,并响应于该输入以执行该输入指示的操作。

可选的,上述第一输入为用户在终端的神经网络模型设置界面上的触屏输入或者指纹输入。其中,上述触屏输入为用户对终端的触控屏的按压输入、长按输入、滑动输入、点击输入和悬浮输入(用户在触控屏附近的输入)等。指纹输入为用户对终端的指纹识别器的滑动指纹、长按指纹、单击指纹和双击指纹等。重力输入为用户对终端特定方向的晃动、特定次数的晃动等输入。按键输入对应于用户对终端的电源键、音量键、home键等按键的单击输入、双击输入、长按输入和组合按键输入等输入。

其中,本发明实施例提供的终端接收用户在终端的神经网络模型设置界面上的第一输入的方式可以为上述多种输入方式中的一种,本发明实施例对此不作限定。

s202、响应于第一输入,终端根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件。

其中,上述第一模型数据为用户需要的第一神经网络模型文件对应的模型数据。

可以理解的是,一个神经网络模型文件可以为一个神经网络算法对应的程序代码,该程序代码可以在终端上执行,实现该程序代码对应的功能。

示例性的,第一模型数据中的第一种类参数指示的第一神经网络模型文件,可以为图像识别种类的神经网络模型文件。其中,该神经网络模型文件对应的程序代码在终端上执行时,终端可以实现对图像的识别,如识别人物图像或识别动物图像等。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法,终端可以向用户提供神经网络模型设置界面,以支持用户输入需求的神经网络模型文件的模型数据,使得终端可以根据该模型数据获取该神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以使得终端获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。

在一种可能的实现方式中,本发明实施例提供的处理神经网络模型文件的方法,还可以包括可以用于提供用户需求的神经网络模型的服务器。具体的,如图3所示,为本发明实施例提供的另一种处理神经网络模型文件的方法的流程示意图。图3示出的方法中,上述s202可以替换为s202a和s202b:

s202a、终端向服务器发送第一模型数据,第一模型数据用于获取第一种类参数指示的第一神经网络模型文件。

其中,上述终端中提供神经网络模型设置界面实现的人机交互的接口时,终端接收用户输入的第一模型数据之后,可以根据该模型数据从服务器侧获取第一神经网络模型文件。

s202b、终端接收服务器发送的第一神经网络模型文件。

其中,上述服务器发送该第一神经网络模型文件之前,可以在服务器侧获取该第一神经网络模型文件。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法,终端可以根据用户输入的模型数据,从服务器获取该模型数据对应的神经网络模型文件。如此,有利于解决终端获取用户需求的神经网络模型文件过程耗时的问题。

在一种可能的实现方式中,上述第一神经网络模型文件包括至少三个网络层的第一信息,一个网络层的第一信息包括一个网络层的第二种类参数、一个网络层的第一功能参数以及一个网络层的顺序标识。

可选的,第二种类参数用于指示网络层的功能种类,该功能种类包括输入层、卷积层、池化层、全连接层以及输出层。

一般而言,一个神经网络模型文件通常包括至少三个网络层为一个输入层、一个输出层和至少一个功能层,一个功能层可以为上述卷积层、池化层或全连接层中的任一种。

示例性的,一个神经网络模型文件(记为神经网络模型文件1)的第二种类参数为上述图像识别类中的手写数字识别。神经网络模型文件1包括6个网络层。其中,第一个网络层(记为网络层1)的第一信息中的第二种类参数为“输入层”、第一功能参数为“32*32”,顺序标识为“1”;即该神经网络模型文件1的输入层待处理的图像为尺寸为32*32的像素矩阵。第二个网络层(记为网络层2)的第一信息中的第二种类参数为“卷积层”、第一功能参数为6*5*5,顺序标识为“2”;即网络层2包括6个尺寸为5*5的卷积核。第三个网络层(记为网络层3)的第一信息中的第二种类参数为“池化层”、第一功能参数为6*2*2,顺序标识为“3”;即网络层2包括6个规格为2*2的具有池化功能的矩阵。第四个网络层(记为网络层4)的第一信息中的第二种类参数为“全连接层”、第一功能参数为120,顺序标识为“4”;即网络层4的矩阵的尺寸为120(即1*120)像素的矩阵。第五个网络层(记为网络层5)的第一信息中的第二种类参数为“全连接层”、第一功能参数为100,顺序标识为“5”;即网络层5的矩阵的尺寸为100(即1*100)像素的矩阵(也称为算子)。第六个网络层(记为网络层6)的第一信息中的第二种类参数为“输出层”、第一功能参数为10,顺序标识为“6”;即网络层6的矩阵的尺寸为10(即1*10)像素的矩阵。

可以理解的是,一个神经网络模型文件中的卷积层、池化层、全连接层均可以为多个。

需要说明的是,一个神经网络模型文件中的输入层用户接收外部对该神经网络模型文件的输入。一个神经网络模型文件中的卷积层可以通过其中的一个或多个卷积核对前一网络层的输出结果(如一个图像的像素矩阵)进行滤波、降噪处理。一个神经网络模型文件中的池化层可以缩小前一网络层的输出结果,如一个图像的像素矩阵的尺寸,从而减少该神经网络模型文件中的参数,以方便终端执行该神经网络模型文件。一个神经网络模型文件中的全连接层中的所有节点和前一网络层的所有节点相互连接,可以用于完成分类任务。一个神经网络模型文件中的输出层用于输出该神经网络模型文件的处理结果。

在一种可能的实现方式中,本发明实施例提供的处理神经网络模型文件的方法,第一模型数据还包括至少三个网络层中至少一个网络层的第二信息、至少三个网络层的训练数据集以及至少三个网络层的测试数据集;其中,一个网络层的第二信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第二功能参数和一个网络层的顺序标识。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法中,用户可以在终端提供的上述神经网络模型设置界面中输入用于生成神经网络模型文件的一个或多个模型数据。

示例性的,用于输入的第一模型中可以包括至少三个网络层中每个网络层的顺序标识,第一个网络层的第二信息中的顺序标识为“1”、第二个网络层的第二信息中的顺序标识为“2”、第三个网络层的第二信息中的顺序标识为“3”、第四个网络层的第二信息中的顺序标识为“4”、第五个网络层的第二信息中的顺序标识为“5”、第六个网络层的第二信息中的顺序标识为“6”。另外,用户还可以输入第二个网络层的第二信息中的第二种类参数为“卷积层”、第二功能参数为6*3*3,即用户指示的第二个网络层包括6个尺寸为3*3的卷积核。

可以理解的是,本发明实施例提供的第一神经网络模型文件可以为经过一些训练数据训练、并经过一些测试数据测试得到的。

示例性的,结合上述终端获得的神经网络模型文件1,用户在终端的神经网络模型设置界面输入的上述第二个网络层的第二信息中第二功能参数为6*3*3。上述服务器可以对用户获取的第二个网络层的第二功能参数进行训练和测试,得到该第二个网络层的第一功能参数,如上述网络层2的第一功能参数为6*5*5。

可选的,本发明实施例提供的处理神经网络模型文件的方法,上述神经网络模型设置界面中可以包括第一区域,第二区域,第三区域、第四区域、第五区域和第六区域;其中,第一区域用于输入第一种类参数,第二区域用于输入至少三个网络层中每个网络层的第二种类参数,第三区域用于输入至少三个网络层中每个网络层的第二功能参数,第四区域用于输入至少三个网络层中每个网络层的顺序标识,第五区域用于输入至少三个网络层的训练数据,以及第六区域用于输入至少三个网络层的测试数据。其中,用户可以在上述各个区域输入相应的模型数据。

可选的,本发明实施例提供的神经网络模型设置界面可以向用户提供至少三个网络层的多个预设模型数据。

具体的,本发明实施例提供的神经网络模型设置界面中的上述每一个区域可以包括一个或多个选项或输入框等控件。例如,一个网络层的第二信息中的第二种类参数、第一功能参数,顺序标识可以分别对应一个选项。其中,该选项可以用于用户手动输入相应的数据,或者,该选项用于用户从终端提供的一个或多个预设模型数据中选择一个预设模型数据。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法,用户可以在终端提供的神经网络模型设置界面中输入多个用于生成神经网络模型文件的模型数据。如此,使得终端根据该模型数据获取的神经网络模型文件为用户需求的神经网络模型文件。从而,可以提高用户使用终端获取神经网络模型文件时的用户体验。

在一种可能的实现方式中,如图4所示,本发明实施例提供的处理神经网络模型文件的方法,在上述s202之后,还可以包括s203和s204:

s203、终端根据至少三个网络层的第一信息,生成第一神经网络模型文件对应的三维可视化模型。

示例性的,终端可以根据上述神经网络模型文件1中的各个模型参数生成一个三维可视化模型(记为三维可视化模型1)。其中,三维可视化模型1包括6个网络层,即上述网络层1-网络层6的三维渲染结果。

s204、终端显示三维可视化模型。

示例性的,向神经网络模型文件1的网络层1输入一张图像,该图像(即输入矩阵)经过网络层1的处理后,得到32*32像素组成的矩阵(记为矩阵1);该矩阵1经过网络层2中包括的6个尺寸为5*5的卷积核的卷积运算,得到6个28*28(32-5+1=28)像素组成的矩阵(记为矩阵2);该6个矩阵2经过网络层3中包括的6个尺寸为2*2的过滤器处理后,得到6个14*14(28/2=14)像素组成的矩阵(记为矩阵3);该6个矩阵3经过网络层4中包括尺寸为1*120的算子的全连接运算,得到1*120像素组成的矩阵(记为矩阵4);该矩阵4经过网络层5中包括尺寸为1*100的算子的全连接运算,得到1*100像素组成的矩阵(记为矩阵5);该矩阵5经过网络层6中包括的1*10的算子的运算,得到1*10像素组成的矩阵,即输出矩阵。其中,本发明实施例这里为了描述方便,将一些网络层的功能参数指示的“矩阵”描述为“算子”,其本质相同。

其中,终端显示的三维可视化模型1可以展示出上述神经网络模型文件1中各个网络层的结构以及该各个网络层之间的连接关系。可选的,各个网络层之间的各个矩阵节点的连接可以通线条表示。该三维可视化模型1中各个网络层为上述神经网络模型文件1中各个网络层的三维渲染结果。

需要说明的是,上述终端显示的三维可视化模型可以由用户拖动进行旋转,使得用户更清楚地获知该三维可视化模型对应的神经网络模型文件的各个网络层的结构以及各个网络层处理后的输出结果。

可选的,终端在获取到上述第一神经网络模型文件对应的三维可视化模型之后,终端还可以接收用户输入的待判断文件,如一个包括手写数字“4”的图像。随后,终端可以向该待判断文件发送至服务器,使得服务器将该待判断文件输入至第一神经网络模型文件中,得到该带判断文件被处理后的输出结果,如一个终端识别出的数字“4”。

需要强调的是,终端提供的神经网络模型设置界面还可以包括用于输入待判断文件的区域,以支持用户输入待判断文件。

进一步的,服务器可以将上述采用第一神经网络模型文件处理该待处理文件过程中,各个网络层处理后的输出结果发送至终端,使得终端根据服务器发送的各个网络层的输出结果调整三维可视化模型的输出结果。

进一步的,若用户再次输入另一个待判断文件,终端可以再次与服务器交互,以调整三维可视化模型的输出结果。

进一步的,若用户再次输入一组模型数据,终端可以再次与服务器交互,以获取该模型数据中包括的第二种类参数所指示的神经网络模型文件。

可选的,终端还可以生成并显示神经网络模型文件对应的二维可视化模型。类似的,本发明实施例中对二维可视化模型的描述可以参照上述实施例中对三维可视化的描述,本发明实施例对此不再详细描述。

可选的,三维可视化模型用于显示图像识别类的神经网络模型文件,二维可视化模型用于显示除图像识别类之外其他种类的神经网络模型文件。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法中,终端可以根据用户的需求,如用户输入的不同模型数据,动态调整终端显示的三维可视化模型。如此,使得用户可以直观地获知用户需求的神经网络模型文件各个网络层的结构以及该各个网络层处理待判断文件的输出结果,有利于提高用户使用终端处理神经网络模型文件时的用户体验。

在一种可能的实现方式中,如图5所示,本发明实施例提供的处理神经网络模型文件的方法,在上述s202a和s202b之前还可以包括s205-s207:

s205、服务器接收终端发送的第一模型数据,第一模型数据至少包括第一神经网络模型的第一种类参数。

需要说明的是,服务器中可以保存有各个种类的神经网络算法对应的用于生成神经网络模型文件的模板文件,其中,一个模板文件中包括的至少三个网络的预设模型数据。

s206、服务器根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件。

可选的,服务器中还可以包括预定义的各个第一种类参数对应的神经网络模型文件。

示例性的,用户输入的第一种类参数(记为种类参数1)为上述图像识别类中的手写数字识别,上述神经网络模型文件1为服务器中保存的预定义的神经网络模型文件。此时,服务器可以根据该种类参数1获取到该神经网络模型文件1。

s207、服务器向终端发送第一神经网络模型文件。

需要说明的是,本发明实施例提供的处理神经网络模型文件的方法,服务器可以获得用户在终端侧输入的模型数据,使得服务器可以根据该模型数据获取到用户需要的神经网络模型文件。从而,服务器可以与终端进行交互,使得终端可以从服务器获取用户需要的神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以从获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。

可选的,服务器还可以根据用户输入的第一模型数据,生成包括上述至少三个网络层的第一信息的第一神经网络模型文件,一个网络层的第一信息包括一个网络层的第二种类参数、一个网络层的第一功能参数以及一个网络层的顺序标识。

在一种可能的实现方式中,本发明实施例提供的处理神经网络模型文件的方法,上述s206具体包括s206a和s206b:

s206a、服务器根据第一模型数据,获取服务器中保存的第一种类参数对应的其它网络层的第三信息,其它网络层为至少三个网络层中除至少一个网络层之外的网络层。

示例性的,用户输入的第一模型文件为用于生成第一神经网络模型文件的部分模型数据,此时服务器可以获取该的服务器中保存的上述一个模板文件(如模板文件1)中包括的至少三个网络的预设模型数据。其中,上述第一种类参数对应该模板文件1,一个上述其它网络层的第三信息可以为该模板文件1中的一个预设模板数据。

s206b、服务器根据第一模型数据和其它网络层的第三信息,生成第一神经网络模型文件。

其中,一个网络层的第三信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第三功能参数、一个网络层的顺序标识。

可以理解的是,上述实施例中一个网络的第三功能参数可以为服务器在得到该网络层的第一功能参数之前未经过训练和测试的功能参数。

需要说明的是,即使用户针对一个神经网络模型文件不能输入该神经网络模型文件对应的所有模型数据,该服务器也可以获取该服务器中保存的相应的模板文件及该模板文件中的预设模型数据。如此,服务器可以在用户输入需要的神经网络模型文件的部分模型数据时,使得终端能够获取需要的神经网络模型文件。如此,有利于提高用户使用终端处理神经网络模型文件时的用户体验。

在一种可能的实现方式中,本发明实施例提供的处理神经网络模型文件的方法,上述s206具体包括s206c和s206d:

s206c、服务器根据第一模型数据,获取服务器中保存的第一种类参数对应的至少三个网络层的第三信息。

示例性的,用户输入的第一模型数据为用于生成第一神经网络模型文件的所有模型数据,此时服务器可以获取该的服务器中保存的上述一个模板文件(如模板文件1),并使用用户输入的所用模型数据替换模板文件1中包括至少三个网络的预设模型数据。其中,上述第一种类参数对应该模板文件1,一个上述其它网络层的第三信息可以为该模板文件1中的一个预设模板数据。

s206d、服务器根据第一模型数据和至少三个网络层的第三信息,生成第一神经网络模型文件。

其中,一个网络层的第三信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第三功能参数和一个网络层的顺序标识。

需要说明的是,用户可以输入一个需要的神经网络模型文件对应的所有模型数据的情况下,服务器可以根据该所有模型数据获取该需要的神经网络模型文件。如此,有利于服务器获取符合用户需求的神经网络模型文件,有利于提高用户使用终端处理神经网络模型文件时的用户体验。

在本发明一种具体的实施例中,如图6所示,为本发明实施例提供的一种可能的终端的结构示意图。图6中示出的终端60包括接收模块601和获取模块602;

其中,接收模块601,用于在终端60显示神经网络模型设置界面的情况下,接收用户的第一输入,第一输入为用户触发输入第一模型数据的操作,第一模型数据至少包括第一种类参数;获取模块602,用于响应于接收模块601接收的第一输入,根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,该文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

在一种可能的实现方式中,获取模块602,具体用于向服务器发送第一模型数据,第一模型数据用于获取第一种类参数指示的第一神经网络模型文件;接收服务器发送的第一神经网络模型文件。

在一种可能的实现方式中,上述第一神经网络模型文件包括至少三个网络层的第一信息,一个网络层的第一信息包括一个网络层的第二种类参数、一个网络层的第一功能参数以及一个网络层的顺序标识;其中,第二种类参数用于指示网络层的功能种类,该功能种类包括输入层、卷积层、池化层、全连接层以及输出层。

在一种可能的实现方式中,上述第一模型数据还包括至少三个网络层中至少一个网络层的第二信息、至少三个网络层的训练数据集以及至少三个网络层的测试数据集;其中,一个网络层的第二信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第二功能参数和一个网络层的顺序标识。

在一种可能的实现方式中,如图7所示,终端60还包括生成模块603和显示模块604;其中,生成模块603,用于在获取模块602根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件之后,根据至少三个网络层的第一信息,生成第一神经网络模型文件对应的三维可视化模型;显示模块604,用于显示生成模块603生成的三维可视化模型。

在一种可能的实现方式中,上述神经网络模型设置界面中包括第一区域,第二区域,第三区域、第四区域、第五区域和第六区域;其中,第一区域用于输入第一种类参数,第二区域用于输入至少三个网络层中每个网络层的第二种类参数,第三区域用于输入至少三个网络层中每个网络层的第二功能参数,第四区域用于输入至少三个网络层中每个网络层的顺序标识,第五区域用于输入至少三个网络层的训练数据,以及第六区域用于输入至少三个网络层的测试数据。

本发明实施例提供的终端60能够实现上述方法实施例中终端实现的各个过程,为避免重复,这里不再赘述。

本发明实施例提供的终端,该终端可以向用户提供神经网络模型设置界面,以支持用户输入需求的神经网络模型文件的模型数据,使得终端可以根据该模型数据获取该神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以使得终端获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。

在本发明一种具体的实施例中,如图8所示,为本发明实施例提供的一种可能的服务器的结构示意图。图8示出的服务器80包括接收模块801、获取模块802和发送模块803;接收模块801,用于接收终端发送的第一模型数据,第一模型数据至少包括第一种类参数;获取模块802,用于根据接收模块801接收的第一模型数据,获取第一种类参数指示的第一神经网络模型文件;发送模块803,用于向终端发送获取模块802获取的第一神经网络模型文件;其中,第一种类参数用于指示第一神经网络模型文件的文件种类,该文件种类包括图像识别的类别、语音识别的类别以及文本分类的类别。

在本发明一种具体的实施例中,第一神经网络模型文件包括至少三个网络层的第一信息,一个网络层的第一信息包括一个网络层的第二种类参数、一个网络层的第一功能参数以及一个网络层的顺序标识;其中,第二种类参数用于指示网络层的功能种类,该功能种类包括输入层、卷积层、池化层、全连接层以及输出层。

在一种可能的实现方式中,第一模型数据还包括至少三个网络层中至少一个网络层的第二信息、至少三个网络层的训练数据集以及至少三个网络层的测试数据集;其中,一个网络层的第二信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第二功能参数和一个网络层的顺序标识。

在一种可能的实现方式中,获取模块802,具体用于根据第一模型数据,获取服务器80中保存的第一种类参数对应的其它网络层的第三信息,其它网络层为至少三个网络层中除至少一个网络层之外的网络层;根据第一模型数据和其它网络层的第三信息,生成第一神经网络模型文件;其中,一个网络层的第三信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第三功能参数、一个网络层的顺序标识。

在一种可能的实现方式中,获取模块802,具体用于根据第一模型数据,获取服务器中保存的第一种类参数对应的至少三个网络层的第三信息;根据第一模型数据和至少三个网络层的第三信息,生成第一神经网络模型文件;其中,一个网络层的第三信息包括以下至少一种:一个网络层的第二种类参数、一个网络层的第三功能参数、一个网络层的顺序标识。

本发明实施例提供的服务器80能够实现上述方法实施例中服务器实现的各个过程,为避免重复,这里不再赘述。

本发明实施例提供的服务器,该服务器可以获得用户在终端侧输入的模型数据,使得服务器可以根据该模型数据获取到用户需要的神经网络模型文件。从而,服务器可以与终端进行交互,使得终端可以从服务器获取用户需要的神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以从获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。在本发明一种具体的实施例中,图9为实现本发明实施例提供的一种终端的硬件结构示意图,该终端100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图9中示出的终端结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。

其中,用户输入单元107,用于在终端显示神经网络模型设置界面的情况下,接收用户的第一输入,第一输入为用户触发输入第一模型数据的操作,第一模型数据至少包括第一神经网络模型的第一种类参数;处理器110,用于响应于用户输入单元107接收的第一输入,根据第一模型数据,获取第一种类参数指示的第一神经网络模型文件。

本发明实施例提供的终端,该终端可以向用户提供的用户输入需求的神经网络模型文件的模型数据的神经网络模型设置界面,使得终端可以根据该模型数据获取该神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以使得终端获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。

应理解的是,本发明实施例中,射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信系统与网络和其他设备通信。

终端通过网络模块102为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。

音频输出单元103可以将射频单元101或网络模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103包括扬声器、蜂鸣器以及受话器等。

输入单元104用于接收音频或视频信号。输入单元104可以包括图形处理器(graphicsprocessingunit,gpu)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或其它存储介质)中或者经由射频单元101或网络模块102进行发送。麦克风1042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元101发送到移动通信基站的格式输出。

终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器105还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。

显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1061。

用户输入单元107可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作)。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。

进一步的,触控面板1071可覆盖在显示面板1061上,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图9中,触控面板1071与显示面板1061是作为两个独立的部件来实现终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现终端的输入和输出功能,具体此处不做限定。

接口单元108为外部装置与终端100连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到终端100内的一个或多个元件或者可以用于在终端100和外部装置之间传输数据。

存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

处理器110是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。

终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

另外,终端100包括一些未示出的功能模块,在此不再赘述。

可选的,本发明实施例还提供一种终端,包括处理器110,存储器109,存储在存储器109上并可在所述处理器110上运行的计算机程序,该计算机程序被处理器110执行时实现上述处理神经网络模型文件的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

在本发明一种具体的实施例中,图10为实现本发明实施例提供的一种服务器的硬件结构示意图。图10示出的服务器2600包括:处理器2601、收发机2602、存储器2603、用户接口2604和总线接口。

其中,收发机2602,用于接收终端发送的第一模型数据,第一模型数据至少包括第一神经网络模型的第一种类参数;处理器2601,用于根据收发机2602接收的第一模型数据,获取第一种类参数指示的第一神经网络模型文件;收发机2602,该用于向终端发送处理器2601获取的第一神经网络模型文件。

本发明实施例提供的服务器,该服务器可以获得用户在终端侧输入的模型数据,使得服务器可以根据该模型数据获取到用户需要的神经网络模型文件。从而,服务器可以与终端进行交互,使得终端可以从服务器获取用户需要的神经网络模型文件。也就是说,用户不需要编写复杂的程序代码便可以从获取需求的神经网络模型文件。如此,可以解决终端获取需求的神经网络模型文件的过程耗时的问题。并且,减少了用户在使用终端获取需求的神经网络模型文件时的操作,可以提高该操作过程中的用户体验。本发明实施例中,在图10中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器2601代表的一个或多个处理器和存储器2603代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机2602可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的服务器,用户接口2604还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。处理器2601负责管理总线架构和通常的处理,存储器2603可以存储处理器2601在执行操作时所使用的数据。

另外,服务器2600还包括一些未示出的功能模块,在此不再赘述。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述终端执行的处理神经网络模型文件的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述服务器执行的处理神经网络模型文件的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如rom、ram、磁碟或者光盘等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1