CN112416393B - 一种基于容器技术的人工智能模型远程升级方法及*** - Google Patents
一种基于容器技术的人工智能模型远程升级方法及*** Download PDFInfo
- Publication number
- CN112416393B CN112416393B CN202011292631.7A CN202011292631A CN112416393B CN 112416393 B CN112416393 B CN 112416393B CN 202011292631 A CN202011292631 A CN 202011292631A CN 112416393 B CN112416393 B CN 112416393B
- Authority
- CN
- China
- Prior art keywords
- model
- terminal
- upper computer
- layer
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于容器技术的人工智能模型远程升级方法及***,包括步骤:在上位机和终端中安装Linux操作***,并部署docker容器;建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级。本发明能够有效提升人工智能模型应用和未来维护的效率。
Description
技术领域
本发明涉及电力***人工智能技术领域,特别是一种基于容器技术的人工智能模型远程升级方法及***。
背景技术
目前,人工智能技术已经在许多领域得到应用,如智能摄像头、巡检机器人以及智能无人机等终端设备中都已有部署人工智能模型。但受限于当前人工智能技术的限制,智能模型的性能还有待进一步提高,尤其是基于深度学习的人工智能模型需要通过不断扩充样本并进行训练,因此智能模型需要不断地迭代训练,以提升智能识别性能。
现有的模型更新方法是通过离线操作,需要将设备拆下,并由专业人员将人工智能模型通过程序烧写的方式将新的模型写入到设备中。在已有大量的智能终端,采用离线烧写的方式,不仅效率低下、耗费人工,而且容易产生错误,将制约人工智能技术的应用和发展。
发明内容
有鉴于此,本发明的目的是提出一种基于容器技术的人工智能模型远程升级方法及***,适用于移动和固定式嵌入式终端内人工智能模型的更新升级,并且具有良好的跨平台性能,能够有效提升人工智能模型应用和未来维护的效率。
本发明采用以下方案实现:一种基于容器技术的人工智能模型远程升级方法,具体包括以下步骤:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级。
进一步地,所述建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息具体为:
设定上位机与终端之间的应用层交互协议,在应用层数据结构中,利用标志位区分数据帧类型,源地址为发出数据帧的设备,目的地址为接收数据帧的设备,不同数据帧携带的信息内容不同,同时为了保证传输的准确性,在应用层中增加循环冗余校验;在应用层数据基础上,继续通过WIFI通信协议处理及发送数据;
在终端中建立并维护information.txt文档,文档内容包括终端名称、硬件版本信息、操作***及关键驱动软件在内的信息;
终端在接收到信息请求数据帧后,对数据帧进行解析,在确认收到上位机发出的请求信息后,自动向上位机反馈information.txt文档信息。
进一步地,所述对模型进行模型压缩参数修剪具体为:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M(大于M,表明该卷积核的值较大,不能够直接删除),则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
进一步地,所述将新模型及运行环境进行镜像封装具体为:上位机进行docker容器的部署;在上位机中进行新模型的优化和封装,包括
根据终端反馈的软件和硬件信息,上位机中拉取终端运行环境的镜像,并配置模型运行依赖的软件包;
采用剪枝方法对新训练得到的模型进行压缩,让模型适应在终端硬件条件上运行;
利用docker提供指令,将模型及运行环境进行镜像封装。
本发明还提供了一种基于容器技术的人工智能模型远程升级***,包括终端与上位机,所述上位机与终端之间进行的步骤包括:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级。
本发明还提供了一种基于容器技术的人工智能模型远程升级***,包括上位机,所述上位机中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与远程终端之间的通信链接,接收终端主动反馈的终端硬件以及当前模型信息;
根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后控制终端重新启动;
上位机接收终端返回的再运行状态以及模型信息,最终确认完成人工智能模型的远程升级。
本发明还提供了一种基于容器技术的人工智能模型远程升级***,包括终端,所述终端中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与上位机之间的通信链接,向上位机主动反馈终端硬件以及当前模型信息;
接收上位机发送来的指令,暂停工作,并接收上位机传输来的新模型,之后根据上位机的指令重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机。
与现有技术相比,本发明有以下有益效果:
(1)本发明采用docker容器技术进行模型的更新,从而提升模型的跨平台适应性能。
(2)本发明中在新模型构建中,对模型特征提取卷积层网络进行了修剪与改进,所需计算参数少,因此网络具有轻量、对设备性能要求低的优点,对终端的运算能力要求更低。
(3)本发明在模型升级过程中,上位机和终端之间在全过程形成闭环信息反馈,因此可以确保模型的可靠升级。
附图说明
图1为本发明实施例的方法流程示意图。
图2为本发明实施例的应用层数据帧图。
图3为本发明实施例的模型剪枝压缩的结构图。
图4为本发明实施例的模型镜像封装流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
如图1所示,本实施例提供了一种基于容器技术的人工智能模型远程升级方法,具体包括以下步骤:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,设计上位机和终端间的交互协议,实现上位机对终端的交互控制,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,并通过交互接口将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级。
在本实施例中,所述建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息具体为:
首先嵌入式终端的通过WIFI通信模块建立与上位机之间的网络连接,设定上位机与终端之间的应用层交互协议,设计数据帧结构如下:
(1)信息请求数据帧
标志F | 源地址A1 | 目的地址A2 | 信息I | 校验序列FCS |
Request | Addr1 | Addr2 | Content | FCS校验 |
(2)信息反馈数据帧
(3)模型下发数据帧
标志F | 源地址A1 | 目的地址A2 | 信息I | 校验序列FCS |
Send-model | Addr1 | Addr2 | Filepath | FCS校验 |
(4)运行控制帧
标志F | 源地址A1 | 目的地址A2 | 信息I | 校验序列FCS |
Control | Addr1 | Addr2 | Run/Stop | FCS校验 |
在应用层数据结构中,利用标志位区分数据帧类型,源地址为发出数据帧的设备,目的地址为接收数据帧的设备,不同数据帧携带的信息内容不同,同时为了保证传输的准确性,在应用层中增加循环冗余校验;在应用层数据基础上,继续通过WIFI通信协议处理及发送数据;
在终端中建立并维护information.txt文档,文档内容包括终端名称、硬件版本信息、操作***及关键驱动软件在内的信息;
终端在接收到信息请求数据帧后,对数据帧进行解析,在确认收到上位机发出的请求信息后,自动向上位机反馈information.txt文档信息。
具体的,在本实施例中,上位机和终端之间通过设计的4种数据帧实现信息交互,如图2所示:
信息请求数据帧由上位机发送给终端,标志代码为0x01,数据帧中源地址为上位机设定地址,目的地址为终端地址,信息为请求信息对应代码;
信息反馈数据帧由终端发送给上位机,标志代码为0x02,源地址为终端地址,目的地址为上位机地址,信息字段中根据反馈信息的内容,携带information.txt文件路径或者接收状态代码0x01;
模型下发数据帧由上位机发送给终端,标志代码为0x03,源地址为上位机,目的地址为终端,信息中为封装镜像文件所在路径;该数据帧进一步由WIFI通信协议栈处理,并调用传输层的socket发送给定路径下的镜像文件;
运行控制帧由上位机发送给终端,标志代码为0x04,源地址为上位机,目的地址为终端,信息中根据上位机的控制指令为运行代码0x01和0x00。
如图3所示,本实施例中的参数修剪,在卷积核的裁剪中,根据卷积核中的参数值进行筛选,将“冗余”的卷积核删除以降低模型的规模,同时考虑在删除卷积核的过程中尽量少地引起识别模型的剧烈变动,在2个参数si和ri同时满足条件时才对模型进行逐层的删除,包括以下步骤:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M(大于M,表明该卷积核的值较大,不能够直接删除),则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
在本实施例中,所述将新模型及运行环境进行镜像封装具体为:上位机进行docker容器的部署;在上位机中进行新模型的优化和封装,包括
根据终端反馈的软件和硬件信息,上位机中拉取终端运行环境的镜像,并配置模型运行依赖的软件包;
采用剪枝方法对新训练得到的模型进行压缩,让模型适应在终端硬件条件上运行;
利用docker提供指令,将模型及运行环境进行镜像封装。
如图4所示,具体的,其中的镜像封装具体包括以下步骤:
将新模型所有相关文件路径整理到同一个目录,usr/home/docker;
将需要安装的依赖包写入requirement.txt;
编写dockerfile,设置工作路径,安装requirement.txt中的软件包,并在启动容器的时候,执行新的模型。主要程序如下:
FROM pytorch/pytorch
WORKDIR usr/home/docker
COPY.usr/home/docker
RUN pip install-r requirements.txt
CMD["python","new_models.py"]
运行dockerbuild建立新模型的镜像。
在本实施例中,在完成模型的镜像封装后,通过上位机和终端之间的交互,实现新模型镜像下发到终端中,终端内通过docker镜像的调用和运行,即可完成模型的更新升级。具体的,在上位机完成模型镜像的封装后,上位机发出控制指令;终端在接收到指令后暂停当前工作,并进入模型接收状态,同时向上位机反馈终端已进入接收状态;上位机在确认终端进入接收状态后,执行模型下发操作,向终端发送模型。上位机实时监视模型下发的进度,在完成模型下发完成后,上位机发送控制指令,让终端重新开始工作。
在本实施例中,当模型下发完成,终端接收上位机重新工作指令后,终端删除原有的模型并开始调用新的人工智能模型进行工作,同时向上位机反馈当前工作状态。
本实施例还提供了一种基于容器技术的人工智能模型远程升级***,包括终端与上位机,所述上位机与终端之间进行的步骤包括:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级。
本实施例还提供了一种基于容器技术的人工智能模型远程升级***,包括上位机,所述上位机中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与远程终端之间的通信链接,接收终端主动反馈的终端硬件以及当前模型信息;
根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后控制终端重新启动;
上位机接收终端返回的再运行状态以及模型信息,最终确认完成人工智能模型的远程升级。
本实施例还提供了一种基于容器技术的人工智能模型远程升级***,包括终端,所述终端中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与上位机之间的通信链接,向上位机主动反馈终端硬件以及当前模型信息;
接收上位机发送来的指令,暂停工作,并接收上位机传输来的新模型,之后根据上位机的指令重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (6)
1.一种基于容器技术的人工智能模型远程升级方法,其特征在于,包括以下步骤:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级;
所述对模型进行模型压缩参数修剪具体为:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M,则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
2.根据权利要求1所述的一种基于容器技术的人工智能模型远程升级方法,其特征在于,所述建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息具体为:
设定上位机与终端之间的应用层交互协议,在应用层数据结构中,利用标志位区分数据帧类型,源地址为发出数据帧的设备,目的地址为接收数据帧的设备,不同数据帧携带的信息内容不同,同时为了保证传输的准确性,在应用层中增加循环冗余校验;在应用层数据基础上,继续通过WIFI通信协议处理及发送数据;
在终端中建立并维护information.txt文档,文档内容包括终端名称、硬件版本信息、操作***及关键驱动软件在内的信息;
终端在接收到信息请求数据帧后,对数据帧进行解析,在确认收到上位机发出的请求信息后,自动向上位机反馈information.txt文档信息。
3.根据权利要求1所述的一种基于容器技术的人工智能模型远程升级方法,其特征在于,所述将新模型及运行环境进行镜像封装具体为:上位机进行docker容器的部署;在上位机中进行新模型的优化和封装,包括
根据终端反馈的软件和硬件信息,上位机中拉取终端运行环境的镜像,并配置模型运行依赖的软件包;
采用剪枝方法对新训练得到的模型进行压缩,让模型适应在终端硬件条件上运行;
利用docker提供指令,将模型及运行环境进行镜像封装。
4.一种基于容器技术的人工智能模型远程升级***,其特征在于,包括终端与上位机,所述上位机与终端之间进行的步骤包括:
在上位机和终端中安装Linux操作***,并部署docker容器;执行操作指令对Linux内核进行配置,并加载WiFi通信模块驱动;
建立上位机与远程终端之间的通信链接,由终端主动反馈终端硬件以及当前模型信息;
上位机根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
上位机控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后由上位机控制终端重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机,上位机最终确认完成人工智能模型的远程升级;所述对模型进行模型压缩参数修剪具体为:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M,则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
5.一种基于容器技术的人工智能模型远程升级***,其特征在于,包括上位机,所述上位机中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与远程终端之间的通信链接,接收终端主动反馈的终端硬件以及当前模型信息;
根据终端反馈的信息,配置对应的软件环境,对模型进行模型压缩参数修剪,同时将新模型及运行环境进行镜像封装;
控制终端暂停工作,将新模型下发到终端内,同时监视新模型下发进度,保证模型的完整下发,之后控制终端重新启动;
上位机接收终端返回的再运行状态以及模型信息,最终确认完成人工智能模型的远程升级;所述对模型进行模型压缩参数修剪具体为:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M,则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
6.一种基于容器技术的人工智能模型远程升级***,其特征在于,包括终端,所述终端中实现的步骤包括:
安装Linux操作***,并部署docker容器;
建立与上位机之间的通信链接,向上位机主动反馈终端硬件以及当前模型信息;
接收上位机发送来的指令,暂停工作,并接收上位机传输来的新模型,之后根据上位机的指令重新启动;
终端重新开始工作,删除原来的模型并调用新模型,同时返回再运行状态以及模型信息给上位机;所述对模型进行模型压缩参数修剪具体为:
在剪枝过程中,设定参数裁剪比例值p;整个模型有h个卷积层,在第j个卷积层中,有m个卷积核Fi,第i个卷积核有ni个权值参数fk,设定评价值si和ri,分别根据以下算式得到:
(1)对第j个卷积层,计算得到的m个si和m个ri分别按数值大小进行排序,同时判断m个si的最小值是否大于设定值M,如果m个si中的最小值大于M,则转入步骤(3),否则转入步骤(2);
(2)如果第j层中卷积核Fi的si和ri都是最小,则将Fi删除,然后判断j是否等于预设值h,如果j<h,则转入步骤(1)对第j+1层卷积核进行计算,如果j=h,则转入步骤(3);如有在第j层中卷积核Fi的si是最小,而ri不是最小,则在删除第j层的Fi后,转入步骤(3);
(3)判断裁剪后模型参数数量与初始模型参数数量的比值是否小于p,如果小于p,则完成模型压缩;如果大于p,则对模型进行再次训练,并重新计算评价值si和ri,同时返回步骤(1)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011292631.7A CN112416393B (zh) | 2020-11-18 | 2020-11-18 | 一种基于容器技术的人工智能模型远程升级方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011292631.7A CN112416393B (zh) | 2020-11-18 | 2020-11-18 | 一种基于容器技术的人工智能模型远程升级方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112416393A CN112416393A (zh) | 2021-02-26 |
CN112416393B true CN112416393B (zh) | 2022-07-05 |
Family
ID=74832260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011292631.7A Active CN112416393B (zh) | 2020-11-18 | 2020-11-18 | 一种基于容器技术的人工智能模型远程升级方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416393B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732285B (zh) * | 2021-04-02 | 2021-07-13 | 北京易捷思达科技发展有限公司 | 适用于云计算linux操作***的升级方法、装置及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450954A (zh) * | 2017-08-02 | 2017-12-08 | 成都虫洞奇迹科技有限公司 | 一种基于云桌面的用户云终端升级方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106487850B (zh) * | 2015-08-29 | 2019-10-25 | 华为技术有限公司 | 一种云环境下获取镜像的方法、装置和*** |
CN106610854B (zh) * | 2015-10-26 | 2020-02-18 | 阿里巴巴集团控股有限公司 | 一种模型更新方法及装置 |
US10621486B2 (en) * | 2016-08-12 | 2020-04-14 | Beijing Deephi Intelligent Technology Co., Ltd. | Method for optimizing an artificial neural network (ANN) |
TWI700647B (zh) * | 2018-09-11 | 2020-08-01 | 國立清華大學 | 電子裝置及類神經網路的壓縮方法 |
CN109766108A (zh) * | 2018-12-12 | 2019-05-17 | 北京梧桐车联科技有限责任公司 | 车载终端软件升级***、方法及装置 |
CN111340227A (zh) * | 2020-05-15 | 2020-06-26 | 支付宝(杭州)信息技术有限公司 | 通过强化学习模型对业务预测模型进行压缩的方法和装置 |
-
2020
- 2020-11-18 CN CN202011292631.7A patent/CN112416393B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450954A (zh) * | 2017-08-02 | 2017-12-08 | 成都虫洞奇迹科技有限公司 | 一种基于云桌面的用户云终端升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112416393A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8904074B2 (en) | Method and apparatus for distributing configuration files in a distributed control system | |
CN112416393B (zh) | 一种基于容器技术的人工智能模型远程升级方法及*** | |
CN114933339B (zh) | 一种污水处理的控制方法、云端服务器及边缘侧设备 | |
CN110703616A (zh) | 一种智能交互方法、云服务器、智能交互***及存储介质 | |
CN110865826B (zh) | 机器人软件升级方法、装置、设备和存储介质 | |
CN109822549A (zh) | 一种机器人编程方法、装置及控制器 | |
CN103164232A (zh) | 更新智能终端操作***的方法、***以及计算机 | |
CN113626003A (zh) | 云端机器人解决方案*** | |
CN111722862A (zh) | 语音场景更新方法、装置、终端、服务器和*** | |
CN109800006A (zh) | 一种定制化脚本的发布方法、***及存储介质 | |
CN105446873A (zh) | 基于android平台的APK软件自动测试方法及*** | |
CN110661873B (zh) | 物联网平台参数转换方法、装置、设备、介质及*** | |
CN105718274A (zh) | 一种auv中智能节点在线更新软件的方法 | |
CN104469278A (zh) | 一种监控***升级方法及装置 | |
CN114872083B (zh) | 一种机器人定制*** | |
CN115866104A (zh) | 数据处理方法、数据处理装置及设备 | |
CN105354068A (zh) | 基于网络的机器人***软件批量安装与升级方法 | |
CN113434164B (zh) | 一种车载娱乐主机的设置项云端配置更新方法和*** | |
CN105138379A (zh) | 一种基于Ymodem协议的在线升级方法 | |
CN115208761A (zh) | Ota升级*** | |
CN112667276A (zh) | 一种用于智慧控制***的在线编程工具及方法 | |
CN110377332B (zh) | 安全计算机平台软件程序在线换装方法 | |
CN207369076U (zh) | 可实现远程升级的充电桩以及*** | |
CN111142909B (zh) | 基于xc7z045芯片实现can网络远程升级的终端、方法和*** | |
CN112150257B (zh) | 订单处理方法、云端***、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |