技术特征:
1.一种基于k8s的机器学习模型训练方法,其特征在于,包括以下步骤:s1:依次构建模型训练所需的镜像、算法和数据集,添加模型信息,并创建模型训练输出和训练任务日志输出的文件夹;s2:将模型训练所需的镜像、算法、数据集、模型信息和文件夹保存到数据库;s3:扫描数据库中的任务训练数据表,查看可执行任务,如果有,执行s5,没有则等待下一次调度;s4:查看k8s机器当前的资源是否满足任务执行需求,如果满足,执行s6,不满足,则等待下一次调度;s5:构建任务所需的yaml文件;s6:调用k8s创建执行模型训练的job和相关的pv和pvc,开始模型训练。2.根据权利要求1所述的一种基于k8s的机器学习模型训练方法,其特征在于,所述s1中,构建模型所需的镜像包括以下步骤:选择模型训练所需的基础镜像和模型训练任务执行所需的依赖;添加关于镜像的描述信息,构建镜像信息并将这些信息保存到数据库中;扫描需要创建镜像的任务表,查找需要执行的任务;在nfs服务器的/images/image_name文件夹创建dockerfile和requirement.txt文件;docker通过dockerfile和requirement.txt创建镜像;把镜像push到私有镜像仓库。3.根据权利要求1所述的一种基于k8s的机器学习模型训练方法,其特征在于,所述s1中,构建模型所需的算法包括以下步骤:上传算法的压缩包;添加算法的描述信息;解压算法压缩包到nfs服务器/algorithms/algorithm_name文件夹下;构建算法信息,并保存到数据库。4.根据权利要求1所述的一种基于k8s的机器学习模型训练方法,其特征在于,所述s1中,构建模型所需的数据集包括以下步骤:上传数据集压缩包;添加数据集的描述信息;解压数据集压缩包到nfs服务器下的/datasets/dataset_name文件夹下;构建数据集信息,并保存到数据库。5.根据权利要求1所述的一种基于k8s的机器学习模型训练方法,其特征在于,所述s7包括:构建pv和pvc所需的yaml文件;构建job所需的yaml文件。6.根据权利要求1所述的一种基于k8s的机器学习模型训练系统,其特征在于,包括任务信息构建模块、任务信息存储模块和任务执行模块;任务信息构建模块,用于依次构建模型训练所需的镜像、算法和数据集,添加模型信息,并创建模型训练输出和训练任务日志输出的文件夹;任务信息存储模块,用于将模型训练所需的镜像、算法、数据集、模型信息和文件夹保
存到数据库;任务执行模块,用于扫描数据库中的任务训练数据表,查看可执行任务,如果没有,则等待下一次调度,如果有,查看k8s机器当前的资源是否满足任务执行的需求,如果不满足,等待下一次调度,如果满足,则构建任务所需的yaml文件,调用k8s创建执行模型训练的job和相关的pv和pvc,开始模型训练。7.根据权利要求7所述的一种基于k8s的机器学习模型训练系统,其特征在于,所述任务信息构建模块包括镜像单元、算法单元和数据集单元;所述镜像单元用于选择模型训练所需的基础镜像和模型训练任务执行所需的依赖,添加关于镜像的描述信息,构建镜像信息并将这些信息保存到数据库中;扫描需要创建镜像的任务表,查找需要执行的任务;在nfs服务器的/images/image_name文件夹创建dockerfile和requirement.txt文件;docker通过dockerfile和requirement.txt创建镜像;把镜像push到私有镜像仓库;算法单元,用于上传算法的压缩包;添加算法的描述信息;解压算法压缩包到nfs服务器/algorithms/algorithm_name文件夹下;构建算法信息,并保存到数据库;数据集单元,用于上传数据集压缩包;添加数据集的描述信息;解压数据集压缩包到nfs服务器下的/datasets/dataset_name文件夹下;构建数据集信息,并保存到数据库。8.根据权利要求7所述的一种基于k8s的机器学习模型训练系统,其特征在于,所述镜像构建单元还用于把镜像标识为删除和通过异步的方式把镜像删除;所述算法构建单元还用于算法信息的查看、迭代和删除;所述数据集构建单元还用于数据集的查看和删除。9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5任一项所述方法的步骤。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5任一项所述方法的步骤。
技术总结
本发明公开了一种基于k8s的机器学习模型训练方法及系统,包括以下步骤:依次构建模型训练所需的镜像、算法和数据集;添加模型信息,并创建模型训练输出和训练任务日志输出的文件夹;将模型训练所需的信息保存到数据库;扫描数据库中的任务训练数据表,查看可执行任务,如果有,执行下一步,没有则等待下一次调度;查看K8S机器当前的资源是否满足任务执行需求,如果满足,执行下一步,不满足,则等待下一次调度;构建任务所需的yaml文件;调用k8s创建执行模型训练的job和相关的pv和pvc,开始模型训练。可以有效降低模型训练的难度,可以有效的降低系统的资源使用率,降低模型开发成本,解决了现有技术中维护成本高,模型支撑改进中支持的种类少的问题。进中支持的种类少的问题。进中支持的种类少的问题。
技术研发人员:秦志强 王超勇 邱壮壮 魏星 韩鑫 张扬
受保护的技术使用者:西安交通大学
技术研发日:2022.03.24
技术公布日:2022/6/28