用于机器学习组件中的镜像生成方法、系统、介质及应用技术方案

技术编号:32365609 阅读:54 留言:0更新日期:2022-02-20 03:39
本发明专利技术属于镜像生成技术领域,公开了一种用于机器学习组件中的镜像生成方法、系统、介质及应用,包括:安装docker工具;生成新的jupyter容器;进行jupyter控制器代码修改,使新生成的jupyter容器具有特权模式;在新生成的jupyter容器内启动docker服务,并使用docker工具,进行打镜像。本发明专利技术提供的镜像生成方法,在kubeflow容器平台的jupyter环境中使用docker工具,而且所有通过该平台创建出来的jupyter环境都可以直接使用docker工具进行打镜像以及部署docker容器等相关操作,实现了算法人员在jupyter环境中调试+构建+部署一站式操作需求。式操作需求。式操作需求。

【技术实现步骤摘要】
用于机器学习组件中的镜像生成方法、系统、介质及应用


[0001]本专利技术属于镜像生成
,尤其涉及一种用于机器学习组件中的镜像生成方法、系统、介质及应用,具体涉及一种在机器学习jupyter组件中使用docker服务构建镜像的方法。

技术介绍

[0002]目前,jupyter环境的现有模式中,当前算法人员使用jupyter建模有以下两种方式:
[0003](1)本地客户端或者服务器使用python启动一个jupyter服务,然后通过本地浏览器进行访问。
[0004](2)私有云和公有云部署:百度BML、华为ModelArts等平台中提供的jupyterlab服务,在公有云上通过容器部署,或kubeflow私有云中的notebookserver中部署,用户通过本地浏览器访问。
[0005]为解决上述技术问题,现有技术一CN201110073978.7一种用描述语言编程的编程平台系统,将系统需求定义为一个个相应的功能键,同时定义其相应的程序块,程序块包含两部分,一部分为程序语法块,另一部分为程序变量块,每种程序变量块都对应一种计算模式系统,在实际应用时程序变量块会根据用户在选用这种需求所描述的特征进行运算,从而得到相应的变量的高级计算机程序系统。
[0006]现有技术二CN201910738817.1公开了一种基于强静态脚本语言的自然语言编程方法及装置,该方法包括:前端编译器从数据库中获取第一脚本以及元信息,将第一脚本编译成装载后的编辑器渲染器,并根据元信息校验编辑器渲染器里的内容,其中,元信息至少包括类型信息;通过编辑校验后的编辑器渲染器,生成第二脚本,并将第二脚本存储至数据库中;后端解释器从数据库中获取第二脚本以及元信息,将第二脚本编译成运行时对象,并根据元信息对运行时对象进行校验。
[0007]现有技术三CN201910804907.6公开了一种软件项目自然语言编程接口NLI的构造方法及代码生成方法。其中代码生成方法为:1)将软件项目的每一封装为NLI中的一条原语,包括:原语的功能特征描述、API调用模式、宾语参数和其他参数;2)确定原语对应的抽象语法树节点类型;每个节点类型中规定了该类型节点拥有的子节点及属性;将节点的各子节点、属性与对应的Java代码文本区域绑定后,进行NLI原语参数补全过程中,投影编辑器生成代码的抽象语法树;3)从抽象语法树的根节点开始,递归式地对各节点进行转换,将抽象语法树节点中的属性与子节点安插至其API调用模式中空缺的部分,最终,生成原语对应的Java代码。
[0008]通过上述分析,现有技术存在的问题及缺陷为:
[0009](1)现有技术第一种模式一般适用于算法人员个人测试使用,这种模式用户可以直接使用jupyter部署机器上的docker服务,但是为了保证环境稳定性,一般都是单用户使用,不会多个算法人员使用同一个jupyter服务。使得成本增加。
[0010](2)现有技术第二种模式云厂商或者kubeflow提供的jupyter服务,能支持到基于一个平台创建多个jupyter服务,但是在jupyter内无法使用docker工具,使得镜像生成效率低下。
[0011]解决以上问题及缺陷的意义为:使算法人员可以在有限的硬件资源基础上创建足够多的jupyter容器进行独立建模,并且能在容器内使用docker工具进行打镜像和部署docker服务,直接在jupyter容器内就可以完成,调试
‑‑
构建
‑‑
部署一体化操作。

技术实现思路

