一种人工智能模型标准化训练平台及自动化系统
技术领域
本发明属于人工智能领域,尤其涉及一种人工智能模型标准化训练平台及自动化系统。
背景技术
人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的″容器″。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。
人工智能的英文全名为Artificial Intelligence,我们通常简称为AI。广义上讲,AI可以指任何能够从事某种智能活动的计算机程序。近年来深度学习在AI领域表现尤为突出。深度学习由深层神经网络算法构成,大量的神经元输入通过不断的迭代更新参数完成模型定型。深度学习的计算强度较高,对于规模非常大的数据集而言,速度很重要。主流的深度学习框架有TensorFlow、Caffe、Keras、Theano等,它们大多在单节点服务器通过GPU加速完成模型训练。
深度学习其实就是一个反复调整模型参数的过程,得力于GPU等硬件性能的提升,使得复杂的深度学习训练成为了可能。收敛速度过慢,训练时间过长,一方面使得相同总训练时间内的迭代次数变少,从而影响准确率,另一方面使得训练次数变少,从而减少了尝试不同超参数的机会。因此,加快收敛速度是一大痛点。
此外,人工智能训练模型的时候,数据是最重要的因素,只有通过大数据训练,才能让训练的模型更接近于实际需求。比如,自动驾驶的模型训练,现在基本是靠自动驾驶汽车上路测试收集数据训练模型,路上的汽车只有采集到更多可能的场景,才能确保训练出的模型更接近实际路况。在人工智能训练中一般会遇到两个问题:第一,数据量不够如何训练模型?第二,数据量太大如何快速进行标注?随着传感器的大量采用,数据量进入洪荒时代,给人工智能进行特征标记带来困难,这时候可以采用深度学习进行标记。
为了解决上述问题,一些知名的互联网企业纷纷推出自己的人工智能模型训练平台。2018年7月18日,阿里云正式发布智能语音自学习平台公有云产品。自学习平台提供一键式的语音智能自助优化方案,支持用户进行从词级别到篇章级别的效果优化。使用自学习平台的人员只需要整理好对应领域的相关文本,如行业或公司的基本介绍、客服聊天记录、领域常用词汇和专有名词等,即可在数分钟之内无需用户人工干预、快速自行生成并部署该行业下的定制模型,提高整体智能语音识别效果;识别效果达到甚至超越AI科学家的成果。
同年9月,百度发布了一个名为EZDL的在线工具,使得任何人不用编写一行代码就可以轻松地构建、设计和部署人工智能(AI)模型。为了训练模型,EZDL需要为每个模型分配20-100个图像或超过50个音频文件,并且需要训练15分钟到一个小时。(百度声称,超过三分之二的模型准确率超过90%。)生成的算法可以部署在云中,通过API访问,或者以支持iOS、Android和其他操作系统的软件开发工具包的形式下载。
谷歌训练人工智能平台(Teachable Machine)是Google新的人工智能实验项目之一,不需要编程、调整算法模型,不需要用户了解具体算法的编写,用户直接上手体验,但需要一些上网技巧。
此外,还有一些新兴的互联网企业声称推出各自的人工智能平台,包括Sophon平台、深思平台、AVA平台、Tesra超算网络等。
Sophon是一款一站式人工智能平台。基于本平台,用户可以快速完成从特征工程、模型训练到模型上线的机器学习全生命周期开发工作。为了引导用户快速构建特定场景的解决方案,Sophon平台提供多场景的实验加工模板;同时,平台的Data Mart模块打破原来以表为中心的数据管理方式,构建以实体为中心、从″关系″和″特征″维度刻画实体的新兴数据管理方式;为了让数据科学家更加灵活的加工模型。Sophon平台提供可视化建模和代码建模两种建模方式;平台的Model Mart模块,使模型的上架、上线、及线上监控更加便捷。除此之外,Sophon平台还集成了大量面向行业领域的分析工具,包括知识图谱工具、实体画像工具、报表工具、视频分析工具等,将Sophon平台打造成一款集数据处理、模型加工、线上监控以及数据分析为一体的人工智能基础平台。
深思平台由智易科技推出,具备四大特性:超低应用门槛、高度自动化的工具链、多场景模型训练支持、超大规模的分布式系统管理能力。AVA是一个端到端的人工智能深度学习平台。将复杂的富媒体数据传输至平台的人工智能神经网络中进行分析和处理,专注为计算机视觉领域提供一套完整的数据集和模型生产工具链。Tesra超算网络由深算科技自主研发,支持的API接口是TensorFlow/Python,其他的框架和接口还在开发当中。
虽然上述平台均声称能够完成人工智能模型训练,但是发明人实际使用发现,上述平台均是模块化的集成平台,并不对外开放足够的数据接口,更多的只是商业宣传需要;并且,处于商业秘密的需要,上述平台仅仅提供简单的数据上传和单一的训练结果,并不保证模型的准确性;更重要的,大部分训练平台均是收费使用,并且需要用户的模型本身匹配专门的接口。正如Google的人工智能平台(Teachable Machine)一样,其明确是″人工智能实验项目″,是提供″用户直接上手体验″,并不在乎人工智能的准确性,因为这个过程用户″不需要编程、调整算法模型,不需要用户了解具体算法的编写″。作为人工智能的鼻祖,谷歌的平台尚且如此,更不用说其他互联网公司的上述宣传仅仅是商业需要或者只能用于特定场景下的结果验证了。
在专利技术方面,专用于人工智能模型训练的技术方案尚未见诸公开。
CN109359610A公开了构建CNN-GB模型的方法及系统、数据特征分类方法,涉及人工智能BCI技术领域,具体地说是构建CNN-GB模型的方法及系统、数据特征分类方法,其重点在于基于运动想象的BCI(英文全称为Brain Computer Interface,中文翻译为脑机接口技术),借助CNN可在原始的脑电数据上进行端到端的信息提取,并且可在多个层级之间完成这种提取任务。CNN模型包括输入层、隐藏层和输出层,具有清晰的权值共享概念,权重共享是指同层神经网元之间连接的权值是共享的,这个重要的特点能够极大减少模型的复杂度。
CN109460792A公开一种基于图像识别的人工智能模型训练方法及装置。该人工智能模型训练方法包括:获取基准样本集、注册样本集以及验证集;以GoogLeNet网络结构和基准样本集为依据训练原始人工智能模型;对原始人工智能模型进行优化迭代训练,得到至少一个优化人工智能模型;输入验证集,得到原始准确率以及与至少一个优化准确率;判断至少一个优化准确率中是否存在一个满足限制条件的最优准确率;当最优准确率存在的时候,确定最优准确率对应的优化人工智能模型为最优人工智能模型。该训练方法能够通过使用该人工智能模型以人工智能的手段来提高图像识别的效率、精度,并降低图像识别的成本。现有的在人工智能上的模型训练和迭代方式比较传统,第一步需要下载数据集到自己的开发机器上;第二步编写代码运行调试;第三步上传到带有GPU(图形处理器)的服务器上进行模型训练;第四步编写评估代码,评估模型质量;第五步编写服务代码,把模型搭建成服务;第六步收集数据,重复上面的步骤继续训练模型。
上述方案,在流程方面步骤比较多,上手比较困难,开发成本比较大,效率不高耗费时间比较长;在安装方面,网上有两种安装深度学习框架的方式,一种是使用PIP简单安装,另一种是用源码进行编译安装,由于需要依赖的类库比较多,还有对版本的要求,没有现成的自动化工具可利用,对于新手来说部署比较困难;在数据方面,训练数据非常大,在网络传输耗时,需要有很好的网络环境才可以,在训练模型方面,当训练数据增加或更新的时候,只能手动训练更新,替换,没有现成的自动更新方案,增加了时间和人力成本。
更多的涉及人工智能的技术方案均是利用已有的人工智能模型去解决具体的问题,例如CN109166105A利用人工智能进行肿瘤风险诊断、CN109087706A利用人工智能技术进行人体健康评估、CN108961246A利用人工智能技术进行电镜图像空隙识别等,丝毫不涉及如何得到人工智能模型、以及如何训练人工智能模型的过程。
可见,对于人工智能模型的训练,现有技术并未给出有效的解决的方案。
发明内容
为解决上述技术问题,本发明提出一种人工智能模型标准化训练平台及自动化系统。所述训练平台以及自动化系统,以人工智能为背景,基于Python(程序设计语言)开发,使用Docker(应用容器引擎)虚拟化技术部署到带有GPU(图形处理器)的服务器上,采用TCP/IP(网络传输协议)协议进行通讯,应用在机器学习领域,支持主流深度学习(DeepLearning,DL)TensorFlow、PyTorch、Caffe、Keras、Theano等框架。用户只需在客户端上点击按钮或者使用一些脚本命令,即可自动上传代码,下载数据使用GPU(图形处理器)训练自己的模型,并且完成模型评估和自动优化迭代。
在本发明的第一个方面,提供一种人工智能模型标准化训练平台,所述人工智能模型标准化训练平台包括至少一个客户端,所述客户端包括人机交互的用户界面,所述用户界面包括数据下载、本地调试、提交训练、本地调试日志记录、训练日志切换等组件。
所述数据下载组件连接至后台服务器,与所述后台服务器的数据库连接。
由于人工智能训练模型的时候,数据是最重要的因素,只有通过大数据训练,才能让训练的模型更接近于实际需求。然而,实际处理过程中会遇到的问题是:数据量不够或者数据量太大。
为解决上述技术问题,本发明的第一个创新点就是所述数据下载组件连接的后台服务器中包括数据预学习与数据预迁移模块。所述数据预学习模块用于根据用户要训练的模型的目标数据,从所述后台服务器的数据库中获取相同或者类似的预学习数据;通过所述预学习数据建立一个预模拟模型,通过所述预模拟模型输出训练数据,然后,通过所述数据预迁移模块,将所述输出的训练数据进行标注后,作为用户要训练的模型的训练数据,供用户通过所述数据下载组件下载使用;
这样,由于数据下载组件的数据是通过数据预学习产生,通过数据预迁移模块标注,避免了数据量不够或者数据量太大的问题;
进一步的,人工智能模型训练的另一问题在于收敛速度慢,训练时间长。深度学习的计算强度较高,对于规模非常大的数据集而言,速度很重要。
为解决上述技术问题是,本发明的另一个创新点包括使用镜像加速通道、使用Python(计算机程序设计语言)算法压缩本地代码文件、在GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本等关键技术手段。
使用镜像加速通道,可以本地客户端上快速安装模型训练所需的全部依赖数据包,在这个过程中,同时加载安装Python(计算机程序设计语言)环境。
接下来,无需等待,就可以利用Python(计算机程序设计语言)算法压缩本地代码文件,通过TCP/IP(网络传输协议)协议进行通讯,把打包好的压缩文件上传到文件存储服务器上面。
然后,利用GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本并再次利用镜像加速通道在GPU服务器上安装全部依赖数据包。
不同于现有的主流深度学习框架(TensorFlow、PyTorch、Caffe、Keras、Theano)只能在单节点服务器通过GPU加速完成模型训练会导致数据等待/延迟的方式,本发明的上述过程能够避免数据的等待和延迟。
因此,本发明的一个技术方案可以描述为如下步骤:
S101:在网站上下载代码,并解压文件,进入到代码文件下。
S102:在客户端模式下双击flyai.exe文件或终端执行flyai.exeinit(本地初始化)脚本命令。
S103:执行成功之后,程序运行第一次需要使用微信或者邮箱登录。
S104:登录成功之后客户端模式下点击″本地调试″或终端执行flyai.exe test(本地调试)命令初始化程序。
S105:执行之后会自动查找与操作系统对应的Python(计算机程序设计语言)环境,下载Python(计算机程序设计语言)环境。
S106:如果自动下载执行不成功,需要重新执行命令下载。
S107:解压并安装Python(计算机程序设计语言)环境。
S108:安装成功之后,使用脚本命令,检测代码所需要的全部Python运行依赖的安装包和对应版本。
S109:使用镜像加速通道安装全部依赖。
S110:下载本项目需要的100条调试训练数据集。
S111:调用本地main.py(程序文件)程序文件,训练模型。
进一步的,提交离线训练、保存模型、评估模型的步骤如下:
S201:在客户端模式下双击flyai.exe文件或终端执行flyai.exe train(提交训练)脚本命令。
S202:使用Python(计算机程序设计语言)算法压缩本地代码文件。
S203:通过TCP/IP(网络传输协议)协议进行通讯,把打包好的压缩文件上传到文件存储服务器上面。
S204:服务器不断轮训,接收上传的代码。解压代码并检查代码是否符合规范。
S205:如果不符合规范需要重新提交。
S206:在GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本。
S207:使用镜像加速通道在GPU服务器上安装全部依赖。
S208:预训练估算代码的训练时长和GPU的资源使用情况。
S209:下载全量的训练数据集、验证数据集合测试数据集,用来训练。
S210:调用GPU上的main.py(程序文件)程序文件,训练正式模型。
S211:模型训练完成之后,使用项目专门的评估文件进行模型质量的评估。
S212:把评估好的模型上传到分布式存储的文件服务器上。
在本发明的第二个方面,提供一种人工智能模型标准化训练自动化系统,用于人工智能下的模型的自动迭代,所述自动化系统的具体实现流程包括:
S401:通过数据管理模块,绑定数据库,支持MYSQL(关系型数据库)、MONGODB(非关系型数据库)、POSTGRESQL(对象关系型数据库)。
S402:设置数据库的导出规则,不用的数据库设置的方式不一样。
S403:设置好之后,每天定时导出数据库中数据,上传到文件服务器。
S404:管理系统定时启动训练逻辑,传输代码到GPU进行模型训练。
S405:训练成功之后,下载模型,更新模型服务,从而完成模型的自动迭代。
为了实现上述两个方面的方案能够在GPU服务器上稳定运行,本发明还提供了一套专门的脚本,用于安装显卡驱动。安装Docker(应用容器引擎)及NVIDIA-Docker(GPU应用容器引擎),启动Docker(应用容器引擎)容器,运行基于显卡的Agent(代理程序)服务。
具体实现如下:
S301:通过脚本代码,一键安装Linux(操作系统)下的GPU显卡驱动。
S302:通过脚本代码,安装最新的Docker(应用容器引擎)程序和NVIDAI-Docker(GPU应用容器引擎)程序。
S303:使用Dockerfile(应用容器配置文件)制作带有Python环境的镜像,并加入Python(计算机程序设计语言)实现的Agent(代理程序)客户端代码,该代码用与实现模型训练,实时传输Log(日志)等功能。
S304:通过脚本代码,启动Docker(应用容器引擎)容器,生成Agent(代理程序)在GPU服务器上。
优选的,其中,所述数据预迁移模块通过深度学习模块对所述预模拟模型输出的训练数据进行标注,包括利用LiDAR三维点云技术对每一点进行标注后聚类在一起聚成一个目标模型,然后再把目标具体代表的实物辨别出来。
所述模型训练利用Spark在多台服务器多个GPU上开展分布式的深度学习模型训练;所述人工智能模型标准化训练平台,依靠Spark来实现数据并行,以并行方式训练模型,对这些模型产生的参数进行迭代式平均化。
所述用户界面可以在浏览器中对网络状态以及定型参数进行可视化。
综合来看,本发明解决了传统的人工智能模型训练方式,对体验不友好,上手比较困难,环境配置不方便的问题。本发明目的在于使模型训练,部署,迭代更新自动化,算法工程师只需关注算法的设计和人工智能领域的研究,无需关系GPU资源,和模型部署,提高的开发效率,节约了人力成本和时间成本。
本发明采用的不同于现有技术的关键技术手段包括:
1.使用客户端和终端命令的方式运行人工智能的代码;
2.数据下载组件的数据是通过数据预学习产生,通过数据预迁移模块标注,避免了数据量不够或者数据量太大的问题;
3.脚本程序自动下载安装对应系统环境的Python(计算机程序设计语言)运行环境依赖;
4.自动检测Python(计算机程序设计语言)代码中所需要的依赖;
5.本地调试代码的时候使用少量数据;
6.使用客户端和终端命令自动打包代码提交到GPU服务器上进行训练;
7.在GPU服务器上通过不同的评估文件对模型评估打分;
8.关联数据库,实时展示展示数据,并切定时导出CSV(一种数据存储格式)训练数据;
9.自动训练迭代模型,自动发布成网络服务。
在训练模型的整个过程上,本发明提供了一套运行系统,来保证人工智能模型训练过程的自动化、标准化、专业化,节省时间,简化步骤。
本发明的进一步优点将结合说明书附图和现有技术对比体现。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术一个典型的封闭式人工智能模型训练平台的框架图;
图2是根据本发明实施例的一种人工智能模型标准化训练平台及自动化系统的人工智能标准化训练平台的框架图;
图3是根据本发明实施例的一种人工智能模型标准化训练平台及自动化系统的模型的本地调试训练的步骤流程图;
图4是根据本发明实施例的一种人工智能模型标准化训练平台及自动化系统的提交离线训练、保存模型、评估模型的步骤流程图;
图5是根据本发明实施例的一种人工智能模型标准化训练平台及自动化系统的人工智能下的模型自动迭代流程图;
图6是根据本发明实施例的一种人工智能模型标准化训练平台及自动化系统的专门的脚本用于安装显卡驱动在GPU服务器上的流程图。
具体实施例
为进一步说明各实施例,本发明提供有附图,这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理,配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点,图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
在其中一个实施例中,参见图1,该平台封闭成产品管理端、运营端以及开发端三个部分,用户无法进行自我模型的调试,并且,后一个部分必须等到前一个部分的调试结果,时间成本较高,更无法实现自动化迭代,对于该平台,只能输入数据,然后调用最后的结果,对于其中的参数无法调节,结果无法反馈,无法达到预期效果。产品经理、运营团队以及开发团队之间存在数据延迟以及任务的依赖处理,开发流程长,效率低。
值得注意的是,图1所示的框架为申请人自己概括的流程图,并不承认该流程图为现有技术。
在其中一个实施例中,参见图2,是本发明所述人工智能模型标准化训练平台的框架图,所述人工智能模型标准化训练平台包括至少一个客户端,所述客户端包括人机交互的用户界面,所述用户界面包括数据下载、本地调试、提交训练、本地调试日志记录、训练日志切换等组件。
所述数据下载组件连接至后台服务器,与所述后台服务器的数据库连接。
所述数据下载组件连接的后台服务器中包括数据预学习与数据预迁移模块。所述数据预学习模块用于根据用户要训练的模型的目标数据,从所述后台服务器的数据库中获取相同或者类似的预学习数据;通过所述预学习数据建立一个预模拟模型,通过所述预模拟模型输出训练数据,然后,通过所述数据预迁移模块,将所述输出的训练数据进行标注后,作为用户要训练的模型的训练数据,供用户通过所述数据下载组件下载使用;
比如:用户想要建立一个模型通过人工智能的方式来预测风力发电机的故障,用户不能等到采集到大量故障数据以后再预测,这样不符合设备维护的目标。本发明的方案中,可以先用Simulink模型建立一个风力发电机的模型,通过校正让这个模型非常接近风力发电机,然后通过该模型产生故障数据,进而训练机器学习或者深度学习的神经网络。
可通过深度学习的数据预迁移模块对大数据进行标注。在本发明的技术方案中,可以利用LiDAR三维点云技术对每一点进行标注,把这个点聚类在一起聚成一个目标模型,然后再把目标具体代表的实物辨别出来。
这样,由于数据下载组件的数据是通过数据预学习产生,通过数据预迁移模块标注,避免了数据量不够或者数据量太大的问题;
进一步的,人工智能模型训练的另一问题在于收敛速度慢,训练时间长。深度学习的计算强度较高,对于规模非常大的数据集而言,速度很重要。
为解决上述技术问题,本发明的另一个创新点包括使用镜像加速通道、使用Python(计算机程序设计语言)算法压缩本地代码文件、在GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本等关键技术手段。
使用镜像加速通道,可以本地客户端上快速安装模型训练所需的全部依赖数据包,在这个过程中,同时加载安装Python(计算机程序设计语言)环境。
接下来,无需等待,就可以利用Python(计算机程序设计语言)算法压缩本地代码文件,通过TCP/IP(网络传输协议)协议进行通讯,把打包好的压缩文件上传到文件存储服务器上面。
然后,利用GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本并再次利用镜像加速通道在GPU服务器上安装全部依赖数据包。
不同于现有的主流深度学习框架(TensorFlow、PyTorch、Caffe、Keras、Theano)只能在单节点服务器通过GPU加速完成模型训练会导致数据等待/延迟的方式,本发明的上述过程能够避免数据的等待和延迟。
在其中一个实施例中,参见图3,是模型的本地调试训练的步骤流程图。
S101:在网站上下载代码,并解压文件,进入到代码文件下。
S102:在客户端模式下双击flyai.exe文件或终端执行flyai.exeinit(本地初始化)脚本命令。
S103:执行成功之后,程序运行第一次需要使用微信或者邮箱登录。
S104:登录成功之后客户端模式下点击″本地调试″或终端执行flyai.exe test(本地调试)命令初始化程序。
S105:执行之后会自动查找与操作系统对应的Python(计算机程序设计语言)环境,下载Python(计算机程序设计语言)环境。
S106:如果自动下载执行不成功,需要重新执行命令下载。
S107:解压并安装Python(计算机程序设计语言)环境。
S108:安装成功之后,使用脚本命令,检测代码所需要的全部Python运行依赖的安装包和对应版本。
S109:使用镜像加速通道安装全部依赖。
S110:下载本项目需要的100条调试训练数据集。
S111:调用本地main.py(程序文件)程序文件,训练模型。
在其中一个实施例中,图4是提交离线训练、保存模型、评估模型的步骤流程图。
S201:在客户端模式下双击flyai.exe文件或终端执行flyai.exe train(提交训练)脚本命令。
S202:使用Python(计算机程序设计语言)算法压缩本地代码文件。
S203:通过TCP/IP(网络传输协议)协议进行通讯,把打包好的压缩文件上传到文件存储服务器上面。
S204:服务器不断轮训,接收上传的代码。解压代码并检查代码是否符合规范。
S205:如果不符合规范需要重新提交。
S206:在GPU服务器上检测代码所需要的全部Python运行依赖的安装包和对应版本。
S207:使用镜像加速通道在GPU服务器上安装全部依赖。
S208:预训练估算代码的训练时长和GPU的资源使用情况。
S209:下载全量的训练数据集、验证数据集合测试数据集,用来训练。
S210:调用GPU上的main.py(程序文件)程序文件,训练正式模型。
S211:模型训练完成之后,使用项目专门的评估文件进行模型质量的评估。
S212:把评估好的模型上传到分布式存储的文件服务器上。
在其中一个实施例中,图5是人工智能下的模型自动迭代流程图。在人工智能下的模型的自动迭代上,本发明提供了一套脚本,用于连接各种数据库,定时到出数据,自动训练模型。具体实现如下:
S401:通过数据管理模块,绑定数据库,支持MYSQL(关系型数据库)、MONGODB(非关系型数据库)、POSTGRESQL(对象关系型数据库)。
S402:设置数据库的导出规则,不用的数据库设置的方式不一样。
S403:设置好之后,每天定时导出数据库中数据,上传到文件服务器。
S404:管理系统定时启动训练逻辑,传输代码到GPU进行模型训练。
S405:训练成功之后,下载模型,更新模型服务,从而完成模型的自动迭代。
在其中一个实施例中,图6为专门的脚本用于安装显卡驱动在GPU服务器上的流程图,即在线环境安装脚本。
在GPU服务器上,本发明还提供了一套专门的脚本,用于安装显卡驱动。安装Docker(应用容器引擎)及NVIDIA-Docker(GPU应用容器引擎),启动Docker(应用容器引擎)容器运行基于显卡的Agent(代理程序)服务。具体实现如下:
S301:通过脚本代码,一键安装Linux(操作系统)下的GPU显卡驱动。
S302:通过脚本代码,安装最新的Docker(应用容器引擎)程序和NVIDAI-Docker(GPU应用容器引擎)程序。
S303:使用Dockerfile(应用容器配置文件)制作带有Python环境的镜像,并加入Python(计算机程序设计语言)实现的Agent(代理程序)客户端代码,该代码用与实现模型训练,实时传输Log(日志)等功能。
S304:通过脚本代码,启动Docker(应用容器引擎)容器,生成Agent(代理程序)在GPU服务器上。
具体训练过程还可将分布式计算与深度学习结合,采用分布式计算可极大提高计算性能,例如利用Spark在多台服务器多个GPU上开展分布式的深度学习模型训练,让模型跑得再快一点。依靠Spark来实现数据并行,以并行方式训练模型,对这些模型产生的参数进行迭代式平均化;用户界面可以在浏览器中对网络状态以及定型参数进行可视化;该用户界面通常用于调试神经网络,亦即通过选择合适的超参数来提高网络性能。模型训练完成后通常需要用一定数量的测试集来测试模型效果;模型训练完成后需要将模型保存以供模型加载部署;本发明的模型可以在分布式环境中利用GPU实现高效运算,提升模型训练效率。
以上所述仅为本发明的较佳实施例而已,上述实施例可以组合或者合并,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。