具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块结构。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例提供的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器或者多线程处理甚至分布式处理的环境)。
图1是本申请所述一种识别用户行为的事件时序数据处理方法一种实施例的方法流程图。本申请实施例以某移动支付应用为应用场景进行说明,具体本实施例应用场景中采用的模型算法为隐马尔科夫模型,该模型具有监督学习的能力,可以对用户历史行为数据进行人工打标,分成不同的标签类型。然后可以使用分布式机器学习算法,使用平台进行模型训练,最终可以将训练好的隐马尔科夫识别模型部署到线上平台,实时监控用户的操作,判断是否为被盗窃、中毒等风险识别。在具体的识别用户行为的处理过程中,可以将训练好的隐马尔科夫识别模型部署到线上实时平台,每当用户进行一系列的操作时,可以将用户在该时间内的一系列操作行为数据转化成隐马尔科夫识别模型的输入数据,识别模型会输出该一系列的操作行为最有可能属于的行为类别,如正常操作或者用户账户被盗等,进而可以在出现风险操作时更加精准、及时的采取相应的相应措施,保障用户财产安全。
具体的如图1所述,本申请一种实施例提供的一种识别用户行为的事件时序数据处理方法可以包括:
S1:获取用户在预设时间段内的事件操作数据,根据所述事件操作数据的产生时间顺序,将所述事件操作数据转换成符合构建的隐马尔科夫识别模型输入数据格式的用户事件时序数据。
本实施例在监控识别用户操作行为时可以实时获取用户在预设时间内的事件操作数据,然后将该时间操作数据转换成符合预先在线上平台构建的隐马尔科夫识别模型的输入数据的格式。本申请实施例中所述的隐马尔科夫识别模型的输入数据为用户事件时序数据,具体的可以包括将用户在预设时间段内进行操作产生的事件操作数据转化成定义设置的标准格式,然后根据数据的产生时间顺序整理成用户事件时序数据。
本申请实施例所述的事件(Event)通过可以包括用户触发执行的业务操作,如本实施例应用场景中用户登录终端的移动支付应用可以视为用户行为的一次事件,以及用户查询余额、转账等等均可以视为用户操作的事件。本申请实施例中可以监控获知用户的操作行为,当用户触发某个事件时如密码登录、余额支出等,可以获取该事件相关的事件操作数据,如包括记录的用户操作的类型和环境信息等。
可以获取一段时间内的用户操作产生的事件操作数据。本申请中所述的预设时间段可以根据具体的业务场景进行选取、设置,如本实施例应用场景中可以设置所述预定时间段为30分钟,当然,根据不同的业务应用场景可以设置所述预设时间段的不同取值步长,如可以为10分钟、3天、一周,甚至,所述的预设时间段还可以根据业务场景需求进行动态调整。然后可以获取当前用户操作事件间以及之前30分钟内的用户其他操作事件,如“密码登陆失败-修改登陆密码-修改交易密码-密码登录成功-余额转出-银行转账”这六个用户操作当作一个操作事件序列。将这30分钟内用户所有的操作事件的事件操作数据按照时间顺序转换成预先设置的相应格式的用户事件时序数据,如上述六个用户操作作为一个操作事件序列生成的用户事件时序数据可以为事件本身的操作定义,如“密码登陆失败-修改登陆密码-修改交易密码-密码登录成功-余额转出-银行转账”,也可以为经过相应数据转换后的如“event_A001>>event_B001>>event_B002>>event_A002>>event_C001>>event_C002”,其中A可以定义为登录相关事件的分类代码,B可以定义为密码修改相关事件的分类代码,C可以定义为资金操作相关事件的分类代码。其他的实施例应用场景中,所述的用户事件时序数据具体的数据格式可以根据业务场景或设计需求进行定义、设置。在实际应用场景中,可以将实时获取的用户实际操作数据转换成与构建的隐马尔科夫识别模型在训练学习时的训练数据格式。
本申请中可以预先构建对数据模型,对数据模型进行训练学习。具体的本实施例应用场景中采用的模型算法为隐马尔科夫模型,该模型具有监督学习的能力,可以对训练数据进行人工打标,然后通过训练数据进行训练学习,得到不同标签类别的隐马尔科夫识别模型。目前现有技术中的分类问题可以使用很多算法解决,比如神经网络对最简单的逻辑回归模型的准确率可能会高很多。但隐马尔科夫模型擅长于求解时序问题,同时,隐马尔科夫模型可以定义隐藏状态和观察状态,这两个状态集合是和业务息息相关的,提供了一定的可解释性,而神经网络只是一个黑盒子,没有这种特性。因此,本申请实施例采用隐马尔科夫模型的算法模型可以解决基于时间序列的用户操作事件的行为识别处理。
本申请实施例具体的构建隐马尔可夫模型识别模型时,可以设置一个隐马尔科夫训练模型,获取和业务场景相关的用户操作数据,可以离线根据业务逻辑对数据进行清洗,包括打标、定义隐马尔科夫训练模型的隐藏状态和观察状态、训练数据迭代、模型参数调整优化等,最终训练出最优的模型。当然,实际实施过中可以根据业务场景和设计需求选取不同的建模方法。本申请提供一种隐马尔科夫识别模型的构建实施方式,具体的,本申请所述一种识别用户行为的事件时序数据处理方法的一种实施例中,所述隐马尔科夫识别模型采用下述方式构建得到:
S101:获取用户操作数据,根据设定业务场景的业务逻辑对所述用户操作数据进行时序组合,生成时序训练数据;
S102:为所述业务场景定义不同的标签类别,将所述时序训练数据设置为其所属的标签类别;
S103:确定隐马尔科夫训练模型中的隐藏状态序列集合、观察状态序列集合和初始概率分布;
S104:对所述每一标签类别的时序训练数据分别进行隐马尔科夫训练模型的训练,求解出每一标签类别的隐马尔科夫训练模型中隐藏状态序列间的转移概率矩阵和隐藏状态序列到观察状态序列的输出概率矩阵,构建出相应标签类别的隐马尔科夫识别模型。
图2是本申请所述一种识别用户行为的事件时序数据处理方法中构建隐马尔科夫识别模型的一种实施方法流程示意图。本实施例中应用场景中进行样本训练学习的隐马尔科夫训练模型可以使用一个五元组{S,N,A,B,PI}来表示,这五元组的含义分别是:
S:隐藏状态序列集合;
N:观察状态序列集合;
A:隐藏状态序列间的转移概率矩阵;
B:输出矩阵(即隐藏状态序列到观察状态序列的输出概率矩阵);
PI:初始概率分布(隐藏状态序列的初始概率分布)。
其中S和N可以根据不同的应用场景进行状态定义,PI是初始随机的概率分布,A和B是通过训练数据进行学习训练而得到的概率值。
例如在本实施例某移动支付应用场景中,可以将用户的操作定义为隐藏状态S,如登陆、修改密码、支付等。以及,将每个隐藏状态的具体操作定义为观察状态N,如隐藏状态“登陆”的观察状态可以包括密码登陆、指纹登陆、扫脸登陆,隐藏状态“修改密码”的观察状态可以包括短信校验码、安保问题等。
以某个账户U1的操作为例,假设其场景是盗用者采用人脸和密码登陆均失败,然后通过短信校验码的方式修改密码成功,最终通过一笔担保支付和一笔转账进行销赃。那么在这一段时间内,该账户U1的隐藏状态序列S-List和观察状态序列N-List可以分别如图3和图4所示。基于账户U1在这一段时间的操作事件对应的用户操作数据,可以生成的一条时序训练数据,该时序训练数据可以包括两个时序序列,一个是观察状态序列N-List,一个是隐藏状态序列S-List。
然后可以对该时序训练数据进行分类打标,设置该条时序训练数据所属的标签类别。在对时序训练数据分类打标前,可以根据不同的业务场景定义相应的标签类别。如本是实施例应用场景中可以根据中的移动支付应用场景定义用户操作风险的类别包括正常、木马、扫号、设备丢失等,然后可以根据不同的风险类别的定义对时序训练数据进行分类打标,可以采用人工预先分类打标,设置每一条时序训练数据对应一个风险类别。假设本实施例应用场景中总共存在M中风险类别(包括无风险,即正常操作),将根据用户操作数据生成的时序训练数据分成M份,每一份对应一种风险类别的时序训练数据。然后可以对每一份风险类别的时序训练数据分别进行隐马尔科夫训练模型的训练,得到每一类风险类别的隐藏状态序列间的转移概率矩阵和隐藏状态序列到观察状态序列的输出概率矩阵,构建出M个代表不同风险类别的隐马尔科夫识别模型。后续线上部署实施时可以使用这M个不同风险类别的隐马尔科夫识别模型进行用户行为的风险识别和预测等,从多个风险类别中识别出用户当前概率最高的风险类别。
本实施中可以获取用户在预设时间段内的多个事件操作数据,根据所述事件操作数据的产生时间顺序,将多个事件操作数据转换成符合构建的隐马尔科夫识别模型输入数据格式的用户事件时序数据。
S2:将所述用户事件时序数据输入构建的不同标签类别的隐马尔科夫识别模型中进行计算,分别得到所述用户事件时序数据在所述不同标签类别的隐马尔科夫识别模型中的概率值数据;
获取用户当前在预设时间段内进行事件操作生成的用户事件时序数据,然后可以将该用户时序数据输入构建的不同标签类别的隐马尔科夫识别模型中进行计算,可以分别得到不同标签类别的隐马尔科夫识别模型的计算概率值。如上述账户U1的采用人脸和密码登陆均失败,然后通过短信校验码的方式修改密码成功,最终通过一笔担保支付和一笔转账进行销赃的一些用户行为中,获取该账户U1的用户事件时序数据DATA_U1可以为:
“event_A001>>event_A001>>Bvent_B002>>e vent_C003>>event_C001”
将上述U1的用户事件时序数据分别输入上述训练好的M个隐马尔科夫识别模型中,可以分别得到该用户事件时序数据DATA_U1在M个不同类别风险下产生该用户事件时序数据DATA_U1的概率值P1,P2,P3,…,Pm。
当然,如前所述,所述预设时间段可以根据实际业务场景或设计需求进行包括可动态调整的设置。在所述预设时间段内,用户可能产生多个操作时间,因此,本申请的实施方式中,在预设时间段内生成的用户事件时序数据长度可以不固定,具体的可以根据用户事件操作的频繁度进行确定。
本实施例中可以将将所述用户事件时序数据输入构建的不同标签类别的隐马尔科夫识别模型中进行计算,分别得到所述用户事件时序数据在所述不同标签类别的隐马尔科夫识别模型中的概率值数据。
S3:选取所述概率值数据符合行为筛选条件的隐马尔科夫识别模型所对应的标签类别作为识别出的用户行为所属的行为类别。
获取由于用户行为产生的用户事件时序数据在不同类别的隐马尔科夫识别模型中的概率值,然后可以根据预先设置的判别用户行为的行为筛选条件识别出用户的一系列事件操作行为所述的行为类别。
所述的行为筛选条件可以根据业务场景需求进行设置。本申请提供的所述一种识别用户行为的事件时序数据处理方法一种实施例中,所述行为筛选条件可以被设置成采用包括下述中的至少一种选取方式:
选取数值最大的概率值;
选取数值大于设置的最小阈值的概率值;
概率值排序后,选取前N个概率值,N≥1;
概率值排序后,选取排序靠前百分比之内的概率值。
具体的如上述终端支付应用场景中,用户事件时序数据DATA_U1在M个不同类别风险下产生该用户事件时序数据DATA_U1的概率值P1,P2,P3,…,Pm,可以选取这M个概率值中的最大值(P3=0.96)对应的标签类别(设备丢失)作为最后识别出的用户行为所述的行为类别(设备丢失)。或者,在其他的实施例中也可以选取概率值大于识别的最小阀值的风险类别,如可以将概率值大于0.9的风险类别均作为输出结果,P2=0.91对应的“木马中毒”,P3=0.96对应的“设备丢失”。当然,其他的实施例中也可以选取概率值从大到小排序后的TOPN个概率值,或者排序靠前百分之五的概率值等。以及将多种方式组合,如选取概率值最大且满足大于设置的最小概率阈值概率值等。
本申请提供的一种识别用户行为的事件时序数据处理方法,从时间序列角度出发,结合用户一段时间内的事件操作,可以将用户在一段时间内多个操作操作按照时间的先后顺序作为用户的一个行为时间序列数据。然后可以将实时监控处理获取到的用户的行为时间序列数据在通过训练得到的隐马尔科夫识别模型中计算,得到此时用户不同隐马尔科夫识别模型中的概率值。然后可以根据得到的概率值判断这个行为时间序列数据所属的行为类别,进而实现识别出用户的操作行为是否异常,如是正常操作还是被盗号、设备丢失等。这样,本申请实施方案综合考虑用户一段时间内的事件操作,将多个操作时间转化为一个用户行为时序数据,基于时间序列的用户行为数据来判断识别出用户的行为,可以更加准确的识别出用户行为,提高用户操作行为识别结果的可靠性,提高用户风险操作行为的识别和防控效果。
上述所述的识别用户行为的事件时序数据处理方法可以应用于金融领域风控业务场景的系统中,在风控系统上部署实施时可以使用代表多个不同风险类别的隐马尔科夫识别模型进行用户行为的风险识别和预测等,从多个风险类别中识别出用户当前概率最高的风险类别。可以提供风控系统对用户行为预测的准确性和可靠性,提高用户风险操作行为的识别和防控效果。因此,本申请所述方法具体的一种实施例中,所述的标签类别为设置的用户在预设时间段内执行的一系列事件操作所属的风险类别。
需要说明的,本申请所述一种识别用户行为的事件时序数据处理方法的一种实施例中,S1011:所述用户操作数据包括基于业务场景预先自定义设置的预测训练数据。
本申请的一些实施例中,构建隐马尔科夫识别模型进行模型训练所使用的用户操作数据可以包括设计人员根据业务可能出现的业务场景预先自定义设置的训练数据。例如“设备丢失”的标签类别中,可以模拟用户在手机丢失时可能进行的事件操作,然后可以根据这些预测的事件操作生成用户操作数据。这样可以使模拟出来的训练数据更加灵活,可以模拟出更多可能出现的标签类别,提高用户行为识别效果。
本申请所述一种识别用户行为的事件时序数据处理方法的另一种实施例中,
S1012:所述用户操作数据包括选取的历史用户操作数据。
本申请实施例中在模型训练时可以从数据库记录的用户事件操作信息,选取使用真实的历史用户操作数据。这样,使用真实的历史用户操作数据进行模型训练,其数据分布和真实业务场景一致,可以提高训练模型在真实场景的识别效果。
基于本申请所述的识别用户行为的事件时序数据处理方法,本申请提供一种识别用户行为的事件时序数据处理装置。图5是本申请提供的一种识别用户行为的事件时序数据处理装置一种实施例的模块结构示意图,如图5所示,所述装置可以包括:
事件时序处理模块101,可以用于获取用户在预设时间段内的事件操作数据,根据所述事件操作数据的产生时间顺序,将所述事件操作数据转换成符合构建的隐马尔科夫识别模型输入数据格式的用户事件时序数据;
模型计算模块102,可以用于将所述用户事件时序数据输入构建的不同标签类别的隐马尔科夫识别模型中进行计算,分别得到所述用户事件时序数据在所述不同标签类别的隐马尔科夫识别模型中的概率值数据;
行为识别处理模块103,可以用于选取所述概率值数据符合行为筛选条件的隐马尔科夫识别模型所对应的标签类别作为识别出的用户行为所属的行为类别。
本申请实施例提供的一种识别用户行为的事件时序数据处理装置,综合考虑用户一段时间内的事件操作,将多个操作时间转化为一个用户行为时序数据。基于时间序列的用户行为数据来判断识别出用户的行为,可以更加准确的识别出用户行为,提高用户操作行为识别结果的可靠性,提高用户风险操作行为的识别和防控效果。
本申请中可以预先构建对数据模型,对数据模型进行训练学习。具体的本实施例应用场景中采用的模型算法为隐马尔科夫模型,该模型具有监督学习的能力,可以对训练数据进行人工打标,然后通过训练数据进行训练学习,得到不同标签类别的隐马尔科夫识别模型。本申请所述装置的一种实施例中,所述模型计算模块102中构建的隐马尔科夫识别模型可以采用下述方式构建得到:
获取用户操作数据,根据设定业务场景的业务逻辑对所述用户操作数据进行时序组合,生成时序训练数据;
为所述业务场景定义不同的标签类别,将所述时序训练数据设置为其所属的标签类别;
确定隐马尔科夫训练模型中的隐藏状态序列集合、观察状态序列集合和初始概率分布;
对所述每一标签类别的时序训练数据分别进行隐马尔科夫训练模型的训练,求解出每一标签类别的隐马尔科夫训练模型中隐藏状态序列间的转移概率矩阵和隐藏状态序列到观察状态序列的输出概率矩阵,构建出相应标签类别的隐马尔科夫识别模型。
本申请实施例具体的构建隐马尔可夫模型识别模型时,可以设置一个隐马尔科夫训练模型,获取和业务场景相关的用户操作数据,可以离线根据业务逻辑对数据进行清洗,包括打标、定义隐马尔科夫训练模型的隐藏状态和观察状态、训练数据迭代、模型参数调整优化等,最终训练出最优的模型。
本申请所述一种识别用户行为的事件时序数据处理装置另一种实施例中,所述模型计算模块102中处理的用户操作数据可以包括提取的历史用户操作数据。
本申请所述一种识别用户行为的事件时序数据处理装置另一种实施例中,所述模型计算模块102中处理的用户操作数据可以包括基于业务场景预先自定义设置的预测训练数据。
本申请的一些实施例中,构建隐马尔科夫识别模型进行模型训练所使用的用户操作数据可以包括设计人员根据业务可能出现的业务场景预先自定义设置的训练数据。例如“设备丢失”的标签类别中,可以模拟用户在手机丢失时可能进行的事件操作,然后可以根据这些预测的事件操作生成用户操作数据。这样可以使模拟出来的训练数据更加灵活,可以模拟出更多可能出现的标签类别,提高用户行为识别效果。当然,如前所述,其他的实施例中,在模型训练时可以从数据库记录的用户事件操作信息,选取使用真实的历史用户操作数据。这样,使用真实的历史用户操作数据进行模型训练,其数据分布和真实业务场景一致,可以提高训练模型在真实场景的识别效果。
上述所述的识别用户行为的事件时序数据处理方法可以应用于金融领域风控业务场景的系统中,在风控系统线上部署实施时可以使用代表多个不同风险类别的隐马尔科夫识别模型进行用户行为的风险识别和预测等,从多个风险类别中识别出用户当前概率最高的风险类别。可以提供风控系统对用户行为预测的准确性和可靠性,提高用户风险操作行为的识别和防控效果。因此,本申请所述一种识别用户行为的事件时序数据处理装置另一种实施例中,所述的标签类别为设置的用户在预设时间段内执行的一系列事件操作所属的风险类别。
本申请所述一种识别用户行为的事件时序数据处理装置另一种实施例中,所述行为识别处理模块102中设置的行为筛选条件可以包括采用下述中的至少一种选取方式:
选取数值最大的概率值;
选取数值大于设置的最小阈值的概率值;
概率值排序后,选取前N个概率值,N≥1;
概率值排序后,选取排序靠前百分比之内的概率值。
本申请提供的一种识别用户行为的事件时序数据处理装置,从时间序列角度出发,结合用户一段时间内的事件操作,可以将用户在一段时间内多个操作操作按照时间的先后顺序作为用户的一个行为时间序列数据。然后可以将实时监控处理获取到的用户的行为时间序列数据在通过训练得到的隐马尔科夫识别模型中计算,得到此时用户不同隐马尔科夫识别模型中的概率值。然后可以根据得到的概率值判断这个行为时间序列数据所属的行为类别,进而实现识别出用户的操作行为是否异常,如是正常操作还是被盗号、设备丢失等。这样,本申请实施方案综合考虑用户一段时间内的事件操作,将多个操作时间转化为一个用户行为时序数据,基于时间序列的用户行为数据来判断识别出用户的行为,可以更加准确的识别出用户行为,提高用户操作行为识别结果的可靠性,提高用户风险操作行为的识别和防控效果。
上述所述的识别用户行为的事件时序数据处理方法或装置,可以基于Python或Java及SQL,并结合Hadoop/ODPS分布式系统实施于金融领域风险控制业务场景的风控系统中。在风控系统线上部署实施时可以使用代表多个不同风险类别的隐马尔科夫识别模型进行用户行为的风险识别和预测等,从多个风险类别中识别出用户当前概率最高的风险类别,可以提供风控系统对用户行为预测的准确性和可靠性,提高用户风险操作行为的识别和防控效果。因此,本申请基于上述所述识别用户行为的事件时序数据处理方法或装置,提供一种基于事件时序数据的风险识别系统,图6是本申请提供的一种基于事件时序数据的风险识别系统结构模块示意图。如图6所示,所述系统可以被设置成,包括:
事件时序处理单元201,可以用于获取用户在预设时间段内的事件操作数据,根据所述事件操作数据的产生时间顺序,将所述事件操作数据转换成符合构建的隐马尔科夫识别模型输入数据格式的用户事件时序数据;
识别模型构建单元202,可以用于根据用户操作数据构建不同标签类别的隐马尔科夫识别模型;
识别处理单元203,可以用于将所述用户事件时序数据输入划分的不同风险类别的隐马尔科夫识别模型中进行计算,分别得到所述用户事件时序数据在所述不同风险类别的隐马尔科夫识别模型中的概率值数据;还可以用于选取所述概率值数据符合行为筛选条件的隐马尔科夫识别模型所对应的风险类别作为确定出的用户行为所属的风险类别。
所述系统其他的一些实施例中,所述识别模型构建单元202采用下述方式构建隐马尔科夫识别模型:
获取用户操作数据,根据设定业务场景的业务逻辑对所述用户操作数据进行时序组合,生成时序训练数据;为所述业务场景定义不同的标签类别,将所述时序训练数据设置为其所属的标签类别;确定隐马尔科夫训练模型中的隐藏状态序列集合、观察状态序列集合和初始概率分布;对所述每一风险类别的时序训练数据分别进行隐马尔科夫训练模型的训练,求解出每一风险类别的隐马尔科夫训练模型中隐藏状态序列间的转移概率矩阵和隐藏状态序列到观察状态序列的输出概率矩阵,构建出相应风险类别的隐马尔科夫识别模型。
本申请提供的基于事件时序数据的风险识别系统,可以从多个风险类别中识别出用户当前概率最高的风险类别,可以提供风控系统对用户行为预测的准确性和可靠性,提高系统对用户风险操作行为的识别和防控效果,保障用财产安全。
尽管本申请内容中提到用户操作时间转出成时间时序数据、数据分类和格式设定、隐马尔科夫识别模型的建立、采用Python或Java语言实施等之类数据定义、分类、设计语言、信息交互方式的描述,但是,本申请并不局限于必须是符合行业数据定义规范、信息交互标准、设计语言规范或实施例所描述的情况。某些行业标准、规范或者实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的行业标准、规范或者实施例描述的实施方式等,仍然可以属于本申请的所述保护可选实施方案范围之内。
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
上述实施例阐明的单元、装置或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的视频播放系统、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。