[0012]针对现有技术存在的问题,本专利技术提供了一种用于机器学习组件中的镜像生成方法、系统、介质及应用。
[0013]本专利技术是这样实现的,一种用于机器学习组件中的镜像生成方法,应用于客户端,所述用于机器学习组件中的镜像生成方法包括:
[0014]通过在机器学习容器创建的语言编程环境中生成新的开源引擎;
[0015]所述的机器学习开源引擎容器是基于k8s集群环境,部署的一套用于算法人员建模的notebook平台,用户可以在该平台上创建基于jupyter提供的交互式开发环境。
[0016]所述的开源引擎的主要操作流程为:
[0017](1)登陆notebook平台;
[0018](2)创建notebook服务(选择要使用的jupyter镜像,挂载的数据卷等资源);
[0019](3)进入创建好的notebook服务内进行jupyter交互式开发环境。
[0020]所述启动新的开源引擎容器的流程为:在语言编程环境中进行代码调试,代码调试完毕后,可以编写dockerfile文件,将代码和依赖环境构建为docker镜像。
[0021]所述的调试部分主要是代码调试,用户可以在jupyter交互式开发环境内执行模型训练,数据预处理等相关的python操作。
[0022]所述的构建部分主要是构建docker镜像,用户可以在jupyter交互式开发环境中基于调试完成的代码,编写dockerfile文件,将相关代码和环境构建成docker镜像保存。
[0023]所述的部署部分主要是利用构建好的docker镜像,创建docker容器来部署和发布服务。
[0024]进一步,应用于客户端,所述用于机器学习组件中的镜像生成方法还包括:
[0025]步骤一,安装docker工具,生成新的jupyter容器镜像;
[0026]步骤二,进行jupyter控制器代码修改,使新生成的jupyter容器具有特权模式;
[0027]步骤三,在新生成的jupyter容器内启动docker服务,并使用docker工具,进行打镜像。
[0028]ps:在jupyter容器内使用service docker start启动docker服务。
[0029]进一步,所述步骤一中,在jupyter镜像的基础上安装docker工具。
[0030]进一步,所述的步骤二中,控制器修改方法为修改控制器创建服务时引用的模版文件,添加特权模式相关部分的代码,将修改完毕的代码构建为新的notebook控制器镜像进行使用。使用特权模式可以让容器使用宿主机上的大部分能力,包括一些内核特性和设备访问,类似于systemctl service等系统层工具。
[0031]进一步,所述步骤三中,在新生成的jupyter容器具有特权模式的条件下启动
docker服务。
[0032]本专利技术的另一目的在于提供一种用于所述用于机器学习组件中的镜像生成方法的用于机器学习组件中的镜像生成系统,所述机器学习组件中的镜像生成系统,包括:
[0033](1)基础环境模块,支持使用该系统的基础环境为开源kubernetes集群+notebook服务环境。
[0034](2)新编程语言程序镜像模块,用于在原有jupyte程序镜像的基础之上安装docker工具,生成新jupyter镜像。使用该镜本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于机器学习组件中的镜像生成方法,其特征在于,应用于客户端,所述用于机器学习组件中的镜像生成方法包括:通过在机器学习容器创建的语言编程环境中生成新的开源引擎;启动新的开源引擎服务,在语言编程环境中进行调试、构建、部署一站式操作流程,进行打镜像部署docker容器操作。2.根据权利要求1所述用于机器学习组件中的镜像生成方法,其特征在于,所述的开源引擎的主要操作流程为:(1)登陆notebook平台;(2)创建notebook服务,选择要使用的jupyter镜像,挂载的数据卷资源;(3)进入创建好的notebook服务内进行jupyter交互式开发环境。3.根据权利要求1所述用于机器学习组件中的镜像生成方法,其特征在于,所述启动新的开源引擎容器的主要操作流程为:在语言编程环境中进行代码调试,代码调试完毕后,可以编写dockerfile文件,将代码和依赖环境构建为docker镜像。4.根据权利要求1所述用于机器学习组件中的镜像生成方法,其特征在于,所述的调试部分主要是代码调试,用户可以在jupyter交互式开发环境内执行模型训练,数据预处理相关的python操作;所述的构建部分主要是构建docker镜像,用户可以在jupyter交互式开发环境中基于调试完成的代码,编写dockerfile文件,将相关代码和环境构建成docker镜像保存;所述的部署部分主要是利用构建好的docker镜像,创建docker容器来部署和发布服务。5.根据权利要求1所述用于机器学习组件中的镜像生成方法,其特征在于,应用于客户端,所述用于机器学习组件中的镜像生成方法还包括:步骤一,安装docker工具;生成新的jupyter容器;步骤二,进行jupyter控制器代码修改,使新生成的jupyter容器具有特权模式;步骤三,在新生成的jupyter容器内启动docker服务,并使用docker工具,进行打镜像。6...

【专利技术属性】
技术研发人员:褚彦坤蒙盛标崔春艳谢国斌
申请(专利权)人:神州数码系统集成服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1