网络结构搜索的方法及装置、计算机存储介质和计算机程序产品与流程

文档序号:22188292发布日期:2020-09-11 21:58阅读:152来源:国知局
网络结构搜索的方法及装置、计算机存储介质和计算机程序产品与流程

本申请涉及机器学习领域,特别涉及一种网络结构搜索的方法及装置、计算机存储介质和计算机程序产品。



背景技术:

相关技术在移动端应用深度学习模型时,需要在电脑或者服务器上训练模型,然后将模型部署在移动端的芯片。而目前高性能的深度学习模型往往参数量巨大,并且参数为32bit浮点参数,这在电脑或者服务器等计算力丰富的设备上训练没有问题,但是直接部署在计算资源有限的移动端则非常困难。而低比特网络存储空间小,运算速度快,对计算资源需求少,因此低比特网络成为近年来研究的热点之一。然而,网络结构对低比特网络有着较大的影响,如何设计一个适用于低比特网络的网络结构是亟待解决的问题。



技术实现要素:

本申请的实施方式提供一种网络结构搜索的方法及装置、计算机存储介质和计算机程序产品。

本申请实施方式的网络结构搜索的方法包括:

确定待进行网络结构搜索的神经网络模型的搜索空间,所述搜索空间定义了所述神经网络模型中每两个节点之间的操作层上的多种操作;

根据第一网络结构在所述搜索空间的每个所述操作层采样一个所述操作以得到目标网络结构;

低比特化所述目标网络结构以得到第二网络结构;

确定所述第二网络结构的反馈量;

根据所述反馈量更新所述第一网络结构。

本申请实施方式的网络结构搜索的装置包括处理器和存储器,所述存储器存储有一个或多个程序,在所述程序被所述处理器执行的情况下,使得所述处理器用于执行:确定待进行网络结构搜索的神经网络模型的搜索空间,所述搜索空间定义了所述神经网络模型中每两个节点之间的操作层上的多种操作;根据第一网络结构在所述搜索空间的每个所述操作层采样一个所述操作以得到目标网络结构;低比特化所述目标网络结构以得到第二网络结构;确定所述第二网络结构的反馈量;根据所述反馈量更新所述第一网络结构。

本申请实施方式的计算机存储介质,其上存储有计算机程序,所述计算机程序被计算机执行时使得,所述计算机执行上述的方法。

本申请实施方式的包含指令的计算机程序产品,所述指令被计算机执行时使得计算机执行上述的方法。

本申请实施方式的网络结构搜索的方法及装置、计算机存储介质和计算机程序产品,将采样到的目标网络结构低比特化以得到第二网络结构,再确定第二网络结构的反馈量来更新第一网络结构,可以得到更适用于低比特网络的网络结构,从而实现高性能的低比特网络,进而使低比特网络能够更好的应用于移动端场景。

本申请的实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实施方式的实践了解到。

附图说明

本申请的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:

图1是本申请实施方式的网络结构搜索的方法的流程示意图;

图2是本申请实施方式的网络结构搜索的装置的模块示意图;

图3是本申请实施方式的网络结构搜索的方法的原理示意图;

图4是本申请实施方式的网络结构搜索的方法的另一原理示意图;

图5是本申请又一实施方式的网络结构搜索的方法的流程示意图;

图6是本申请再一实施方式的网络结构搜索的方法的流程示意图;

图7是本申请另一实施方式的网络结构搜索的方法的流程示意图;

图8是本申请又一实施方式的网络结构搜索的方法的流程示意图;

图9是本申请再一实施方式的网络结构搜索的方法的流程示意图;

图10是本申请另一实施方式的网络结构搜索的方法的流程示意图;

图11是本申请实施方式的网络结构搜索的方法的总图示意图;

图12是本申请另一实施方式的网络结构搜索的方法的流程示意图。

主要元件符号说明:

网络结构搜索的装置10、存储器102、处理器104、通信接口106。

具体实施方式

下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。

在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通信;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。

