CN112799971B - 一种数据处理方法、设备以及计算机可读存储介质 - Google Patents
一种数据处理方法、设备以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112799971B CN112799971B CN202110385354.2A CN202110385354A CN112799971B CN 112799971 B CN112799971 B CN 112799971B CN 202110385354 A CN202110385354 A CN 202110385354A CN 112799971 B CN112799971 B CN 112799971B
- Authority
- CN
- China
- Prior art keywords
- test
- index
- objects
- sampling
- index value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000005070 sampling Methods 0.000 claims abstract description 493
- 230000000875 corresponding Effects 0.000 claims abstract description 382
- 238000005457 optimization Methods 0.000 claims abstract description 111
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 103
- 238000004590 computer program Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 20
- 238000007689 inspection Methods 0.000 claims description 12
- 238000004220 aggregation Methods 0.000 claims description 4
- 230000002776 aggregation Effects 0.000 claims description 4
- 230000004931 aggregating Effects 0.000 claims description 2
- 238000005286 illumination Methods 0.000 claims 4
- 238000004364 calculation method Methods 0.000 abstract description 8
- 238000000034 method Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000306 recurrent Effects 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006011 modification reaction Methods 0.000 description 1
- 230000000087 stabilizing Effects 0.000 description 1
- 230000001960 triggered Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Abstract
本申请实施例公开一种数据处理方法、设备以及计算机可读存储介质,其中,方法包括:在第N轮对照测试中,获取测试时长以及至少两个测试对象分别对应的采样指标值;当存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象;根据固定测试对象在每一轮对照测试内的采样指标值,确定对象优化算法;根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,将更新后的至少两个测试对象确定为第N+1轮对照测试内的测试对象。采用本申请,可以节省数据运算量,降低空间计算成本。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种数据处理方法、设备以及计算机可读存储介质。
背景技术
企业为了取得不断的发展,需要对落地产品不断做出行之有效的改动,但随意改动已经完善的落地产品也是一件很冒险的事情,因此很多企业会通过AB测试进行决策。
现有的AB测试是对对照版本以及至少两个测试版本同时进行实验,其中,对照版本是现有的产品,测试版本是更改了版本参数的版本,用于更新对照版本;然后实时观察用户业务数据,当实验时长等于设置的实验停止时长时,对对照版本以及至少两个测试版本同时停止实验,计算每个版本分别对应的指标值,若存在比对照版本对应的指标值更好的测试版本对应的指标值,则将最佳指标值对应的测试版本确定为更新对照版本的待上线版本。明显地,现有的AB测试存在以下缺陷:1)若存在大量的测试参数,例如某个按钮的颜色,可以被设置为成百上千种颜色,则存在成百上千个测试版本,若对成百上千个测试版本同时进行对照测试,这存在大量的数据运算,对空间计算成本也有极高的要求;2)实际的实验时长等于固定的实验停止时长,现有的AB测试只关注实验最后的结果数据,而忽略实验过程中的数据,让实验效果存在明显不佳的测试对象无意义的保持实验,直至实验时长等于实验停止时长,这也会产生计算资源浪费的问题。
发明内容
本申请实施例提供一种数据处理方法、设备以及计算机可读存储介质,可以节省数据运算量,降低空间计算成本。
本申请实施例一方面提供了一种数据处理方法,包括:
在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集;
当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象;
根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法;
根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同;
将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试,直至在测试对象集中确定最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
本申请实施例一方面提供了一种数据处理装置,包括:
第一获取模块,用于在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集;
第一确定模块,用于当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象;
第一确定模块,还用于根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法;
第一确定模块,还用于根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同;
第二确定模块,用于将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试,直至在测试对象集中确定最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
其中,数据处理装置,还包括:
第三确定模块,用于若测试时长小于指标防护关闭时长,则确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;
第三确定模块,还用于若测试时长等于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;最大更新对象时长大于指标防护关闭时长。
其中,数据处理装置,还包括:
第一获取模块,还用于在第N轮对照测试中,获取参照对象对应的采样指标值;参照对象为对象组件所指示的对象;
第三确定模块,还用于若测试时长等于或大于指标防护关闭时长,且测试时长小于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值的指标完整度,以及参照对象对应的采样指标值的指标完整度;最大更新对象时长大于指标防护关闭时长;
第四确定模块,用于当至少两个测试对象或参照对象中存在小于指标完整度阈值的指标完整度时,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;
第四确定模块,还用于当至少两个测试对象以及参照对象分别对应的指标完整度均等于或大于指标完整度阈值时,根据测试时长,确定至少两个测试对象分别对应的采样指标值与对象更新条件之间的满足关系。
其中,第四确定模块,包括:
第一确定单元,用于若测试时长小于最小更新对象时长,则确定动态测试对象对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系,根据第一差异关系,确定动态测试对象对应的采样指标值与对象更新条件之间的满足关系;最小更新对象时长大于指标防护关闭时长,且最小更新对象时长小于最大更新对象时长;
第二确定单元,用于若测试时长等于或大于最小更新对象时长,则确定至少两个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系,根据第二差异关系,确定至少两个测试对象分别对应的采样指标值,与对象更新条件之间的满足关系。
其中,所述至少两个测试对象中的动态测试对象包括动态测试对象Di,i为正整数且i小于或等于所述动态测试对象的对象总数量;
第一确定单元,包括:
第一处理子单元,用于将动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;
第一确定子单元,用于若差异值小于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为负向差异关系,根据负向差异关系,确定动态测试对象Di对应的采样指标值满足对象更新条件;
第二确定子单元,用于若差异值等于或大于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为非负向差异关系,根据非负向差异关系,确定动态测试对象Di对应的采样指标值不满足对象更新条件。
其中,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
第二确定单元,包括:
第二处理子单元,用于将测试对象Cj对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;
第三确定子单元,用于若差异值小于负向差异阈值,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为负向差异关系,根据负向差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;
第四确定子单元,用于若每个测试对象分别对应的差异值均等于或大于负向差异阈值,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非负向差异关系,根据非负向差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
其中,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
第二确定单元,包括:
第三处理子单元,用于对参照对象对应的采样指标值,以及测试对象Cj对应的采样指标值进行差异检验处理,得到测试对象Cj对应的第一检验结果;
第五确定子单元,用于若测试对象Cj对应的第一检验结果为指标显著差异结果,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为显著差异关系,根据显著差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;
第六确定子单元,用于若每个测试对象分别对应的第一检验结果均为指标非显著差异结果,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非显著差异关系,根据非显著差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
其中,第一确定模块,包括:
第三确定单元,用于若测试时长等于或大于最小更新对象时长,则将至少两个测试对象中的动态测试对象均确定为待更新对象;
第四确定单元,用于若测试时长等于或大于指标防护关闭时长,且小于最小更新对象时长,则将满足对象更新条件的采样指标值确定为待更新指标值;
第四确定单元,还用于在动态测试对象中,将待更新指标值所属的动态测试对象确定为待更新对象。
其中,第一确定模块,包括:
第一获取单元,用于在采样指标值集合中,获取最大采样指标值以及最小采样指标值;采样指标值集合包括固定测试对象在每一轮对照测试内的采样指标值;
第一获取单元,还用于对最大采样指标值以及最小采样指标值进行差异检验处理,得到第二检验结果;
第五确定单元,用于根据第二检验结果,确定采样指标值集合中的采样指标值的指标状态,根据指标状态,确定针对动态测试对象的对象优化算法。
其中,对象优化算法包括单任务对象优化算法以及多任务对象优化算法;
第五确定单元,具体用于若第二检验结果为指标显著差异结果,则确定采样指标值集合中的采样指标值的指标状态为指标变化状态,根据指标变化状态,确定针对动态测试对象的对象优化算法为多任务对象优化算法;
第五确定单元,还具体用于若第二检验结果为指标非显著差异结果,则确定指标状态为指标稳定状态,根据指标稳定状态,确定对象优化算法为单任务对象优化算法。
其中,第一确定模块,包括:
第二获取单元,用于获取至少两个预选核函数;至少两个预选核函数分别对应的函数类型互不相同;
第六确定单元,用于若对象优化算法为单任务对象优化算法,则从至少两个预选核函数中确定目标核函数;
第六确定单元,还用于根据对象指标对集合以及目标核函数,对用于选择测试对象的初始预测模型进行训练,得到目标预测模型;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
第六确定单元,还用于通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;
第六确定单元,还用于根据待更新对象的数量以及预测指标值,在测试对象集中选择待测试对象。
其中,第一确定模块,包括:
第三获取单元,用于获取至少两个预选核函数;至少两个预选核函数分别对应的函数类型互不相同;
第七确定单元,用于若对象优化算法为多任务对象优化算法,则将对象指标对集合中处于同一轮对照测试内的对象指标对进行聚合处理,生成N个对象指标对子集合;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
第七确定单元,还用于在至少两个预选核函数中,确定 N个对象指标对子集合分别对应的目标核函数,得到N个目标核函数;N个对象指标对子集合包括对象指标对子集合Zb,b为正整数且b小于或等于N;
第七确定单元,还用于根据对象指标对子集合Zb、对象指标对子集合Zb对应的目标核函数,以及剩余对象指标对子集合对应的用于选择测试对象的初始预测模型,对对象指标对子集合Zb对应的用于选择测试对象的初始预测模型进行训练;剩余对象指标对子集合包括,N个对象指标对子集合中除了对象指标对子集合Zb之外的对象指标对子集合;
第七确定单元,还用于当N个训练后的初始预测模型均处于收敛状态,且对象指标对子集合Zb为第N轮对照测试中的对象指标对子集合时,将对象指标对子集合Zb对应的训练后的初始预测模型,确定为目标预测模型;
第七确定单元,还用于通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;
第七确定单元,还用于根据待更新对象数量以及预测指标值,在测试对象集中选择待测试对象。
其中,数据处理装置,还包括:
第一指标模块,用于将对象指标对集合以及预测对象指标对集合进行聚合处理,得到针对测试对象集的测试结果集;预测对象指标对集合包括预测指标值以及测试对象集中的未测试对象;
第二指标模块,用于将测试结果集中的采样指标值以及预测指标值,分别与指标阈值进行对比;
第五确定模块,用于在测试结果集中,将大于指标阈值的采样指标值或预测指标值确定为目标指标值,将目标指标值对应的测试对象确定为目标测试对象,根据目标测试对象生成目标对象集合;
第二获取模块,用于若目标对象集合所指示的集合区间长度小于集合区间长度阈值,则获取对象指标对集合中的最优测试对象,执行根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化的步骤;
第二确定模块,用于若目标对象集合所指示的集合区间长度等于或大于集合区间长度阈值,则执行将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试的步骤。
本申请一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信功能,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以使得计算机设备执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中;计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中的方法。
在本申请实施例中,针对测试对象集,无需对每一个测试对象同时运行对照测试,而是对少量的测试对象(例如至少两个测试对象)进行轮回对照测试,通过轮回对照测试,可以节省数据运算量,降低空间计算成本;进一步地,在第N轮对照测试中,当确定至少两个测试对象分别对应的采样指标值中满足对象更新条件的采样指标值时,结合测试时长,在动态测试对象中确定待更新对象,且通过待更新对象进行下一轮对照测试的方式,可以避免明显不达标的测试对象无意义的保持对照测试,即可避免所有测试对象都同时进行对照测试,不仅减少了计算资源,也减少了大量无意义的实验,提高了整体的实验测试效率;进一步地,通过固定测试对象在每一轮对照测试内的采样指标值,可以针对性地确定对象优化算法,进而可以根据恰当的对象优化算法,在测试对象集中选择更合适的待测试对象,避免对采样指标值可能不佳的未测试对象进行对照测试,进一步减少了无意义的实验次数,进而可以提高多轮对照测试的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种系统架构示意图;
图2a是本申请实施例提供的一种数据处理的场景示意图;
图2b是本申请实施例提供的一种数据处理的场景示意图;
图3是本申请实施例提供的一种数据处理方法的流程示意图;
图4是本申请实施例提供的一种数据处理的场景示意图;
图5是本申请实施例提供的一种数据处理的场景示意图;
图6是本申请实施例提供的一种数据处理方法的流程示意图;
图7是本申请实施例提供的一种数据处理的场景示意图;
图8是本申请实施例提供的一种数据处理的场景示意图;
图9是本申请实施例提供的一种数据处理方法的流程示意图;
图10是本申请实施例提供的一种数据处理的场景示意图;
图11是本申请实施例提供的一种数据处理的场景示意图;
图12是本申请实施例提供的一种更新对象的流程示意图;
图13是本申请实施例提供的一种数据处理装置的结构示意图;
图14是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种系统架构示意图。如图1所示,该系统可以包括服务器10a以及用户终端集群,用户终端集群可以包括:用户终端10b、用户终端10c、...、用户终端10d,可以理解的是,上述系统可以包括一个或者多个用户终端,这里将不对用户终端的数量进行限制。
需要说明的是,上述服务器10a、用户终端10b、用户终端10c、...、用户终端10d均可以为区块链网络中的区块链节点,下文叙述的数据(例如第N轮对照测试中的至少两个测试对象,以及至少两个测试对象分别对应的采样指标值),可以进行存储,存储方式可以是区块链节点根据数据生成区块,并将区块添加至区块链中进行存储的方式。
区块链是一种分布式数据存储、点对点传输、共识机制以及加密算法等计算机技术的新型应用模式,主要用于对数据按时间顺序进行整理,并加密成账本,使其不可被篡改和伪造,同时可进行数据的验证、存储和更新。区块链本质上是一个去中心化的数据库,该数据库中的每个节点均存储一条相同的区块链,区块链网络可以将节点区分为核心节点、数据节点以及轻节点。核心节点、数据节点以及轻节点共同组成区块链节点。其中核心节点负责区块链全网的共识,也就是说核心节点为区块链网络中的共识节点。对于区块链网络中的交易数据被写入账本的流程可以为,区块链网络中的数据节点或轻节点获取到交易数据,将交易数据在区块链网络中传递(也就是节点以接力棒的方式进行传递),直到共识节点收到该交易数据,共识节点再将该交易数据打包进区块,进行执行共识,待共识完成后将该交易数据写入账本。此处以第N轮对照测试中的至少两个测试对象,以及至少两个测试对象分别对应的采样指标值示例交易数据,服务器10a(区块链节点)在通过对交易数据的共识后,根据交易数据生成区块,将区块存储至区块链网络中;而对于交易数据(即第N轮对照测试中的至少两个测试对象,以及至少两个测试对象分别对应的采样指标值)的读取,则可以由区块链节点在区块链网络中,获取到包含该交易数据的区块,进一步,在区块中获取交易数据。
其中,用户终端集群之间可以存在通信连接,例如用户终端10b与用户终端10c之间存在通信连接,用户终端10b与用户终端10d之间存在通信连接。同时,用户终端集群中的任一用户终端可以与服务器10a存在通信连接,例如用户终端10b与服务器10a之间存在通信连接,用户终端10c与服务器10a之间存在通信连接。其中,上述的通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其他方式,本申请在此不做限制。
服务器10a通过通信连接功能为用户终端集群提供服务,当用户终端(可以是用户终端10b、用户终端10c或用户终端10d)获取到大量的测试对象(等于至少两个实验对象),并想要根据少数测试对象分别对应的指标值,在大量的测试对象中,确定可以更新现有对象的目标对象时,用户终端可以通过上述通信连接功能将大量的测试对象以及参照对象(等同于现有对象)发送至服务器10a。请一并参见图2a,图2a是本申请实施例提供的一种数据处理的场景示意图。假设用户终端获取了50个测试对象,分别为图2a所示例的测试对象1、测试对象2、测试对象3、测试对象4、…、测试对象49以及测试对象50。服务器获取到用户终端发送的50个测试对象以及参照对象后,可以对50个测试对象以及参照对象进行轮回对照测试实验,服务器首先确定固定测试对象,本申请实施例将测试对象3作为固定测试对象,将其余的测试对象均作为动态测试对象,动态测试对象是指可变测试对象,即在不同轮回的对照测试中,一个实验组的实验参数不同,例如实验组1在第一轮对照测试中的测试对象(例如按钮颜色为黄色),与在第二轮对照测试中的测试对象(例如按钮颜色为绿色)不同,此时,可以说明针对实验组1的测试对象是动态测试对象。固定测试对象与动态测试对象相反,即在不同轮回的对照测试中,一个实验组的实验参数不发生变化,例如实验组3在第一轮对照测试中的测试对象,以及在第二轮对照测试中的测试对象均为红色(例如按钮的颜色为红色)。
服务器随机获取2个动态测试对象(例如图2a所示例的测试对象1以及测试对象2),对测试对象1、测试对象2、测试对象3以及参照对象进行第一轮对照测试,当3个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,确定测试对象1、测试对象2、测试对象3以及参照对象分别对应的采样指标值,例如图2a所示例的测试对象1对应的采样指标值1、测试对象2对应的采样指标值2、测试对象3对应的采样指标值3,以及参照对象对应的采样指标值4,服务器根据测试对象3(等同于固定测试对象)在第一轮对照测试内的采样指标值,可以确定针对动态测试对象的对象优化算法,其中,确定对象优化算法的具体过程请参见下文图3以及图6所对应的实施例,此处暂不展开叙述。
确定对象优化算法后,服务器可以获取初始预测模型,将测试对象1、测试对象2、测试对象3以及参照对象作为输入,将采样指标值1、采样指标值2、采样指标值3,以及采样指标值4作为输出,对初始预测模型进行训练,生成如图2a所示例的目标预测模型20a。服务器将50个测试对象中未测试的测试对象输入至目标预测模型20a中,如图2a所示,将测试对象4、…、测试对象49以及测试对象50分别输入至目标预测模型20a,分别得到测试对象4对应的预测指标值1、…、测试对象49对应的预测指标值46、测试对象50对应的预测指标值47;服务器根据采样指标值1、采样指标值2、采样指标值3、采样指标值4、预测指标值1、…、预测指标值46、预测指标值47、上述50个测试对象以及对照对象,可以确定上述50个测试对象中是否存在最优测试对象,具体的确定过程请一并参见下文图3以及图6所对应的实施例中的描述,此处暂不叙述。
请再参见图2a,本申请实施例假设第一轮的对照测试未确定最优测试对象,则在动态测试对象中确定待更新对象,其中,待更新对象的确定也请参见下文的描述,图2a设定第一轮对照测试中的待更新对象为测试对象1,则服务器根据待更新对象的数量、预测指标值1、…、预测指标值46以及预测指标值47,确定待测试对象,如图2a所示例的测试对象49,故服务器将测试对象49、测试对象2、测试对象3(作为固定测试对象)以及参照对象进行第二轮对照测试。当测试对象49、测试对象2、测试对象3分别对应的采样指标值中存在满足对象更新条件的采样指标值时,获取测试对象49、测试对象2、测试对象3以及参照对象分别对应的采样指标值,例如图2a所示例的测试对象49对应的采样指标值5、测试对象2对应的采样指标值6、测试对象3对应的采样指标值7,以及参照对象对应的采样指标值8,服务器将第一轮对照测试中的测试对象1、测试对象2、测试对象3以及参照对象,第二轮对照测试中的测试对象49、测试对象2、测试对象3以及参照对象作为输入,将采样指标值1、采样指标值2、采样指标值3、采样指标值4、采样指标值5、采样指标值6、采样指标值7,以及采样指标值8作为输出,对可能不同于第一轮对照测试中的初始预测模型进行训练,生成如图2a所示例的目标预测模型20b。本申请实施例采用的是单任务对象优化算法,采用多任务对象优化算法还是采用单任务对象优化算法的确定过程,请参见下文图3以及图6所分别对应的实施例,此处暂不展开。
服务器将50个测试对象中未测试的测试对象输入至目标预测模型20b中,如图2a所示,将测试对象4、…、测试对象50(不包括测试对象49)分别输入至目标预测模型20b,分别得到测试对象4对应的预测指标值48、…、测试对象50对应的预测指标值94;服务器根据采样指标值1、采样指标值2、采样指标值3、采样指标值4、采样指标值5、采样指标值6、采样指标值7,以及采样指标值8、预测指标值48、…、以及预测指标值94、上述50个测试对象以及对照对象,可以确定上述50个测试对象中是否存在最优测试对象,如图2a所示,本申请实施例设定第二轮对照测试存在最优测试对象。
请一并参见图2b,图2b是本申请实施例提供的一种数据处理的场景示意图。如图2b所示,假设用户业务页面为一个用户发表言论页面,如图2b所示例的发表页面20c,用户想要通过轮回对照测试优化发表页面20c中发表控件的控件颜色,目前发表控件的参照对象(本实施例可以理解为控件颜色)为控件颜色20d。用户通过用户终端将测试对象集20h发送至服务器,其中,测试对象集20h可以包括大量的测试对象,即不同于控件颜色20d的其它控件颜色,例如控件颜色20g以及控件颜色20f。服务器获取到发表页面20c以及测试对象集20h后,可以将发表页面20c作为对照组,将对照组中的控件颜色20d替换为测试对象集20h中的控件颜色,生成大量的实验组,随机从大量的实验组中获取第一轮对照测试的少量(例如图2a所示例的3个)实验组,开始对对照组以及3个实验组进行第一轮对照测试,值得注意的是,本申请不是同时对对照组以及全部的实验组进行测试,而是进行轮回对照测试,可以节省数据运算量,降低空间计算成本的同时,还可以减少无意义的实验次数,进而可以提高多轮对照测试的效率。
请再参见图2b,假设最优测试对象(本实施例可以理解为最优的控件颜色)为测试对象集20h中的控件颜色20f,则服务器可以将现有的用户业务页面(即发表页面20c)中发表控件的控件颜色20d,优化为控件颜色20f,则生成优化后的发表页面20e。
后续,服务器可以将最优测试对象发送至用户终端,以使用户终端根据最优测试对象更新参照对象。可选的,若用户终端的本地存储了训练好的目标预测模型20b,则可以在本地输入50个测试对象,获取最优测试对象,再将本地上线的对照对象更新为最优测试对象。其中,由于训练目标预测模型20b涉及到大量的离线计算,因此用户终端本地的目标预测模型20b可以是由服务器训练完成后发送至用户终端的。
由图2a可知,采用本申请可以无需对每个测试对象同时进行对照测试,则可以节省服务器的数据计算资源,采用轮回对照测试,可以对大量测试对象中的少数测试对象进行实验,且通过该少量的测试对象,可以准确地确定更新参照对象的测试对象,进而可以快速地将更好的版本进行上线。
其中,图1中的服务器10a、用户终端10b、用户终端10c、…、用户终端10d可以包括手机、平板电脑、笔记本电脑、掌上电脑、智能音响、移动互联网设备(MID,mobile internetdevice)、POS(Point Of Sales,销售点)机、可穿戴设备(例如智能手表、智能手环等)等。
可以理解的是,本申请实施例所提供的数据处理方法可以由计算机设备执行,计算机设备包括但不限于终端或服务器。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
进一步地,请参见图3,图3是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可以由图1所述的服务器或用户终端执行,也可以由服务器以及用户终端共同执行,在本申请实施例中,以该方法由服务器执行为例进行说明。如图3所示,该数据处理过程可以包括如下步骤。
步骤S101,在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集。
具体的,本申请中的每个测试对象均可以等同于一个实验组中的实验参数(也可以理解为测试参数或实验变量),可以理解的是,每个实验组中的实验参数可以为一个,也可以为多个,即本申请实施例中的每个测试对象可以指代一个实验参数(例如按钮的颜色),也可以指代一个实验参数群(即存在多个实验参数,例如按钮的颜色、按钮的位置以及按钮的形状等),本申请在此不对测试对象进行限制,实际应用时,可以根据场景进行设定。
其中,动态测试对象是指可变测试对象,即在不同轮回的对照测试中,一个实验组的实验参数不同,例如实验组1在第一轮对照测试中的测试对象(例如按钮颜色为黄色),与在第二轮对照测试中的测试对象(例如按钮颜色为绿色)不同,此时,可以说明针对实验组1的测试对象是动态测试对象。固定测试对象与动态测试对象相反,即在不同轮回的对照测试中,一个实验组的实验参数不发生变化,例如实验组3在第一轮对照测试中的测试对象,以及在第二轮对照测试中的测试对象均为红色(按钮的颜色)。在本申请实施例中,至少两个测试对象可以等于两个测试对象,此时一个动态测试对象,一个固定测试对象;至少两个测试对象可以大于两个测试对象,此时可以包括至少两个动态测试对象以及一个固定测试对象,或至少两个固定测试对象以及一个动态测试对象,或者动态测试对象以及固定测试对象均至少两个。本申请在此不对至少两个测试对象的对象数量进行限制,也不对固定测试对象以及动态测试对象分别对应的对象数量进行限制,实际应用时,可以根据场景进行设定。
服务器可以实时的获取针对至少两个测试对象的测试时长,也可以设置心跳周期,例如1小时,即服务器每1小时获取一次测试时长;也可以在每轮对照测试中的前段测试中,例如在未达到指标防护关闭时长前,不获取测试时长,在达到指标防护关闭时长时,即开启指标防护(下文将详细介绍指标防护,此处暂不展开叙述),开始实时的获取正在测试的测试对象的测试时长,或根据心跳周期获取测试时长,此处不限定获取测试时长的方式,可以根据实际应用场景进行设定。
进一步地,服务器可以实时地检测至少两个测试对象分别对应的用户业务数据,根据每个测试对象分别对应的用户业务数据,实时地生成每个测试对象对应的采样指标值;也可以设置获取周期,例如服务器每隔一小时获取一次至少两个测试对象分别对应的用户业务数据,然后对应地生成至少两个采样指标值;还可以在测试时长达到指标防护关闭时长之后,再获取每个测试对象分别对应的用户业务数据,再计算得出每个测试对象分别对应的采样指标值,此处不限定获取采样指标值的方式,可以根据实际应用场景进行设定。
可以理解的是,每个测试对象对应的采样指标值可以包括一个指标值,例如按钮的点击率,也可以包括多个指标值,例如按钮的点击率,版本的留存率等等,此处不限定每个采样指标值所包括的指标值数量,可以根据实际应用场景进行设定。
步骤S102,当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象。
具体的,一方面,若测试时长小于指标防护关闭时长,则确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;若测试时长等于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;最大更新对象时长大于指标防护关闭时长。
另一方面,在第N轮对照测试中,获取参照对象对应的采样指标值;参照对象为对象组件所指示的对象;若测试时长等于或大于指标防护关闭时长,且测试时长小于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值的指标完整度,以及参照对象对应的采样指标值的指标完整度;最大更新对象时长大于指标防护关闭时长;当至少两个测试对象或参照对象中存在小于指标完整度阈值的指标完整度时,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;当至少两个测试对象以及参照对象分别对应的指标完整度均等于或大于指标完整度阈值时,根据测试时长,确定至少两个测试对象分别对应的采样指标值与对象更新条件之间的满足关系。
若测试时长等于或大于最小更新对象时长,则将至少两个测试对象中的动态测试对象均确定为待更新对象;若测试时长等于或大于指标防护关闭时长,且小于最小更新对象时长,则将满足对象更新条件的采样指标值确定为待更新指标值;在动态测试对象中,将待更新指标值所属的动态测试对象确定为待更新对象。
在本申请实施例中,对象更新条件可以包括如下:
1、测试时长等于或大于指标防护关闭时长,且测试时长小于最小更新对象时长,此时,在第N轮的对照测试中开启指标防护,进入指标防护阶段;在至少两个测试对象以及参照对象分别对应的指标完整度均等于或大于指标完整度阈值时,若某个动态测试对象对应的采样指标值,小于参照对象对应的采样指标值,且两者的差异值小于负向差异阈值,则确定上述动态测试对象对应的采样指标值满足对象更新;可以理解的是,若采样指标值包括至少两个实验参数,则在任意一个实验参数对应的差异值小于负向差异阈值时,确定该实验参数所属的动态测试对象的采样指标值均满足对象更新条件。
2、测试时长等于或大于最小更新对象时长,且测试时长小于最大更新对象时长,此时,第N轮对照测试进入到更新对象的阶段;在确定每个对象(包括测试对象以及参照对象)分别对应的指标完整度,均等于或大于指标完整度阈值时,检测每个测试对象(注意,上述第1种对象更新条件只判断动态测试对象)分别对应的采样指标值,是否与参照对象对应的采样指标值存在差异,除了上述第1种对象更新条件中所述的显著的负向差异之外,还包括对测试对象对应的采样指标值与参照对象对应的采样指标值进行假设检验,若任意一个测试对象对应的采样指标值与参照对象对应的采样指标值,存在显著差异,则确定至少两个测试对象分别对应的采样指标值均满足对象更新;可以理解的是,若采样指标值包括至少两个实验参数,则在任意一个实验参数存在任意一种差异(包括负向差异以及显著差异)时,确定每个测试对象分别对应的采样指标值均满足对象更新条件。
3、测试时长等于最大更新对象时长,此时,第N轮对照测试结束,不需要确定参照对象以及每个测试对象分别对应的指标完整度,可以确定每个测试对象分别对应的采样指标值均满足对象更新条件。
针对上述3种对象更新条件,确定待更新对象的方法如下所示:
1、针对第1种对象更新条件,将出现显著的负向差异的动态测试对象确定为待更新对象;
2、针对第2种对象更新条件,将所有的动态测试对象均确定为待更新对象;
3、针对第3种对象更新条件,将所有的动态测试对象均确定为待更新对象。
可以理解的是,本申请实施例中的指标完整度阈值可以根据实际应用场景进行设定,例如指标完整度阈值为1,则在每轮对照测试中,需要确定参照对象以及每个测试对象分别对应的采样指标值是否完整,若不完整,则保持实验。
确定测试对象对应的采样指标值与参照对象对应的采样指标值之间的负向差异,以及显著差异的具体过程,请参见下文图6所对应的实施例中步骤S202的描述,此处暂不展开叙述。
请一并参见图4,图4是本申请实施例提供的一种数据处理的场景示意图。如图4所示,假设N=3,即当前对照测试为第3轮对照测试,至少两个测试对象包括2个动态测试对象以及1个固定测试对象,分别为图4所示例的动态测试对象407a、动态测试对象408a以及固定测试对象404a;假设指标完整度阈值为1。
可以理解的是,在对照测试之前,测试人员40b需要配置实验,实验配置可以包括与对照测试相关的时间数据,如图4所示,设置指标防护关闭时长为24小时(h),最小更新对象时长为72h(即3天),最大更新对象时长为168h(即7天)。其中,当测试时长达到24h后,对照测试系统开启指标防护,当测试时长达到72h后,对照测试系统可以全面更新动态测试对象,当测试时长等于168h时,对照测试系统停止当轮对照测试,实施更新全部的动态测试对象,进而下一轮对照测试。
具体请参见图4,假设第3轮对照测试是在1月20号的14时开始的,测试至1月21号13点时,获取到的数据如下:测试时长23h,参照对象401a对应的采样指标值509b、动态测试对象407a对应的采样指标值510b、动态测试对象408a对应的采样指标值511b,以及固定测试对象404a对应的采样指标值512b,由于测试时长t1小于指标防护关闭时长,此时不管采样指标值509b分别与采样指标值510b、采样指标值511b以及采样指标值512b之间的差异性,服务器确定当前的采样指标值不满足对象更新条件。可以理解的是,在实际应用时,若测试时长t1小于指标防护关闭时长,则服务器可以不获取参照对象以及每个测试对象分别对应的采样指标值,等到测试时长等于或大于指标防护关闭时长时,再获取采样指标值。
请再参见图4,第3轮对照测试继续实验,测试至1月21号15点时,服务器再次获取到如下数据:测试时长25h,参照对象401a对应的采样指标值509c、动态测试对象407a对应的采样指标值510c以及动态测试对象408a对应的采样指标值511c,明显地,此时未获取到固定测试对象404a对应的采样指标值,虽然测试时长t2大于指标防护关闭时长,但由于指标数据不完整,故服务器确定此时获取到的采样指标值不满足对象更新条件,服务器继续保持第3轮对照测试的实验。
当测试至1月21号18点时,服务器获取到的数据如下:测试时长28h,参照对象401a对应的采样指标值509d、动态测试对象407a对应的采样指标值510d、动态测试对象408a对应的采样指标值511d,以及固定测试对象404a对应的采样指标值512d;明显地,服务器获取到完整的指标数据,且测试时长t3大于指标防护关闭时长,测试时长t3小于最小更新对象时长,故服务器确定参照对象对应的采样指标值与动态测试对象对应的采样指标值之间的差异值,然后确定差异值与负向差异阈值之间的关系,即确定图4中的采样指标值509d与采样指标值510d之间的差异值是否小于负向差异阈值,采样指标值509d与采样指标值511d之间的差异值是否小于负向差异阈值,如图4所示,由于上述的两个差异值均等于或大于负向差异阈值,所以服务器确定动态测试对象407a对应的采样指标值510d,以及动态测试对象408a对应的采样指标值511d,均不满足对象更新条件,此时,服务器继续保持第3轮对照测试的实验。
当测试至1月23号15点时,服务器获取到的数据如下:测试时长73h,参照对象401a对应的采样指标值509a、动态测试对象407a对应的采样指标值510a、动态测试对象408a对应的采样指标值511a,以及固定测试对象404a对应的采样指标值512a;明显地,服务器获取到完整的指标数据,且测试时长t4大于最小更新对象时长,测试时长t3小于最大更新对象时长,故服务器确定参照对象对应的采样指标值分别与每个测试对象对应的采样指标值之间的差异性,该差异性可以包括显著的负向差异以及显著差异,如图4所示,服务器确定采样指标值509a与采样指标值510a之间的差异值是否小于负向差异阈值,采样指标值509a与采样指标值511a之间的差异值是否小于负向差异阈值,采样指标值509a与采样指标值512a之间的差异值是否小于负向差异阈值;同时,服务器确定采样指标值509a与采样指标值510a之间是否存在显著差异,采样指标值509a与采样指标值511a之间是否存在显著差异,采样指标值509a与采样指标值512a之间是否存在显著差异;当图4中任意一个测试对象对应的采样指标值与采样指标值509a存在显著差异,或显著的负向差异(即差异值小于负向差异阈值),则确定采样指标值510a、采样指标值511a,以及采样指标值512a均满足对象更新条件,如图4所示的采样指标值509a与采样指标值510a之间存在显著差异,此时服务器暂停第3轮的对照测试,并将所有的动态测试对象(如图4所示例的动态测试对象407a以及动态测试对象408a)确定为待更新对象。
可以理解的是,服务器暂停第3轮的对照测试,不代表服务器不获取各个用户终端分别对应的用户业务数据,即服务器可以继续获取各个用户终端分别对应的用户业务数据,且获取到的用户业务数据可以作为第4轮对照测试的原始数据。
步骤S103,根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法。
具体的,在采样指标值集合中,获取最大采样指标值以及最小采样指标值;采样指标值集合包括固定测试对象在每一轮对照测试内的采样指标值;对最大采样指标值以及最小采样指标值进行差异检验处理,得到第二检验结果;根据第二检验结果,确定采样指标值集合中的采样指标值的指标状态,根据指标状态,确定针对动态测试对象的对象优化算法。
其中,对象优化算法包括单任务对象优化算法以及多任务对象优化算法;确定采样指标值集合中的采样指标值的指标状态,以及确定针对动态测试对象的对象优化算法的具体过程可以包括:若第二检验结果为指标显著差异结果,则确定采样指标值集合中的采样指标值的指标状态为指标变化状态,根据指标变化状态,确定针对动态测试对象的对象优化算法为多任务对象优化算法;若第二检验结果为指标非显著差异结果,则确定指标状态为指标稳定状态,根据指标稳定状态,确定对象优化算法为单任务对象优化算法。
在A/B场景下,一个对照测试的运行时间可以以周为最大单位,例如图4所示例的最大更新对象时长,可以理解的是,一个实验参数对应的指标值在实验的运行时间内可能会产生变化,比如人均视频播放时长会因为工作日和周末的区别发生变化,针对该问题,本申请通过多种策略解决,首先确定动态测试对象以及固定测试对象,根据上文的描述可知,参照对象以及固定测试对象在每轮对照测试中均不改变实验参数,但参照对象以及固定测试对象会跟随动态测试对象同步刷新测试时间,且根据固定测试对象在每一轮对照测试内的采样指标值确定对照测试是否处于稳定状态,例如人均视频播放时长是否会因为工作日和周末的区别发生变化,请一并参见图5,图5是本申请实施例提供的一种数据处理的场景示意图。如图所示,假设N等于3,即当前对照测试为第3轮对照测试,服务器将每轮对照测试中固定测试对象对应的采样指标值,加入到对应的采样指标值集合50a中,此时,针对固定测试对象404a,采样指标值集合50a包括第1轮对照测试中的采样指标值504a、第2轮对照测试中的采样指标值508a,以及第3轮对照测试中的采样指标值512a。
请再参见图5,服务器在采样指标值集合50a中获取固定测试对象404a对应的最大采样指标值(如图5所示例的采样指标值504a),以及最小采样指标值(如图5所示例的采样指标值512a),即固定测试对象404a在第一轮对照测试中的采样指标值504a为最大的采样指标值,在第三轮对照测试中的采样指标值512a为最小的采样指标值。服务器对最大采样指标值以及最小采样指标值进行差异检验处理,即对图5中的采样指标值504a以及采样指标值512a进行假设检验,得到第二检验结果40a,可以理解的是,本申请实施例不对假设检验方法进行设定,可以为任意一种检验方法,例如t检验和Z检验。
进一步地,第二检验结果40a可以包括两个结果,若为指标显著差异结果,即采样指标值504a与采样指标值512a之间存在显著差异,则确定采样指标值集合50a中的采样指标值的指标状态为指标变化状态,等同于图5中所示例的采样指标值集合50a中的采样指标值不稳定,此时,服务器确定针对动态测试对象404a的对象优化算法为多任务对象优化算法;若第二检验结果40a为指标非显著差异结果,即采样指标值504a与采样指标值512a之间不存在显著差异,则确定指标状态为指标稳定状态,等同于图5中所示例的采样指标值集合50a中的采样指标值稳定,根据指标稳定状态,服务器可以确定对象优化算法为单任务对象优化算法。
可以理解的是,在本申请实施例中仅以一个固定测试对象为例进行叙述,若存在多个固定测试对象,例如固定测试对象404a、固定测试对象404b、…、固定测试对象404n,则每个固定测试对象均存在其对应的采样指标值集合,例如采样指标值集合50a包括固定测试对象404a在每一轮对照测试内的采样指标值,采样指标值集合50b包括固定测试对象404b在每一轮对照测试内的采样指标值,…,采样指标值集合50n包括固定测试对象404n在每一轮对照测试内的采样指标值;当存在多个固定测试对象时,若存在至少一个采样指标值集合中的最大采样指标值以及最小采样指标值出现显著差异,均确定针对动态测试对象的对象优化算法为多任务对象优化算法。可以理解的是,若采样指标值包括至少两个实验参数,则任意一个实验参数存在显著差异时,确定对象优化算法为多任务对象优化算法。
其中,对象优化算法(包括多任务对象优化算法以及单任务对象优化算法)可以包括高斯回归以及贝叶斯优化,高斯过程是随机过程的一种,其满足任意子集服从多元高斯分布;贝叶斯优化是一种基于高斯过程回归的黑盒函数最值的优化方法。高斯回归以及贝叶斯优化的具体用处请参见下文步骤S104的描述,此处暂不叙述。
步骤S104,根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同。
具体的,由步骤S103可知,本申请实施例中的对象优化算法不固定,在针对固定测试对象的采样指标值集合中的指标值不稳定的情况下,将每一轮回对照测试中的数据作为一个任务,分别用于训练不同的初始预测模型,并将根据最后一个轮回中的数据所训练出的初始预测模型作为目标预测模型,用于预测下一轮最值得测试的测试对象。在采样指标值集合中的指标值稳定的情况下,将当前所有轮回对照测试中的数据作为一个任务,共同训练一个初始预测模型,然后将训练好的初始预测模型用来预测下一轮最值得测试的测试对象。其具体过程请参见下文图6所对应的实施例中步骤S205的描述,此处暂不展开叙述。
步骤S105,将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试,直至在测试对象集中确定最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
具体的,请一并结合图4,可知待更新对象包括动态测试对象407a以及动态测试对象408a,假设待测试对象包括动态测试对象409a以及动态测试对象451a,若根据前3轮的对照测试,在测试对象集中不能确定最优测试对象,则服务器将动态测试对象407a更新为动态测试对象451a,将动态测试对象408a更新为动态测试对象409a,对参照对象401a、固定测试对象404a、动态测试对象409a以及动态测试对象451a,开启第4轮对照测试。
最优测试对象的确定过程,请一并参见下文图6所对应的实施例中步骤S206-步骤S209的描述,此处暂不展开叙述。
可以理解的是,本申请实施例中的数据处理方法,可以运用到任意一个用户业务页面的对照测试场景中,例如用户体验优化、转化率优化或广告优化等。
在本申请实施例中,针对测试对象集,无需对每一个测试对象同时运行对照测试,而是对少量的测试对象(例如至少两个测试对象)进行轮回对照测试,通过轮回对照测试,可以节省数据运算量,降低空间计算成本;进一步地,在第N轮对照测试中,当确定至少两个测试对象分别对应的采样指标值中满足对象更新条件的采样指标值时,结合测试时长,在动态测试对象中确定待更新对象,且通过待更新对象进行下一轮对照测试的方式,可以避免明显不达标的测试对象无意义的保持对照测试,即可避免所有测试对象都同时进行对照测试,不仅减少了计算资源,也减少了大量无意义的实验,提高了整体的实验测试效率;进一步地,通过固定测试对象在每一轮对照测试内的采样指标值,可以针对性地确定对象优化算法,进而可以根据恰当的对象优化算法,在测试对象集中选择更合适的待测试对象,避免对采样指标值可能不佳的未测试对象进行对照测试,进一步减少了无意义的实验次数,进而可以提高多轮对照测试的效率。
进一步地,请参见图6,图6是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可以由图1所述的服务器或用户终端执行,也可以由服务器以及用户终端共同执行,在本申请实施例中,以该方法由服务器执行为例进行说明。如图6所示,该数据处理过程可以包括如下步骤。
步骤S201,在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集。
步骤S201的具体过程,可以参见上文图3所对应的实施例中步骤S101的描述,此处不再进行赘述。
步骤S202,根据测试时长,确定至少两个测试对象分别对应的采样指标值与对象更新条件之间的满足关系。
具体的,若测试时长小于最小更新对象时长,则确定动态测试对象对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系,根据第一差异关系,确定动态测试对象对应的采样指标值与对象更新条件之间的满足关系;最小更新对象时长大于指标防护关闭时长,且最小更新对象时长小于最大更新对象时长;若测试时长等于或大于最小更新对象时长,则确定至少两个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系,根据第二差异关系,确定至少两个测试对象分别对应的采样指标值,与对象更新条件之间的满足关系。
其中,至少两个测试对象中的动态测试对象包括动态测试对象Di,i为正整数且i小于或等于动态测试对象的对象总数量;第一差异关系的确定,以及满足关系的确定的具体过程可以包括:将动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;若差异值小于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为负向差异关系,根据负向差异关系,确定动态测试对象Di对应的采样指标值满足对象更新条件;若差异值等于或大于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为非负向差异关系,根据非负向差异关系,确定动态测试对象Di对应的采样指标值不满足对象更新条件。
请一并参见图7,图7是本申请实施例提供的一种数据处理的场景示意图。如图7所示,假设N=3,配置实验、测试对象以及对照对象的部分请回顾上文图3所对应的实施例中图4所示例的描述,此处不再一一进行赘述。若测试时长小于最小更新对象时长,且测试时长大于指标防护关闭时长,如图7所示例的测试时长t3为28h,由于此时第3轮对照测试未达到更新对象的最小时长(即最小更新对象时长),故不能更新所有的动态测试对象,因为只能检验动态测试对象是否存在显著的负向差异,而不能检测全部的测试对象是否出现显著的负向差异或显著差异。服务器计算动态测试对象407a对应的采样指标值510d,与对照对象401a对应的采样指标值509d之间的差异值,如图7所示,用采样指标值510d减去采样指标值509d,得到差异值1,同理,用采样指标值511d减去采样指标值509d,得到差异值2,服务器将差异值1以及差异值2分别与负向差异阈值对比,得到两个对比结果80a。
若两个对比结果80a中存在对比结果为差异值小于负向差异阈值,例如图7所示例的差异值1小于负向差异阈值,则可以确定采样指标值510d与采样指标值509d之间存在显著的负向差异,即采样指标值510d很差,差到远远小于采样指标值509d;由于差异值2等于或大于负向差异阈值,故可以确定采样指标值511d与采样指标值509d之间不存在显著的负向差异,综上,服务器将动态测试对象407a确定为待更新对象。值得注意的是,在测试时长小于最小更新对象时长时,若存在满足对象更新条件的采样指标值,服务器只将满足对象更新条件的采样指标值所属的动态测试对象确定为待更新对象。
其中,至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于至少两个测试对象的对象总数量;第二差异关系的确定,以及满足关系的确定的具体过程可以包括:将测试对象Cj对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;若差异值小于负向差异阈值,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为负向差异关系,根据负向差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;若每个测试对象分别对应的差异值均等于或大于负向差异阈值,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非负向差异关系,根据非负向差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
若测试时长等于或大于最小更新对象时长,且测试时长小于最大更新对象时长,如图4所示例的测试时长t4,通过检验测试对象是否存在显著的负向差异,即可确定至少两个测试对象分别对应的采样指标值是否满足对象更新条件,进而可以确定是否存在待更新对象,不同于对照测试未达到更新对象的最小时长,当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,服务器可以将所有的动态测试对象确定为待更新对象。由于确定满足对象更新条件的采样指标值,与上文图7所示例的过程一致,故此处不再一一进行赘述。
其中,至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于至少两个测试对象的对象总数量;第二差异关系的确定,以及满足关系的确定的具体过程可以包括:对参照对象对应的采样指标值,以及测试对象Cj对应的采样指标值进行差异检验处理,得到测试对象Cj对应的第一检验结果;若测试对象Cj对应的第一检验结果为指标显著差异结果,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为显著差异关系,根据显著差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;若每个测试对象分别对应的第一检验结果均为指标非显著差异结果,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非显著差异关系,根据非显著差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
请一并参见图8,图8是本申请实施例提供的一种数据处理的场景示意图。如图8所示,假设N=3,配置实验、测试对象以及对照对象的部分请回顾上文图3所对应的实施例中图4所示例的描述,此处不再一一进行赘述。若测试时长等于或大于最小更新对象时长,且测试时长小于最大更新对象时长,如图7所示例的测试时长t4为73h,由于此时第3轮对照测试已达到更新对象的最小时长(即最小更新对象时长),故可以更新所有的动态测试对象。服务器对每个测试对象分别对应的采样指标值以及参照对象对应的采样指标值进行假设检验,即进行差异检验处理,如图8所示,对动态测试对象407a对应的采样指标值510a,以及对照对象401a对应的采样指标值509a进行假设检验,对动态测试对象408a对应的采样指标值511a,以及对照对象401a对应的采样指标值509a进行假设检验,对固定测试对象404a对应的采样指标值512a,以及对照对象401a对应的采样指标值509a进行假设检验,得到三个第一检验结果80b。
若三个第一检验结果80b中存在任意一个第一检验结果为指标显著差异结果,例如图8所示例的采样指标值510a以及采样指标值509a之间存在显著差异,则服务器可以确定采样指标值510a、采样指标值511a,以及采样指标值512a均满足对象更新条件,此时,将动态测试对象407a以及动态测试对象408a均确定为待更新对象。若三个第一检验结果80b中不存在指标显著差异结果,即采样指标值510a以及采样指标值509a之间不存在显著差异,采样指标值511a以及采样指标值509a之间不存在显著差异,采样指标值512a以及采样指标值509a之间不存在显著差异,此时,服务器可以确定采样指标值510a、采样指标值511a,以及采样指标值512a均不满足对象更新条件,那么第3轮对照测试继续实验,直至获取到与对照测试404a对应的采样指标值存在显著差异的测试对象对应的采样指标值,若一直未获取到,则在测试时长等于最大更新对象时长时,将所有的动态测试对象确定为待更新对象。
可选的,当测试时长等于或大于最小更新对象时长,且测试时长小于最大更新对象时长时,上述两种确定满足对象更新条件的采样指标值的方法可以并行处理,即当任意一个测试对象对应的采样指标值与参照对象对应的采样指标值,存在显著的负向差异或显著差异时,均可以确定至少两个测试对象分别对应的采样指标值均满足对象更新条件。进一步地,服务器可以将所有的动态测试对象均确定为待更新对象。
结合图3以及步骤S202,请一并参见图9,图9是本申请实施例提供的一种数据处理方法的流程示意图。如图9所示,在开始对照测试之前,服务器进行第1步,即配置实验,配置实验可以包括配置优化目标,指标约束,指标防护,最短迭代运行时间(等同于上文描述的最小更新对象时长),最长迭代运行时间(等同于上文描述的最大更新对象时长),参数数据类型,参数范围,参数约束,此外,配置实验时,服务器设置一个组为对照组,对照组在整个实验过程的不同迭代(即轮回对照测试)中实验参数保持不变,实验组的数量满足大于等于1,通常包括固定实验组以及变化实验组,其中,固定实验组中的实验参数(即测试对象)为固定测试对象,变化实验组中的实验参数为动态测试对象。
其中,优化目标可以为单一指标,也支持包括多个指标的加权求和。指标约束用于提供给初始预测模型来对参数进行约束。指标防护是本申请中的一个发明点,对照测试系统用来实时检测采样指标值是否显著降低,并低于指标防护的阈值。最短迭代运行时间是指再没触发指标防护的前提下,更新实验参数前的至少运行时间。最长迭代运行时间是指一次迭代最长运行时间。本申请支持布尔类型,整型,浮点型,字符串型。参数范围,当参数类型是整型和浮点型时,参数范围用于指定一个参数的取值范围。参数约束用于支持不同参数之间的关系约束和求和约束。
请再参见图9,服务器配置好实验后,进行第2步,使用随机算法生成或获取初始实验参数,即第一轮对照测试中的测试对象,本申请实施例不对随机算法进行限定,可以根据实际应用场景进行选取。
第3步,服务器上线实验参数,第4步,运行实验,第5步,服务器检测第一轮对照测试是否达到更新参数的最小运行时间(等同于最小更新对象时长),没有达到进入第6步,达到进入第7步。
第6步,检测测试时长是否达到指标防护的最小运行时间(即指标防护关闭时长),没有达到回退到第4步,继续运行实验,达到则获取并处理各个组的指标(即上文描述的采样指标值),指标数据不完整则回退到第4步,如果完整,则判断各个实验组是否触发指标防护,判断方法是如果某个变化实验组的组指标相对于对照组的组指标,出现显著的负向差异,即差异值小于设定的防护阈值(等同于负向差异阈值),则触发指标防护,此时更新该组的实验参数,回退到第三步,开启第二轮对照测试,如果没有任何一个变化实验组触发指标防护,则回退到第4步。
第7步,获取并处理各个实验组的指标,指标数据不完整则回退到第4步,如果完整,则判断是否达到更新条件,判断方法是所有实验组中的任意一个指标出现了显著差异或显著的负向差异,则达到更新条件。此时更新所有变化实验组的实验参数,并回退到第3步,开启第二轮对照测试。如果未达到更新条件,继续判断是否达到迭代的最大运行时间(即最大更新对象时长),如果达到最大运行时间,则更新所有变化实验组的实验参数,并回退到第3步,开启第二轮对照测试,反之回退到第4步;直至训练后的初始预测模型收敛,可以得到最优测试对象。
上述以第一轮对照测试为例进行叙述,可以理解都是,其他轮的对照测试的进行可以参照上述的描述。
步骤S203,当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象。
步骤S204,根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法。
步骤S203-步骤S204的具体过程,可以参见上文图3所对应的实施例中步骤S102-步骤S103的描述,此处不再进行赘述。
步骤S205,根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同。
具体的,获取至少两个预选核函数;至少两个预选核函数分别对应的函数类型互不相同;若对象优化算法为单任务对象优化算法,则从至少两个预选核函数中确定目标核函数;根据对象指标对集合以及目标核函数,对用于选择测试对象的初始预测模型进行训练,得到目标预测模型;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;根据待更新对象的数量以及预测指标值,在测试对象集中选择待测试对象。
请一并参见图10,图10是本申请实施例提供一种数据处理的场景示意图。在开始对照测试之前,服务器先获取核函数池60a,核函数池60a包括至少两个核函数,如图10所示,本申请实施例中的核函数池60a可以包括核函数1、核函数2、…、核函数19以及核函数20,可以理解的是,核函数池60a中的每个核函数分别对应的函数类型互不相同,例如核函数1为一次函数y=ax+b,核函数2为二次函数y=cx2+dx+e,核函数20为正弦函数y=sinx。
本申请不是随机地从核函数池60a中选择目标核函数,首先通过先验知识从核函数池60a中获取至少两个预选核函数60b,如图10所示,至少两个预选核函数60b可以包括3个核函数,分别为核函数1、核函数2以及核函数20。其中,先验知识可以包括对象指标对集合60c,即将对象指标对中的对象(包括测试对象以及对照对象)作为输入,将采样指标值作为输出,可以从核函数池60a中有针对性地确定至少两个预选核函数60b。
对象指标对集合60c包括每一轮对照测试内的测试对象以及对照对象,以及每一轮对照测试内的采样指标值(包括测试对象以及对照对象分别对应的采样指标值),假设N=3,如图10所示,对象指标对集合60c可以包括3轮对照测试的对象指标对,如第一轮对照测试的参照对象401a以及参照对象401a对应的采样指标值501a,动态测试对象402a以及动态测试对象402a对应的采样指标值502a,动态测试对象403a以及动态测试对象403a对应的采样指标值503a,固定测试对象404a以及固定测试对象404a对应的采样指标值504a;如第二轮对照测试的参照对象401a以及参照对象401a对应的采样指标值505a,动态测试对象405a以及动态测试对象405a对应的采样指标值506a,动态测试对象406a以及动态测试对象406a对应的采样指标值507a,固定测试对象404a以及固定测试对象404a对应的采样指标值508a;如第三轮对照测试的参照对象401a以及参照对象401a对应的采样指标值509a,动态测试对象407a以及动态测试对象407a对应的采样指标值510a,动态测试对象408a以及动态测试对象408a对应的采样指标值511a,固定测试对象404a以及固定测试对象404a对应的采样指标值512a。
请再参见图10,由于为单任务对象优化算法,故将对象指标对集合60b视为一个训练集,从至少两个预选核函数60b中随机选择一个目标核函数,如图10所示例的核函数1;服务器将核函数1作为用于选择下一轮测试对象的初始预测模型60d的核函数,将对象指标对集合60c作为输入输出对初始预测模型60d进行训练(也包括对核函数1中的常数参数a以及b进行预测),该训练过程可以视为使用单任务高斯过程进行回归,确定初始预测模型60d中的模型参数,得到目标预测模型60e。
假设本申请实施例实验的测试对象有50个,分别为动态测试对象402a、动态测试对象403a、固定测试对象404a、动态测试对象405a、动态测试对象406a、动态测试对象407a、动态测试对象408a、动态测试对象409a、动态测试对象410a、…、动态测试对象451a;由图10所示可知,已测试对象可以包括动态测试对象402a、动态测试对象403a、固定测试对象404a、动态测试对象405a、动态测试对象406a、动态测试对象407a、动态测试对象408a;未测试对象可以包括动态测试对象409a、动态测试对象410a、…、动态测试对象451a。通过目标预测模型60e,服务器输出测试对象集60f中每个未测试对象的预测指标值,如图10所示的动态测试对象409a对应的预测指标值601a、动态测试对象410a对应的预测指标值602a、…、动态测试对象451a对应的预测指标值643a。
根据图10,可知待更新对象包括动态测试对象407a以及动态测试对象408a,故需要从未测试对象中确定两个待测试对象,服务器对预测指标值601a、预测指标值602a、…、预测指标值643a按照从大至小的顺序排序,将排在前两个的预测指标值所分别对应的测试对象确定为待测试对象,如图10所示的动态测试对象409a以及动态测试对象451a。该预测过程可以视为使用单任务贝叶斯优化进行预测,即通过回归的后验分布,估计每一个未测试的点(即未测试对象)的输出值及其标准差,然后通过平衡探索(Exploration)与守成(Exploitation)两者因素,确定下一轮对照测试最值得实验的点(即待测试对象),不断的进行此过程,最终找到最优解。
若对象优化算法为多任务对象优化算法,则将对象指标对集合中处于同一轮对照测试内的对象指标对进行聚合处理,生成N个对象指标对子集合;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;在至少两个预选核函数中,确定 N个对象指标对子集合分别对应的目标核函数,得到N个目标核函数;N个对象指标对子集合包括对象指标对子集合Zb,b为正整数且b小于或等于N;根据对象指标对子集合Zb、对象指标对子集合Zb对应的目标核函数,以及剩余对象指标对子集合对应的用于选择测试对象的初始预测模型,对对象指标对子集合Zb对应的用于选择测试对象的初始预测模型进行训练;剩余对象指标对子集合包括,N个对象指标对子集合中除了对象指标对子集合Zb之外的对象指标对子集合;当N个训练后的初始预测模型均处于收敛状态,且对象指标对子集合Zb为第N轮对照测试中的对象指标对子集合时,将对象指标对子集合Zb对应的训练后的初始预测模型,确定为目标预测模型;通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;根据待更新对象数量以及预测指标值,在测试对象集中选择待测试对象。
接下来描述对象优化算法为多任务对象优化算法的情况,请一并参见图11,图11是本申请实施例提供的一种数据处理的场景示意图。假设N=3,其中,关于至少两个预选核函数的描述,以及对象指标对集合的描述可以参见上文图10中的描述,此处不再一一进行赘述。
如图11所示,当对象优化算法为多任务对象优化算法时,服务器将对象指标对集合中处于同一轮对照测试内的对象指标对进行聚合处理,如图11所示例的,将第一轮对照测试的参照对象401a以及参照对象401a对应的采样指标值501a,动态测试对象402a以及动态测试对象402a对应的采样指标值502a,动态测试对象403a以及动态测试对象403a对应的采样指标值503a,固定测试对象404a以及固定测试对象404a对应的采样指标值504a,确定为对象指标对子集合80c;将第二轮对照测试的参照对象401a以及参照对象401a对应的采样指标值505a,动态测试对象405a以及动态测试对象405a对应的采样指标值506a,动态测试对象406a以及动态测试对象406a对应的采样指标值507a,固定测试对象404a以及固定测试对象404a对应的采样指标值508a,确定为对象指标对子集合80d;将第三轮对照测试的参照对象401a以及参照对象401a对应的采样指标值509a,动态测试对象407a以及动态测试对象407a对应的采样指标值510a,动态测试对象408a以及动态测试对象408a对应的采样指标值511a,固定测试对象404a以及固定测试对象404a对应的采样指标值512a,确定为对象指标对子集合80e,即可以生成3个对象指标对子集合。
请再参见图11,服务器在至少两个预选核函数中,确定上述3个对象指标对子集合分别对应的目标核函数,例如确定对象指标对子集合80c的目标核函数为核函数1,确定对象指标对子集合80d的目标核函数为核函数2,确定对象指标对子集合80e的目标核函数为核函数20,则得到3个目标核函数;可以理解都是,每个对象指标对子集合的目标核函数可以相同,也可以不相同,但每一轮对照测试均需要选择目标核函数。服务器为每个对象指标对子集合确定一个初始预测模型,例如图11所示例的,为对象指标对子集合80c确定初始预测模型80f,为对象指标对子集合80d确定初始预测模型80h,为对象指标对子集合80e确定初始预测模型80j。
下述为例便于理解以及叙述,将以对象指标对子集合80e以及初始预测模型80j为例进行叙述,其他情况可以参照以下的描述,不再一一进行赘述。服务器根据对象指标对子集合80e以及核函数20,对初始预测模型80j进行训练,其中,初始预测模型80j在训练过程中,还可以学习初始预测模型80h的训练结果以及初始预测模型80f的训练结果;当3个训练后的初始预测模型均处于收敛状态,服务器将训练后的初始预测模型80j,确定为目标预测模型80k;需要理解的是,本申请实施例将以当前最后一轮对照测试中的训练数据所训练出的预测模型,作为目标预测模型,即通过初始预测模型80f所生成的预测模型,以及通过初始预测模型80h所生成的预测模型,不作为目标预测模型。
其中,通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;根据待更新对象数量以及预测指标值,在测试对象集中选择待测试对象的具体过程,可以参见上文图10中的描述,此处不再一一进行赘述。
结合图3、步骤S202以及步骤S205,请一并参见图12,图12是本申请实施例提供的一种更新对象的流程示意图。如图12所示,步骤1,服务器获取已有的实验参数和采样指标值之后,对采样指标值进行相对化处理,并计算p值,确定显著性,或负向差异性。进入下一步。
步骤2,服务器判断指标是否稳定,在进行对照测试时,固定至少一个实验组(即固定实验组)的实验参数在每次迭代时保持不变,计算固定实验组的采样指标值在不同的迭代时间内,是否稳定,具体的计算方法可以是对最大采样指标值和最小采样指标值做假设检验,如果出现显著差异,则确定针对固定实验组的对象指标集合不稳定,进入步骤4,反之稳定,则进入步骤3。
步骤3,采样指标值稳定,将所有迭代(即所有轮回的对照测试)的采样指标值聚集,从至少两个预选核函数中随机选择一个目标核函数,使用单任务高斯过程回归和单任务贝叶斯优化,来计算下一轮对照测试最值得实验的测试对象。进入步骤5。
步骤4,采样指标值不稳定,将所有轮回中的所有数据(包括测试对象以及采样指标值)按照迭代分组,每次迭代当作一个任务,从至少两个预选核函数中随机选择一个核函数,利用多任务高斯过程回归和多任务贝叶斯优化,使用最后一次迭代的结果来计算下一轮对照测试最值得实验的测试对象。进入步骤5,结束。
步骤S206,将对象指标对集合以及预测对象指标对集合进行聚合处理,得到针对测试对象集的测试结果集。
步骤S207,将测试结果集中的采样指标值以及预测指标值,分别与指标阈值进行对比。
步骤S208,在测试结果集中,将大于指标阈值的采样指标值或预测指标值确定为目标指标值,将目标指标值对应的测试对象确定为目标测试对象,根据目标测试对象生成目标对象集合。
步骤S209,若目标对象集合所指示的集合区间长度小于集合区间长度阈值,则获取对象指标对集合中的最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
具体的,上述步骤S206-步骤S209可以一并参见图10,对象指标对集合的定义请参见上述图3所对应的实施例中步骤S104中的描述,预测对象指标对集合包括预测指标值以及测试对象集中的未测试对象,如图10所示例的动态测试对象409a、预测指标值601a、动态测试对象410a、预测指标值602a、…、动态测试对象451a以及预测指标值643a,服务器将其聚集,生成测试结果集。
服务器将图10所示例的对象指标对集合60c中的采样指标值,以及预测指标值601a、预测指标值602a、…、预测指标值643a分别对指标阈值进行对比,并将大于指标阈值的采样指标值或预测指标值确定为目标指标值,然后将目标指标值对应的测试对象(可以包括已测试的测试对象,也可以包括未测试的测试对象),确定为目标测试对象,进而可以生成目标对象集合。可以理解的是,目标对象集合中的目标测试对象对应的指标值(可能是预测指标值,可能是采样指标值)均为较好的值。
服务器确定目标对象集合的集合区间长度,若目标对象集合所指示的集合区间长度小于集合区间长度阈值,可以确定较好的指标值聚集在一起,认为目标预测模型收敛,则可以在已测试的测试对象中确定最优测试对象,即获取对象指标对集合中的最优测试对象,然后将参照对象更新为最优测试对象。若目标对象集合所指示的集合区间长度等于或大于集合区间长度阈值,可以确定较好的指标值分散性较强,认为目前得到目标预测模型收敛不好,则无法确定最优测试对象。
可选的,若目标对象集合所指示的集合区间长度小于集合区间长度阈值,可以在所有的测试对象中确定最优测试对象,即在未测试对象的预测指标值最大时,可以将该未测试对象确定为最优测试对象。
可选的,若已测试的测试对象a对应的采样指标值,与参照对象对应的采样指标值之间,存在显著差异,且测试对象a对应的采样指标值远远大于参照对象对应的采样指标值,则可以将测试对象a确定为最优测试对象,无需训练初始预测模型。
步骤S210,若目标对象集合所指示的集合区间长度等于或大于集合区间长度阈值,则将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试。
步骤S210的具体过程,可以参见上文图3所对应的实施例中步骤S105的描述,此处不再进行赘述。
在本申请实施例中,针对测试对象集,无需对每一个测试对象同时运行对照测试,而是对少量的测试对象(例如至少两个测试对象)进行轮回对照测试,通过轮回对照测试,可以节省数据运算量,降低空间计算成本;进一步地,在第N轮对照测试中,当确定至少两个测试对象分别对应的采样指标值中满足对象更新条件的采样指标值时,结合测试时长,在动态测试对象中确定待更新对象,且通过待更新对象进行下一轮对照测试的方式,可以避免明显不达标的测试对象无意义的保持对照测试,即可避免所有测试对象都同时进行对照测试,不仅减少了计算资源,也减少了大量无意义的实验,提高了整体的实验测试效率;进一步地,通过固定测试对象在每一轮对照测试内的采样指标值,可以针对性地确定对象优化算法,进而可以根据恰当的对象优化算法,在测试对象集中选择更合适的待测试对象,避免对采样指标值可能不佳的未测试对象进行对照测试,进一步减少了无意义的实验次数,进而可以提高多轮对照测试的效率。
进一步地,请参见图13,图13是本申请实施例提供的一种数据处理装置的结构示意图。上述数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图13所示,该数据处理装置1可以包括:第一获取模块11、第一确定模块12以及第二确定模块13。
第一获取模块11,用于在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集;
第一确定模块12,用于当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象;
第一确定模块12,还用于根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法;
第一确定模块12,还用于根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同;
第二确定模块13,用于将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试,直至在测试对象集中确定最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
其中,第一获取模块11、第一确定模块12以及第二确定模块13的具体功能实现方式可以参见上述图3对应实施例中的步骤S101-步骤S105,这里不再进行赘述。
再请参见图13,数据处理装置1还可以包括:第三确定模块14。
第三确定模块14,用于若测试时长小于指标防护关闭时长,则确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;
第三确定模块14,还用于若测试时长等于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;最大更新对象时长大于指标防护关闭时长。
其中,第三确定模块14的具体功能实现方式可以参见上述图3对应实施例中的步骤S102,这里不再进行赘述。
再请参见图13,数据处理装置1还可以包括:第四确定模块15。
第一获取模块11,还用于在第N轮对照测试中,获取参照对象对应的采样指标值;参照对象为对象组件所指示的对象;
第三确定模块14,还用于若测试时长等于或大于指标防护关闭时长,且测试时长小于最大更新对象时长,则确定至少两个测试对象分别对应的采样指标值的指标完整度,以及参照对象对应的采样指标值的指标完整度;最大更新对象时长大于指标防护关闭时长;
第四确定模块15,用于当至少两个测试对象或参照对象中存在小于指标完整度阈值的指标完整度时,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件;
第四确定模块15,还用于当至少两个测试对象以及参照对象分别对应的指标完整度均等于或大于指标完整度阈值时,根据测试时长,确定至少两个测试对象分别对应的采样指标值与对象更新条件之间的满足关系。
其中,第四确定模块15的具体功能实现方式可以参见上述图3对应实施例中的步骤S102,这里不再进行赘述。
再请参见图13,第四确定模块15可以包括:第一确定单元151以及第二确定单元152。
第一确定单元151,用于若测试时长小于最小更新对象时长,则确定动态测试对象对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系,根据第一差异关系,确定动态测试对象对应的采样指标值与对象更新条件之间的满足关系;最小更新对象时长大于指标防护关闭时长,且最小更新对象时长小于最大更新对象时长;
第二确定单元152,用于若测试时长等于或大于最小更新对象时长,则确定至少两个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系,根据第二差异关系,确定至少两个测试对象分别对应的采样指标值,与对象更新条件之间的满足关系。
其中,第一确定单元151以及第二确定单元152的具体功能实现方式可以参见上述图6对应实施例中的步骤S202,这里不再进行赘述。
再请参见图13,所述至少两个测试对象中的动态测试对象包括动态测试对象Di,i为正整数且i小于或等于所述动态测试对象的对象总数量;
第一确定单元151可以包括:第一处理子单元1511、第一确定子单元1512以及第二确定子单元1513。
第一处理子单元1511,用于将动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;
第一确定子单元1512,用于若差异值小于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为负向差异关系,根据负向差异关系,确定动态测试对象Di对应的采样指标值满足对象更新条件;
第二确定子单元1513,用于若差异值等于或大于负向差异阈值,则确定动态测试对象Di对应的采样指标值,与参照对象对应的采样指标值之间的第一差异关系为非负向差异关系,根据非负向差异关系,确定动态测试对象Di对应的采样指标值不满足对象更新条件。
其中,第一处理子单元1511、第一确定子单元1512以及第二确定子单元1513的具体功能实现方式可以参见上述图6对应实施例中的步骤S202,这里不再进行赘述。
再请参见图13,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
第二确定单元152可以包括:第二处理子单元1521、第三确定子单元1522以及第四确定子单元1523。
第二处理子单元1521,用于将测试对象Cj对应的采样指标值,与参照对象对应的采样指标值进行相减,得到差异值;
第三确定子单元1522,用于若差异值小于负向差异阈值,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为负向差异关系,根据负向差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;
第四确定子单元1523,用于若每个测试对象分别对应的差异值均等于或大于负向差异阈值,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非负向差异关系,根据非负向差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
其中,第二处理子单元1521、第三确定子单元1522以及第四确定子单元1523的具体功能实现方式可以参见上述图6对应实施例中的步骤S202,这里不再进行赘述。
再请参见图13,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
第二确定单元152可以包括:第三处理子单元1524、第五确定子单元1525以及第六确定子单元1526。
第三处理子单元1524,用于对参照对象对应的采样指标值,以及测试对象Cj对应的采样指标值进行差异检验处理,得到测试对象Cj对应的第一检验结果;
第五确定子单元1525,用于若测试对象Cj对应的第一检验结果为指标显著差异结果,则确定测试对象Cj对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系为显著差异关系,根据显著差异关系,确定至少两个测试对象分别对应的采样指标值均满足对象更新条件;
第六确定子单元1526,用于若每个测试对象分别对应的第一检验结果均为指标非显著差异结果,则确定每个测试对象分别对应的采样指标值,与参照对象对应的采样指标值之间的第二差异关系均为非显著差异关系,根据非显著差异关系,确定至少两个测试对象分别对应的采样指标值均不满足对象更新条件。
其中,第三处理子单元1524、第五确定子单元1525以及第六确定子单元1526的具体功能实现方式可以参见上述图6对应实施例中的步骤S202,这里不再进行赘述。
再请参见图13,第一确定模块12可以包括:第三确定单元121以及第四确定单元122。
第三确定单元121,用于若测试时长等于或大于最小更新对象时长,则将至少两个测试对象中的动态测试对象均确定为待更新对象;
第四确定单元122,用于若测试时长等于或大于指标防护关闭时长,且小于最小更新对象时长,则将满足对象更新条件的采样指标值确定为待更新指标值;
第四确定单元122,还用于在动态测试对象中,将待更新指标值所属的动态测试对象确定为待更新对象。
其中,第三确定单元121以及第四确定单元122的具体功能实现方式可以参见上述图3对应实施例中的步骤S102,这里不再进行赘述。
再请参见图13,第一确定模块12可以包括:第一获取单元123以及第五确定单元124。
第一获取单元123,用于在采样指标值集合中,获取最大采样指标值以及最小采样指标值;采样指标值集合包括固定测试对象在每一轮对照测试内的采样指标值;
第一获取单元123,还用于对最大采样指标值以及最小采样指标值进行差异检验处理,得到第二检验结果;
第五确定单元124,用于根据第二检验结果,确定采样指标值集合中的采样指标值的指标状态,根据指标状态,确定针对动态测试对象的对象优化算法。
其中,第一获取单元123以及第五确定单元124的具体功能实现方式可以参见上述图3对应实施例中的步骤S103,这里不再进行赘述。
再请参见图13,对象优化算法包括单任务对象优化算法以及多任务对象优化算法;
第五确定单元124,具体用于若第二检验结果为指标显著差异结果,则确定采样指标值集合中的采样指标值的指标状态为指标变化状态,根据指标变化状态,确定针对动态测试对象的对象优化算法为多任务对象优化算法;
第五确定单元124,还具体用于若第二检验结果为指标非显著差异结果,则确定指标状态为指标稳定状态,根据指标稳定状态,确定对象优化算法为单任务对象优化算法。
其中,第五确定单元124的具体功能实现方式可以参见上述图3对应实施例中的步骤S103,这里不再进行赘述。
再请参见图13,第一确定模块12可以包括:第二获取单元125以及第六确定单元126。
第二获取单元125,用于获取至少两个预选核函数;至少两个预选核函数分别对应的函数类型互不相同;
第六确定单元126,用于若对象优化算法为单任务对象优化算法,则从至少两个预选核函数中确定目标核函数;
第六确定单元126,还用于根据对象指标对集合以及目标核函数,对用于选择测试对象的初始预测模型进行训练,得到目标预测模型;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
第六确定单元126,还用于通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;
第六确定单元126,还用于根据待更新对象的数量以及预测指标值,在测试对象集中选择待测试对象。
其中,第二获取单元125以及第六确定单元126的具体功能实现方式可以参见上述图6对应实施例中的步骤S204,这里不再进行赘述。
再请参见图13,第一确定模块12可以包括:第三获取单元127以及第七确定单元128。
第三获取单元127,用于获取至少两个预选核函数;至少两个预选核函数分别对应的函数类型互不相同;
第七确定单元128,用于若对象优化算法为多任务对象优化算法,则将对象指标对集合中处于同一轮对照测试内的对象指标对进行聚合处理,生成N个对象指标对子集合;对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
第七确定单元128,还用于在至少两个预选核函数中,确定 N个对象指标对子集合分别对应的目标核函数,得到N个目标核函数;N个对象指标对子集合包括对象指标对子集合Zb,b为正整数且b小于或等于N;
第七确定单元128,还用于根据对象指标对子集合Zb、对象指标对子集合Zb对应的目标核函数,以及剩余对象指标对子集合对应的用于选择测试对象的初始预测模型,对对象指标对子集合Zb对应的用于选择测试对象的初始预测模型进行训练;剩余对象指标对子集合包括,N个对象指标对子集合中除了对象指标对子集合Zb之外的对象指标对子集合;
第七确定单元128,还用于当N个训练后的初始预测模型均处于收敛状态,且对象指标对子集合Zb为第N轮对照测试中的对象指标对子集合时,将对象指标对子集合Zb对应的训练后的初始预测模型,确定为目标预测模型;
第七确定单元128,还用于通过目标预测模型,输出测试对象集中每个未测试对象的预测指标值;
第七确定单元128,还用于根据待更新对象数量以及预测指标值,在测试对象集中选择待测试对象。
其中,第三获取单元127以及第七确定单元128的具体功能实现方式可以参见上述图6对应实施例中的步骤S204,这里不再进行赘述。
再请参见图13,数据处理装置1还可以包括:第一指标模块16、第二指标模块17、第五确定模块18以及第二获取模块19。
第一指标模块16,用于将对象指标对集合以及预测对象指标对集合进行聚合处理,得到针对测试对象集的测试结果集;预测对象指标对集合包括预测指标值以及测试对象集中的未测试对象;
第二指标模块17,用于将测试结果集中的采样指标值以及预测指标值,分别与指标阈值进行对比;
第五确定模块18,用于在测试结果集中,将大于指标阈值的采样指标值或预测指标值确定为目标指标值,将目标指标值对应的测试对象确定为目标测试对象,根据目标测试对象生成目标对象集合;
第二获取模块19,用于若目标对象集合所指示的集合区间长度小于集合区间长度阈值,则获取对象指标对集合中的最优测试对象,执行根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化的步骤;
第二确定模块13,用于若目标对象集合所指示的集合区间长度等于或大于集合区间长度阈值,则执行将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试的步骤。
其中,第一指标模块16、第二指标模块17、第五确定模块18以及第二获取模块19的具体功能实现方式可以参见上述图6对应实施例中的步骤S206-步骤S210,这里不再进行赘述。
在本申请实施例中,针对测试对象集,无需对每一个测试对象同时运行对照测试,而是对少量的测试对象(例如至少两个测试对象)进行轮回对照测试,通过轮回对照测试,可以节省数据运算量,降低空间计算成本;进一步地,在第N轮对照测试中,当确定至少两个测试对象分别对应的采样指标值中满足对象更新条件的采样指标值时,结合测试时长,在动态测试对象中确定待更新对象,且通过待更新对象进行下一轮对照测试的方式,可以避免明显不达标的测试对象无意义的保持对照测试,即可避免所有测试对象都同时进行对照测试,不仅减少了计算资源,也减少了大量无意义的实验,提高了整体的实验测试效率;进一步地,通过固定测试对象在每一轮对照测试内的采样指标值,可以针对性地确定对象优化算法,进而可以根据恰当的对象优化算法,在测试对象集中选择更合适的待测试对象,避免对采样指标值可能不佳的未测试对象进行对照测试,进一步减少了无意义的实验次数,进而可以提高多轮对照测试的效率。进一步地,请参见图14,图14是本申请实施例提供的一种计算机设备的结构示意图。如图14所示,该计算机设备1000可以为上述图3对应实施例中的服务器,该计算机设备1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),网络接口1004可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选地还可以是至少一个位于远离前述处理器1001的存储装置。如图14所示,作为一种计算机存储介质的存储器1005可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图14所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及至少两个测试对象分别对应的采样指标值;至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;至少两个测试对象属于测试对象集;
当至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据测试时长在动态测试对象中确定待更新对象;
根据固定测试对象在每一轮对照测试内的采样指标值,确定针对动态测试对象的对象优化算法;
根据对象优化算法以及待更新对象,在测试对象集中获取待测试对象;待测试对象与每一轮对照测试内的测试对象不相同;
将至少两个测试对象中的待更新对象更新为待测试对象,得到更新后的至少两个测试对象,对更新后的至少两个测试对象开启第N+1轮对照测试,直至在测试对象集中确定最优测试对象,根据最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3、图6、图9以及图12所对应实施例中对数据处理方法的描述,也可执行前文图13所对应实施例中对数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图3、图6、图9以及图12中各个步骤所提供的数据处理方法,具体可参见上述图3、图6、图9以及图12各个步骤所提供的实现方式,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备可执行前文图3、图6、图9以及图12所对应实施例中对数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (15)
1.一种数据处理方法,其特征在于,包括:
在第N轮对照测试中,获取针对至少两个测试对象的测试时长,以及所述至少两个测试对象分别对应的采样指标值;所述至少两个测试对象包括动态测试对象以及固定测试对象;N为正整数;所述至少两个测试对象属于测试对象集;
当所述至少两个测试对象分别对应的采样指标值中存在满足对象更新条件的采样指标值时,根据所述测试时长在所述动态测试对象中确定待更新对象;
根据所述固定测试对象在每一轮对照测试内的采样指标值,确定针对所述动态测试对象的对象优化算法;
根据所述对象优化算法以及所述待更新对象,在所述测试对象集中获取待测试对象;所述待测试对象与每一轮对照测试内的测试对象不相同;
将所述至少两个测试对象中的所述待更新对象更新为所述待测试对象,得到更新后的至少两个测试对象,对所述更新后的至少两个测试对象开启第N+1轮对照测试,直至在所述测试对象集中确定最优测试对象,根据所述最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述测试时长小于指标防护关闭时长,则确定所述至少两个测试对象分别对应的采样指标值均不满足所述对象更新条件;
若所述测试时长等于最大更新对象时长,则确定所述至少两个测试对象分别对应的采样指标值均满足所述对象更新条件;所述最大更新对象时长大于所述指标防护关闭时长。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第N轮对照测试中,获取参照对象对应的采样指标值;所述参照对象为所述对象组件所指示的对象;
若所述测试时长等于或大于指标防护关闭时长,且所述测试时长小于最大更新对象时长,则确定所述至少两个测试对象分别对应的采样指标值的指标完整度,以及所述参照对象对应的采样指标值的指标完整度;所述最大更新对象时长大于所述指标防护关闭时长;
当所述至少两个测试对象或所述参照对象中存在小于指标完整度阈值的指标完整度时,确定所述至少两个测试对象分别对应的采样指标值均不满足所述对象更新条件;
当所述至少两个测试对象以及所述参照对象分别对应的指标完整度均等于或大于所述指标完整度阈值时,根据所述测试时长,确定所述至少两个测试对象分别对应的采样指标值与所述对象更新条件之间的满足关系。
4.根据权利要求3所述的方法,其特征在于,所述根据所述测试时长,确定所述至少两个测试对象分别对应的采样指标值与所述对象更新条件之间的满足关系,包括:
若所述测试时长小于最小更新对象时长,则确定所述动态测试对象对应的采样指标值,与所述参照对象对应的采样指标值之间的第一差异关系,根据所述第一差异关系,确定所述动态测试对象对应的采样指标值与所述对象更新条件之间的满足关系;所述最小更新对象时长大于所述指标防护关闭时长,且所述最小更新对象时长小于所述最大更新对象时长;
若所述测试时长等于或大于所述最小更新对象时长,则确定所述至少两个测试对象分别对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系,根据所述第二差异关系,确定所述至少两个测试对象分别对应的采样指标值,与所述对象更新条件之间的满足关系。
5.根据权利要求4所述的方法,其特征在于,所述至少两个测试对象中的动态测试对象包括动态测试对象Di,i为正整数且i小于或等于所述动态测试对象的对象总数量;
所述确定所述动态测试对象对应的采样指标值,与所述参照对象对应的采样指标值之间的第一差异关系,根据所述第一差异关系,确定所述动态测试对象对应的采样指标值与所述对象更新条件之间的满足关系,包括:
将所述动态测试对象Di对应的采样指标值,与所述参照对象对应的采样指标值进行相减,得到差异值;
若所述差异值小于负向差异阈值,则确定所述动态测试对象Di对应的采样指标值,与所述参照对象对应的采样指标值之间的第一差异关系为负向差异关系,根据所述负向差异关系,确定所述动态测试对象Di对应的采样指标值满足所述对象更新条件;
若所述差异值等于或大于所述负向差异阈值,则确定所述动态测试对象Di对应的采样指标值,与所述参照对象对应的采样指标值之间的第一差异关系为非负向差异关系,根据所述非负向差异关系,确定所述动态测试对象Di对应的采样指标值不满足所述对象更新条件。
6.根据权利要求4所述的方法,其特征在于,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
所述确定所述至少两个测试对象分别对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系,根据所述第二差异关系,确定所述至少两个测试对象分别对应的采样指标值,与所述对象更新条件之间的满足关系,包括:
将所述测试对象Cj对应的采样指标值,与所述参照对象对应的采样指标值进行相减,得到差异值;
若所述差异值小于负向差异阈值,则确定所述测试对象Cj对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系为负向差异关系,根据所述负向差异关系,确定所述至少两个测试对象分别对应的采样指标值均满足所述对象更新条件;
若每个测试对象分别对应的差异值均等于或大于所述负向差异阈值,则确定所述每个测试对象分别对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系均为非负向差异关系,根据所述非负向差异关系,确定所述至少两个测试对象分别对应的采样指标值均不满足所述对象更新条件。
7.根据权利要求4所述的方法,其特征在于,所述至少两个测试对象包括测试对象Cj,j为正整数且j小于或等于所述至少两个测试对象的对象总数量;
所述确定所述至少两个测试对象分别对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系,根据所述第二差异关系,确定所述至少两个测试对象分别对应的采样指标值,与所述对象更新条件之间的满足关系,包括:
对所述参照对象对应的采样指标值,以及所述测试对象Cj对应的采样指标值进行差异检验处理,得到所述测试对象Cj对应的第一检验结果;
若所述测试对象Cj对应的第一检验结果为指标显著差异结果,则确定所述测试对象Cj对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系为显著差异关系,根据所述显著差异关系,确定所述至少两个测试对象分别对应的采样指标值均满足所述对象更新条件;
若每个测试对象分别对应的第一检验结果均为指标非显著差异结果,则确定所述每个测试对象分别对应的采样指标值,与所述参照对象对应的采样指标值之间的第二差异关系均为非显著差异关系,根据所述非显著差异关系,确定所述至少两个测试对象分别对应的采样指标值均不满足所述对象更新条件。
8.根据权利要求1所述的方法,其特征在于,所述根据所述测试时长在所述动态测试对象中确定待更新对象,包括:
若所述测试时长等于或大于最小更新对象时长,则将所述至少两个测试对象中的动态测试对象均确定为所述待更新对象;
若所述测试时长等于或大于指标防护关闭时长,且小于所述最小更新对象时长,则将满足所述对象更新条件的采样指标值确定为待更新指标值;
在所述动态测试对象中,将所述待更新指标值所属的动态测试对象确定为所述待更新对象。
9.根据权利要求1所述的方法,其特征在于,所述根据所述固定测试对象在每一轮对照测试内的采样指标值,确定针对所述动态测试对象的对象优化算法,包括:
在采样指标值集合中,获取最大采样指标值以及最小采样指标值;所述采样指标值集合包括所述固定测试对象在每一轮对照测试内的采样指标值;
对所述最大采样指标值以及所述最小采样指标值进行差异检验处理,得到第二检验结果;
根据所述第二检验结果,确定所述采样指标值集合中的采样指标值的指标状态,根据所述指标状态,确定针对所述动态测试对象的所述对象优化算法。
10.根据权利要求9所述的方法,其特征在于,所述对象优化算法包括单任务对象优化算法以及多任务对象优化算法;
所述根据所述第二检验结果,确定所述采样指标值集合中的采样指标值的指标状态,根据所述指标状态,确定针对所述动态测试对象的所述对象优化算法,包括:
若所述第二检验结果为指标显著差异结果,则确定所述采样指标值集合中的采样指标值的指标状态为指标变化状态,根据所述指标变化状态,确定针对所述动态测试对象的所述对象优化算法为所述多任务对象优化算法;
若所述第二检验结果为指标非显著差异结果,则确定所述指标状态为指标稳定状态,根据所述指标稳定状态,确定所述对象优化算法为所述单任务对象优化算法。
11.根据权利要求10所述的方法,其特征在于,所述根据所述对象优化算法以及所述待更新对象,在所述测试对象集中获取待测试对象,包括:
获取至少两个预选核函数;所述至少两个预选核函数分别对应的函数类型互不相同;
若所述对象优化算法为所述单任务对象优化算法,则从所述至少两个预选核函数中确定目标核函数;
根据对象指标对集合以及所述目标核函数,对用于选择测试对象的初始预测模型进行训练,得到目标预测模型;所述对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
通过所述目标预测模型,输出所述测试对象集中每个未测试对象的预测指标值;
根据所述待更新对象的数量以及所述预测指标值,在所述测试对象集中选择所述待测试对象。
12.根据权利要求10所述的方法,其特征在于,所述根据所述对象优化算法以及所述待更新对象,在所述测试对象集中获取待测试对象,包括:
获取至少两个预选核函数;所述至少两个预选核函数分别对应的函数类型互不相同;
若所述对象优化算法为所述多任务对象优化算法,则将对象指标对集合中处于同一轮对照测试内的对象指标对进行聚合处理,生成N个对象指标对子集合;所述对象指标对集合包括每一轮对照测试内的测试对象,以及每一轮对照测试内的采样指标值;
在所述至少两个预选核函数中,确定所述 N个对象指标对子集合分别对应的目标核函数,得到N个目标核函数;所述N个对象指标对子集合包括对象指标对子集合Zb,b为正整数且b小于或等于N;
根据所述对象指标对子集合Zb、所述对象指标对子集合Zb对应的目标核函数,以及剩余对象指标对子集合对应的用于选择测试对象的初始预测模型,对所述对象指标对子集合Zb对应的用于选择测试对象的初始预测模型进行训练;所述剩余对象指标对子集合包括,所述N个对象指标对子集合中除了所述对象指标对子集合Zb之外的对象指标对子集合;
当N个训练后的初始预测模型均处于收敛状态,且所述对象指标对子集合Zb为所述第N轮对照测试中的对象指标对子集合时,将所述对象指标对子集合Zb对应的训练后的初始预测模型,确定为目标预测模型;
通过所述目标预测模型,输出所述测试对象集中每个未测试对象的预测指标值;
根据所述待更新对象数量以及所述预测指标值,在所述测试对象集中选择所述待测试对象。
13.根据权利要求11或12所述的方法,其特征在于,所述方法还包括:
将所述对象指标对集合以及预测对象指标对集合进行聚合处理,得到针对所述测试对象集的测试结果集;所述预测对象指标对集合包括所述预测指标值以及所述测试对象集中的未测试对象;
将所述测试结果集中的采样指标值以及所述预测指标值,分别与指标阈值进行对比;
在所述测试结果集中,将大于所述指标阈值的采样指标值或预测指标值确定为目标指标值,将所述目标指标值对应的测试对象确定为目标测试对象,根据所述目标测试对象生成目标对象集合;
若所述目标对象集合所指示的集合区间长度小于集合区间长度阈值,则获取所述对象指标对集合中的最优测试对象,执行所述根据所述最优测试对象,对用户业务页面中的对象组件所指示的对象进行优化的步骤;
若所述目标对象集合所指示的集合区间长度等于或大于所述集合区间长度阈值,则执行所述将所述至少两个测试对象中的所述待更新对象更新为所述待测试对象,得到更新后的至少两个测试对象,对所述更新后的至少两个测试对象开启第N+1轮对照测试的步骤。
14.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1至13任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110385354.2A CN112799971B (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法、设备以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110385354.2A CN112799971B (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法、设备以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112799971A CN112799971A (zh) | 2021-05-14 |
CN112799971B true CN112799971B (zh) | 2021-06-22 |
Family
ID=75816709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110385354.2A Active CN112799971B (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法、设备以及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112799971B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254882A (zh) * | 2021-06-07 | 2021-08-13 | 广州市百果园网络科技有限公司 | 实验结果的确定方法、装置、设备及存储介质 |
CN113448876B (zh) * | 2021-08-31 | 2021-11-19 | 腾讯科技(深圳)有限公司 | 一种业务测试方法、装置、计算机设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077348A (zh) * | 2012-12-28 | 2013-05-01 | 华为技术有限公司 | 一种Web站点漏洞扫描方法和装置 |
CN109376075A (zh) * | 2018-09-19 | 2019-02-22 | 北京奇安信科技有限公司 | 一种生成测试对象最优测试覆盖路径的处理方法及装置 |
US10534690B1 (en) * | 2017-04-27 | 2020-01-14 | Intuit, Inc. | Concurrent quality testing by broadcasting user events |
JP2020181509A (ja) * | 2019-04-26 | 2020-11-05 | 日本電気株式会社 | テストコード生成装置、テストコード生成方法およびプログラム |
CN112148582A (zh) * | 2019-06-27 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 策略测试方法及装置、计算机可读介质和电子设备 |
CN112346962A (zh) * | 2019-08-09 | 2021-02-09 | 腾讯科技(深圳)有限公司 | 一种应用于对照测试系统中的对照数据测试方法及装置 |
CN112579426A (zh) * | 2019-09-29 | 2021-03-30 | 初速度(苏州)科技有限公司 | 一种对待测试对象的测试方法及装置 |
-
2021
- 2021-04-09 CN CN202110385354.2A patent/CN112799971B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077348A (zh) * | 2012-12-28 | 2013-05-01 | 华为技术有限公司 | 一种Web站点漏洞扫描方法和装置 |
US10534690B1 (en) * | 2017-04-27 | 2020-01-14 | Intuit, Inc. | Concurrent quality testing by broadcasting user events |
CN109376075A (zh) * | 2018-09-19 | 2019-02-22 | 北京奇安信科技有限公司 | 一种生成测试对象最优测试覆盖路径的处理方法及装置 |
JP2020181509A (ja) * | 2019-04-26 | 2020-11-05 | 日本電気株式会社 | テストコード生成装置、テストコード生成方法およびプログラム |
CN112148582A (zh) * | 2019-06-27 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 策略测试方法及装置、计算机可读介质和电子设备 |
CN112346962A (zh) * | 2019-08-09 | 2021-02-09 | 腾讯科技(深圳)有限公司 | 一种应用于对照测试系统中的对照数据测试方法及装置 |
CN112579426A (zh) * | 2019-09-29 | 2021-03-30 | 初速度(苏州)科技有限公司 | 一种对待测试对象的测试方法及装置 |
Non-Patent Citations (1)
Title |
---|
一文看懂AB测试;Nemo;《https://zhuanlan.zhihu.com/p/108916194》;20200313;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112799971A (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112799971B (zh) | 一种数据处理方法、设备以及计算机可读存储介质 | |
US10963292B2 (en) | Techniques to manage virtual classes for statistical tests | |
CN107844837B (zh) | 针对机器学习算法进行算法参数调优的方法及系统 | |
US10013333B2 (en) | Scalable continuous integration and delivery systems and methods | |
CN104317749B (zh) | 信息写入方法和装置 | |
US11379723B2 (en) | Method and apparatus for compressing neural network | |
Izzah et al. | Mobile app for stock prediction using Improved Multiple Linear Regression | |
KR20190117713A (ko) | 신경망 아키텍처 최적화 | |
US11341415B2 (en) | Method and apparatus for compressing neural network | |
CN109858828B (zh) | 一种配电网定值自动整定方法、装置及配网系统 | |
Xie et al. | Real-time prediction of docker container resource load based on a hybrid model of ARIMA and triple exponential smoothing | |
Zeng et al. | Mercury: Efficient on-device distributed dnn training via stochastic importance sampling | |
US11163540B2 (en) | Application program for extension and deployment of integrated and exportable cross platform digital twin model | |
CN114492742A (zh) | 神经网络结构搜索、模型发布方法、电子设备和存储介质 | |
Crone et al. | Feature selection of autoregressive neural network inputs for trend time series forecasting | |
US20220215241A1 (en) | Method and system for microarchitecture-aware program sampling | |
US11526828B2 (en) | Calculating developer time during development process | |
US20220164659A1 (en) | Deep Learning Error Minimizing System for Real-Time Generation of Big Data Analysis Models for Mobile App Users and Controlling Method for the Same | |
Xiao et al. | Enhanced-XGB: An Online Service Resource Demand Forecasting Method for Colocation Data Centers | |
Meskini | Reliability Models Applied to Smartphone Applications | |
CN107392257B (zh) | 操作序列的获取方法、装置、存储介质、处理器和服务端 | |
Khomonenko et al. | Nonstationary software testing models with cox distribution for fault resolution duration | |
CN114841664A (zh) | 一种多任务处理顺序确定方法及装置 | |
Khairin et al. | Analysis of The Impact of Software Detailed Design on Mobile Application Performance Metrics | |
CN112733433A (zh) | 装备测试性策略优化方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40044522 Country of ref document: HK |