一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种模型量化方法、服务器、电子设备及介质与流程

2022-02-20 23:04:12 来源:中国专利 TAG:


1.本技术涉及模型压缩技术领域,特别涉及一种模型量化方法、服务器、电子设备及介质。


背景技术:

2.目前,随着深度学习技术在多个领域的快速应用,出现了大量的基于深度学习的神经网络模型。但神经网络模型结构一般都较为复杂且所占用的内存较大,难以直接部署于手机、机器人等嵌入式电子设备中。因此,在神经网络模型被部署于手机等嵌入式电子设备中时,一般都会通过服务器对神经网络模型进行量化压缩以减小模型占用内存,进而通过服务器将量化压缩后的模型传送至手机等嵌入式电子设备中。例如,如图1所示,服务器001可以对神经网络模型002量化,并将量化后的神经网络模型传送至手机10中。其中,神经网络模型002可以包括多个算子,例如算子a、算子b、算子c、算子d、算子e、算子f和算子g。
3.其中,模型量化即为将模型中每个算子的实际激活值或称为输出值转化为占用内存更小的数据类型的输出值。目前常规的模型量化方式为对称量化,其具体为将神经网络模型中每个算子的输出值以零为对称中心,并通过设定的映射系数,将其转化为以零为对称中心的量化数值范围内的对应数值。
4.但由于算子的输出值的分布情况存在均为大于等于零的数值的情况,而量化数值范围是以零为对称中心的量化数值范围,因此会造成量化数值范围不能被完全利用的情况,从而使得量化等级变少,在一定程度上会造成量化的精度损失。


技术实现要素:

