一种配置边缘服务器中神经网络模型的系统及装置的制作方法

文档序号:32745781发布日期:2022-12-30 22:03阅读:32来源:国知局
一种配置边缘服务器中神经网络模型的系统及装置的制作方法

1.本技术涉及计算机技术领域,尤其涉及一种配置边缘服务器中神经网络模型的系统及装置。


背景技术:

2.一种业务系统包括云服务器和多个边缘服务器,每个边缘服务器可以接收采集设备发送的采样数据,例如视频数据、物联网(internet of things,iot)数据(如温度、瓦斯浓度等)。边缘服务器上部署有神经网络模型,该神经网络模型可以是预置在边缘服务器上的,也可以是云服务器发送给边缘服务器的。边缘服务器可以基于神经网络模型对接收到的采样数据进行检测、识别等,例如,基于视频数据检测员工是否佩戴口罩、是否佩戴安全帽等。
3.由于边缘服务器数量众多,出于成本和时间的考量,边缘服务器通常不具有训练神经网络模型的能力。为了保证边缘服务器上神经网络模型的准确率,目前,由云服务器负责训练神经网络模型,并将训练好的神经网络模型下发给边缘服务器。但由于边缘服务器的数量众多,这种实现方式对网络带宽的要求会很高。


技术实现要素:

