深度学习训练平台的训练日志可视化系统、方法及设备与流程

文档序号:20838381发布日期:2020-05-22 17:10阅读:350来源:国知局
深度学习训练平台的训练日志可视化系统、方法及设备与流程

本发明涉及计算机技术领域,特别是涉及一种深度学习训练平台的训练日志可视化系统、方法及设备。



背景技术:

容器集群是一种将多台物理机抽象为逻辑上单一容器的技术,是一种比虚拟机技术更加节省计算资源,也更加灵活的虚拟化技术。而随着互联网应用的高速发展,通过容器集群来实现用户应用也越来越常见。kubernetes是常用的开源的容器集群管理系统,用于管理云平台中多个主机上的容器化的应用,可以为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能。

深度学习的算法人员可以在云平台中对训练模型进行训练,即在云平台中运行训练任务。但是,深度学习的算法人员只能获取到经过训练之后的训练模型,而在实际应用中,部分算法人员可能还需要训练过程中产生的日志数据,从而进行训练模型的分析改进。但由于目前的云平台中,深度学习的算法人员只能获取到经过训练之后的训练模型,因此无法满足部分算法人员获取训练日志的这一需求。

综上所述,如何有效地向用户提供训练日志,是目前本领域技术人员急需解决的技术问题。



技术实现要素:

本发明的目的是提供一种深度学习训练平台的训练日志可视化系统、方法及设备,以有效地向用户提供训练日志。

为解决上述技术问题,本发明提供如下技术方案:

一种深度学习训练平台的训练日志可视化系统,包括:

工具选取模块,用于在接收到针对目标训练任务的第一可视化请求时,选取对应于所述目标训练任务的预设的可视化工具;

工具加载模块,用于创建目标资源,在所述目标资源上加载选取出的所述可视化工具,并暴露出所述目标资源的定位地址;

可视化展示模块,用于在接收到针对所述目标训练任务的第二可视化请求时,通过所述定位地址启用所述可视化工具,将所述目标训练任务的训练日志进行显示。

优选的,还包括:

资源释放模块,用于在检测出释放条件成立时,删除所述目标资源。

优选的,所述释放条件为发送所述第一可视化请求的用户处于离线状态。

优选的,所述释放条件为发送所述第一可视化请求的用户处于离线状态,且离线时长大于预设的时长阈值。

优选的,所述工具加载模块,具体用于:

创建pod作为目标资源,在所述目标资源上加载选取出的所述可视化工具,并建立与所述目标资源绑定的kubernetes服务,通过所述kubernetes服务暴露出所述目标资源的定位地址。

优选的,还包括:

日志记录模块,用于在所述可视化展示模块将所述目标训练任务的训练日志进行显示之后,进行事件记录。

一种深度学习训练平台的训练日志可视化方法,包括:

工具选取模块在接收到针对目标训练任务的第一可视化请求时,选取对应于所述目标训练任务的预设的可视化工具;

工具加载模块创建目标资源,在所述目标资源上加载选取出的所述可视化工具,并暴露出所述目标资源的定位地址;

可视化展示模块在接收到针对所述目标训练任务的第二可视化请求时,通过所述定位地址启用所述可视化工具,将所述目标训练任务的训练日志进行显示。

优选的,还包括:

资源释放模块在检测出释放条件成立时,删除所述目标资源。

优选的,所述释放条件为发送所述第一可视化请求的用户处于离线状态。

一种深度学习训练平台的训练日志可视化设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序以实现上述任一项所述的深度学习训练平台的训练日志可视化系统。

本申请的方案中,工具选取模块在接收到针对目标训练任务的第一可视化请求时,选取对应于目标训练任务的预设的可视化工具,工具加载模块可以创建目标资源,在目标资源上加载选取出的可视化工具,并暴露出目标资源的定位地址。进而可视化展示模块在接收到针对目标训练任务的第二可视化请求时,便可以通过定位地址启用可视化工具,将目标训练任务的训练日志进行显示。可以看出,本申请的方案实现了训练日志可视化,也就使得用户可以直观地看出训练日志,进而方便地进行后续分析。并且,本申请的方案中,无需用户进行过多的操作,用户只需要发送第一可视化请求以及第二可视化请求,便可以自动实现训练日志的可视化,操作简单方便,有利于提高用户的工作效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明中一种深度学习训练平台的训练日志可视化系统的结构示意图;