下文的公开提供了许多不同的实施方式或例子用来实现本申请的不同结构。为了简化本申请的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本申请。此外,本申请可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本申请提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。

下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。

请参阅图1和图2,本申请实施方式提供一种网络结构搜索的方法及装置10。

本申请实施方式的网络结构搜索的方法包括:

步骤s12:确定待进行网络结构搜索的神经网络模型的搜索空间,搜索空间定义了神经网络模型中每两个节点之间的操作层上的多种操作;

步骤s14:根据第一网络结构在搜索空间的每个操作层采样一个操作以得到目标网络结构;

步骤s16:低比特化目标网络结构以得到第二网络结构;

步骤s18:确定第二网络结构的反馈量(val-acc);

步骤s19:根据反馈量更新第一网络结构。

本申请实施方式的网络结构搜索的装置10包括处理器104和存储器102,存储器102存储有一个或多个程序,在程序被处理器104执行的情况下,使得处理器104用于执行:确定待进行网络结构搜索的神经网络模型的搜索空间,搜索空间定义了神经网络模型中每两个节点之间的操作层上的多种操作;根据第一网络结构在搜索空间的每个操作层采样一个操作以得到目标网络结构;低比特化目标网络结构以得到第二网络结构;确定第二网络结构的反馈量;根据反馈量更新第一网络结构。

也就是说,本申请实施方式的网络结构搜索的方法可由本申请实施方式的网络结构搜索的装置10实现。

本申请实施方式的网络结构搜索的方法及装置10,将采样到的目标网络结构低比特化以得到第二网络结构,再确定第二网络结构的反馈量来更新第一网络结构,可以得到更适用于低比特网络的网络结构,从而实现高性能的低比特网络,进而使低比特网络能够更好的应用于移动端场景。

可选地,网络结构搜索的装置10还可以包括通信接口106,用于将网络结构搜索的装置10处理完成的数据输出,和/或,从外部设备输入网络结构搜索的装置10将要处理的数据。例如,处理器104用于控制通信接口106输入和/输出数据。

请注意,处理器104的数量可以是一个。处理器104的数量也可以是多个,例如2个、3个、5个或其他数量。在处理器104的数量为多个的情况下,可以由不同的处理器104执行步骤s12、步骤s14、步骤s16、步骤s18和步骤s19。

另外,步骤s14、步骤s16、步骤s18和步骤s19是多次循环进行的。如此,可以最终获得效果较好的第二网络结构。

在相关技术中,低比特网络主要采用模型量化技术,模型量化技术主要包括两个部分,一是针对权重(weight)量化,一是针对激活值(activation)量化。相关技术阐述了8bit的可行性,可以实现相较于32bit不掉准确率。而为了进一步追求计算效率,4bit,2bit和1bit网络进而被提出,但是这些网络由于信息损失太多,均出现准确率大幅下降。

以1bit网络为例,相关技术的低比特网络是将模型在服务器上训练之后的32bit网络权值和激活函数输出直接量化为1或-1。具体地,训练的时候,前向(forward)的过程将权重和激活值二值化,然后反向(backward)的时候使用直通估算(straightthroughestimator,ste)方法进行权值的更新,直到收敛。或者将浮点模型训练到收敛,然后再进行二值化处理并迁移学习(fintune)。然而,这些技术都没有很好的解决问题。

也即是说,相关技术的低比特技术都是基于同样的一种规则在操作:利用计算机或者服务器上设计好的性能较好的模型进行低比特化,例如直接使用残差网络结构(residualneuralnetwork,resnet)进行低比特处理。而实际上神经网络是一个非常复杂的非凸模型,浮点精度下的高性能模型结构与低比特性下的高性能模型结构是否应该一样并不确定。

事实上,浮点参数的高性能模型结构应该与低比特参数的高性能模型结构存在一定的差异。也就是说,直接使用在浮点精度下设计出的模型进行低比特化并不能解决问题,这也是为什么目前低比特网络仍然没有很好的解决方案的原因。

因此,可以认为,网络结构对低比特网络有着较大的影响。对此,本申请实施方式的网络结构搜索的方法及装置10,可以得到更适用于低比特网络的网络结构,从而实现高性能的低比特网络,进而使低比特网络能够更好的应用于移动端场景。可以理解,由于网络结构设计的过程十分复杂,本申请实施方式的网络结构搜索的方法及装置10,使用自动化网络结构搜索(nas,neuralarchitecturesearch)算法解决低比特网络的问题。

具体地,网络结构搜索(neuralarchitecturesearch,nas)是一种利用算法自动化设计神经网络模型的技术。网络结构搜索就是要搜索出神经网络模型的结构。在本申请实施方式中,待进行网络结构搜索的神经网络模型为卷积神经网络(convolutionalneuralnetworks,cnn)。

网络结构搜索要解决的问题就是确定神经网络模型中的节点之间的操作。节点之间的操作的不同组合对应不同的网络结构。进一步地,神经网络模型中的节点之间的操作可以理解为神经网络模型中的特征层。两个节点之间的操作指的是,其中一个节点上的特征数据变换为另一个节点上的特征数据所需的操作。本申请提及的操作可以为卷积操作、池化操作、或全连接操作等其他神经网络操作。可以认为两个节点之间的操作构成这两个节点之间的操作层。通常,两个节点之间的操作层上具有多个可供搜索的操作,即具有多个候选操作。网络结构搜索的目的就是在每个操作层上确定一个操作。

例如,将conv3*3,conv5*5,depthwise3*3,depthwise5*5,maxpool3*3,averagepool3*3等定义为搜索空间。也即是说,目标网络结构的每一层操作是在这六个选择中采样。

nas的思想是,通过一个第一网络结构在搜索空间中得到一个网络结构,然后根据该网络结构得到准确率r,将准确率r作为反馈以更新第一网络结构,第一网络结构继续优化得到另一个网络结构,如此反复进行直到得到最佳的结果。

第一网络结构可作为控制器。在图3的示例中,第一网络结构通过循环神经网络(recurrentneuralnetwork,rnn)构建,当然,第一网络结构也可以通过卷积神经网络(convolutionalneuralnetworks,cnn)或长短期记忆人工神经网络(long-shorttermmemory,lstm)构建。在此不对第一网络结构构建的具体方式进行限定。接下来以第一网络结构通过lstm构建为例进行说明。

请参阅图4和图5,搜索空间的每个操作层对应于长短期记忆人工神经网络的一个时间步(timestep),对于每个时间步,长短期记忆人工神经网络的细胞(cell)输出一个隐状态(hiddenstate),步骤s14包括:

步骤s142:将隐状态映射为特征向量,特征向量的维度与每个操作层上的操作数量相同;

步骤s144:根据特征向量在每个操作层采样一个操作以得到目标网络结构。

对应地,处理器104用于将隐状态映射为特征向量,特征向量的维度与每个操作层上的操作数量相同;以及用于根据特征向量在每个操作层采样一个操作以得到目标网络结构。

如此,实现在搜索空间的每个操作层采样一个操作以得到目标网络结构。例如,一共要搜索一个20层的网络,不考虑跳线,需要20个时间步。

在图4的示例中,实线箭头表示时间步(timestep),时间1表示lstm的第一个cell,时间2表示lstm的第二个cell……以此类推。方块conv3*3表示在模型中该层的操作,圆形表示操作层与操作层之间的连接关系。

可以理解,由于网络结构的计算有先后顺序,将计算先后的关系的逻辑关系映射到lstm上,就是图5中一个小方块从左往右,对应的每一个时间的lstm的cell的状态。

具体地,在时间1下,cell输出的隐状态经过计算得到卷积conv3×3,conv3×3作为时间2下cell的输入层,时间1下cell输出的隐状态也作为时间2下cell的输入,计算得到圆圈1。

同理,圆圈1作为时间3下cell的输入,时间2下cell输出的隐状态也作为时间3的输入,计算得到卷积sep5×5……以此类推。

进一步地,请参阅图6,步骤s144包括:

步骤s1442:将特征向量进行归一化(softmax)以得到每个操作层的每个操作的概率;

步骤s1444:根据概率在每个操作层采样一个操作以得到目标网络结构。

对应地,处理器104用于将特征向量进行归一化以得到每个操作层的每个操作的概率;以及用于根据概率在每个操作层采样一个操作以得到目标网络结构。

如此,实现根据特征向量在每个操作层采样一个操作以得到网络结构。具体地,在图4所示的例子中,对lstm的cell输出的隐状态进行编码(encoding)操作,将其映射维度为6的向量(vector),该向量经过归一化指数函数(softmax),变为概率分布,依据此概率分布进行采样,得到当前层的操作。以此类推最终得到一个网络结构。可以理解,在此例子中,只有一个输入,一共包含六种操作(3×3卷积,5×5卷积,3×3depthwise-separable卷积,5×5depthwise-separable卷积,maxpooling,3×3averagepooling),向量的维度与搜索空间对应,6是指搜索空间有6个操作可选择。

在步骤s16中,低比特化目标网络结构以得到第二网络结构的方法可以是前文的模型量化技术,在此不对低比特化目标网络结构的具体方法进行限定。

另外,步骤s19通过以下公式实现:

其中,rk为第k个所述反馈量,θc为所述长短期记忆人工神经网络的参数,at为在第t个所述操作层采样到的所述操作,p(at|a(t-1):1;θc)为采样到所述操作的概率。m为所述反馈量的总数量,t为所述第一网络结构预测的超参数的数量。

如此,实现根据反馈量更新第一网络结构。

本申请实施方式的网络结构搜索的方法,可以是基于nas的网络结构搜索方法,也可以是基于高效网络结构搜索(efficientneuralarchitecturesearch,enas)的一切变种网络结构搜索方法(enas-like)。

enas可以是在基于强化学习(reinforcementlearning,rl)nas结构上提出的高效网络结构搜索方法,也可以是基于进化算法的高效网络结构搜索方法。可以理解,由于nas的效率较低,而在本实施方式中,enas通过权值分享等方式可以提高网络结构搜索的效率。

在图10-14所示的实施方式(下称实施方式一)中,网络结构搜索的方法及装置10基于nas。

在图15-19所示的实施方式(下称实施方式二)中,网络结构搜索的方法及装置10基于enas-like。

以下就实施方式一和实施方式二的网络结构搜索的方法及装置10分别进行说明。

实施方式一:

在本实施方式中,网络结构搜索的方法及装置10基于nas。

请参阅图7,在本实施方式中,步骤s18包括:

步骤s181:将第二网络结构训练至收敛以确定反馈量。

对应地,处理器104用于将第二网络结构训练至收敛以确定反馈量。

如此,实现确定第二网络结构的反馈量。

另外,可预先将训练样本(trainset)分为训练集(train)和测试集(valid)。可以理解,传统的cnn中,一般将样本数据分为训练样本和验证样本,训练样本用于训练网络结构,验证样本用于验证网络结构好不好。

而在本实施方式中,在搜索第二网络结构时,训练集用于训练搜索到的第二网络结构的参数,如通过conv3*3,sep5*5计算出的第二网络结构的参数,例如权重、偏置等。在搜索到第二网络结构后,可将搜索到的第二网络结构在测试集上预测,以得到反馈量来根据前述公式更新第一网络结构(lstm)。请注意,并非直接用测试集训练lstm。

也即是说,训练集用于训练搜索到的第二网络结构的参数,测试集用于更新lstm的参数,而验证样本用于验证搜索到的第二网络结构好不好。

在一个例子中,训练样本的数量为10个,将训练样本划分为数量为8个的训练集和数量为2个的测试集,数量为8个的训练集用于训练搜到的结构,数量为2个的测试集用于更新lstm。

进一步地,请参阅图8,步骤s181包括:

步骤s182:利用训练集将第二网络结构训练至收敛;

步骤s184:利用测试集预测(prediction)收敛后的第二网络结构以确定反馈量。

对应地,处理器104用于利用训练集将第二网络结构训练至收敛;以及用于利用测试集预测收敛后的第二网络结构以确定反馈量。

如此,实现将第二网络结构训练至收敛以确定反馈量。

在一个例子中,在搜索空间的每个操作层采样一个操作,从而得到目标网络结构,然后再使用模型量化技术将目标网络结构低比特化为第二网络结构,接着,直接将第二网络结构在训练集上训练至收敛,并在测试集上预测收敛后的第二网络结构,从而确定反馈量。最后,将反馈量代入以下公式,以根据反馈量更新第一网络结构:

实施方式二:

在本实施方式中,网络结构搜索的方法及装置10基于enas-like。

请参阅图9,步骤s18包括:

步骤s183:根据第二网络结构确定反馈量,第二网络结构未被训练至收敛。

对应地,处理器104用于根据第二网络结构确定反馈量,第二网络结构未被训练至收敛。

如此,实现确定第二网络结构的反馈量。可以理解,实施方式一中,每得到一个第二网络结构就将其训练至收敛以确定反馈量,这样比较耗时,效率太低。在本实施方式中,根据第二网络结构确定反馈量时,第二网络结构未被训练至收敛,可以减少将第二网络结构训练至收敛的时间,从而提高效率。

另外,可预先将训练样本(trainset)分为训练集(train)和测试集(valid)。可以理解,传统的cnn中,一般将样本数据分为训练样本和验证样本,训练样本用于训练网络结构,验证样本用于验证网络结构好不好。

而在本实施方式中,在搜索第二网络结构时,训练集用于训练搜索到的第二网络结构的参数,如通过conv3*3,sep5*5计算出的第二网络结构的参数,例如权重、偏置等。在搜索到第二网络结构后,可将搜索到的第二网络结构在测试集上预测,以得到反馈量来根据前述公式更新第一网络结构(lstm)。请注意,并非直接用测试集训练lstm。

也即是说,训练集用于训练搜索到的第二网络结构的参数,测试集用于更新lstm的参数,而验证样本用于验证搜索到的第二网络结构好不好。

在一个例子中,训练样本的数量为10个,将训练样本划分为数量为8个的训练集和数量为2个的测试集,数量为8个的训练集用于训练搜到的结构,数量为2个的测试集用于更新lstm。

进一步地,请参阅图10和图11,步骤s14包括:

步骤s146:利用训练集训练搜索空间的总图(wholegraph),总图由操作连接而成;

步骤s148:根据第一网络结构对训练后的总图进行采样以得到目标网络结构;

步骤s18包括:

步骤s185:利用测试集预测(prediction)第二网络结构以确定反馈量。

对应地,处理器104用于利用训练集训练搜索空间的总图,总图由操作连接而成;及用于根据第一网络结构对训练后的总图进行采样以得到目标网络结构;以及用于利用测试集预测第二网络结构以确定反馈量。

图11所示的总图由节点间的操作连接而成。可以理解,图11中加粗的带边最优结构的连接方式是总图的一个子图。

请注意,步骤s146与步骤s148、步骤s16、步骤s185和步骤s19可迭代进行,直到完成预设的迭代总次数。这样可以获得较好的第二网络结构。

在本实施方式中,迭代总次数为310次。可以理解,在其他的实施方式中,迭代总次数的数值可为100次、200次或其他数值。

在每次迭代中,步骤s146可重复进行,每次利用训练集的一批数据(batch),直到训练集的数据使用完毕,也即是完成一个迭代(epoch)。然后,更新lstm。

在更新lstm时,步骤s148、步骤s16、步骤s185和步骤s19可循环进行,直到完成预设次数。

在本实施方式中,预设次数为50次。可以理解,在其他的例子中,预设次数可为10、20、30或其他数值值。在此不对预设次数的具体数值进行限定。可以理解,预设次数为50次,可以减少采样带来的随机性优化。

在每次循环步骤s148、步骤s16、步骤s185和步骤s19时,可确定预设数量的反馈量,从而利用预设数量的反馈量更新lstm。进一步地,可以采用策略梯度优化的方式更新lstm。在此不对更新lstm的方式进行限定。

在本实施方式中,预设数量为20个。可以理解在其他的例子中,预设数量可为10、15、25或其他数值。在此不对预设数量的具体数值进行限定。

请参阅图12,步骤s146包括:

步骤s1462:在搜索空间的每个操作层采样一个操作以得到总图的子图;

步骤s1464:利用训练集的一批数据(batch)训练子图。

对应地,处理器104用于在搜索空间的每个操作层采样一个操作以得到总图的子图;以及用于利用训练集的一批数据训练子图。

如此,实现对总图的训练。在本实施方式中,enas采用权值分享策略,在每次采样到一个网络结构后,不再将其直接训练至收敛,而是利用训练集的一批数据(batch)训练子图。请注意,图的收敛并不相当于网络结构的收敛。

可以理解,本实施方式中,基于权值分享策略的enas,由于在每次搜索网络结构时,分享了可以分享的参数,可以节约时间,从而提高网络结构搜索的效率。例如,在图16的示例中,如果在搜索到节点1、节点3和节点6并对搜索到的网络结构进行训练之后,本次搜索到节点1、节点2、节点3和节点6,那么,搜索到节点1、节点3和节点6时训练的网络结构的相关参数可以应用到对本次搜索到的网络结构的训练中。这样,就可以实现通过权值分享提高效率。

在一个例子中,搜索空间为5层,每层有4个可选用的操作,相当于4x5的图。网络结构搜索需要在每层选一个操作,相当于在图上进行路径优化。初始时,每层随机采样一个操作,然后把采样到的操作连起来,得到一个子图,在训练集的一批数据上训练这个子图;接着,再每层随机采样一个操作得到另一个子图,再在训练集的另一批数据上训练这个子图;接着,继续随机采样到又一个子图并在训练集的又一批数据上训练这个子图……直到训练集中的数据使用完毕,也即是完成一个迭代(epoch)。然后训练第一网络结构。

接着,以相同的方式训练总图完成第二个epoch,然后训练第一网络结构。

接着,以相同的方式训练总图完成第三个epoch,然后训练第一网络结构……如此迭代,直至完成迭代总次数310次,以将总图和第一网络结构交替进行优化。也即是说,对总图的训练和对第一网络结构的更新是多次迭代进行的。如此,可以最终获得效果较好的第二网络结构。可以理解,如此迭代,完成310次后,总图收敛,第一网络结构也收敛。

具体地,在每次迭代中,可将第一网络结构更新预设次数50次,也即是将步骤s148、步骤s16、步骤s185和步骤s19循环50次。也即是说,在每次迭代中,以下公式执行50次:

进一步地,在每次循环更新第一网络结构时,可采样预设数量20个目标网络结构,低比特化后得到20个第二网络结构,从而确定20个反馈量。将20个反馈量作为rk代入上述公式。也即是说,上述公式中,m的值为20。

本申请实施方式还提供一种计算机存储介质,其上存储有计算机程序,计算机程序被计算机执行时使得,计算机执行上述任一实施方式的方法。

本申请实施方式还提供一种包含指令的计算机程序产品,指令被计算机执行时使得计算机执行上述任一实施方式的方法。

本申请实施方式的计算机存储介质和计算机程序产品,将采样到的目标网络结构低比特化以得到第二网络结构,再确定第二网络结构的反馈量来更新第一网络结构,可以得到更适用于低比特网络的网络结构,从而实现高性能的低比特网络,进而使低比特网络能够更好的应用于移动端场景。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其他任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digitalvideodisc,dvd))、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1