具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的标签处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能电视、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端102以及服务器104可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
终端和服务器均可单独用于执行本申请实施例中提供的标签处理方法。
例如,终端获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列。终端对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点。终端基于当前标签数量、上分界点和下分界点,确定目标标签在目标码值类别上对应的初始标签状态。终端基于当前标签数量和中分界点,确定目标标签在目标码值类别上对应的目标波动值。终端基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态。
终端和服务器也可协同用于执行本申请实施例中提供的标签处理方法。
例如,服务器从终端获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列。服务器对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点。服务器基于当前标签数量、上分界点和下分界点,确定目标标签在目标码值类别上对应的初始标签状态。服务器基于当前标签数量和中分界点,确定目标标签在目标码值类别上对应的目标波动值。服务器基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态。服务器将目标标签对应的目标标签状态发送至终端,终端可以将目标标签状态进行展示。
在一个实施例中,如图2所示,提供了一种标签处理方法,以该方法应用于计算机设备为例进行说明,计算机设备可以是终端或服务器,由终端或服务器自身单独执行,也可以通过终端和服务器之间的交互来实现。标签处理方法包括以下步骤:
步骤S202,获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列。
其中,目标标签是指需要进行标签处理进而确定标签状态的标签,例如,需要对“末次登录日期”标签中码值类别为“过去7天内”的目标码值类别进行标签处理时,目标标签为“末次登录日期”。目标标签可以是任意的标签。
码值是指标签对应的具体标签信息,例如,当标签为“末次登录日期”时,码值为具体的日期,如“1月1日”、“12月3日”等;当标签为“用户性别”时,码值为“M”和“F”;当标签为“用户行业”时,码值为具体的行业,如“IT业”、“金融业”等;等等。
码值类别是指将标签对应的各个码值按照具体规则进行处理得到的各个类别,例如,当标签为“末次登录日期”时,可以将标签对应的各个码值划分为四个码值类别,分别为“7天之前”、“过去7天内”、“当天”和“日期为空”;当标签为“借款金额”时,可以将标签对应的各个码值划分为四个码值类别,分别为“小于1000元”、“1000元~10000元”、“大于10000元”和“数值为空”;当标签为“用户行业”时,可以将标签对应的各个码值分别对应的标签数量按照降序排序,将前10位的标签数量对应的码值,分别作为标签对应的各个码值类别;等等。
目标码值类别是指目标标签对应的各个码值类别中需要进行标签处理的码值类别,例如,当目标标签为“借款金额”,目标标签对应的各个码值类别分别为“小于1000元”、“1000元~10000元”、“大于10000元”和“数值为空”,并且需要对“借款金额”中码值类别为“1000元~10000元”的目标码值类别进行标签处理时,“1000元~10000元”为目标标签对应的目标码值类别。目标码值类别可以是目标标签对应的各个码值类别中的任意码值类别。
当前标签数量是指目标标签的目标码值类别当前时间段对应的标签数量,例如,当目标标签为“借款金额”,目标标签的目标码值类别为“1000元~10000元”时,当前标签数量为当天统计的“借款金额”标签对应的码值在1000元~10000元之间的标签数量,若当天统计的“借款金额”标签为1000元~10000元的用户数量为3000万,则当前标签数量为3000万。当前时间段可以根据实际需要进行设置,例如,设置为当天;当天的0:00-12:00;从昨天12:00到当天的12:00;等等。
历史标签数量序列是对目标标签的目标码值类别对应的各个历史标签数量进行排序后得到的序列。历史标签数量是指目标标签在历史时间段对应的标签数量。历史时间段早于当前时间段。例如,当前时间段为11月11日,则历史时间段可以是11月1日。
示例性地,计算机设备从本地或其他设备获取目标标签的目标码值类别在当前时间段对应的标签数量作为当前标签数量,获取目标标签的目标码值类别对应的各个历史标签数量,将对各个历史标签数量进行排序后得到的序列作为历史标签数量序列。基于当前标签数量和历史标签数量序列确定目标标签在目标码值类别上对应的目标标签状态。
步骤S204,对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点。
其中,中分界点是指在历史标签数量序列中位于中间位置上的历史标签数量,能够反映目标标签在目标码值类别上对应的各个历史标签数量的中间水平。中分界点作为一个历史参考值,用于与目标标签在目标码值类别上对应的当前标签数量对比,确定当前标签数量对应的波动幅度,即目标波动值。
上分界点是指在历史标签数量序列中确定的一个大于或等于中分界点的历史标签数量,用于限定当前标签数量的正常范围,为正常范围内的最大值。当当前标签数量大于或等于上分界点时,则认为目标标签在目标码值类别上对应的初始标签状态为异常状态。例如,当历史标签数量序列中的历史标签数量是按升序进行排序时,将历史标签数量序列中位于第75%的历史标签数量作为上分界点;当历史标签数量序列中的历史标签数量是按降序进行排序时,将历史标签数量序列中位于第25%的历史标签数量作为上分界点;等等。
下分界点是指在历史标签数量序列中确定的一个小于或等于中分界点的历史标签数量,用于限定当前标签数量的正常范围,为正常范围内的最小值。当当前标签数量小于或等于下分界点时,则认为目标标签在目标码值类别上对应的初始标签状态为异常状态。例如,当历史标签数量序列中的历史标签数量是按升序进行排序时,将历史标签数量序列中位于第25%的历史标签数量作为下分界点;若历史标签数量序列中的历史标签数量是按降序进行排序的,将历史标签数量序列中位于第75%的历史标签数量作为下分界点;等等。
示例性地,计算机设备基于历史标签数量序列中历史标签数量的个数对历史标签数量序列进行划分得到历史标签数量序列对应的上分界点、中分界点和下分界点。中分界点为在历史标签数量序列中位于中间位置上的历史标签数量,上分界点为在历史标签数量序列确定的大于或等于中分界点的历史标签数量,下分界点为在历史标签数量序列确定的小于或等于中分界点的历史标签数量。
在一个实施例中,将处于历史标签数量序列中位于中间位置的历史标签数量作为中分界点,在历史标签数量序列中大于或等于中分界点的各个历史标签数量确定一个历史标签数量作为上分界点,在历史标签数量序列中小于或等于中分界点的各个历史标签数量确定一个历史标签数量作为下分界点。
在一个实施例中,当历史标签数量序列中的历史标签数量是按升序进行排序时,将历史标签数量序列中位于第75%的历史标签数量作为上分界点,将历史标签数量序列中位于中间位置上的历史标签数量作为中分界点,将历史标签数量序列中位于第25%的历史标签数量作为下分界点。
步骤S206,基于当前标签数量、上分界点和下分界点,确定目标标签在目标码值类别上对应的初始标签状态。
其中,初始标签状态是指根据上分界点和下分界点初步确定的,目标标签在目标码值类别上对应的标签状态。
示例性地,计算机设备将目标标签在目标码值类别上对应的当前标签数量分别与上分界点和下分界点对比,当当前标签数量大于下分界点,且小于上分界点时,则确定目标标签在目标码值类别上对应的初始标签状态为正常状态,当当前标签数量小于下分界点,或大于上分界点时,则确定目标标签在目标码值类别上对应的初始标签状态为异常状态。
步骤S208,基于当前标签数量和中分界点,确定目标标签在目标码值类别上对应的目标波动值。
其中,目标波动值是指将当前标签数量与中分界点对比,得到的当前标签数量对应的波动幅度。
示例性地,计算机设备确定当前标签数量和中分界点之间的差异,基于当前标签数量和中分界点之间的差异和中分界点,得到目标标签在目标码值类别上对应的目标波动值。例如,计算当前标签数量和中分界点之间的差值,计算当前标签数量和中分界点之间的差值与中分界点的比值,将比值作为目标标签在目标码值类别上对应的目标波动值;计算当前标签数量和中分界点之间的平均值,计算平均值与中分界点之间的差值,将差值与中分界点的比值作为目标标签在目标码值类别上对应的目标波动值;等等。
步骤S210,基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态。
其中,目标标签状态是指基于目标波动值更新初始标签状态后得到的目标标签在目标码值类别上对应的标签状态。
示例性地,当初始标签状态为正常状态时,计算机设备将初始标签状态作为目标标签状态。当初始标签状态为异常状态时,计算机设备判断目标标签在目标码值类别上是否存在对应的处理条件,当存在对应处理条件时,基于目标波动值和对应的处理条件,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态。
对于标签集合,标签集合包括多个需要进行标签处理的标签,可以将标签集合中的任意一个标签作为目标标签,确定标签在对应的各个码值类别上的目标标签状态,将标签集合中的各个标签分别作为目标标签,进行相应的标签处理后,得到标签集合中各个标签分别在对应的各个码值类别上的目标标签状态。
上述标签处理方法中,通过基于目标标签的目标码值类别对应的历史标签数量序列,确定历史标签数量序列对应的上分界点、中分界点和下分界点。上分界点、中分界点和下分界点可以表征目标标签在目标码值类别上对应的历史标签数量分布情况。将目标标签的目标码值类别对应的当前标签数量与上分界点和下分界点对比,也就是将当前标签数量与目标标签的目标码值类别对应的历史标签数量分布情况对比,确定目标标签在目标码值类别上对应的初始标签状态,能够保证初始标签状态的可靠性。基于当前标签数量和中分界点,得到目标标签在目标码值类别上对应的目标波动值,目标波动值能够反映当前标签数量与中分界点的差异,即目标标签在目标码值类别上的异常程度。基于目标波动值,更新目标标签在目标码值类别上对应的标签状态,得到目标标签状态,能够有效纠正伪异常的标签状态,提高目标标签状态的准确性,即提高标签处理的准确性。
在一个实施例中,标签处理方法还包括:
获取目标标签对应的标签类型;基于标签类型对应的码值分类规则,确定目标标签对应的各个候选码值类别;从各个候选码值类别中确定目标码值类别。
其中,标签类型是指由标签对应的码值确定的类型,标签类型包括日期类型、数值类型和字符串类型等。例如,当标签为“末次登录日期”时,标签对应的标签类型为日期类型;当标签为“借款金额”时,标签对应的标签类型为数值类型;当标签为“用户行业”时,标签对应的标签类型为字符串类型;等等。
码值分类规则是指预先设置的标签码值分类规则,用于将标签对应的各个码值划分为不同的类别,将大量分散的码值分别集中到对应的码值类别中,基于码值类别对应的标签数量进行标签处理,能够大大提高标签处理的效果。例如,当目标标签为“借款金额”时,目标标签可能对应无数个码值,如1000.00元、1000.01元、1000.02元……,过于分散的码值会导致每个码值对应的标签数量过少,如借款金额为1000.00元的标签只有5个,借款金额为1000.01元的标签只有2个。当按照码值分类规则,将码值划分为“小于1000元”、“1000元~10000元”、“大于10000元”和“数值为空”四个码值类别时,由于每个码值类别聚合了许多分散的码值,使得每个码值类别对应的标签数量会大大增加。若目标标签“借款金额”在目标码值类别“1000元~10000元”上的标签数量长期稳定在3000万,而当前标签数量为2000万,则说明当前时间段目标标签在目标码值类别上可能出现了异常。
候选码值类别是指指将目标标签对应的各个码值按照码值分类规则进行划分得到的目标标签对应的各个码值类别。
示例性地,计算机设备确定目标标签对应的标签类型,以及标签类型对应的码值分类规则,基于对应的码值分类规则将目标标签对应的各个码值划分为多个候选码值类别。
在一个实施例中,当目标标签对应的标签类型为日期类型时,根据目标标签的具体含义,设置不同的码值分类规则。例如,码值分类规则可以设置为将目标标签对应的各个码值划分为四个候选码值类别,分别为“小于当天”、“等于当天”、“大于当天”和“日期为空”;码值分类规则可以设置为将目标标签对应的各个码值划分为四个候选码值类别,分别为“7天之前”、“过去7天内”、“当天”和“日期为空”;等等。
在一个实施例中,当目标标签对应的标签类型为数值类型时,根据目标标签的具体含义,设置不同的码值分类规则。例如,当目标标签为“借款金额”时,码值分类规则可以设置为将目标标签对应的各个码值划分为四个候选码值类别,分别为“小于1000元”、“1000元~10000元”、“大于10000元”和“数值为空”;当目标标签为“用户收益率”时,码值分类规则可以设置为将目标标签对应的各个码值划分为四个候选码值类别,分别为“小于0”、“等于0”、“大于0”和“数值为空”;等等。
在一个实施例中,当目标标签对应的标签类型为字符串类型时,根据目标标签的具体含义,设置不同的码值分类规则。例如,当目标标签为“用户行业”时,将目标标签对应的各个码值分别对应的标签数量按照降序排序,将前10位的标签数量对应的码值作为目标标签对应的各个候选码值类别;当目标标签为“用户性别”,目标标签对应三个码值,分别为“男性”、“女性”和“未知”时,将“男性”、“女性”和“未知”作为目标标签对应的三个候选码值类别。
上述实施例中,基于目标标签对应的标签类型以及对应的码值分类规则,将目标标签对应的各个码值划分为多个候选码值类别,可以将目标标签对应的大量分散的码值分别集中到对应的候选码值类别中,基于候选码值类别对应的标签数量进行标签处理,能够大大提高标签处理的效果,提高标签处理的效率。
在一个实施例中,获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列,包括:
获取目标码值类别对应的历史标签数量集合;历史标签数量集合包括目标码值类别对应的多个历史标签数量;对历史标签数量集合中的各个历史标签数量进行排序,得到历史标签数量序列。
其中,历史标签数量集合是指由目标标签对应的各个历史标签数量组成的集合。
示例性地,计算机设备从本地或其他设备获取目标标签的目标码值类别对应的历史标签数量集合,将历史标签数量集合中的各个历史标签数量按数值大小进行升序排序或降序排序,得到历史标签数量序列。
上述实施例中,将目标标签的目标码值类别对应的历史标签数量集合中的各个历史标签数量按数值大小进行排序,得到历史标签数量序列。基于历史标签数量序列可以快速确定目标标签的目标码值类别对应的历史标签数量分布,快速确定上分界点、中分界点和下分界点,从而提高标签处理的效率。
在一个实施例中,对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点,包括:
基于历史标签数量序列中历史标签数量的个数确定上分界位、中分界位和下分界位;将上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量作为对应的上分界点、中分界点和下分界点。
其中,上分界位是指上分界点对应的历史标签数量在历史标签数量序列中所处的位置。例如,若历史标签数量序列中存在40个历史标签数量,并且历史标签数量是按升序排序的,当上分界点为历史标签数量序列中第30个历史标签数量时,历史标签数量序列对应的上分界位为30;当上分界点为历史标签数量序列中第30个历史标签数量和第31个历史标签数量的平均值时,历史标签数量序列对应的上分界位为30.5;
中分界位是指中分界点对应的历史标签数量在历史标签数量序列中所处的位置。例如,若历史标签数量序列中存在40个历史标签数量,并且历史标签数量是按升序排序的,当中分界点为历史标签数量序列中第20个历史标签数量时,历史标签数量序列对应的中分界位为20;当中分界点为历史标签数量序列中第20个历史标签数量和第21个历史标签数量的平均值时,历史标签数量序列对应的上分界位为20.5。
下分界位是指下分界点对应的历史标签数量在历史标签数量序列中所处的位置。例如,若历史标签数量序列中存在40个历史标签数量,并且历史标签数量是按升序排序的,当下分界点为历史标签数量序列中第10个历史标签数量时,历史标签数量序列对应的下分界位为10;当上分界点为历史标签数量序列中第10个历史标签数量和第11个历史标签数量的平均值时,历史标签数量序列对应的上分界位为10.5。
示例性地,计算机设备确定历史标签数量序列中历史标签数量的个数,基于历史标签数量的个数计算历史标签数量序列对应的上分界位、中分界位和下分界位。例如,当历史标签数量序列中的历史标签数量是按升序排序时,将上分界位设置为序列中第75%的位置,将中分界位设置为序列中第50%的位置,将下分界位设置为序列中第25%的位置;将上分界位设置为序列中第70%的位置,将中分界位设置为序列中第50%的位置,将下分界位设置为序列中第30%的位置;等等。基于上分界位、中分界位和下分界位在历史标签数量序列中分别所处的位置,确定上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量,并将各个历史标签数量分别作为对应的上分界点、中分界点和下分界点。
在一个实施例中,当上分界位为整数时,将历史标签数量序列中处于上分界位的历史标签数量作为上分界点。例如,当上分界位为10时,将历史标签数量序列中处于第10位的历史标签数量作为上分界点。当上分界位为小数时,首先确定小于上分界位的最大整数值m,和大于上分界位的最小整数值n,再基于上分界位的小数部分,确定m和n分别对应的权重,计算历史标签数量序列中处于第m位的历史标签数量a和处于第n位的历史标签数量b的加权平均值,将加权平均值作为上分界点。例如,当上分界位为2.75时,确定上分界点位于历史标签数量序列中的第2位历史标签数量和第3位历史标签数量之间,将0.25作为第2位历史标签数量对应的权重,将0.75作为第3位历史标签数量对应的权重,若历史标签数量序列中的第2位和第3位分别对应的历史标签数量为a和b时,计算a和b的加权平均值得到上分界位在历史标签数量序列中对应的历史标签数量X,X为0.25a+0.75b。用同样的方法确定中分界位和下分界位分别在历史标签数量序列中对应的历史标签数量。将上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量作为对应的上分界点、中分界点和下分界点。
在一个实施例中,当上分界位为整数时,将历史标签数量序列中处于上分界位的历史标签数量作为上分界点。当上分界位为小数时,若小数部分小于0.5,则将小于上分界位的最大整数值在历史标签数量序列中对应的历史标签数量作为上分界点,若小数部分小于0.5,则将大于上分界位的最大整数值在历史标签数量序列中对应的历史标签数量作为上分界点。用同样的方法确定中分界位和下分界位分别在历史标签数量序列中对应的历史标签数量。将上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量作为对应的上分界点、中分界点和下分界点。
在一个实施例中,当历史标签数量序列中的历史标签数量是按升序排序时,可以将上分界位设置为序列中第75%的位置,将中分界位设置为序列中第50%的位置,将下分界位设置为序列中第25%的位置。计算机设备可以通过以下公式计算上分界位、中分界位和下分界位:
Q1=(n+1)/4
Q2=(n+1)/2
Q3=3*(n+1)/4
其中,Q1为上分界位,Q2为中分界位,Q3为下分界位,n为历史标签数量序列中历史标签数量的个数。
上述实施例中,基于历史标签数量序列中的历史标签数量的个数确定上分界位、中分界位和下分界位。中分界位为历史标签数量序列中的中间位置,基于中分界位确定的中分界点可以反映目标标签在目标码值类别上对应的各个历史标签数量的中间水平,将中分界点作为一个历史参考值与目标标签在目标码值类别上对应的当前标签数量对比,确定当前标签数量对应的目标波动值,可以保证目标波动值的准确性,从而保证标签处理的准确性。基于上分界位和下分界位确定的上分界点和下分界点用于限定当前标签数量的正常范围,将目标标签的目标码值类别对应的当前标签数量与上分界点和下分界点确定的正常范围对比,也就是将当前标签数量与目标标签的目标码值类别对应的历史标签数量分布情况对比,确定目标标签在目标码值类别上对应的初始标签状态,能够保证初始标签状态的可靠性。
在一个实施例中,基于当前标签数量、上分界点和下分界点,确定目标标签在目标码值类别上对应的初始标签状态,包括:
基于上分界点和下分界点确定目标范围;当当前标签数量位于目标范围内时,确定初始标签状态为正常状态;当当前标签数量位于目标范围外时,确定初始标签状态为异常状态。
其中,目标范围是指由上分界点和下分界点确定的标签数量范围,上分界点为目标范围的上限,下分界点为目标范围的下限,目标范围包括上分界点和下分界点,例如,当上分界点和下分界点分别为10000和5000时,目标范围为[5000,10000]。目标范围用于确定目标标签在目标码值类别上对应的初始标签状态。
示例性地,计算机设备将上分界点作为目标范围的上限,将下分界作为目标范围的下限,得到目标范围。将当前标签数量与目标范围对比,当当前标签数量位于目标范围内时,确定目标标签在目标码值类别上对应的初始标签状态为正常状态,当当前标签数量位于目标范围外时,确定目标标签在目标码值类别上对应的初始标签状态为正常状态。
上述实施例中,将上分界点和下分界点分别作为目标范围的上限和下限,将目标标签的目标码值类别对应的当前标签数量与上分界点和下分界点确定的目标范围对比,也就是将当前标签数量与目标标签的目标码值类别对应的历史标签数量分布情况对比,确定目标标签在目标码值类别上对应的初始标签状态,能够保证初始标签状态的可靠性。
在一个实施例中,基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态,包括:
当初始标签状态为正常状态时,将初始标签状态作为目标标签状态;当初始标签状态为异常状态、且目标标签在目标码值类别上不存在预设波动范围时,确定目标标签状态为异常状态;当初始标签状态为异常状态、且目标波动值位于目标标签在目标码值类别上对应的预设波动范围内时,确定目标标签状态为正常状态;当初始标签状态为异常状态、且目标波动值位于目标标签在目标码值类别上对应的预设波动范围外时,确定目标标签状态为异常状态。
其中,预设波动范围是指当标签在码值类别上对应的当前标签数量可能存在较大波动时,给标签在码值类别上对应的目标波动值设置的正常波动范围,当标签在码值类别上对应的当前标签数量一般不会出现较大波动时,不设置相应的预设波动范围。
例如,标签“用户是否有优惠券”对应两个码值,分别为“用户有优惠券”和“用户没有优惠券”,标签“用户有优惠券”和“用户没有优惠券”都是可能出现较大波动的标签。在公司给大量用户派发优惠券后,标签“用户有优惠券”对应的当前标签数量可能出现较大幅度的波动,使得当前标签数量落在对应的目标范围之外,进而使得标签“用户有优惠券”对应的初始标签状态为异常状态。因此,可以给标签“用户有优惠券”设置相应的预设波动范围,例如,预设波动范围可以设置为[-25%,+25%],当标签“用户有优惠券”对应的当前标签数量落在目标范围之外时,将标签“用户有优惠券”对应的目标波动值与预设波动范围进行对比,若目标波动值落在预设波动范围内,则确定目标标签在目标码值类别上的标签状态仍为正常状态。
示例性地,当初始标签状态为正常状态时,计算机设备将初始标签状态作为目标标签状态。当初始标签状态为异常状态时,计算机设备首先确定目标标签在目标码值类别上是否存在预设波动范围,当目标标签在目标码值类别上不存在预设波动范围时,确定目标标签状态为异常状态。当目标标签在目标码值类别上存在预设波动范围时,将目标波动值与预设波动范围对比,当目标波动值位于预设波动范围内时,确定目标状态为正常状态,当目标波动值位于预设波动范围外时,确定目标状态为异常状态。
上述实施例中,当目标标签状态为异常时,判断目标标签在目标码值类别上是否存在预设波动范围,若存在预设波动范围,基于目标波动值和预设波动范围更新目标标签在目标码值类别上对应的标签状态,得到目标标签状态,能够有效纠正伪异常的标签状态。也就是当目标标签在目标码值类别上出现较大的波动为正常情况时,基于标签在目标码值类别上出现的波动程度,设置相应的预设波动范围,当出现当前标签数量落在目标范围外,但波动幅度在预设波动范围内的情况时,将目标标签状态设置为正常状态,能够有效排除伪异常波动,提高目标标签状态的准确性,即提高标签处理的准确性。
在一个实施例中,如图3所示,获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列之前,标签处理方法还包括:
步骤S302,从标签数据库中获取目标标签对应的标签元数据。
步骤S304,基于标签元数据,生成目标标签对应的查询文件。
步骤S306,执行查询文件,将文件执行结果写入数据分析表;数据分析表用于确定目标标签在各个候选码值类别上分别对应的目标标签状态。
其中,标签数据库是指存储了多个标签分别对应的标签元数据的数据库。
标签元数据是指标签对应的基础信息,包括标签名称、标签来源、标签类型、标签使用场景等信息。
查询文件是指存储了标签对应的查询规则的文件。例如,当目标标签对应三个候选码值类别,分别为A、B和C,生成的查询文件所包含的查询规则为查询候选码值类别A、B、C当前时间段分别对应的标签分布情况,得到候选码值类别A、B、C分别对应的当前标签数量。计算机设备可以基于查询文件中对应的查询规则查询标签当前时间段的标签分布情况。
文件执行结果为标签的各个候选码值类别分别对应的码值详细分布信息,码值详细分布信息包括候选码值类别对应的当前标签数量、候选码值类别当前时间段对应的各个标签详细信息等信息。
数据分析表是指存储了标签的各个候选码值类别分别对应的各个历史标签数量、当前标签数量、码值详细分布信息等信息的数据表。
示例性地,计算机设备从标签数据库中获取目标标签对应的标签元数据,基于目标标签对应的标签元数据,确定目标标签对应的码值分类规则,基于码值分类规则确定目标标签对应的查询规则,基于查询规则生成目标标签对应的查询文件。执行查询文件,得到目标标签对应的文件执行结果,将文件执行结果中各个候选码值类别分别对应的当前标签数量写入数据分析表。
如图3所示,基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态之后,标签处理方法还包括:
步骤S308,基于目标标签在各个候选码值类别上分别对应的目标标签状态,生成目标标签对应的标签报告。
其中,标签报告是指当标签在码值类别上对应的目标标签状态为异常时,生成的异常报告,标签报告包括标签名称、码值类别、当前标签数量、目标波动值等数据信息。
示例性地,计算机设备基于数据分析表确定目标标签在各个候选码值类别上分别对应的目标标签状态,对于目标标签状态为异常状态的候选码值类别,基于目标标签对应的标签元数据中的基础信息,以及目标标签在该候选码值类别上对应的当前标签数量、目标波动值等数据信息,生成相应的标签报告。
对于标签集合,可以基于标签集合中各个标签分别在对应的各个码值类别上的目标标签状态,生成各个标签分别对应的标签报告,基于各个标签分别对应的标签报告,生成标签集合对应的标签报告。
上述实施例中,计算机设备从标签数据库获取目标标签对应的标签元数据,基于标签元数据生成目标标签对应的查询文件,执行查询文件得到目标标签对应的文件执行结果,将文件执行结果中的各个候选码值类别分别对应的当前标签数量写入数据分析表。数据分析表为标签处理提供了历史标签数量、当前标签数量、码值详细分布信息等信息,能够保证标签处理的准确性和可靠性。对于目标标签状态为异常状态的候选码值类别,生成相应的标签报告,标签报告可以方便开发人员定位标签异常原因,及时对异常标签做出相应的处理,减少因标签异常导致的损失。
在一个具体的实施例中,本申请的标签处理方法可以应用于大数据平台中的标签处理程序。标签处理方法包括以下步骤:
1、获取标签数量
如图4所示,大数据平台中的标签处理程序首先连接数据库,从数据库中获取标签元数据表,从标签元数据表中确定目标标签,以及目标标签对应的标签元数据。标签处理程序基于目标标签对应的标签元数据生成目标标签对应的查询文件。例如,可以使用Hive(数据仓工具)生成查询文件,此时查询文件为Hive文件。由指定机器执行查询文件,得到目标标签对应的文件执行结果,再将文件执行结果写入数据分析表。例如,可以使用HDFS(Hadoop Distributed File System,Hadoop的分布式文件系统)存储数据分析表。从目标标签对应的各个候选码值类别中确定目标码值类别,从数据分析表中获取目标标签的目标候选类别对应的当前标签数量和历史标签数量集合。将历史标签数量集合中的各个历史标签数量按数值大小进行升序排序,得到目标标签的目标码值类别对应的历史标签数量序列。
2、确定分界点
标签处理程序对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点。
例如,可以通过四分位数算法确定上分界点、中分界点和下分界点,进而将上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量作为对应的上分界点、中分界点和下分界点。标签处理程序可以通过以下公式计算上分界位、中分界位和下分界位:
Q1=(n+1)/4
Q2=(n+1)/2
Q3=3*(n+1)/4
3、确定目标标签状态
基于上分界点和下分界点确定目标范围,当当前标签数量位于目标范围内时,确定初始标签状态为正常状态,当当前标签数量位于目标范围外时,确定初始标签状态为异常状态。例如,如图5所示,将图中的下分界点和上分界点之间的区域作为目标范围,即目标范围为[70,90],中分界点对应的历史标签数量为82,将历史标签数量序列中的最小值作为下边缘,将历史标签数量序列中的最大值作为上边缘,确定落在目标范围外的当前标签数量为异常值,当目标标签在目标码值类别上的当前标签数量为异常值时,确定初始标签状态为异常状态。
当初始标签状态为正常状态时,将初始标签状态作为目标标签状态。当初始标签状态为异常状态、且目标标签在目标码值类别上不存在豁免规则时,确定目标标签状态为异常状态。豁免规则为当目标标签在目标码值类别上对应的当前标签数量可能存在较大波动时,给目标标签的目标码值类别设置的豁免规则,豁免规则包含给目标标签在目标码值类别上对应的目标波动值设置的正常波动范围,即预设波动范围,对于当前标签数量落在目标范围外,但波动幅度在预设波动范围内的情况,都进行豁免处理,将目标标签状态设置为正常状态。当初始标签状态为异常状态、且目标标签在目标码值类别上存在豁免规则时,当目标波动值位于豁免规则中的预设波动范围内时,确定目标标签状态为正常状态,当目标波动值位于预设波动范围外时,确定目标标签状态为异常状态,并输出目标标签在目标码值类别上对应的标签报告。
上述实施例中,使用HDFS存储数据分析表,标签处理程序可以基于HDFS中的标签信息,自动在数据库中读取标签与目录的关系映射,能够及时自动更新标签处理程序中的标签与目录的映射关系,从而避免了开发人员手动修改代码,能够提高标签处理的效率,使标签监控流程自动化,节省标签维护成本。同时,通过上分界点、中分界点和下分界点来反映目标标签的目标码值类别对应的历史标签数量分布情况。将目标标签的目标码值类别对应的当前标签数量与上分界点和下分界点对比,确定目标标签在目标码值类别上对应的初始标签状态,再基于目标波动值和豁免规则,更新初始标签状态,能够有效排除标签的伪异常波动,从而使得输出的标签报告更为准确、直观。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的标签处理方法的标签处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个标签处理装置实施例中的具体限定可以参见上文中对于标签处理方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种标签处理装置,包括:标签数量获取模块602、分界点确定模块604、初始标签状态确定模块606、目标波动值确定模块608和目标标签状态确定模块610,其中:
标签数量获取模块602,用于获取目标标签的目标码值类别对应的当前标签数量和历史标签数量序列。
分界点确定模块604,对历史标签数量序列进行划分,得到历史标签数量序列对应的上分界点、中分界点和下分界点。
初始标签状态确定模块606,用于基于当前标签数量、上分界点和下分界点,确定目标标签在目标码值类别上对应的初始标签状态。
目标波动值确定模块608,用于基于当前标签数量和中分界点,确定目标标签在目标码值类别上对应的目标波动值。
目标标签状态确定模块610,用于基于目标波动值,更新初始标签状态,得到目标标签在目标码值类别上对应的目标标签状态。
上述标签处理装置,通过基于目标标签的目标码值类别对应的历史标签数量序列,确定历史标签数量序列对应的上分界点、中分界点和下分界点。上分界点、中分界点和下分界点可以表征目标标签在目标码值类别上对应的历史标签数量分布情况。将目标标签的目标码值类别对应的当前标签数量与上分界点和下分界点对比,也就是将当前标签数量与目标标签的目标码值类别对应的历史标签数量分布情况对比,确定目标标签在目标码值类别上对应的初始标签状态,能够保证初始标签状态的可靠性。基于当前标签数量和中分界点,得到目标标签在目标码值类别上对应的目标波动值,目标波动值能够反映当前标签数量与中分界点的差异,即目标标签在目标码值类别上的异常程度。基于目标波动值,更新目标标签在目标码值类别上对应的标签状态,即目标标签状态,能够有效纠正伪异常的标签状态,提高目标标签状态的准确性,即提高标签处理的准确性。
在一个实施例中,如图7所示,标签处理装置还包括:
目标码值类别确定模块702,用于获取目标标签对应的标签类型;基于标签类型对应的码值分类规则,确定目标标签对应的各个候选码值类别;从各个候选码值类别中确定目标码值类别。
在一个实施例中,标签数量获取模块602还用于:
获取目标码值类别对应的历史标签数量集合;历史标签数量集合包括目标码值类别对应的多个历史标签数量;对历史标签数量集合中的各个历史标签数量进行排序,得到历史标签数量序列。
在一个实施例中,分界点确定模块604还用于:
基于历史标签数量序列中历史标签数量的个数确定上分界位、中分界位和下分界位;将上分界位、中分界位和下分界位在历史标签数量序列中分别对应的历史标签数量作为对应的上分界点、中分界点和下分界点。
在一个实施例中,初始标签状态确定模块606还用于:
基于上分界点和下分界点确定目标范围;当当前标签数量位于目标范围内时,确定初始标签状态为正常状态;当当前标签数量位于目标范围外时,确定初始标签状态为异常状态。
在一个实施例中,目标标签状态确定模块610还用于:
当初始标签状态为正常状态时,将初始标签状态作为目标标签状态;当初始标签状态为异常状态、且目标标签在目标码值类别上不存在预设波动范围时,确定目标标签状态为异常状态;当初始标签状态为异常状态、且目标波动值位于目标标签在目标码值类别上对应的预设波动范围内时,确定目标标签状态为正常状态;当初始标签状态为异常状态、且目标波动值位于目标标签在目标码值类别上对应的预设波动范围外时,确定目标标签状态为异常状态。
在一个实施例中,如图8所示,标签处理装置还包括:
数据分析表确定模块802,用于从标签数据库中获取目标标签对应的标签元数据;基于标签元数据,生成目标标签对应的查询文件;执行查询文件,将文件执行结果写入数据分析表;数据分析表用于确定目标标签在各个候选码值类别上分别对应的目标标签状态。
标签报告生成模块804,用于基于目标标签在各个候选码值类别上分别对应的目标标签状态,生成目标标签对应的标签报告。
上述标签处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储当前标签数量、历史标签数量序列、目标波动值等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种标签处理方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种标签处理方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9、10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。