图2为本发明中一种深度学习训练平台的训练日志可视化方法的实施流程图;

图3为本发明中一种深度学习训练平台的训练日志可视化设备的结构示意图。

具体实施方式

本发明的核心是提供一种深度学习训练平台的训练日志可视化系统,实现了训练日志可视化。并且操作简单方便,有利于提高用户的工作效率。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明中一种深度学习训练平台的训练日志可视化系统的结构示意图,该深度学习训练平台的训练日志可视化系统可以包括:

工具选取模块10,用于在接收到针对目标训练任务的第一可视化请求时,选取对应于目标训练任务的预设的可视化工具。

具体的,用户可以发送针对目标训练任务的第一可视化请求,用户通常为深度学习算法人员,可以在前端发起第一可视化请求。例如,用户可以在wed中输入相关指令,或者通过点击相关按钮的方式,生成第一可视化请求。

第一可视化请求中携带有用户需要进行可视化的目标训练任务这一信息,工具选取模块10便可以根据第一可视化请求中携带的信息,确定出目标训练任务,进而根据目标训练任务选取出对应于目标训练任务的预设的可视化工具。

需要说明的是,工具选取模块10根据目标训练任务选取出对应于目标训练任务的预设的可视化工具,指的是根据目标训练任务的训练框架,选取出对应于该训练框架的可视化工具。例如云平台中运行了训练任务a,训练任务b,训练任务c,且这三个训练任务的训练框架均为第一框架。并且还运行了训练任务d,训练任务e,且这两个训练任务的训练框架均为第二框架。则例如接收到针对训练任务a的第一可视化请求时,选取对应于第一框架的可视化工具,例如接收到针对训练任务d的第一可视化请求时,则选取对应于第二框架的可视化工具。当然,各个可视化工具需要预先进行设定。可视化工具的功能是在启用之后可以获取到训练任务的训练日志并发送至显示装置中进行显示,例如发送至前端的浏览器中进行显示。

工具加载模块20,用于创建目标资源,在目标资源上加载选取出的可视化工具,并暴露出目标资源的定位地址。

选取了对应于目标训练任务的预设的可视化工具之后,需要创建目标资源,在目标资源上加载选取出的可视化工具。并且由于目标资源的地址无法直接被前端获取,因此,工具加载模块20还需要暴露出目标资源的定位地址,以便后续可以通过定位地址来启用目标资源上加载的可视化工具。

考虑到kubernetes是常用的开源的容器集群管理系统,因此,本申请的工具选取模块10以及工具加载模块20通常均可以由kubernetes实现。即在本发明的一种具体实施方式中,工具加载模块20可以具体用于:

创建pod作为目标资源,在目标资源上加载选取出的可视化工具,并建立与目标资源绑定的kubernetes服务,通过kubernetes服务暴露出目标资源的定位地址。

pod是一种资源类型,具体的,是kubernetes中能够创建和部署的最小单元。该种实施方式中创建pod之后,在该pod上加载选取出的可视化工具。再将该pod与一个service进行绑定,即建立与pod绑定的kubernetes服务,从而暴露出pod的定位地址,即暴露出url。

可视化展示模块30,用于在接收到针对目标训练任务的第二可视化请求时,通过定位地址启用可视化工具,将目标训练任务的训练日志进行显示。

用户发送第一可视化请求之后,还不能看到训练日志,但是工具选取模块10以及工具加载模块20会触发各自的功能,也即完成了可视化之前的准备工作。用户发送第二可视化请求之后,便可以实现训练日志的可视化,即用户便可以在显示装置中看到训练日志。

具体的,可视化展示模块30可以接收前端发起的第二可视化请求,根据第二可视化请求中携带的信息,可以确定第二可视化请求针对的是目标训练任务。进而便可以查询出此前创建的对应于目标训练任务的目标资源以及暴露出的目标资源的定位地址。

获取了定位地址之后,便可以启用可视化工具,将目标训练任务的训练日志进行显示。具体的,例如定位地址为url,获取了目标资源的url之后,可以在前端的浏览器中自动注入该url,从而启用可视化工具。可视化工具被启用之后,可以自动获取目标训练任务的训练日志,并发送至前端进行显示,即实现了训练日志的可视化。

在本发明的一种具体实施方式中,还可以包括:

资源释放模块,用于在检测出释放条件成立时,删除目标资源。

