基于人工智能的深度学习网络训练方法及装置与流程

文档序号:12124438阅读:244来源:国知局
基于人工智能的深度学习网络训练方法及装置与流程

本发明涉及机器学习技术领域,尤其涉及一种基于人工智能的深度学习网络训练方法及装置。



背景技术:

深度学习,具体来说是一种含多隐层的机器学习结构。随着深度学习组建网络的日益复杂,训练数据量的日益增大,单机训练速度过慢的弊端逐渐凸显,从而一种采用集群服务器运行深度学习框架的方式开始出现。

尽管目前各种开源的深度学习框架层出不穷,但深度学习框架的使用依旧相对普通用户具有一定难度,需要用户具有一定经验。现有技术中,对深度学习框架进行使用时,需要用户在命令行模式下提交任务到服务器集群上采用深度学习框架进行分布式训练,以实现并行的任务执行过程。

由于命令行任务操作不够简便,用户需要登录服务器修改具体网络配置,执行提交任务操作,而且在任务执行过程中用户也无法获知任务进度。因此,如何降低深度学习框架自身的使用难度,使用户专注于利用深度学习框架所执行的组建网络和训练模型本身,是一个亟待解决的问题。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的第一个目的在于提出一种基于人工智能的深度学习网络训练方法,以在集群服务器运行深度学习框架时,简化深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决现有技术中深度学习框架使用不便的技术问题。

本发明的第二个目的在于提出一种基于人工智能的深度学习网络训练装置。

本发明的第三个目的在于提出另一种基于人工智能的深度学习网络训练装置。

本发明的第四个目的在于提出一种非临时性计算机可读存储介质。

本发明的第五个目的在于提出一种计算机程序产品。

为达上述目的,本发明第一方面实施例提出了一种基于人工智能的深度学习网络训练方法,包括:

当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取所述任务提交请求所指示的运行环境包;

利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;

根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;

向所述集群服务器发送所述任务指令;

当所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练时,向所述Web前端发送分布式训练的执行进度。

本发明实施例的基于人工智能的深度学习网络训练方法,通过当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器获取所述任务提交请求所指示的运行环境包,进而利用运行环境包中的网络配置生成工具,组建符合任务提交请求所指示网络配置的深度学习网络,根据该目标任务的训练信息,生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令,以使集群服务器根据该任务指令,对深度学习网络进行分布式训练,并向Web前端发送分布式训练的执行进度。由于用户在对深度学习网络进行训练的过程中,无需在命令模式下提交任务到集群服务器上进行分布式训练,简化了深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决了现有技术中深度学习框架使用不便的技术问题。

为达上述目的,本发明第二方面实施例提出了一种基于人工智能的深度学习网络训练装置,包括:

获取模块,用于当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取所述任务提交请求所指示的运行环境包;

组建模块,用于利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;

指令生成模块,用于根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;

指令发送模块,用于向所述集群服务器发送所述任务指令;

本发明实施例的基于人工智能的深度学习网络训练装置,通过当用户通过Web前端发起目标任务的任务提交请求时,获取模块从运行深度学习框架的集群服务器获取所述任务提交请求所指示的运行环境包,进而利用运行环境包中的网络配置生成工具,组建模块组建符合任务提交请求所指示网络配置的深度学习网络,根据该目标任务的训练信息,指令生成模块生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令,并由指令发送模块对任务指令进行发送,以使集群服务器根据该任务指令,对深度学习网络进行分布式训练。由于用户在对深度学习网络进行训练的过程中,无需在命令模式下提交任务到集群服务器上进行分布式训练,简化了深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决了现有技术中深度学习框架使用不便的技术问题。

为达上述目的,本发明第三方面实施例提出了另一种基于人工智能的深度学习网络训练装置,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为:当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取所述任务提交请求所指示的运行环境包;利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

为了实现上述目的,本发明第四方面实施例提出了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器被执行时,使得服务器能够执行一种基于人工智能的深度学习网络训练方法,所述方法包括:利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

为了实现上述目的,本发明第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种基于人工智能的深度学习网络训练方法,所述方法包括:利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例所提供的一种基于人工智能的深度学习网络训练方法的流程示意图;

图2为训练系统的结构示意图;

图3为Web前端的架构示意图;

图4为任务管理模块的系统架构图;

图5为任务管理模块执行提交任务的流程示意图;

图6为任务管理模块执行终结任务的流程示意图;

图7为任务状态监控模块的架构示意图;

图8为日志分析模块的架构示意图;

图9为本发明实施例提供的一种深度学习网络训练装置的结构示意图;