5.为解决上述问题,本技术实施例提供了一种模型量化方法、服务器、电子设备及介质。
6.第一方面,本技术实施例提供了一种模型量化方法,包括:
7.获取神经网络模型中算子的激活值的第一数值范围;
8.在所述第一数值范围中的最小数值大于等于零的情况下,确定所述算子的量化方式为无符号量化方式;
9.在确定出所述算子的量化方式的情况下,确定所述算子的激活值的量化结果的第二数值范围;
10.根据所述第一数值范围和所述第二数值范围确定所述算子的激活值与所述量化结果之间的映射关系。
11.本技术实施例中,可以根据算子的激活值选取合适的量化方式,如此使得确定出的算子的激活值的量化结果的第二数值范围,即量化数值范围的整个范围都能被完全利用,能够有效提高量化精度。
12.可以理解,本技术实施例中,算子激活值可以为算子的输出值,算子激活值的第一数值范围可以为算子激活值的取值范围。
13.所述算子的激活值的量化结果的第二数值范围即为后文所提及的算子激活值的量化数值范围。
14.在上述第一方面一种可能的实现中,在所述第一数值范围中的最小数值小于零的情况下,确定所述算子的量化方式为对称量化方式。
15.在上述第一方面一种可能的实现中,所述在确定出所述算子的量化方式的情况下,确定所述算子的激活值的量化结果的第二数值范围;包括:
16.获取所述算子的量化比特数;
17.根据所述算子的量化比特数和所述算子的量化方式确定所述算子的激活值的量化结果的第二数值范围。
18.在上述第一方面一种可能的实现中,根据所述算子的量化比特数和所述量化方式确定所述算子的激活值的量化结果的第二数值范围,包括:
19.根据所述量化比特数确定量化等级;
20.根据所述量化等级和所述量化方式确定所述量化数值范围。
21.在上述第一方面一种可能的实现中,根据所述第一数值范围和所述第二数值范围确定所述算子的激活值与所述量化结果之间的映射关系,包括:
22.根据所述第一数值范围中绝对值最大的数值,
23.将所述绝对值最大的数值的绝对值作为所述算子的最大绝对值;
24.根据所述第二数值范围确定所述第二数值范围内的最大数值;
25.将所述第二数值范围内的最大数值与所述算子的最大绝对值的比值作为所述所述算子的激活值与所述量化结果之间的映射系数。
26.在上述第一方面一种可能的实现中,上述方法还包括:将所述神经网络模型中算子的激活值通过所述映射系数映射至所述第二数值范围内。
27.本技术实施例还提供了一种模型量化方法,包括:
28.获取神经网络模型中算子的权重的第一数值范围;
29.在所述第一数值范围中的最小数值大于等于零的情况下,确定所述算子的量化方式为无符号量化方式;
30.在确定出所述算子的量化方式的情况下,确定所述算子的权重的量化结果的第二数值范围;
31.根据所述第一数值范围和所述第二数值范围确定所述算子的权重值与所述量化结果之间的映射关系。
32.将所述算子的权重值根据上述映射关系量化为第二数值范围内的对应值。
33.可以理解,本技术实施例中提供的量化方法还可以对权重值或模型的其他参数进行量化。
34.第二方面,本技术实施例提供一种服务器,包括:存储器,用于存储由所述服务器的一个或多个处理器执行的指令,以及
35.处理器,是所述服务器的所述一个或多个处理器之一,用于执行所述模型量化方法。
36.第三方面,本技术实施例提供一种电子设备,包括:
37.存储器,用于存储由所述电子设备的一个或多个处理器执行的指令,以及
38.处理器,是所述电子设备的所述一个或多个处理器之一,用于执行所述模型量化方法。
39.第四方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令在执行时使计算机执行所述模型量化方法。
40.第五方面,本技术实施例提供一种计算机程序产品,所述计算机程序产品包括指令,所述指令用于实现所述模型量化方法。
附图说明
41.图1根据本技术的一些实施例,示出了一种模型传输的场景示意图;
42.图2根据本技术的一些实施例,示出了一种模型量化的示意图;
43.图3根据本技术的一些实施例,示出了一种模型量化的示意图;
44.图4根据本技术的一些实施例,示出了一种服务器的结构示意图;
45.图5根据本技术的一些实施例,示出了一种模型量化方法的流程示意图。
具体实施方式
46.本技术的说明性实施例包括但不限于一种模型量化方法、电子设备及介质。下面将结合附图对本技术的实施例作进一步地详细描述。
47.为了更加清楚的说明本技术实施例的方案,下面对本技术实施例中涉及到的一些词语进行解释。
48.(一)模型量化:
49.模型量化就是将浮点存储(运算)转换为整型存储(运算)的一种模型压缩技术。对于神经网络模型,是指将神经网络模型中算子的激活值(也可以理解为输出值)或其他参数的数据类型转变为占用内存更小的数据类型。
50.例如,模型中算子的输出值采用float32数据类型,其中,float32数据类型为占用存储空间为32比特即4个字节的数据类型;对该模型算子量化的方式可以为将其转化为int8数据类型、int16数据类型等。
51.其中,int8数据类型是指占用存储空间为8比特的数据类型,即量化过程中的量化比特数选取为8比特时进行量化获取的数据类型。int16数据类型是指占用存储空间为16比特的数据类型,即量化过程中的量化比特数选取为16比特时进行量化获取的数据类型。
52.(二)量化数值范围
53.量化数值范围是指将模型中算子的激活值经过量化后获取的数值所属的数值范围。其中量化数值范围需要基于量化方式和量化比特数进行确定,其中量化比特数可以根据实际需求进行设定。
54.量化数值范围的确定方式如下:
55.首选需要根据量化比特数确定量化级数;当量化比特数为n,则量化级数为2n。可以理解,在量化过程中,量化比特数越高,则量化等级越高;量化等级越高,则量化精度越高。
56.然后根据量化级数和量化方式确定量化数值范围:
57.当量化比特数为n,获取的量化级数为2n,量化方式为对称量化,则量化数值范围
为[-2
n-1
,2
n-1-1];当量化比特数为n,获取的量化级数为2n,量化方式为无符号量化,则量化数值范围为[0,2
n-1];
[0058]
例如,若量化比特数为8,获取的量化等级即为256等级,量化方式为对称量化,则量化数值范围为[-128,127];若量化比特数为8,获取的量化等级即为256等级,量化方式为无符号量化,则量化数值范围为[0,255]。
[0059]
如前所述,由于算子的激活值的分布情况存在全部激活值均为大于等于零的数值的情况,而目前常用的对称量化方式的量化数值范围是以零为对称中心的量化数值范围,因此会造成量化数值范围不能被完全利用的情况,从而使得量化等级变少,在一定程度上会造成量化的精度损失。
[0060]
例如,如图2所示,对神经网络模型002中算子a的激活值进行量化,当采用的量化比特数为8比特,采用的量化方式为常规的对称量化,则获取的量化等级为256个等级、量化数值范围即为[-128,127];但由于该算子a的激活值的范围为[0,6],均为大于等于零的数,当对上述激活值进行量化时,量化数值范围中的负数数值范围[-128,0)将不能被利用,因此,相当于采用了128个量化等级对上述算子的激活值进行量化,在一定程度上会造成量化的精度损失。
[0061]
为解决上述问题,本技术实施例提供一种量化方法,包括:获取神经网络模型中算子的激活值范围,并确定出算子的最小激活值,当算子的最小激活值大于等于零时,确定该算子的量化方式为无符号量化方式,当算子的最小激活值小于零时,确定该算子的量化方式为对称量化方式。其中,无符号量化方式对应的量化数值范围为大于等于零的数值范围;对称量化方式对应的量化数值范围为以零为对称中心的量化数值范围。然后根据选取的量化方式和设定的量化比特数确定出量化数值范围。并根据算子的激活值范围和量化数值范围确定出映射系数。当模型在终端电子设备中运行以对数据进行处理时,可以直接将上述算子的激活值通过映射系数映射至该量化数值范围内的对应值。
[0062]
如此,根据激活值选取合适的量化方式,再根据选取的量化方式和设定的量化比特数确定出量化数值范围,能够使得量化数值范围的整个范围都能被完全利用,能够有效提高量化精度。
[0063]
例如,如图3所示,对神经网络模型002中算子a的激活值进行量化,当确认神经网络模型中的算子a的激活值范围为[0,6],判断出算子a的最小激活值大于等于0,则确定该算子的量化方式为无符号量化方式。若用户设定的量化比特数为8比特,则如前所述,可以确定出获取的量化等级为256个等级、量化数值范围为[0,255]。
[0064]
由于该算子a的激活值的范围为[0,6],均为大于等于零的数,而量化数值范围也为大于等于零的范围,因此,当对上述激活值进行量化时,量化数值范围中的256个等级能够被完全利用,相对于前述对称量化方式中的负数量化数值范围不能被利用的情况,在一定程度上提高了量化的精度。
[0065]
可以理解,本技术实施例中,上述模型量化方法可以通过服务器001执行。模型中的每个算子均可以采用上述量化方法进行量化。可以理解,本技术实施例中,服务在确定出神经网络模型中每个算子的量化数值范围和映射系数后,对神经网络中的每个算子进行量化处理,以使得每个算子的量化数值范围为上述量化数值范围,映射系数为上述映射系数。让后将量化后的神经网络模型部署至电子设备中。
[0066]
电子设备可以运行上述模型对数据进行处理。其中,模型在对数据进行处理时,可以以直接将获取的算子的激活值通过映射系数映射至上述量化数值范围内的对应值。
[0067]
可以理解,在一些实施方案中,本技术实施例中提及的模型的整个量化过程,包括确定量化方式、确定量化数值范围和映射系数的过程等均可以电子设备中直接进行。
[0068]
本技术实施例中,电子设备可以为手机、计算机等电子设备。
[0069]
下面在详细介绍本技术实施例提供的量化方法之前,首先服务器001的硬件结构进行介绍。
[0070]
图4为本技术实施例中提供的服务器001的框图。图4示意性地示出了根据多个实施例的示例服务器001。在一个实施例中,服务器001可以包括一个或多个处理器1404,与处理器1404中的至少一个连接的系统控制逻辑1408,与系统控制逻辑1408连接的系统内存1412,与系统控制逻辑1408连接的非易失性存储器(nvm)1416,以及与系统控制逻辑1408连接的网络接口1420。
[0071]
在一些实施例中,处理器1404可以包括一个或多个单核或多核处理器。在一些实施例中,处理器1404可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。在服务器001采用enb(evolved node b,增强型基站)101或ran(radio access network,无线接入网)控制器102的实施例中,处理器1404可以被配置为执行各种符合的实施例。
[0072]
在一些实施例中,系统控制逻辑1408可以包括任意合适的接口控制器,以向处理器1404中的至少一个和/或与系统控制逻辑1408通信的任意合适的设备或组件提供任意合适的接口。
[0073]
在一些实施例中,系统控制逻辑1408可以包括一个或多个存储器控制器,以提供连接到系统内存1412的接口。系统内存1412可以用于加载以及存储数据和/或指令。在一些实施例中服务器001的内存1412可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(dram)。
[0074]
nvm/存储器1416可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,nvm/存储器1416可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如hdd(hard disk drive,硬盘驱动器),cd(compact disc,光盘)驱动器,dvd(digital versatile disc,数字通用光盘)驱动器中的至少一个。
[0075]
nvm/存储器1416可以包括安装服务器001的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口1420通过网络访问nvm/存储1416。
[0076]
特别地,系统内存1412和nvm/存储器1416可以分别包括:指令1424的暂时副本和永久副本。指令1424可以包括:由处理器1404中的至少一个执行时导致服务器001实施本技术实施例中提及的模型量化方法的指令。在一些实施例中,指令1424、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑1408,网络接口1420和/或处理器1404中。
[0077]
网络接口1420可以包括收发器,用于为服务器001提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口1420可以集成于服务器001的其他组件。例如,网络接口1420可以集成于处理器1404
的,系统内存1412,nvm/存储器1416,和具有指令的固件设备(未示出)中的至少一种,当处理器1404中的至少一个执行所述指令时,服务器001实现本技术实施例中提及的模型量化方法。
[0078]
网络接口1420可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口1420可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
[0079]
在一个实施例中,处理器1404中的至少一个可以与用于系统控制逻辑1408的一个或多个控制器的逻辑封装在一起,以形成系统封装(sip)。在一个实施例中,处理器1404中的至少一个可以与用于系统控制逻辑1408的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(soc)。
[0080]
服务器001可以进一步包括:输入/输出(i/o)设备1432。i/o设备1432可以包括用户界面,使得用户能够与服务器001进行交互;外围组件接口的设计使得外围组件也能够与服务器001交互。在一些实施例中,服务器001还包括传感器,用于确定与服务器001相关的环境条件和位置信息的至少一种。
[0081]
在一些实施例中,用户界面可包括但不限于显示器(例如,液晶显示器,触摸屏显示器等),扬声器,麦克风,一个或多个相机(例如,静止图像照相机和/或摄像机),手电筒(例如,发光二极管闪光灯)和键盘。
[0082]
在一些实施例中,外围组件接口可以包括但不限于非易失性存储器端口、音频插孔和电源接口。
[0083]
在一些实施例中,传感器可包括但不限于陀螺仪传感器,加速度计,近程传感器,环境光线传感器和定位单元。定位单元还可以是网络接口1420的一部分或与网络接口1420交互,以与定位网络的组件(例如,全球定位系统(gps)卫星)进行通信。
[0084]
本技术实施例提供的量化方法可以由上述服务器001中的处理器1404执行,图5表示出了本技术实施例一种模型量化方法的示意图,如图5所示,方法可以包括:
[0085]
501:获取神经网络模型中算子的激活值取值范围。
[0086]
在一些可实施的方案中,可以通过输入设定数量的数据以统计算子的激活值的范围及最小激活值和最大激活值,以获取算子的激活值取值范围。
[0087]
在一些实施例中,对于有些单输入算子,其算子本身具有设定输出范围,因此,这些算子无需统计即可获取其激活值范围和最小激活值,例如,线性整流函数(rectified linear unit,relu)系列算子,具体可以包括relu算子和relu6算子,算子输出激活值的设定范围即为[0,2
n-1],n为该激活值所占的比特数;截断算子,当截断函数算子的最小截断参数≥0时,此时截断算子类似于relu算子,算子输出激活值的设定范围即为[0,2
n-1],n为该激活值所占的比特数。
[0088]
在一些实施例中,对于有些多输入算子,例如,拼接(concat)算子和elementwise算子,这些算子的激活值的类型与每个输入分支上的输入数据的数值相关,当这些算子的多个输入分支上的每个输入数据均为大于等于零的数据,则该算子的输出最小激活值即为大于等于零。当该算子的存在一个或多个输入分支上的每个输入数据为小于零的数据,则该算子的输出最小激活值即为小于零。
[0089]
在一些实施例中,对于一些融合层算子,即操作和算子融合在一起的融合算子,也
可以根据其算子的设定输出范围获取该算子的设定输出范围,其中,上述操作可以包括卷积、深度卷积、转置卷积、归一化等,算子可以包括relu系列算子、截断算子等。
[0090]
502:判断最小激活值是否大于等于零,若判断结果为是,则表明算子的激活值都处于大于等于零的范围,则转至503,确定量化方式为无符号量化;若判断结果为否,则表明算子的激活值存在小于零的数值,则转至504,确定量化类型为对称量化。
[0091]
可以理解,本技术实施例中,无符号量化方式对应的量化数值范围为大于等于零的数值范围。对称量化方式对应的量化数值范围为以零为对称中心的量化数值范围。
[0092]
如前述图2所示,当算子a的激活值范围为[0,6],其最小激活值为0,满足小于等于0的条件,此时可以确定算子a的量化方式为无符号量化,
[0093]
而对于神经网络模型中的算子b,若算子b的激活值范围为[-5,3],其最小激活值为-5,不满足小于等于0的条件,可以确定出算子b的量化方式为对称量化方式。
[0094]
可以理解,本技术实施例,如前所述,在量化过程中,为了获得具体的量化数值范围,除了需要获取量化方式,还需要设定量化比特数,其中,量化比特数量化即是指算子的激活值经量化后所占的二进制数值的位数,而算子的量化后的激活值一般为用二进制数值表示,因此,当量化比特数确定后,量化等级也会随之确定。
[0095]
可以理解,算子经量化后的数值一般通过二进制数值表示,量化比特数即二进制数值的位数,二进制数值一般采用0和1表示,即每一个比特有0和1两种表示状态,则n个bit就会有2n种不同的组合状态,如果为量化比特数为8比特,那么组合状态就为28,即256种状态,也成为256个等级。可以理解,在量化过程中,量化等级越高,则量化精度越高。
[0096]
503:确定量化方式为无符号量化方式。
[0097]
504:确定量化方式为对称量化方式。
[0098]
505:确定量化比特数;
[0099]
可以理解,本技术实施例中,量化比特数可以根据实际需求设定,例如,可以为4比特、8比特、16比特等。
[0100]
506:根据量化比特数和量化方式确定量化数值范围。
[0101]
如前所述,量化数值范围的确定方式可以包括:
[0102]
首先根据量化比特数可以确定量化级数;当量化比特数为n,则量化级数为2n。例如,量化比特数为8,则量化等级即为28,为256等级。
[0103]
然后根据量化级数和上述量化方式获取量化数值范围。
[0104]
本技术实施中,当量化比特数为n量化级数为2n,量化方式为无符号量化,则量化数值范围为[0,2
n-1];当量化比特数为n,获取的量化级数为2n,量化方式为有符号量化,则量化数值范围为[-2
n-1
,2
n-1-1];
[0105]
例如,若量化比特数为8,获取的量化等级即为256等级,量化方式为无符号量化,则量化数值范围为[0,255];若量化比特数为8,获取的量化等级即为256等级,量化方式为有符号量化,则量化数值范围为[-128,127];
[0106]
如前述图2所示,当神经网络模型中的算子a的激活值范围为[0,6],其最小激活值为0,此时若采用对称量化方式对该算子进行量化处理,获取的量化数值范围将存在不能完全被利用的情况,而如果如图3所示,量化方式采用无符号的量化方式,则获取的量化数值范围均可以用于量化,相对于前述对称量化方式中的部分量化数值范围不能被利用的情
况,能够有效提升量化精度。
[0107]
如此,可以看出采用合适的量化方式,能够确定出合适的能够提升量化精度的量化数值范围。
[0108]
507:根据量化数值范围和激活值取值范围确定算子的映射系数。
[0109]
本技术实施例中,根据量化数值范围和激活值取值范围确定映射系数可以包括:
[0110]
获取算子的最小激活值的绝对值和最大激活值的绝对值,并将绝对值最大的激活值的绝对值作为算子输出的最大绝对值。
[0111]
例如,算子a的最大激活值为6,则最大激活值的绝对值为6;最小激活值为0,则最小激活值的绝对值为0,则上述绝对值6作为算子输出的最大绝对值。再例如,若算子b的最大激活值为3,则最大激活值的绝对值为3;最小激活值为-5,则最小激活值的绝对值为5,则上述绝对值5作为算子输出的最大绝对值。
[0112]
根据算子激活值的最大绝对值和量化数值范围确定映射系数;
[0113]
本技术实施例中,根据算子激活值的最大绝对值和量化数值范围确定映射系数可以包括:根据量化数值范围,获取量化数值范围中的最大值;其中,映射系数为量化数值范围中的最大值与算子激活值的最大绝对值的比值。
[0114]
例如,对于算子a,量化数值范围中的最大值为255;算子激活值的最大绝对值为6;则映射系数为255/6。对于上述算子b,量化数值范围为[-128,127],则量化数值范围中的最大值为127;算子激活值的最大绝对值为5;则映射系数为255/5。
[0115]
可以理解,本技术实施例中,可以通过服务器执行上述501-507中的步骤,对神经网络模型进行离线量化,然后将确定出量化数值范围和映射系数的神经网络模型部署于终端电子设备上。
[0116]
当终端设备在运行神经网络模时,可以直接将算子的激活值实时映射为量化数值范围内的对应值。
[0117]
可以理解,本技术实施例中,将算子的激活值映射至量化数值范围内的对应值的方法可以为将算子的激活值乘以映射系数以获取量化数值范围内的对应值。
[0118]
例如,对于上述算子a,激活值为4时,获取的量化数值范围内的对应值的方式即为4*255/6。
[0119]
在一些实施例中,上述模型的量化方法也可以由终端电子设备执行。
[0120]
综上,本技术实施例提供的量化方法,包括:获取神经网络模型中算子的激活值范围,并确定出算子的最小激活值,当算子的最小激活值大于等于零时,确定该算子的量化方式为无符号量化方式,当算子的最小激活值小于零时,确定该算子的量化方式为对称量化方式。然后根据量化方式和设定的量化比特数确定出量化数值范围。并将上述算子的激活值映射至该量化数值范围内的对应值。如此,能够使得量化数值范围的整个范围都能被完全利用,能够有效提高量化精度。
[0121]
本技术公开的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本技术的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
[0122]
可将程序代码应用于输入指令,以执行本技术描述的各功能并生成输出信息。可
以按已知方式将输出信息应用于一个或多个输出设备。为了本技术的目的,处理系统包括具有诸如例如数字信号处理器(dsp)、微控制器、专用集成电路(asic)或微处理器之类的处理器的任何系统。
[0123]
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本技术中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
[0124]
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(cd-roms)、磁光盘、只读存储器(rom)、随机存取存储器(ram)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如,计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
[0125]
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
[0126]
需要说明的是,本技术各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本技术所提出的技术问题的关键。此外,为了突出本技术的创新部分,本技术上述各设备实施例并没有将与解决本技术所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
[0127]
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0128]
虽然通过参照本技术的某些优选实施例,已经对本技术进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献