4.本技术提供一种配置边缘服务器中神经网络模型的系统及装置,用于在保证边缘服务器的神经网络模型准确率的基础上,降低对带宽的要求。
5.第一方面,本技术实施例提供了一种配置边缘服务器中神经网络模型的系统,该系统包括云服务器和边缘服务器。其中,云服务器中运行有神经网络模型,如称为第一神经网络模型。边缘服务器中运行有神经网络模型,如称为第二神经网络模型,第一神经网络模型和第二神经网络模型的结构相同。实际上,第一神经网络模型和第二神经网络模型是同一模型。
6.云服务器可以用于训练第一神经网络模型,并将第一神经网络模型中符合预设条件的n个层的配置参数发送给边缘服务器。边缘服务器用于接收该n个层的配置参数,并根据该n个层的配置参数更新第二神经网络模型中与该配置参数对应的n个层的参数。
7.通过上述设计,边缘服务器可以及时更新第二神经网络模型,以保证边缘服务器上第二神经网络模型的准确性,同时由于传输的为部分层的配置参数,减少了数据传输量,降低了对带宽的要求。
8.在一种可能的实现方式中,该n个层为第一神经网络模型中的预设层。
9.通过上述设计,可以指定第一神经网络模型中的任意几层作为预设层,云服务器对第一神经网络模型进行训练之后,将预设的n个层的配置参数发送给边缘服务器。由于该n个层为预设的,云服务器不需要再进行选择,可以节省cpu开销。
10.在一种可能的实现方式中,第一神经网络模型中的每一层具有权重,该权重用于指示该层对第一神经网络模型准确率的影响程度;该n个层中任一层的权重大于k-n层任一
层的权重。例如,云服务器可以将第一神经网络模型的k个层按照权重由大到小的顺序排序,将排在前n个的层的配置参数发送给边缘服务器,即该n个层中的任意一个层的权重大于n个层之后的(k-n)任一层的权重。
11.通过上述设计,由于该n个层的权重较高,对第一神经网络模型的准确率的影响较大,云服务器可以将该n个层的配置参数发送给边缘服务器,可以在保证边缘服务器准确率的基础上,减少数据传输量。
12.在一种可能的实现方式中,n为预设值(如第一预设值),或n为权重超过预设阈值的层的数量。
13.通过上述设计,n值配置方式灵活,可以应用在多种场景中。
14.在一种可能的实现方式中,配置参数包括n个层中每一层的参数和层标识。
15.通过上述设计,边缘服务器可以根据层标识确定第二神经网络模型中的对应层,并根据配置参数中该层的参数来更新第二神经网络模型中该对应层的参数。
16.在一种可能的实现方式中,边缘服务器还用于当所述第二神经网络模型的性能参数低于第一预设值时,发送所述第一信息至所述云服务器,指示所述云服务器训练所述第一神经网络模型;云服务器用于接收所述边缘服务器发送的第一信息,并根据所述第一信息训练所述第一神经网络模型。
17.在一种可能的实现方式中,所述边缘服务器还用于接收采集设备发送的采样数据,在所述采样数据中确定用于训练所述第一神经网络模型的训练数据,在确定的所述训练数据的数据量超过第二预设值时,发送所述第一信息至所述云服务器,指示所述云服务器训练所述第一神经网络模型;所述云服务器用于接收所述边缘服务器发送的第一信息,并根据所述第一信息训练所述第一神经网络模型。
18.在一种可能的实现方式中,所述第一信息包括下列中的一项或多项:所述训练数据、所述第二神经网络模型的性能参数、用于触发对所述第一神经网络模型进行训练的指示信息;其中,所述性能参数包括准确率、置信度、精确度中的一项或多项。
19.在一种可能的实现方式中,所述云服务器还用于接收采集设备发送的采样数据,在所述采样数据中确定用于训练所述第一神经网络模型的训练数据,在确定的所述训练数据的数据量超过第三预设值时,训练所述第一神经网络模型。
20.在一种可能的实现方式中,所述训练数据包括与历史数据的相似度小于第四预设值的采样数据。
21.在一种可能的实现方式中,云服务器检测到满足第一训练条件时,基于训练数据对第一神经网络模型进行训练。
22.在一种可能的实现方式中,所述云服务器接收所述边缘服务器发送的训练数据;或
23.所述云服务器接收采样设备发送的采样数据,并根据采样数据确定训练数据。
24.在一种可能的实现方式中,所述训练数据为与历史数据相似度低于预设值(预设值a)的采样数据。
25.在一种可能的实现方式中,第一训练条件包括但不限于:
26.云服务器接收到边缘服务器发送的第一信息,所述第一信息用于指示云服务器训练第一神经网络模型;或
27.云服务器接收边缘服务器发送的第一信息,并确定边缘服务器中第二神经网络模型的性能参数低于预设值(如预设值b);所述第一信息包括所述第二神经网络模型的性能参数,所述性能参数用于指示第二神经网络模型的使用情况,所述性能参数包括但不限于:第二神经网络模型的准确率、置信度、精确度;或
28.云服务器确定训练数据的数据量达到预设值(如预设值c),所述训练数据为所述云服务器基于来自采集设备的采样数据确定的,或从边缘服务器接收的;所述训练数据为与历史数据相似度低于预设值(如预设值d)的采样数据。
29.在一种可能的实现方式中,边缘服务器检测到满足第二训练条件时,向云服务器发送第一信息;其中,所述第一信息用于指示云服务器训练所述第一神经网络模型;
30.所述第二训练条件包括但不限于:
31.边缘服务器确定训练数据的数据量达到预设值(如预设值e,预设值e与预设值c可以是相同的,也可以是不同的),所述训练数据为所述边缘服务器基于接收到的采集设备发送的采样数据确定的;所述训练数据为与历史数据相似度低于预设值(如预设值f,预设值f与预设值d可以是相同的,也可以是不同的)的采样数据;或
32.边缘服务器确定所述第二神经网络模型的性能参数低于预设值(如预设值g,预设值g与预设值b可以是相同的,也可以是不同的);所述性能参数用于指示第二神经网络模型的使用情况,所述性能参数包括但不限于:第二神经网络模型的准确率、置信度、精确度。
33.在一种可能的实现方式中,边缘服务器向云服务器发送第一信息,所述第一信息包括所述第二神经网络模型的性能参数和/或所述边缘服务器确定的训练数据。
34.第二方面,本技术实施例还提供了一种配置边缘服务器中神经网络模型的方法,该方法可以应用至第一方面提及的系统中,该方法中的云服务器通过执行该方法以实现上述第一方面的所示出的系统中云服务器行为的功能,有益效果可以参见第一方面的描述此处不再赘述。该方法中的边缘服务器通过执行该方法以实现上述第一方面的所示出的系统中云服务器行为的功能,有益效果可以参见第一方面的描述此处不再赘述。
35.第三方面,本技术实施例还提供了一种配置装置,该装置具有实现上述第一方面的所示出的系统中云服务器行为的功能,有益效果可以参见第一方面的描述此处不再赘述。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述装置的结构中包括训练模块、发送模块,可选的,还包括接收模块、处理模块。这些模块可以执行上述第一方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
36.第四方面,本技术还提供了一种配置设备,所述配置设备包括处理器和存储器,还可以包括通信接口,所述处理器执行所述存储器中的程序指令执行上述第一方面或第一方面任一可能的实现方式提供的云服务器执行的操作。该配置设备可以为服务器、或计算设备等设备。所述存储器与所述处理器耦合,其保存配置边缘服务器中神经网络模型过程中必要的程序指令和数据。所述通信接口,用于与其他设备进行通信。
37.第五方面,本技术提供了一种计算机可读存储介质,所述计算书可读存储介质被存储设备执行时,所述存储设备执行前述第一方面或第一方面的任意可能的实现方式中提供的云服务器执行的操作。该存储介质中存储了程序。该存储介质包括但不限于易失性存储器,例如随机访问存储器,非易失性存储器,例如快闪存储器、硬盘(hard disk drive,
hdd)、固态硬盘(solid state drive,ssd)。
38.第六方面,本技术提供了一种计算设备程序产品,所述计算设备程序产品包括计算机指令,在被计算设备执行时,所述计算设备执行前述第一方面或第一方面的任意可能的实现方式中提供的云服务器的操作。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面或第一方面的任意可能的实现方式中提供的云服务器的功能的情况下,可以下载该计算机程序产品并在计算设备上执行该计算机程序产品。
39.第七方面,本技术还提供一种计算机芯片,所述芯片与存储器相连,所述芯片用于读取并执行所述存储器中存储的软件程序,执行上述第一方面以及第一方面的各个可能的实现方式中云服务器的操作。
40.上述第二方面至第七方面实现的有益效果,请参考第一方面关于配置边缘服务器中神经网络模型的系统的有益效果的描述,此处不再赘述。
附图说明
41.图1a为本技术实施例提供的一种可能的系统架构示意图;
42.图1b为本技术实施例提供的一种云服务器的结构示意图;
43.图1c为本技术实施例提供的另一种云服务器的结构示意图;
44.图2a为一种神经网络模型的结构示意图;
45.图2b为一种神经网络模型的层结构命名示意图;
46.图2c为一种神经网络模型的示意图;
47.图3为本技术实施例提供的一种神经网络模型的配置方法所对应的流程示意图;
48.图4为本技术实施例提供的一种配置参数所对应的帧结构示意图;
49.图5a为本技术实施例提供的一种神经网络模型的配置场景示意图;
50.图5b为本技术实施例提供的另一种神经网络模型的配置场景示意图;
51.图5c为本技术实施例提供的一种神经网络模型的配置方法所对应的流程示意图;
52.图6为本技术实施例提供的系统内神经网络模型的配置场景示意图;
53.图7为本技术实施例提供的一种数据处理方法所对应的流程示意图;
54.图8为本技术提供的一种配置装置的结构示意图。
具体实施方式
55.图1a为本技术实施例提供的一种系统的架构示意图。该系统包括云服务器10、边缘服务器20,(图1a中仅示出了3个边缘服务器20,但本技术对此不做限定)、采集设备30(图1a中仅示出了4个采集设备30,但本技术对此不做限定)。
56.其中,云服务器10,用于管理边缘服务器20以及为边缘服务器20提供服务。应用服务器100可以是物理机,也可以是虚拟机。云服务器10具有训练神经网络模型的功能,云服务器上可以存储有一个或多个与边缘服务器20上运行的神经网络模型相同的神经网络模型,云服务器10可以为边缘服务器20提供训练这些神经网络模型的服务,从而节省边缘服务器20本地的计算资源开销。
57.在硬件层面,如图1b所示,云服务器10具有处理器112、存储器113和通信接口114。其中,处理器112、存储器113和通信接口114之间通过总线连接。
58.其中,处理器112是一个中央处理器(central processing unit,cpu),用于执行内存中的软件程序以实现一个或多个功能例如,对神经网络模型进行训练等。处理器112还可以用于对数据进行计算和处理,如元数据管理、重复数据删除、数据压缩、数据校验、虚拟化存储空间以及地址转换等。
59.除cpu之外,处理器112还可以是专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field programmable gate array,fpga)、人工智能(artificial intelligence,ai)芯片、片上系统(system on chip,soc)或复杂可编程逻辑器件(complex programmable logic device,cpld),图形处理器(graphics processing unit,gpu)等。
60.需要说明的是,图1b中仅示出了一个处理器112,在实际应用中,处理器112的数量可以有多个,该多个处理器112可以包括多个相同类型的处理器,也可以包括多个不同类型的处理器,例如,多个处理器112包括多个cpu。又例如,该多个处理器112包括一个或多个cpu以及一个或多个gpu。再例如,多个处理器112包括一个或多个cpu、一个或多个gpu、以及一个或多个fpga等等。其中,cpu可以具有一个或多个cpu核。本实施例不对cpu的数量,以及cpu核的数量进行限定。
61.存储器113,是指用于存储数据的装置,它可以是内存,也可以是硬盘。内存,是指与处理器112直接交换数据的内部存储器,它可以随时读写数据,而且速度很快,作为运行在处理器112上的操作系统或其他正在运行中的程序的临时数据存储器。内存包括易失性存储器(volatile memory),例如ram、dram等,也可以包括非易失性存储器(non-volatile memory),例如存储级内存(storage class memory,scm)等,或者易失性存储器与非易失性存储器的组合等。实际应用中,云服务器10中可配置多个内存,以及不同类型的内存。本实施例不对内存的数量和类型进行限定。此外,可对内存进行配置使其具有保电功能。保电功能是指系统发生掉电又重新上电时,内存中存储的数据也不会丢失。具有保电功能的内存被称为非易失性存储器。
62.硬盘,用于提供存储资源,例如用于存储一个或多个神经网络模型。硬盘包括但不限于:非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,rom),硬盘驱动器(hard disk drive,hdd)或固态驱动器(solid state disk,ssd)等。与内存不同之处在于,硬盘的读写速度较慢,通常用于持久性地存储数据。在一种实施方式中,硬盘中的数据、程序指令等需要先加载到内存中,然后,处理器再从内存中获取这些数据和/或程序指令。
63.通信接口114,用于与其他设备例如边缘服务器、或其他云服务器通信。
64.边缘服务器20,用于接收采集设备30发送的采样数据,并使用边缘服务器20本地上的相应的神经网络模型对采样数据进行处理,并得到神经网络模型的输出结果。在硬件层面,边缘服务器20具有与云服务器10类似的硬件组件,例如,边缘服务器20具有处理器、存储器、网卡等。其中,网卡用于与采集设备30以及云服务器10通信。存储器可以用于存储神经网络模型。处理器用于运行神经网络模型等。这些硬件组件与云服务器10中的硬件组件的功能和类型相似,具体请参见上文对云服务器10各硬件组件的介绍,此次不再赘述。
65.采集设备30,用于采集数据(如称为采样数据),并将采样数据发送给其他设备,如边缘服务器20、云服务器10等。采集设备30包括但不限于:摄像头、手机、智能手表、车载终
端设备、传感器,其中传感器包括心率传感器、距离传感器、温度传感器、压力传感器、烟雾探测器、气体浓度探测器等等,本技术对此不做限定,任何具有数据采集功能和通信功能的设备均适用于本技术实施例。
66.需要说明的是,(1)图1a仅示出了少量设备以保持简洁,实际上,云服务器10可以有多个,每个云服务器10可以为大量边缘服务器20提供服务,边缘服务器20也可以连接多个采集设备30,并且多个采集设备30的种类可以是相同的也可以是不同的,本技术实施例对该系统下各设备的数量和类型不做限定。(2)图1a中的采集设备30是以摄像头、手机、智能手表、车载终端为例示出的,但本技术实施例对采集设备30的种类和数量不做限定,例如,还可以是各类传感器等,任何具有信息采集以及传输功能的设备均适用于本技术实施例。(3)上述图1a中的云服务器10可以是边缘云服务器,也可以是公有云服务器,边缘云可以理解为私有云,边缘云服务器还可以与公有云服务器交互。(4)图1b所示出的云服务器10的结构仅为举例,实际产品中,云服务器10可以具有相对图1b更多或更少的组件,本技术实施例对此也不做限定。
67.图1c为本技术实施例提供的另一种系统架构图,图1c在图1a的基础上又增加了云服务器11,云服务器11的硬件组件和软件组件可以与上述云服务器10相同,此处不再赘述。图1c中,任意两个云服务器之间可以互相通信。上述云服务器可以是硬件设备也可以是虚拟机,本技术实施例对此不做限定。
68.上述如图1a、1c所示的系统架构仅是举例,本技术并不限定系统的结构,凡是具有训练神经网络模型的功能的服务器和与该服务器通信的设备所构建的系统均适用于本技术实施例。
69.上述系统架构可以部署在多种业务场景中,例如,工业、建筑、生产线、楼宇等室内、室外场景、自动驾驶等场景中。对应的,采集设备可以部署于如工业园区、企业园区、校园、商城、住宅、公共区域等。在不同的场景中,边缘服务器20上部署的神经网络模型可能是不同的。
70.举例来说,在工业场景中,边缘服务器20可以接收部署在工业园区内的摄像头拍摄的图像,并使用神经网络模型分析图像中是否存在告警行为,例如员工是否佩戴安全帽、员工是否离岗、是否有明火。又例如,在检测到用户未佩戴安全帽时,还可以尝试获取该用户的面部区域,提取该其面部特征,并将该用户的面部特征与该企业员工的人脸数据库进行比对,从而确定该用户的身份。
71.又例如,在医疗场景中,边缘服务器20可以接收部署在医院中的摄像头拍摄的图像,并使用神经网络模型分析图像中是否有人未佩戴口罩等等。
72.再例如,在公共区域,边缘服务器20可以接收部署在公共区域的摄像头拍摄的图像,并使用相应功能的神经网络模型分析图像中是否存在告警行为,如乱扔垃圾、逆行等。
73.除输出检测结果此之外,神经网络模型还可以输出检测结果的置信度。置信度越高,则表示检测结果的可靠性越强;置信度越低,则表示检测结果的可靠性也越低。这是由于,神经网络模型会将检测到的特征与学习到的特征进行比对,以此得到检测结果,并根据两者之间的匹配度来确定检测结果的置信度。例如神经网络模型可以检测人和宠物,如果目标实例的特征与该神经网络模型学习到的人的特征的匹配度(或者说相似度高),则输出的检测结果为人,其检测结果的置信度便可以是该目标实例的特征与学习到的人的特征的
匹配度。匹配度越高,则表明该目标实例是人的可能性越大。
74.本技术实施例不限定适用于边缘服务器20的神经网络模型的结构和功能,例如,基于结构介绍,神经网络模型包括但不限于多层感知机神经网络模型、卷积神经网络模型、循环神经网络模型以及残差收缩网络等。其中,残差收缩网络是卷积神经网络模型的改进,这里不做重点说明。又例如,基于功能介绍,神经网络模型可以具有分类功能、目标检测功能、目标识别功能、预测功能、推理功能等等,本技术实施例对神经网络模型的结构和功能不做限定。另外,本技术中的神经网络模型还可以包括基于机器学习算法、深度学习算法等的神经网络模型,基于机器学习算法得到的神经网络模型也可以称为机器学习模型,类似的,基于深度学习算法得到的神经网络模型也可以称为深度学习模型,任何神经网络模型均适用于本技术实施例。
75.如下以多层感知机神经网络模型为例对神经网络模型的结构进行介绍。
76.图2a为一种神经网络模型的结构示意图。如图2a所示,该神经网络模型包括输入层(input layer)、隐含层(hidden layers)(图2a中仅示出了2个隐含层,但本技术对此不做限定)和输出层(output layer)。
77.其中,输入层,包括一个或多个神经元,每个神经元为一个输入参数。
78.隐含层,在输入层与输出层之间,隐含层的层数是可变的,神经网络模型可以包括一个或多个隐含层。为便于区分,如图2b所示,如下按照输入层至输出层的方向,将顺序排列的各隐含层分别记为第一层、第二层、