图10为本发明实施例提供的又一种深度学习网络训练装置的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于人工智能的深度学习网络训练方法和装置。

图1为本发明实施例所提供的一种基于人工智能的深度学习网络训练方法的流程示意图。

如图1所示,该基于人工智能的深度学习网络训练方法包括:

步骤101,当用户通过万维网(Web)前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取任务提交请求所指示的运行环境包(Package)。

其中,任务提交请求携带运行环境包的版本号、目标任务的网络配置,以及目标任务的训练信息等信息。

目前的开源的深度学习框架对于普通用户来说,在使用方面还是具有一定的困难,用户提交任务不够灵活,需要用户在命令行模式下进行任务的提交。从而执行本实施例方法的训练系统,可以设置于运行深度学习平台的集群服务器与用户之间,从而帮助用户更加便捷地使用深度学习框架对深度学习网络进行训练。

具体地,执行本实施例方法的训练系统具有Web前端,训练系统中的功能模块可以通过Web前端的可视化界面,获取用户从预先提供的网络配置中所选定的目标任务的网络配置。另外,还可以采集用户通过可视化界面所输入的目标任务的训练信息,从而通过Web前端发起目标任务的任务提交请求。其中,训练信息包括训练数据在分布式文件系统中的存储路径,和/或分布式训练的参数。

训练系统根据任务提交请求中的版本号,从分布式文件系统中下载符合版本号的运行环境包。

步骤102,利用运行环境包中的网络配置生成工具,组建符合任务提交请求所指示网络配置的深度学习网络。

具体地,接着使用运行环境包里的网络配置生成工具,根据用户提供的配置文件,依据配置文件中所记载的网络配置,生成包括训练网络和测试网络在内的深度学习网络。

其中,训练网络是训练任务执行过程中所使用的深度学习网络结构,测试网络是在预测时所使用的深度学习网络结构。具体训练网络和测试网络的结构和相关参数,用户可以根据自己的需求进行修改和定义。

步骤103,根据目标任务的训练信息,生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令。

具体地,在任务提交请求中包含有目标任务的训练信息,训练信息包含两个方面的内容,一个方面为训练数据在分布式文件系统中的存储路径,另一个方面为分布式训练的参数并行相关配置。

下面分别针对这两个方面进行说明;

针对存储路径,由于训练数据均存储于分布式文件系统(HDFS)上,需要用户在训练之前,提供所需输入的训练数据在HDFS上的地址,并配置输入的训练数据的文件名列表,同时还需要提供所需输出的训练数据在HDFS上的地址。

而针对分布式训练的参数并行相关配置,具体来说是指针对运行深度学习框架的集群服务器采用那些节点进行训练,以及这些针对这些节点一些相关配置要求。例如:分布式训练的参数可以包括集群服务器名称、集群服务器路径、集群服务器密码、节点数、每个节点的线程数、更新间隔、是否进行热启动和/或是否自动调参中的至少一个。

在获取到所需的目标任务的训练信息后,训练系统根据这些信息对集群服务器的各个节点分配任务,并将所分配的任务转化为服务器可识别的格式,最终生成任务指令。

步骤104,向集群服务器发送任务指令,以使集群服务器根据任务指令,对深度学习网络进行分布式训练。

具体地,向分布式文件系统发送任务指令,以使分布式文件系统根据任务指令中目标任务的训练信息,将目标任务分发到集群服务器的各节点,从而集群服务器中各个节点根据任务指令对深度学习网络进行分布式训练。

本实施例中,通过当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器获取所述任务提交请求所指示的运行环境包,进而利用运行环境包中的网络配置生成工具,组建符合任务提交请求所指示网络配置的深度学习网络,根据该目标任务的训练信息,生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令,以使集群服务器根据该任务指令,对深度学习网络进行分布式训练,并向Web前端发送分布式训练的执行进度。由于用户在对深度学习网络进行训练的过程中,无需在命令模式下提交任务到集群服务器上进行分布式训练,简化了深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决了现有技术中深度学习框架使用不便的技术问题。

为了清楚说明上一实施例,本实施例对训练系统的架构进行了详细说明,图2为训练系统的结构示意图,并且本实施例提供了一种具体的应用场景,前述所提及的集群服务器具体为高性能计算(High performance computing,HPC)集群,为了对训练系统进行清楚地说明,还结合训练系统的结构,提供了训练系统所执行的另一种基于人工智能的深度学习网络训练方法。

具体地,如图2所示,训练系统包括Web前端、任务管理模块、任务状态监控模块以及日志分析模块。下面分别对Web前端、任务管理模块、任务状态监控模块以及日志分析模块进行说明。

图3为Web前端的架构示意图,Web前端具有可视化的界面,从而增加了用户友好度,如图3所示,为了实现丰富的功能性,Web前端可以包括提交任务组件和查看任务组件。

其中,提交任务组件用于生成用户所提交的任务提交请求,包括配置网络单元、配置训练单元和并行相关配置单元。

在具体执行深度学习网络训练方法时,由配置网络单元为用户提供分类任务和排序任务等实例网络配置,从而用户可以根据需要定义所需的网络配置。在用户定义网络配置之后,还可以由配置网络单元对用户定义的网络配置进行存储,从而便于用户下一次提交任务提交请求时使用。当然,用户也可以在线下预先设置好网络配置,将网络配置采用上传方式提供给配置网络单元,本实施例中对用户提供的网络配置的方式不做限定,具有极大的使用灵活性。

进而,由配置训练单元获取用户所输入的训练数据在分布式文件系统中的存储路径,具体来说,这里所说的训练数据包括了训练样本数据和训练模型,训练样本数据存储于HDFS上,用户需要提供所需输入的训练数据在HDFS上的地址,并配置输入的训练数据的文件名列表,同时还需要提供所需输出的训练模型在HDFS上的地址。

最后,并行相关配置单元用于用户配置分布式训练的参数可以包括集群服务器名称、集群服务器路径、集群服务器密码、节点数、每个节点的线程数、更新间隔、是否进行热启动和/或是否自动调参中的至少一个。

在用户分别利用配置网络、配置训练单元和并行相关配置单元完成配置之后,提交任务组件可以据此生成任务提交请求。

当用户需要终结(Kill)任务时,同样可以通过Web前端发起目标任务的任务终结请求,在任务终结请求中包括目标任务的唯一标识。

当对深度学习网络进行训练时,用户还可以通过Web前端的查看任务模块查看训练日志、预测结果、运行环境和网络配置等。其中,训练日志具体包括任务当前训练进度,训练文件在集群上每个节点上的分布,训练文件样本量分布和任务问题的原因总结等。对任务训练进度和训练文件样本量分布等信息,采用图表的形式进行展示。并且任务训练过程中会将预测结果上传到HDFS上,读取日志分析模块所拉取的预测结果文件,将其以图表的形式进行展示,使用户能直观地看到任务的训练情况。运行环境主要是展示HPC集群上运行该任务的节点的地址。网络配置则可以包括该任务使用的网络配置等相关配置等,用户可以根据此配置重新提交任务。为了便于用户下载网络配置,还可以提供下载操作,用户可以选择提交单机版任务。

图4为任务管理模块的系统架构图,如图4所示,任务管理模块为了实现提交任务和终结任务两个方面的功能,相应设置了提交任务组件以及终结任务组件。如图4所示,任务管理模块接收用户从Web前端发送的目标任务的任务提交请求,根据任务提交请求所指示的版本号,从HPC集群中的HDFS获取对应的运行环境包,并对所获取到的运行环境包进行解压,然后根据任务提交请求中所携带的网络配置信息,利用该运行环境包中的网络配置生成工具,组建符合配置的训练网络和测试网络。进而,根据任务提交请求中所携带的训练信息,向HPC集群采用发送任务指令的方式发布分布式任务,并将目标任务的相关信息存储于数据库中。

图5为任务管理模块执行提交任务的流程示意图,如图5所示,包括如下步骤:

步骤201,当用户通过Web前端发起目标任务的任务提交请求时,任务管理模块中的提交任务组件对用户进行鉴权。

为了防止非法用户提交任务导致HPC集群资源的浪费,需要对用户进行鉴权,以确定用户是否具有发起任务提交请求的权限。

步骤202,若鉴权通过,提交任务组件查询符合所述任务提交请求所指示版本的运行环境包。

步骤203,若未存储有任务提交请求所指示版本的运行环境包,提交任务组件根据任务提交请求中的版本号,从分布式文件系统中下载符合该版本号的运行环境包。

进一步,在提交请求之后,还可以在数据库中更新目标任务的执行进度。

图6为任务管理模块执行终结任务的流程示意图,如图6所示,包括如下步骤:

步骤301,用户在Web前端发起目标任务的任务终结请求。

其中,任务终结请求中包括目标任务的唯一标识。

步骤302,任务管理模块中的终结任务组件查询数据库中是否存储有该目标任务的相关信息。

