发明内容
鉴于上述,本公开提供了一种随机森林模型训练方法及装置。利用该随机森林模型训练方法及装置,通过将流式训练样本数据基于时间窗口来分类为第一数据分区和第二数据分区以及利用新时间窗口的流式样本数据来替换流式训练样本数据中的部分样式数据得到新的训练样本数据,并且分别使用第一数据分区和第二数据分区中的流式样本数据以及新的训练样本数据来训练出第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型,然后将所训练出的第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型中的性能最佳的随机森林模型确定为训练后的随机森林模型,可以使得训练后的随机森林模型能够及时捕获流式样本数据中的新变化,从而提升随机森林模型的性能。
根据本公开的一个方面,提供了一种用于基于流式样本数据来进行随机森林模型训练的方法,包括:分别使用第一数据分区和第二数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型和第二更新随机森林模型;使用第三数据分区集中的流式样本数据来训练出第三更新随机森林模型;使用第四数据分区中的流式样本数据来分别基于所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型进行预测;以及将所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型中的预测结果最佳的随机森林模型确定为训练后的随机森林模型,其中,所述第一数据分区是基于时间窗口来对所述流式样本数据进行分区而得到的至少一个数据分区中的最新数据分区,所述第二数据分区是从所述至少一个数据分区中的至少一个最近数据分区中随机选择的数据分区,第三数据分区集是通过使用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区获得的,以及第四数据分区是在时间上紧接所述至少一个数据分区的下一数据分区。
可选地,在上述方面的一个示例中,所述方法还包括:基于时间窗口来对所述流式样本数据进行分区,以得到所述至少一个数据分区。
可选地,在上述方面的一个示例中,所述时间窗口是固定尺寸的时间窗口。
可选地,在上述方面的一个示例中,使用第一数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型包括:使用所述第一数据分区中的流式样本数据来训练出新决策树;以及基于所训练出的新决策树来对所述随机森林模型进行模型更新,以得到所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,基于所训练出的新决策树来对所述随机森林模型进行模型更新,以得到所述第一更新随机森林模型包括:将所训练出的新决策树加入所述随机森林模型中;以及在加入所训练出的新决策树的随机森林模型的性能得到提升时,将加入所训练出的新决策树的随机森林模型确定为所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,基于所训练出的新决策树来对所述随机森林模型进行模型更新,以得到所述第一更新随机森林模型还包括:在加入所训练出的新决策树的随机森林模型的性能未得到提升时,利用所训练出的新决策树来替换所述随机森林模型中的随机决策树;以及在所述经过替换后的随机森林模型的性能未下降时,将所述经过替换后的随机森林模型确定为所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,使用第二数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第二更新随机森林模型包括:使用所述第二数据分区中的流式样本数据来训练出新决策树;循环执行下述决策树替换过程,直到经过替换后的随机森林模型的性能得到提升或者完成针对所述随机森林模型中的所有决策树的替换操作:使用所训练出的新决策树来替换所述随机森林模型中的当前决策树;以及在经过替换后的随机森林模型的性能未得到提升时,从所述随机森林模型中随机选择一个未经过替换的决策树来作为下一替换过程的当前决策树;以及将性能得到提升的所述经过替换后的随机森林模型确定为所述第二更新随机森林模型。
根据本公开的另一方面,提供一种用于基于流式样本数据来进行随机森林模型训练的装置,包括:第一模型更新单元,被配置为使用第一数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型;第二模型更新单元,被配置为使用第二数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第二更新随机森林模型;第三模型更新单元,被配置为使用第三数据分区集中的流式样本数据来训练出第三更新随机森林模型;预测单元,被配置为使用第四数据分区中的流式样本数据来分别基于所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型进行预测;以及模型确定单元,被配置为将所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型中的预测结果最佳的随机森林模型确定为训练后的随机森林模型,其中,所述第一数据分区是基于时间窗口来对所述流式样本数据进行分区而得到的至少一个数据分区中的最新数据分区,所述第二数据分区是从所述至少一个数据分区中的至少一个最近数据分区中随机选择的数据分区,第三数据分区集是通过使用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区获得的,以及第四数据分区是在时间上紧接所述至少一个数据分区的下一数据分区。
可选地,在上述方面的一个示例中,所述装置还包括:数据分区单元,被配置为基于时间窗口来所述对流式样本数据进行分区,以得到所述至少一个数据分区。
可选地,在上述方面的一个示例中,所述第一模型更新单元包括:第一决策树训练模块,被配置为使用所述第一数据分区中的流式样本数据来训练出新决策树;以及第一模型更新模块,被配置为基于所训练出的新决策树来对所述随机森林模型进行模型更新,以得到所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,所述第一模型更新模块被配置为:将所训练出的新决策树加入所述随机森林模型中;以及在加入所训练出的新决策树的随机森林模型的性能得到提升时,将加入所训练出的新决策树的随机森林模型确定为所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,所述第一模型更新模块还被配置为:在加入所训练出的新决策树的随机森林模型的性能未得到提升时,利用所训练出的新决策树来替换所述随机森林模型中的随机决策树;以及在所述经过替换后的随机森林模型的性能未下降时,将所述经过替换后的随机森林模型确定为所述第一更新随机森林模型。
可选地,在上述方面的一个示例中,所述第二模型更新单元包括:第二决策树训练模块,被配置为使用所述第二数据分区中的流式样本数据来训练出新决策树;第二模型更新模块,被配置为:循环执行下述决策树替换过程,直到经过替换后的随机森林模型的性能得到提升或者完成针对所述随机森林模型中的所有决策树的替换操作:使用所训练出的新决策树来替换所述随机森林模型中的当前决策树;在经过替换后的随机森林模型的性能未得到提升时,从所述随机森林模型中随机选择一个未经过替换的决策树来作为下一替换过程的当前决策树;以及将性能得到提升的所述经过替换后的随机森林模型确定为所述第二更新随机森林模型。
根据本公开的另一方面,提供一种计算设备,包括:至少一个处理器,以及与所述至少一个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的用于随机森林模型训练的方法。
根据本公开的另一方面,提供一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的用于随机森林模型训练的方法。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本公开内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
在本公开中,术语“流式样本数据”是指由数千个数据样本源持续生成的样本数据,通常以数据记录的形式发送。流式数据包括多种数据,例如Web应用程序生成的日志文件、网购数据、游戏玩家活动数据、社交网站信息数据等。流式样本数据需要按记录或根据滑动时间窗口按顺序进行递增式处理,可被用于多种分析,比如关联、聚合、筛选和取样。借助此类分析所得出的信息,可以深入了解业务和客户活动的方方面面,比如,服务使用情况(用于计量/计费)、服务器活动、网站点击量以及设备、人员和实物的地理位置,从而迅速对变化做出响应。例如,可以持续分析社交媒体流,从而跟踪公众对其品牌和产品的看法的变化,并在必要时及时做出反应。流式样本数据也可以称为实时样本数据,其时间跨度通常在数百毫秒到数秒之间。
下面将结合附图来详细描述根据本公开的随机森林模型训练方法及装置的实施例。
图1示出了根据本公开的实施例的用于基于流式样本数据来进行随机森林模型训练的方法的流程图。
如图1所示,流式样本数据110是用来训练随机森林模型的训练样本数据。例如,流式样本数据110可以是所收集或统计的规定时间段内的流式样本数据。在本公开中,基于时间窗口来对流式样本数据110进行分区,以得到至少一个数据分区。通常,所述时间窗口可以是固定尺寸的时间窗口,例如每隔10分钟,或者可以采用其它合适的固定尺寸的时间窗口。在本公开的其它示例中,所述时间窗口也可以是非固定尺寸的时间窗口。然后,基于所得到的至少一个数据分区,得到第一数据分区120和第二数据分区130。
第一数据分区120是经过分区处理后得到的至少一个数据分区中的最新数据分区。这里,最新数据分区是指所得到的至少一个数据分区中的在时间上距离所述规定时间段的结束点最近的数据分区。第二数据分区130是从所述至少一个数据分区中的至少一个最近数据分区中随机选择的数据分区。此外,还通过使用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区来得到第三数据分区集140。即,第三数据分区集140是通过对用于训练随机森林模型的流式样本数据110中的部分数据分区数据(即,至少一个数据分区)进行替换而得到的完整流式样本数据,第三数据分区集140包括多个数据分区,并且第三数据分区集140中所包含的数据分区的数目与所述至少一个数据分区中的数据分区的数目相等。这里,至少一个新数据分区是指在时间上比所述至少一个数据分区更新的数据分区。
在如上得到第一数据分区120、第二数据分区130和第三数据分区集140后,在150,使用第一数据分区120中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型。关于第一更新随机森林模型确定过程将在下面结合图3中示出的示例进行详细描述。
在160,使用第二数据分区130中的流式样本数据来对随机森林模型进行模型更新,以得到第二更新随机森林模型。关于第二更新随机森林模型确定过程将在下面结合图4中示出的示例进行详细描述。并且,在170,使用第三数据分区集140中的流式样本数据来训练出第三更新随机森林模型。
在如上得到第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型,在180,使用第四数据分区中的流式样本数据来分别基于第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型进行预测。这里,第四数据分区是在时间上紧接所得到的至少一个数据分区的下一数据分区,即,在时间上紧接用于随机森林模型训练的流式样本数据的下一数据分区。
在得到第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型各自的预测结果后,在190,将第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型中的预测结果最佳的随机森林模型确定为训练后的随机森林模型。
为了使得根据本公开的实施例的第一数据分区、第二数据分区、第三数据分区集以及第四数据分区之间的关系更加清楚,下面以图2为例示来进行说明。
图2示出了根据本公开的实施例的第一数据分区、第二数据分区、第三数据分区集以及第四数据分区之间的关系的示意图。
在图2中,t表示时间轴,t1是用于收集或统计被使用来训练随机森林模型的流式样本数据的规定时间段的时间起点,以及t2是所述规定时间段的时间终点。流式样本数据110是t1到t2之间的时间段内的样本数据,其被使用来训练随机森林模型,也可以称为训练样本数据。
如图2所示,流式样本数据110被采用固定时间窗口分区为数据分区1、数据分区2、数据分区3和数据分区4。这里,数据分区1、数据分区2、数据分区3和数据分区4组成图1中所述的至少一个数据分区。第一数据分区120是所得到的至少一个数据分区中的最新数据分区,即,数据分区4。第二数据分区130是从所得到的至少一个数据分区中的至少一个最近数据分区中随机选择的数据分区,例如,第二数据分区130可以是从数据分区2、数据分区3和数据分区4中随机选择的数据分区。这里,最近数据分区是指与其他数据分区相比,其在时间上距离所述规定时间段的结束点更近。第二数据分区130可以是随机选择的一个数据分区,也可以是随机选取的多个数据分区(例如,2个数据分区)。
第三数据分区集130可以是通过利用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区来得到。例如,在一个示例中,第三数据分区集130可以利用数据分区5和数据分区6来替换数据分区1、数据分区2、数据分区3和数据分区4中的数据分区1和数据分区2来得到。第四数据分区是在时间上紧接所得到的至少一个数据分区的下一数据分区,即,图2中的数据分区5。
图3示出了根据本公开的实施例的第一更新随机森林模型确定过程的一个示例的流程图。
如图3所示,在151,使用第一数据分区中的流式样本数据来训练出新决策树。
然后,基于所训练出的新决策树来对随机森林模型进行模型更新,以得到第一更新随机森林模型。具体的模型更新过程可以包括如下所述的152到158的操作。
在152,将所训练出的新决策树加入随机森林模型中。然后,在153,判断加入所训练出的新决策树后的随机森林模型的性能是否得到提升。
如果加入所训练出的新决策树的随机森林模型的性能得到提升,则在154,将加入所训练出的新决策树的随机森林模型确定为第一更新随机森林模型。
如果加入所训练出的新决策树的随机森林模型的性能未得到提升,则在155,利用所训练出的新决策树来替换随机森林模型中的决策树。随机森林模型中的被替换的决策树可以是随机选择的。然后,在156,判断经过替换后的随机森林模型的性能是否下降。
如果在156判断为所述经过替换后的随机森林模型的性能未下降,则在157,将经过替换后的随机森林模型确定为第一更新随机森林模型。如果在156判断为所述经过替换后的随机森林模型的性能下降,则在158,将原随机森林模型确定为第一更新随机森林模型,即,不对原随机森林模型进行更新。
图4示出了根据本公开的实施例的第二更新随机森林模型确定过程的一个示例的流程图。
如图4所示,在161,使用所述第二数据分区中的流式样本数据来训练出新决策树。然后循环执行162到167的操作,直到经过替换后的随机森林模型的性能得到提升或者完成针对所述随机森林模型中的所有决策树的替换操作。
具体地,在162,使用所训练出的新决策树来替换随机森林模型中的当前决策树。在首次替换操作时,从随机森林模型中随机选择一个决策树作为当前决策树来进行替换。然后,在163,判断经过替换后的随机森林模型的性能是否得到提升。
如果在163中判断为该经过替换后的随机森林模型的性能得到提升,则在164,将该经过替换后的随机森林模型确定为第二更新随机森林模型。
如果在163中判断为该经过替换后的随机森林模型的性能未得到提升,则在165,判断随机森林模型中是否存在未被替换的决策树。如果在165判断为不存在未被替换的决策树,则在166,将原随机森林模型确定为第二更新随机森林模型。
如果在165判断为存在未被替换的决策树,则在167,从随机森林模型中的未被替换的决策树中随机选择一个决策树来作为下一替换过程的当前决策树,然后,流程返回到162的操作,以执行下一循环处理过程。
如上参照图1到图4描述了根据本公开的基于流式样本数据来训练随机森林模型的方法。这里要说明的是,在根据本公开的一个实施例中,所述方法可以包括针对流式样本数据的数据分区过程。在根据本公开的另一实施例中,所述方法也可以不包括针对流式样本数据的数据分区过程。
利用该随机森林模型训练方法,通过将流式训练样本数据基于时间窗口来分类为第一数据分区和第二数据分区以及利用新时间窗口的流式样本数据来替换流式训练样本数据中的部分样式数据得到新的训练样本数据(第三数据分区集),并且分别使用第一数据分区和第二数据分区中的流式样本数据以及新的训练样本数据来训练出第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型,然后将所训练出的第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型中的性能最佳的随机森林模型确定为训练后的随机森林模型,可以使得训练后的随机森林模型能够及时捕获流式样本数据中的新变化,从而提升随机森林模型的性能。
根据本公开的实施例的所训练的随机森林模型可以应用于业务风险控制、业务营销和业务推荐等。
下面将参照附图来说明根据本公开的用于基于流式样本数据来进行随机森林模型训练的装置的实施例。
图5示出了根据本公开的实施例的用于基于流式样本数据来进行随机森林模型训练的装置(下文中简称为模型训练装置)500的方框图。
如图5所示,模型训练装置500包括数据分区单元510、第一模型更新单元520、第二模型更新单元530、第三模型更新单元540、预测单元550和模型确定单元560。
数据分区单元510被配置为基于时间窗口来对用于随机森林模型训练的流式样本数据进行分区,以得到至少一个数据分区。通常,所述时间窗口可以是固定尺寸的时间窗口,例如每隔10分钟,或者可以采用其它合适的固定尺寸的时间窗口。在本公开的其它示例中,所述时间窗口也可以是非固定尺寸的时间窗口。
第一模型更新单元520被配置为使用第一数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型。第一数据分区是经过分区处理后得到的至少一个数据分区中的最新数据分区。第一模型更新单元520的操作可以参考上面参照图1描述的150的操作以及参照图3描述的操作。
第二模型更新单元530被配置为使用第二数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第二更新随机森林模型。第二数据分区是从至少一个数据分区中的至少一个最近数据分区中随机选择的数据分区。第一模型更新单元530的操作可以参考上面参照图1描述的160的操作以及参照图4描述的操作。
第三模型更新单元540被配置为使用第三数据分区集中的流式样本数据来训练出第三更新随机森林模型。这里,第三数据分区集是通过使用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区来得到的。即,第三数据分区集是通过对用于训练随机森林模型的流式样本数据中的部分数据分区数据进行替换而得到的完整流式样本数据。这里,至少一个新数据分区是指在用于随机森林模型训练的流式样本数据之后的数据分区,例如,时间上位于用于随机森林模型训练的流式样本数据的统计时间段之后的数据分区。第三模型更新单元540的操作可以参考上面参照图1描述的170的操作。
预测单元550被配置为使用第四数据分区中的流式样本数据来分别基于第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型进行预测。这里,第四数据分区是在时间上紧接所得到的至少一个数据分区的下一数据分区,即,在时间上紧接用于随机森林模型训练的流式样本数据的统计时间段之后的下一数据分区。预测单元550的操作可以参考上面参照图1描述的180的操作。
模型确定单元560被配置为将第一更新随机森林模型、第二更新随机森林模型和第三更新随机森林模型中的预测结果最佳的随机森林模型确定为训练后的随机森林模型。模型确定单元560的操作可以参考上面参照图1描述的190的操作。
图6示出了根据本公开的实施例的第一模型更新单元520的一个示例的方框图。
如图6所示,第一模型更新单元520包括第一决策树训练模块521和第一模型更新模块523。
第一决策树训练模块521被配置为使用第一数据分区中的流式样本数据来训练出新决策树。
第一模型更新模块523被配置为基于所训练出的新决策树来对所述随机森林模型进行模型更新,以得到第一更新随机森林模型。第一模型更新模块523的第一更新随机森林模型的更新操作可以参考上面参照图3描述的152到158的操作,在此不再详细描述。
图7示出了根据本公开的实施例的第二模型更新单元530的一个示例的方框图。
如图7所示,第二模型更新单元530包括第二决策树训练模块531和第二模型更新模块533。
第二决策树训练模块531被配置为使用第二数据分区中的流式样本数据来训练出新决策树。
第二模型更新模块533被配置为:循环执行下述决策树替换过程,直到经过替换后的随机森林模型的性能得到提升或者完成针对所述随机森林模型中的所有决策树的替换操作:使用所训练出的新决策树来替换所述随机森林模型中的当前决策树;在经过替换后的随机森林模型的性能未得到提升时,从所述随机森林模型中随机选择一个未经过替换的决策树来作为下一替换过程的当前决策树;以及将性能得到提升的所述经过替换后的随机森林模型确定为所述第二更新随机森林模型。第二模型更新模块433的第二更新随机森林模型的更新操作可以参考上面参照图4描述的162到167的操作,在此不再详细描述。
如上参照图1到图7,对根据本公开的随机森林模型训练方法及随机森林模型训练装置的实施例进行了描述。上面的随机森林模型训练装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图8示出了根据本公开的实施例的用于基于流式样本数据来进行随机森林模型训练的计算设备800的方框图。如图8所示,计算设备800可以包括至少一个处理器810、存储器820、内存830和通信接口840,并且至少一个处理器810、存储器820、内存830和通信接口840经由总线860连接在一起。至少一个处理器810执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器810:分别使用第一数据分区和第二数据分区中的流式样本数据来对随机森林模型进行模型更新,以得到第一更新随机森林模型和第二更新随机森林模型;使用第三数据分区集中的流式样本数据来训练出第三更新随机森林模型;使用第四数据分区中的流式样本数据来分别基于所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型进行预测;以及将所述第一更新随机森林模型、所述第二更新随机森林模型和所述第三更新随机森林模型中的预测结果最佳的随机森林模型确定为训练后的随机森林模型,其中,所述第一数据分区是基于时间窗口来对所述流式样本数据进行分区而得到的至少一个数据分区中的最新数据分区,所述第二数据分区是从所述至少一个数据分区中的最近至少一个数据分区中随机选择的数据分区,第三数据分区集是通过使用至少一个新数据分区来替换所述至少一个数据分区中的至少一个最旧数据分区获得的,以及第四数据分区是在时间上紧接所述至少一个数据分区的下一数据分区。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器810进行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。
在本公开中,计算设备800可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种比如非暂时性机器可读介质的程序产品。非暂时性机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
根据一个实施例,提供了一种比如非暂时性机器可读介质的程序产品。非暂时性机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。