本申请考虑到,为了实现训练日志的可视化,本申请需要通过工具加载模块20创建目标资源,而实际应用中,用户不是时刻都有训练日志可视化的需求,因此本申请的该种实施方式中还设置了资源释放模块,可以在检测出释放条件成立时,删除目标资源,从而避免资源长时间被占用的情况,也就有利于提高云平台的资源利用率。并且无需用户手动进行资源的释放,而是由资源释放模块自动完成,有利于提高方案实施的便捷性,降低用户的操作复杂度。

释放条件可以根据实际需要进行设定和调整,例如在本发明的一种具体实施方式中,释放条件为发送第一可视化请求的用户处于离线状态。

具体的,云平台可以检测出用户是否登出,即可以检测出用户是否离线。资源释放模块可以启动一个定时任务,当发现用户离线时,可以将为该用户创建的各个目标资源均删除,实现资源释放。

又如,在本发明的一种具体实施方式中,释放条件为发送第一可视化请求的用户处于离线状态,且离线时长大于预设的时长阈值。

该种实施方式中,考虑到用户有时候只是短暂离线,并且也可能存在通信不稳定等原因导致的短暂离线的情况,因此在用户的离线时长大于预设的时长阈值之后,才进行资源释放,可以提高用户的使用体验,避免误释放后需要实现可视化服务的情况。时长阈值的具体取值也可以根据实际情况进行设定和调整。

在本发明的一种具体实施方式中,还可以包括:

日志记录模块,用于在可视化展示模块30将目标训练任务的训练日志进行显示之后,进行事件记录。通过事件记录,有利于用户根据事件记录进行相关历史数据的统计,有利于进一步的综合分析,协助用户进行深度学习算法的开发。

本申请的方案中,工具选取模块10在接收到针对目标训练任务的第一可视化请求时,选取对应于目标训练任务的预设的可视化工具,工具加载模块20可以创建目标资源,在目标资源上加载选取出的可视化工具,并暴露出目标资源的定位地址。进而可视化展示模块30在接收到针对目标训练任务的第二可视化请求时,便可以通过定位地址启用可视化工具,将目标训练任务的训练日志进行显示。可以看出,本申请的方案实现了训练日志可视化,也就使得用户可以直观地看出训练日志,进而方便地进行后续分析。并且,本申请的方案中,无需用户进行过多的操作,用户只需要发送第一可视化请求以及第二可视化请求,便可以自动实现训练日志的可视化,操作简单方便,有利于提高用户的工作效率。

相应于上面的系统实施例,本发明实施例还提供了一种深度学习训练平台的训练日志可视化方法,可与上文相互对应参照。

参见图2所示,为本发明中一种深度学习训练平台的训练日志可视化方法的实施流程图,包括:

步骤s201:工具选取模块在接收到针对目标训练任务的第一可视化请求时,选取对应于目标训练任务的预设的可视化工具;

步骤s202:工具加载模块创建目标资源,在目标资源上加载选取出的可视化工具,并暴露出目标资源的定位地址;

步骤s203:可视化展示模块在接收到针对目标训练任务的第二可视化请求时,通过定位地址启用可视化工具,将目标训练任务的训练日志进行显示。

在本发明的一种具体实施方式中,还包括:

资源释放模块在检测出释放条件成立时,删除目标资源。

在本发明的一种具体实施方式中,释放条件为发送第一可视化请求的用户处于离线状态。

在本发明的一种具体实施方式中,释放条件为发送第一可视化请求的用户处于离线状态,且离线时长大于预设的时长阈值。

在本发明的一种具体实施方式中,步骤s202具体为:

工具加载模块创建pod作为目标资源,在目标资源上加载选取出的可视化工具,并建立与目标资源绑定的kubernetes服务,通过kubernetes服务暴露出目标资源的定位地址。

在本发明的一种具体实施方式中,还包括:

日志记录模块,用于在可视化展示模块将目标训练任务的训练日志进行显示之后,进行事件记录。

相应于上面的方法和系统实施例,本发明实施例还提供了一种深度学习训练平台的训练日志可视化设备,参见图3所示,该深度学习训练平台的训练日志可视化设备可以包括:

存储器301,用于存储计算机程序;

处理器302,用于执行计算机程序以实现上述任一实施例中的深度学习训练平台的训练日志可视化系统,可与上文相互对应参照。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

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