、第m层,m取正整数。应理解,这里的第一层、第二层是指隐含层中的第一层、第二层,并非表示整个神经网络模型的第一层、第二层。
79.输出层,包括一个或多个神经元,每个神经元为一个输出,在实际应用中,输出层的神经元的数量取决于所要解决的问题。
80.隐含层的功能是将输入映射到输出,针对每个隐含层而言,是将前一层的输出作为当前隐含层的输入,并基于预设函数(包括权重和偏置)得到一个输出值,并将得到的该输出值输入至下一层。如图2c所示,隐含层各神经元与前一层的关系如下:
81.h
11
=x1·w11
+x2·w21
+b
11

82.h
12
=x1·w12
+x2·w22
+b
12

83.隐含层各神经元与下一层的关系如下:
84.y1=h
11
·w110
+h
12
·w210
+b
110

85.y2=h
11
·w111
+h
12
·w211
+b
120

86.需要说明的是,上述介绍的为多层感知机神经网络模型,其他类型的神经网络模型的层结构可能是不同的,比如,卷积神经网络模型包括输入层、一层或多层卷积层、一层或多层池化层、输出层。为便于说明,如下将各神经网络模型中输入层与输出层之间的层称为连接层,每一连接层的参数包括该层所包括的权重值、偏置值,还可以包括其他参数,例如激活函数、反馈函数等函数的系数值,当然,如果该连接层没有激活函数或反馈函数,则该连接层的参数则不包括激活函数、反馈函数的系数值,任何在训练过程可以被调节或者可以发生变化的参数均可以被包括于参数中。
87.对于神经网络模型的训练,实际上,是对神经网络模型中的这些连接层的参数如权重和偏置进行不断调整,以使输出层的输出达到期望的输出值,当输出结果的准确性高于一定阈值时或当达到设置的迭代次数时,便可以停止训练,训练好的神经网络模型便可
以投入至边缘服务器中应用。
88.值得注意的是,神经网络模型的训练其实是一个不断学习的过程,训练后的神经网络模型的准确性也不是一成不变的,如果出现神经网络模型未学习过的场景,则其准确性可能会随之降低。而边缘服务器数量众多,并且运算能力有限,通常,边缘服务器不具备神经网络模型的训练功能,鉴于此,本技术实施例提供了一种神经网络模型的配置方法,用于保证边缘服务器上神经网络模型的准确性的基础上,减少数据传输量,降低对网络带宽的要求。
89.下面结合附图3,以本技术实施例提供的对边缘服务器中神经网络模型的配置方法应用于图1a、1c所示的系统构架中,该方法中的云服务器、边缘服务器可以分别是图1a~图1c中任一附图中的云服务器10(或者云服务器10的处理器)、边缘服务器20(或者边缘服务器的处理器)为例,对本技术实施例提供的神经网络模型的配置方法进行说明。
90.图3为本技术实施例提供的配置边缘服务器中神经网络模型的方法的流程示意图。如图3所示,该方法包括如下步骤:
91.步骤301,边缘服务器接收采集设备发送的采样数据。
92.本技术实施例中,云服务器和边缘服务器上具有相同的神经网络模型,这里的相同是指结构、功能相同,但是两者的参数在不同的时间可能是完全相同的,也可以是完全不同的,或者是不完全相同。为便于说明,在下文的描述中,将云服务器上的神经网络模型称为第一神经网络模型,将边缘服务器上的神经网络模型称为第二神经网络模型。
93.对于接收到的采样数据,在一种实施方式中,该采样数据可以被复制得到相同的两个采样数据,在一条路径中,该采样数据被输入至第二神经网络模型中进行计算,得到第二神经网络模型的输出结果。边缘服务器可以根据输出结果确定第二神经网络模型的性能参数,例如,准确率、精确度等。当第二神经网络模型的准确率较低时,边缘服务器可以通知云服务器训练与第二神经网络模型相同的第一神经网络模型。其中,边缘服务器20上的第二神经网络模型可以是云服务器发送给边缘服务器的,也可以是在出厂前或用户预配置在边缘服务器中的。在另一条路径中,边缘服务器可以对采样数据进行过滤(参见步骤302)。
94.步骤302,边缘服务器对采样数据进行过滤,得到过滤后的采样数据。
95.边缘服务器可以确定采样数据与目标历史数据的相似度,之后,基于相似度对采样数据进行过滤,得到与目标历史数据相似度低于第一预设值的采样数据。这些与目标历史数据相似度低的采样数据可以表征采集设备采集到了新场景的数据,新场景的数据可能会导致第二神经网络模型的准确率低,因此,边缘服务器可以将这些新场景的采样数据过滤出来,作为后续云服务器(重新)训练第一神经网络模型的训练数据。
96.其中,历史数据包括边缘服务器在接收到所述采样数据之前所采样的数据,和/或训练第一神经网络模型的样本数据。目标历史数据为历史数据的子集,例如目标历史数据可以是历史数据中在待过滤的采样数据之前一段预设时间内的采样数据,也可以是全部的历史数据。
97.如下对确定采样数据与目标历史数据相似度的方式进行介绍:
98.1)确定方式一:边缘服务器可以根据采样数据的特征与目标历史数据的特征,计算两者之间的距离,例如欧式距离、曼哈顿距离、汉明距离,将该距离作为两者的相似度。
99.示例性地,边缘服务器可以使用特征算法计算每个目标历史数据的一个或多个特
征,如果目标历史数据为多个,则可以基于该多个目标数据的同一特征的值,计算该特征的均值,通过上述方式得到每个特征的均值。类似的,边缘服务器使用相同的特征算法计算待过滤的采样数据的一个或多个特征,并根据该采样数据的一个或多个特征和上述确定的每个特征的均值,计算采样数据与目标历史数据之间的距离。例如,采样数据的特征包含(a1,b1,c1),目标历史数据的特征均值包括(a2,b2,c2),则示例性地,采样数据与目标历史数据之间的距离d=|a1-a2|+|b1-b2|+|c1-c2|,该距离d可以作为采样数据与目标历史数据的相似度。需要说明的是,上述计算距离的方式仅为举例,本技术实施例对此不做限定。
100.2)确定方式二:边缘服务器可以将采样数据与目标历史数据所包含的相同特征的数量作为两者之间的相似度。这里的相同特征是指相同类型的特征且特征的值相同。例如,采样数据的特征包括(a1,b1,c1),目标历史数据的特征均值包括(a2,b1,c1),则采样数据与目标历史数据所包含的相同特征为b1和c1。
101.上述特征算法可以是预设置的,不同的采样数据的特征算法可以是不同的,例如,采样数据为图像,该特征可以是r值、g值、b值等。又例如,物联网数据,例如温度、瓦斯浓度等,该特征可以是该数据的值,则多个目标历史数据的特征均值即为该多个目标历史数据的均值。
102.步骤303,边缘服务器向云服务器发送第一信息。对应的,云服务器接收边缘服务器发送的第一信息。
103.在第一种实施方式中,该第一信息可以用于指示云服务器是否需要训练第一神经网络模型。如该指示信息包括1个比特位,该1个比特位上的比特的值为0时,用于指示云服务器训练第一神经网络模型,或该1个比特位上的比特的值为1时,用于指示云服务器不需要重新训练第一神经网络模型。在这种方式下,边缘服务器可以周期性的发送第一信息。
104.上述为显性的指示方法,也可以是边缘服务器确定需要重新训练第一神经网络模型时,向云服务器发送指示信息,该指示信息用于指示云服务器训练第一神经网络模型,若边缘服务器未向云服务器发送指示信息,则表示云服务器不需要重新训练第一神经网络模型。其中,边缘服务器可以在确定第二神经网络模型的性能参数较低,如低于第二预设值时,向云服务器发送该第一信息。其中,第二神经网络模型的性能参数包括但不限于准确率、精准率或置信度。或者,当边缘服务器确定过滤后的采样数据的数据量达到一定阈值,如不低于第三预设值时,向云服务器发送第一信息。
105.可选的,边缘云服务还可以将过滤后的采样数据和该第一信息一起发送给云服务器,云服务器可以使用过滤后的采样数据对第一神经网络模型进行训练。
106.在第二种实施方式中,该第一信息用于指示边缘服务器上第二神经网络模型的使用情况,例如该第一信息包括边缘服务器中该第二神经网络模型的性能参数等。云服务器可以根据该第一信息判断是否需要训练云服务器中的第一神经网络模型,例如,当边缘服务器中的第二神经网络模型的准确率等较低,如低于第四预设值时,云服务器触发对第一神经网络模型的训练。又例如,该第二神经网络模型的置信度低于第五预设值时,云服务器触发对第一神经网络模型的训练。
107.在第三种实施方式中,该第一信息包括步骤301得到的过滤后的采样数据。云服务器可以根据该第一信息判断是否需要训练第一神经网络模型,例如,当云服务器接收到的过滤后的采样数据的数据量达到一定阈值,如不低于第三预设值时,云服务器触发对第一
80%),依此类推,云服务器通过上述方式分别确定每一连接层的权重。
120.在步骤305中,云服务器可以基于每一层的权重来选择n个层。
121.一种实施方式为,云服务器将多个连接层按照权重由大到小进行排序,选择排在前n个的层,将该n个层的参数发送给边缘服务器。例如,结合步骤303中的例子,假设云服务器确定第一层的权重为0.02,第二层的权重为0.08,第三层的权重为0.12,第四层的权重为0.15(95%-90%),第五层的权重为0.16(96%-90%),按照各层的权重由大到小进行排序为:第五层>第四层>第三层>第二层>第一层。假设n取2,则云服务器可以将排在前2层的参数发送给边缘服务器。
122.另一种实施方式为,云服务器将性能参数超过第四预设值的n个层的参数发送给边缘服务器。例如,仍结合上述例子,并以准确率为例,假设第四预设值为90%,其中,神经网络模型的准确率超过90%的层包括第三层、第四层和第五层,则云服务器可以将第三层、第四层和第五层的参数发送给边缘服务器。
123.更进一步地,云服务器还可以再次对该n个层进行联合训练,联合训练是指同时对第一神经网络模型的该n个层的参数进行训练,经过一次联合训练后,该n个层的每一层的参数均可能改变。若联合训练后的神经网络模型的准确率低于上述单层训练时确定的权重最大的层所对应的准确率(也即准确率最大值),则云服务器可以发送权重最大的那层的参数,即n=1。如果联合训练后的神经网络模型的准确率高于上述权重最大的层所对应的准确率,则云服务器发送该n个层联合训练后每一层的参数。
124.示例二:
125.在步骤304中,云服务器使用过滤后的采样数据对第一神经网络模型进行训练,不需要确定每一层的权重值。该训练方式可以是基于现有的训练机制,如对第一神经网络模型的全部层进行联合训练,联合训练是指同时对第一神经网络模型的全部层的参数进行训练,经过一次联合训练后,每一层的参数均可能改变。
126.对应的,在步骤305中,该n个层可以为第一神经网络模型中指定的几层,即预设层。例如,预设层包括第一神经网络模型中的最后三个连接层。该指定的几层可以是连续的几层也可以不连续,本技术对此不做限定。在实际应用中,本领域技术人员可以通过大量运算数据确定对第一神经网络模型的准确率影响较大的几个层作为预设层。
127.需要说明的是,本技术实施例中发送边缘服务器的n个层的配置参数均指包括n个层训练后的参数。
128.如下将云服务器确定的n个层中的每一层称为目标层,示例性地,云服务器可以将该n个的配置参数发送给边缘服务器,其中,配置参数包括每一个目标层的层标识和该层的参数,可选的,当边缘服务器上有多个神经网络模型时,为了方便确认,云服务器还可以将第一神经网络模型的标识发送给边缘云服务器,即配置参数还可以包括第一神经网络模型的标识。
129.参见图4图4为本技术实施例提供的一种配置参数的帧结构示意图。该配置参数包括数据头和数据部分,其中,数据头可以记录该第一神经网络模型的相关信息,例如包括但不限于下列中的一项或多项:该第一神经网络模型的标识、数据区域所包含的对象的数量、每个对象的长度,层标识的长度。数据区域中以对象为粒度放置每个目标层的层标识和层标识,由于每一层所包含的参数可能是不同的,因此,每个对象的长度可以是不同的,当然,
每个对象的长度也可能是相同的,本技术实施例对此不做限定,另外,图4示出的目标层(层2、层3至层n)为示意,在实际应用中,根据实际的目标层生成配置参数,并非限定在层2、层3至层n。本技术实施例对各对象的排序也不做限定,例如,可以是图4示出的按照层的顺序排列,也可以是其他方式排列,本技术对此也不做限定。
130.需要说明的是,上述图4所示的帧结构仅为举例,任何可以用于指示层标识与参数一一对应关系的帧结构均适用于本技术实施例。
131.步骤306,边缘服务器基于云服务器发送的n个层的配置参数,更新边缘服务器中运行的第二神经网络模型中与该配置参数对应的n个层的参数。
132.对应的,边缘服务器可以根据该第一神经网络模型的标识,在本地的多个神经网络模型中确定该标识所指示的第二神经网络模型,并根据配置参数中携带的层标识和替换该第二神经网络模型中该层标识所指示的层的参数。
133.参见图5a所示,图5a为一种神经网络模型的配置方法所对应场景示意图。云服务器可以将第一神经网络模型的第m-1层和第m层的参数发送给边缘服务器,边缘服务器基于云服务器发送的第m-1层和第m层的参数,替换掉边缘服务器本地第二神经网络模型中的第m-1层和第m层的原始的参数。
134.例如,配置参数包括第四层的参数(如记为层数据a)和第五层的参数(如记为参数b),边缘服务器可以根据参数a更新边缘服务器本地的第二神经网络模型的第四层的参数,即将第四层的参数修改为参数a,同理,将本地第二神经网络模型的第五层的参数修改为参数b。至此,边缘服务器完成本地第二神经网络模型的配置。
135.需要说明的是,上述图5a所示的仅为举例,本技术并不限定于发送神经网络模型的连续几层,或末尾几层,也不限定必须发送多层的参数,如图5b所示,云服务器也可能发送神经网络模型其中的一层的参数,边缘服务器基于云服务器发送的该层的参数替换掉本地该层的参数。
136.上述方式,由云服务器训练第一神经网络模型,并将第一神经网络模型的n个层的配置参数发送给边缘服务器,边缘服务器接收云服务器发送的n个层的配置参数来更新本地第二神经网络模型的相应层的参数,从而保证边缘服务器本地第一神经网络模型的准确率的基础上,减少数据传输量。
137.图5c为本技术实施例提供的另一种配置边缘服务器中神经网络模型的方法所对应的流程示意图。如图5c所示,该方法包括如下步骤:
138.步骤501,采集设备分别向边缘服务器和云服务器发送采样数据。对应的,边缘服务器和云服务器分别接收采集设备发送的采样数据。
139.步骤502a,云服务器对采样数据进行过滤,得到过滤后的采样数据。
140.该步骤请参见步骤302中边缘服务器对采样数据进行过滤的流程,此处不再赘述。
141.步骤502b,边缘服务器向云服务器发送第一信息,对应的,云服务器接收边缘服务器发送的第一信息。
142.该步骤为可选的步骤,该第一信息可以是上述步骤303中除与过滤后的采样数据相关的介绍,此次不再赘述。
143.步骤503~步骤505的具体流程请参见上文步骤304~步骤306的介绍,此次不再赘述。需要说明的是,上述步骤501~步骤502b并非为触发云服务器训练第一神经网络模型所
必须执行的步骤,因此,在图5中以虚线框示出。
144.上述方式,在图3所示方法的基础上,由云服务器对采样数据进行过滤,可以减少边缘服务器上对采样数据进行过滤的cpu开销。
145.上文对云服务器与一个边缘服务器的交互流程进行了介绍,实际应用中,云服务器可以通过上述方式与其他边缘服务器交互。参见图6,图6为云服务器和不同边缘服务交互示意图。在图6中,云服务器可以基于图3所示的方法与其他任一边缘服务器交互。应理解的是,这里的其他任一服务器为与云服务器建立有连接的服务器,如图1a中,云服务器10可以与任一边缘服务器20交互。
146.在一种应用场景中,云服务器下有多个边缘服务器上部署的神经网络模型是相同的,则云服务器可以在重新训练该神经网络模型之后,将该神经网络模型的配置参数同步发送给该多个边缘服务器。
147.在另一种应用场景中,如果多个云服务器下的边缘服务器所使用的神经网络模型相同,则云服务器之间还可以交互神经网络模型的配置参数,例如,请结合图1c理解,云服务器10将神经网络模型的配置参数发送给云服务器11,云服务器10和云服务器11分别通过图5a或图5b所示的方式,为各自的边缘服务器发送该配置参数,以更新边缘服务器上的神经网络模型的部分层的参数。
148.值得注意的是,在一种实施方式中,云服务器在管理边缘服务器时,可以记录边缘服务器上所使用的神经网络模型有哪些,以及使用相同神经网络模型的边缘服务器有哪些,云服务器之间还可以交互这些记录的信息(如下称为模型分布信息),以便云服务器确定要将训练后神经网络模型的配置参数发送到哪些云服务器上。其中,模型分布信息包括:云服务器标识、边缘服务器标识、边缘服务器所使用的神经网络模型的标识。
149.在另一种实施方式中,如果这里的云服务器为边缘云服务器,则还在一种实施方式,各边缘云服务器可以将各自记录的模型分布信息发送到中心云服务器(如公有云服务器),边缘云服务器a除了将训练后的神经网络模型a的配置参数发送到该边缘云服务器a对应的边缘服务器之外,还可以将该神经网络模型a的配置参数发送到中心云服务器。中心云服务器负责管理协调,例如,在接收到边缘云服务器a发送的神经网络模型a的配置参数后,基于其他各边缘云服务器发送的模型分布信息,确定哪些边缘云服务器下的边缘服务器也使用神经网络模型a,例如,确定边缘云服务器b、边缘云服务器c下的边缘服务器也使用神经网络模型a,则中心云服务器可以将该神经网络模型a的配置参数发送到边缘云服务器b和边缘云服务器c。在第三种实施方式中,云服务器中还可以基于用户配置的信息确定具有神经网络模型的其他云服务器。这种方式更加便洁,实用性强。
150.上述方式,可以提高多个边缘服务器上神经网络模型的参数配置效率,降低配置时延,降低网络数据传输量,节省带宽。
151.如上介绍了边缘服务器的神经网络模型的参数更新过程,如下对本技术实施例的边缘服务器的神经网络模型的应用方法进行介绍。
152.参见图7,图7为本技术实施例提供的一种数据处理方法。如下以本技术实施例提供的数据处理方法应用于图1a、1c所示的构架中边缘服务器,该方法可以由该边缘服务器,或边缘服务器的组件如处理器执行为例,对本技术实施例提供的数据处理方法进行说明。如图7所示,该方法包括:
153.步骤701,边缘服务器接收多个采集设备分别发送的采样数据。
154.例如,边缘服务器接收摄像头发送的视频数据,接收传感器发送的iot数据等,其中,该视频数据包括一帧一帧的图像,iot数据则可以包括气体探测器检测到的气体浓度信息、温度传感器检测到的温度信号、心率传感器检测到的心率值、鼾声传感器检测到的鼾声值等等。
155.步骤702,边缘服务器将采样数据输入至相应的神经网络模型,得到神经网络模型的检测结果。
156.边缘服务器针对不同的采样数据所使用的神经网络模型可能是不同的,如前所述,神经网络模型可以具有目标检测、目标识别、预测等功能,其中,目标检测和目标识别属于非预测功能。如下对预测功能和非预测功能的神经网络模型进行举例介绍:
157.1)非预测功能的神经网络模型。
158.例如,神经网络模型1具有目标检测功能,如可以检测图像中的目标实例是否佩戴安全帽。应理解,同一帧图像中可能会有多个目标实例,这里的目标实例是指从图像中提取的需要被检测的对象,在不同的算法中,目标实例可以是不同的,如在安全帽检测算法中,目标实例为用户头部,在工作服检测算法中,目标实例为用户的躯干部分。该神经网络模型1的输出结果可以包括用于指示目标实例是否佩戴安全帽的检测结果,还可以包括该检测结果的置信度。其中,置信度用于表征检测结果的准确性,换而言之,置信度用于表示该神经网络模型确定的该目标实例为未佩戴安全帽或佩戴安全帽的可能性或者说概率。比如,神经网络模型1输出的一组检测结果包括目标实例1未佩戴安全帽,置信度为99%。也就是,目标实例1有99%的可能性未佩戴安全帽。又如,另一组检测结果包括目标实例2佩戴安全帽,置信度为40%,也就是,目标实例2有40%的可能性佩戴了安全帽,这是由于,该用户可能佩戴了类似于安全帽的饰品如头盔,但模型不能识别该饰品是否属于安全帽。
159.上述以安全帽检测为例,目标检测功能还可以包括但不限于:检测目标实例是否穿工作服、检测目标实例是否抽烟、检测目标实例的种类,如区分猫和狗、检测用户是否摔倒等等。这里不再枚举。
160.2)预测功能的神经网络模型。
161.例如,神经网络模型2具有预测功能,通常预测功能是基于一段历史时间内的某数据的特征的变化来预测未来时间该特征的值,例如,可以基于历史的任务数量来预测未来一段时间内的任务量,从而根据预测的任务量提前调节供给量。又例如,可以根据矿井等地区的地质裂纹预测该地区未来一段时间是否会坍塌。
162.上述列举了通过单维度数据进行预测的例子,本技术实施例还可以结合多维度的数据进行预测,例如,可以结合气温、风力值、湿度等值来预测天气,又例如,可以根据用户的行为、面貌、动作、体征数据来预测用户可能存在的潜在疾病,等等。
163.边缘服务器可以根据采集设备的标识、接收采样数据的端口号等参数来区分采样数据,并调用该采样数据对应的神经网络模型进行处理。其中,采集设备的标识可以唯一标识一个采集设备,该标识可以是采集设备的ip地址、设备id等等,该端口号可以是物理端口也可以是逻辑端口,本技术实施例对此不做限定。当然,还可以通过其他方式来区分,本技术对此也不做限定。
164.步骤703,边缘服务器根据多个检测结果确定决策,并基于该决策执行相应的操
作。
165.该多个检测结果包括神经网络模型输出的结果,还可以包括其他检测结果,本技术实施例对此不做限定,以多个检测结果为多个神经网络模型输出的检测结果或一个或多个神经网络模型输出的多个检测结果为例,进行说明。
166.本技术实施例中的边缘服务器可以基于多种数据类型的数据融合起来进行决策,这里的多种数据类型例如结构性数据和非结构性数据、物联网数据和视频数据、预测功能的神经网络模型输出的数据和非预测功能的神经网络模型输出的数据,等等。
167.举例来说,边缘服务器接收摄像头拍摄的用户的视频数据,并将该视频中的图像输入至神经网络模型a中检测目标实例是否摔倒。应理解,如果是老人摔倒很容易引起并发症,因此,本技术实施例可以以检测用户是否摔倒为例进行说明。
168.边缘服务器还可以将视频数据输入至神经网络模型b中,该神经网络模型b可以根据该视频数据来预测用户可能存在的潜在疾病,例如,用户牙疼、胸口疼可能会有托腮拍胸等行为,这些行为可能是心脏疾病犯病之前的征兆。其中,神经网络模型b和神经网络模型a可以是同一模型,本技术对此不做限定。
169.边缘服务器还可以接收心率传感器、鼾声传感器、体温传感器等分别发送的心率、鼾声、体温等值,并将心率、鼾声、体温等一项或多项参数输入至神经网络模型c,通过神经网络模型c检测用户的体征是否正常。
170.应理解,上述采样数据应是属于同一用户的数据。
171.边缘服务器可以基于神经网络模型a~神经网络模型c的检测结果确定决策,例如,如果神经网络模型a的检测结果指示用户摔倒,而神经网络模型b的检测结果指示用户不存在潜在疾病,神经网络模型c的检测结果指示用户当前体征正常,则边缘服务器确定的决策可以是仅生成日志记录,记录用户摔倒的时间等等信息。
172.又例如,如果神经网络模型a的检测结果指示用户摔倒,而神经网络模型b的检测结果指示用户不存在潜在疾病,神经网络模型c的检测结果指示用户当前体征异常,则边缘服务器确定的决策可以是提示用户去医院检查,或通知该用户的关联用户,如向该用户的关联用户如家人朋友等发送信息,提醒关联用户关注该用户的身体健康。
173.又例如,如果神经网络模型a的检测结果指示用户摔倒,神经网络模型b检测用户存在潜在疾病,神经网络模型c检测用户体征不正常,则确定的决策可以是拨打120报警等等。
174.上述方式,将多个检测结果融合确定决策,可以实现更加全面的、精确的处理,更利用于帮助用户及时发现隐患,采取有效的应对指导,提高用户使用体验。
175.需要说明的是,本技术是以边缘服务器和云服务器为例示出的,实际上,本技术提供的技术方案可以应用于任意两个具有通信功能和计算功能的设备中,或者是,边缘服务器和云服务器在不同的场景中具有不同的名称,本技术实施例对此均不做限定。
176.基于与方法实施例相同的构思,本技术实施例还提供了一种配置装置,该配置装置用于执行上述方法实施例中云服务器所执行的方法。如图8所示,该配置装置800包括训练模块801、发送模块802。可选的,还包括接收模块803、处理模块804(由于该模块是可选的模型,因此图8中以虚线框示出)。具体地,在配置装置800中,各模块之间通过通信通路建立连接。
177.在一个实施例中,该存储装置用于实现上述方法实施例中云服务器执行的方法。
178.训练模块801,用于训练第一神经网络模型,所述第一神经网络模型包括k层;具体实现方式请参见图3中的步骤304的描述,或参见图5c中步骤503的描述,此处不再赘述。
179.发送模块802,用于将所述第一神经网络模型中符合预设条件的n个层的配置参数发送给边缘服务器,所述n取小于k的正整数。具体实现方式请参见图3中的步骤305的描述,或参见图5c中步骤504的描述,此处不再赘述。
180.在一个可能的设计中,该n个层为所述第一神经网络模型中的预设层。
181.在一个可能的设计中,第一神经网络模型中的每一层具有权重,权重用于指示层对第一神经网络模型准确率的影响程度;n个层中任一层的权重大于k-n层中任一层的权重。
182.在一种可能的实现方式中,n为第一预设值,或n为权重超过预设阈值的层的数量。
183.在一种可能的实现方式中,配置参数包括n个层中每一层训练后的参数和层标识。
184.在一种可能的实现方式中,接收模块803,用于接收边缘服务器发送的第一信息,并根据第一信息训练所述第一神经网络模型。具体实现方式请参见图3中的步骤303的描述,或参见图5c中步骤502b的描述,此处不再赘述。
185.在一种可能的实现方式中,第一信息包括下列中的一项或多项:所述训练数据、所述第二神经网络模型的性能参数、用于触发对所述第一神经网络模型进行训练的指示信息;其中,所述性能参数包括准确率、置信度、精确度中的一项或多项。
186.在一种可能的实现方式中,接收模块803,用于接收采集设备发送的采样数据;具体实现方式请参见图5c中步骤502a的描述,此处不再赘述。
187.处理模块804,用于在采样数据中确定用于训练所述第一神经网络模型的训练数据;还用于在确定的训练数据的数据量超过第二预设值时,训练所述第一神经网络模型。参见步骤。
188.在一种可能的实现方式中,训练数据包括与历史数据的相似度小于第三预设值的采样数据。
189.本技术实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在存储装置上运行时,使得存储装置执行上述相关方法步骤以实现上述实施例中的云服务器所执行的方法,参见图3中步骤303~步骤405的描述,或参见图5c中步骤501~504的描述,此处不再赘述。
190.本技术实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的云服务器所执行的方法,参见图3中步骤303~步骤405的描述,或参见图5c中步骤501~504的描述,此处不再赘述。
191.另外,本技术的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的云服务器所执行的方法,参见图3中步骤303~步骤405的描述,或参见图5c中步骤501~504的描述,此处不再赘述。
192.其中,本技术实施例提供的存储设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的云服务器对应的方法,因此,其所能达到的有益效果可参考上文所
提供的对应的方法中的有益效果,此处不再赘述。
193.通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
194.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
195.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
196.另外,在本技术各个实施例中的各功能单元(或模块)可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
197.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
198.可选的,本技术实施例中的计算机执行指令也可以称之为应用程序代码,本技术实施例对此不作具体限定。
199.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
200.本技术实施例中所描述的各种说明性的逻辑单元和电路可以通过通用处理器,数字信号处理器,专用集成电路(asic),现场可编程门阵列(fpga)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
201.本技术实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动磁盘、cd-rom或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于asic中。
202.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
203.尽管结合具体特征及其实施例对本技术进行了描述,显而易见的,在不脱离本技术的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本技术的示例性说明,且视为已覆盖本技术范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包括这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1