步骤303,若存储有该目标任务的相关信息,则终结任务组件生成指示集群服务器终结深度学习网络分布式训练的终结指令。

步骤304,向HPC集群发送终结指令。

步骤305,HPC集群根据终结指令终结深度学习网络的分布式训练。

具体在HPC集群的每一个节点上,终结相应的进程。

进一步,在终结深度学习网络的分布式训练之后,在数据库中更新目标任务的执行进度。

为了便于用户实时对目标任务进行监控,训练平台还提供了任务状态监控模块,图7为任务状态监控模块的架构示意图,如图7所示,任务状态监控模块周期性向HPC平台发送任务状态查询请求,获取HPC平台根据任务状态查询请求所查询到的各节点的执行进度,向Web前端发送各节点的执行进度以及在数据库中对执行进度进行更新。

其中,常见的执行进度包括:

a)平台收到提交命令;

b)正在向集群发送提交命令;

c)已经成功向集群发送提交命令;

d)向集群提交任务失败;

e)任务正在集群排队;

f)任务正在集群运行;

g)任务在集群的状态不明;

h)平台收到停止命令;

i)任务已经暂停;

j)任务已经停止;

k)任务运行失败。

监控模块检查到HPC集群上执行进度为停止时,将数据库中所存储的执行进度改为任务停止,停止对该目标任务的监控。一旦出现问题,都可以在重启后,通过查询数据库,获得任务列表以及重启前任务最后的执行进度。据此对所有任务,按照最后记录的执行进度进行恢复。

同时,为了便于对日志进行分析,还提供了日志分析模块,图8为日志分析模块的架构示意图,如图8所示,日志分析模块从HPC集群上获取目标任务的训练日志,采用多线程方式,根据训练日志,对线程所对应的指标进行分析得到图表形式的分析数据,通过Web前端展示分析数据。

具体来说HPC集群节点上运行相应日志服务进程,专门用于根据日志分析模块指定的读取大小,读取偏移量等信息,将HPC集群上的训练日志发送给日志分析模块。由于多个指标之间没有相互联系,因此可以采用多线程方式进行分析,一个指标对应一个线程,从而提高日志分析的效率。这对大日志文件,超过10G的日志,分析速度提升明显。日志分析模块分析的重要指标包括各节点的执行进度、样本量分布以及准确率,这些指标均是以图表的形式向用户展示。对训练过程中,错误任务的日志进行分析,总结出任务可能的出错原因,方便用户进行快速定位问题。

为了实现上述实施例,本发明还提出一种深度学习网络训练装置。

图9为本发明实施例提供的一种深度学习网络训练装置的结构示意图。

如图9所示,该装置包括:获取模块91、组建模块92、指令生成模块93和指令发送模块94。

获取模块91,用于当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取所述任务提交请求所指示的运行环境包。

组建模块92,用于利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络。

指令生成模块93,用于根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令。

指令发送模块94,用于向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

进一步,指令生成模块93,还用于当用户通过所述Web前端发起所述目标任务的任务终结请求时,生成指示所述集群服务器终结所述深度学习网络分布式训练的终结指令。

指令发送模块94,还用于向所述集群服务器发送所述终结指令,以使所述集群服务器终结所述深度学习网络的分布式训练。

需要说明的是,前述对基于人工智能的深度学习网络训练方法实施例的解释说明也适用于该实施例的基于人工智能的深度学习网络训练装置,此处不再赘述。

本发明实施例中,通过当用户通过Web前端发起目标任务的任务提交请求时,获取模块从运行深度学习框架的集群服务器获取所述任务提交请求所指示的运行环境包,进而利用运行环境包中的网络配置生成工具,组建模块组建符合任务提交请求所指示网络配置的深度学习网络,根据该目标任务的训练信息,指令生成模块生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令,并由指令发送模块对任务指令进行发送,以使集群服务器根据该任务指令,对深度学习网络进行分布式训练。由于用户在对深度学习网络进行训练的过程中,无需在命令模式下提交任务到集群服务器上进行分布式训练,简化了深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决了现有技术中深度学习框架使用不便的技术问题。

基于上述实施例,本发明实施例还提供了一种基于人工智能的深度学习网络训练装置的可能的实现方式,图10为本发明实施例提供的又一种深度学习网络训练装置的结构示意图,在上一实施例的基础上,还包括:前端输入模块95、发起模块96和监控模块97。

前端输入模块95,用于通过所述Web前端的可视化界面,获取用户从预先提供的网络配置中所选定的所述目标任务的网络配置;采集用户通过所述可视化界面所输入的所述目标任务的训练信息;所述训练信息包括训练数据在分布式文件系统中的存储路径,和/或分布式训练的参数。

发起模块96,用于通过所述Web前端发起所述目标任务的任务提交请求;其中,所述任务提交请求携带所述网络配置,以及所述训练信息。

其中,分布式训练的参数包括集群服务器名称、集群服务器路径、集群服务器密码、节点数、每个节点的线程数、更新间隔、是否进行热启动和/或是否自动调参中的至少一个。

监控模块97,用于当所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练时,向所述Web前端发送分布式训练的执行进度。

进一步地,在本发明实施例的一种可能的实现方式中,获取模块91,包括:鉴权单元911、查询单元912和下载单元913。

鉴权单元911,用于当用户通过Web前端发起目标任务的任务提交请求时,对所述用户进行鉴权。

查询单元912,用于若鉴权通过,查询符合所述任务提交请求所指示版本的运行环境包。

下载单元913,用于若未存储有所述任务提交请求所指示版本的运行环境包,根据所述任务提交请求中的版本号,从分布式文件系统中下载符合所述版本号的运行环境包。

进一步地,在本发明实施例的一种可能的实现方式中,指令发送模块94,具体用于向分布式文件系统发送所述任务指令,以使所述分布式文件系统根据所述任务指令中所述目标任务的训练信息,将所述目标任务分发到所述集群服务器的各节点。

进一步地,在本发明实施例的一种可能的实现方式中,监控模块97,包括:结果读取单元971、图表生成单元972和图表发送单元973,以及进度查询单元974和进度发送单元975。

结果读取单元971,用于从分布式文件系统读取所述深度学习网络的预测结果。

图表生成单元972,用于根据所述预测结果,生成用于指示所述分布式训练进度的进度图表。

图表发送单元973,用于向所述Web前端发送所述进度图表。

进度查询单元974,用于周期性向所述集群服务器发送任务状态查询请求;获取所述集群服务器根据所述任务状态查询请求所查询到的各节点的执行进度。

进度发送单元975,用于向所述Web前端发送所述各节点的执行进度。

进一步地,在本发明实施例的一种可能的实现方式中,装置还包括:进度维护模块98和日志分析模块99。

进度维护模块98,用于在数据库中,更新所述目标任务的状态信息;所述状态信息包括所述运行环境包的信息和/或所述各节点的执行进度。

日志分析模块99,用于从所述集群服务器读取训练日志;采用多线程方式,根据所述训练日志,对所述线程所对应的指标进行分析得到图表形式的分析数据;通过所述Web前端展示所述分析数据。

其中,指标包括:各节点的执行进度、样本量分布以及准确率。

本发明实施例中,通过当用户通过Web前端发起目标任务的任务提交请求时,获取模块从运行深度学习框架的集群服务器获取所述任务提交请求所指示的运行环境包,进而利用运行环境包中的网络配置生成工具,组建模块组建符合任务提交请求所指示网络配置的深度学习网络,根据该目标任务的训练信息,指令生成模块生成指示集群服务器利用所运行的深度学习框架,对深度学习网络进行分布式训练的任务指令,并由指令发送模块对任务指令进行发送,以使集群服务器根据该任务指令,对深度学习网络进行分布式训练。由于用户在对深度学习网络进行训练的过程中,无需在命令模式下提交任务到集群服务器上进行分布式训练,简化了深度学习框架自身的使用难度,便于用户采用深度学习框架对深度学习网络进行训练,解决了现有技术中深度学习框架使用不便的技术问题。

为了实现上述实施例,本发明还提出另一种基于人工智能的深度学习网络训练装置,包括:处理器,以及用于存储所述处理器可执行指令的存储器。

其中,处理器被配置为:当用户通过Web前端发起目标任务的任务提交请求时,从运行深度学习框架的集群服务器,获取所述任务提交请求所指示的运行环境包;利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器被执行时,使得服务器能够执行一种基于人工智能的深度学习网络训练方法,所述方法包括:利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

为了实现上述实施例,本发明还提出一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种基于人工智能的深度学习网络训练方法,所述方法包括:利用所述运行环境包中的网络配置生成工具,组建符合所述任务提交请求所指示网络配置的深度学习网络;根据所述目标任务的训练信息,生成指示所述集群服务器利用所运行的深度学习框架,对所述深度学习网络进行分布式训练的任务指令;向所述集群服务器发送所述任务指令,以使所述集群服务器根据所述任务指令,对所述深度学习网络进行分布式训练。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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