CN115391184A - 一种ab测试的方法、装置及设备 - Google Patents
一种ab测试的方法、装置及设备 Download PDFInfo
- Publication number
- CN115391184A CN115391184A CN202210953107.2A CN202210953107A CN115391184A CN 115391184 A CN115391184 A CN 115391184A CN 202210953107 A CN202210953107 A CN 202210953107A CN 115391184 A CN115391184 A CN 115391184A
- Authority
- CN
- China
- Prior art keywords
- group
- flow
- test
- subgroup
- flows
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种AB测试的方法、装置、设备以及存储介质,涉及计算机技术领域,尤其涉及计算机测试技术领域。具体实现方案为:将流量随机划分为A组流量和B组流量,A组流量与B组流量等量;将A组流量随机等量划分为至少两个子组流量;将B组流量随机等量划分为至少两个子组流量,B组流量的每一子组流量与A组流量的每一子组流量等量;对子组流量进行排列组合得到至少四对子组流量;使用至少四对子组流量,进行多次对比测试,得到AB测试结果。使用上述方法进行AB测试所得到的AB测试结果,与使用一对组流量进行AB测试所得到的测试结果相比,更稳定、更可靠。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及计算机测试技术领域。
背景技术
AB测试是互联网企业用于实验数据分析、精细化运营、产品策略推广的主要工具,通过随机抽样将流量划分为对照组A和实验组B两个组,分别进行假设检验,然后评估两组之间指标的差异。
发明内容
本公开提供了一种AB测试的方法、装置、设备以及存储介质。
根据本公开的一方面,提供了一种AB测试的方法,包括:将流量随机划分为A组流量和B组流量,A组流量与B组流量等量;将A组流量随机等量划分为至少两个子组流量;将B组流量随机等量划分为至少两个子组流量,B组流量的每一子组流量与A组流量的每一子组流量等量;对子组流量进行排列组合得到至少四对子组流量;使用至少四对子组流量,进行多次对比测试,得到AB测试结果。
根据本公开的另一方面,提供了一种AB测试的装置,包括:流量组划分模块,用于将流量随机划分为A组流量和B组流量,A组流量与B组流量等量;A组流量划分模块,用于将A组流量随机等量划分为至少两个子组流量;B组流量划分模块,用于将B组流量随机等量划分为至少两个子组流量,B组流量的每一子组流量与A组流量的每一子组流量等量;子组流量配对模块,用于对子组流量进行排列组合得到至少四对子组流量;AB测试模块,用于使用至少四对子组流量,进行多次对比测试,得到AB测试结果。
根据本公开的另一方面,提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述AB测试的方法。
根据本公开的另一方面,提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行上述AB测试的方法。
根据本公开的另一方面,提供一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述AB测试的方法。
本公开提供的AB测试的方法、装置、设备以及存储介质,通过对A组流量和B组流量进行细分得到多个子组流量,由多个子组流量交叉配对得到多对子组流量,并使用多对子组流量进行多次对比测试得到AB测试结果。与使用一对组流量进行AB测试所得到的测试结果相比,使用上述方法进行AB测试所得到的测试结果更稳定、更可靠。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开第一实施例实现AB测试的方法的流程示意图;
图2是本公开第二实施例对流量进行分组的示意图;
图3是本公开第二实施例实现AB测试的方法的流程示意图;
图4是本公开第三实施例实现AB测试的方法的流程示意图;
图5是本公开第四实施例实现P值修正的流程示意图;
图6是本公开实施例AB测试的装置的结构示意图;
图7是用来实现本公开实施例的AB测试的方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本公开中AB测试又称作AB实验,指可以切出一部分流量(用户),随机的分成两组,一组保持现有的策略叫对照组A,另外一组使用改进的策略叫实验组B,使用统计的方法对两组之间指标差异进行分析,评估是否符合预期的一种方法。
图1示出了本公开一实施例实现AB测试的方法的流程,如图1所示,包括:
操作S110,将流量随机划分为A组流量和B组流量,A组流量与B组流量等量;
其中,对于上线的网络产品来说,流量主要指在一定时间内访问产品的用户;对于算法或数据实验来说,流量主要指用于执行算法或进行数据计算的输入数据。
A组流量为AB测试的对照组测试所使用的流量,B组流量为实验组测试所使用的流量。
在进行流量划分时,随机划分,是为了确保A组流量和B组流量同质,即A组流量和B组流量内的流量具有相近的分布或特点。
只有确保A组流量和B组流量等量同质,才能使得对照组的测试结果与参照组的测试结果具有可比性,也才能使得AB测试的结果成立。
操作S120,将A组流量随机等量划分为至少两个子组流量;
其中,A组流量的至少两个子组流量中的每一子组流量都是对A组流量进行随机划分得到的,而且各个子组流量等量。
A组流量可至少随机划分为两个子组流量,也可以划分为三组或三组以上的子组。子组的数量越多,AB测试的稳定性和可靠性更高,但后续假设的检验量和数据计算量会成倍甚至呈指数级增长。实施者可根据具体实施需要、实施条件和实施效果灵活确定。
操作S130,将B组流量随机等量划分为至少两个子组流量,B组流量的每一子组流量与A组流量的每一子组流量等量;
其中,B组流量的至少两个子组流量中的每一子组流量都是对B组流量进行随机划分得到的,而且各个子组流量等量。
B组流量所划分的子组流量的数量与A组流量所划分的子组流量的数量相同;B组流量所划分的每个子组流量与A组流量所划分的每个子组流量也是等量的。
如此,可将B组流量所划分的每个子组流量与A组流量所划分的每个子组流量进行排列组合,形成多对可分别用于对照组测试和实验组测试的子组流量。
操作S140,对子组流量进行排列组合得到至少四对子组流量;
由于A组流量和B组流量是等量同质的;B组流量所划分的子组流量的数量与A组流量所划分的子组流量的数量相同;各个子组流量等量;故而,B组流量所划分的子组流量的数量与A组流量所划分的子组流量彼此之间也是等量同质的,任意两个子组流量都可以成为一对子组流量,可分别用于对照组测试和实验组测试。
由于A组流量被划分为至少两个子组流量,B组流量也被划分为至少两个子组流量,以供四个子组流量,对四个子组流量中的每两个子组流量进行排列组合,可得到至少四对子组流量。
例如,将A组流量分为第一子组流量和第二子组流量,将A组流量分为第三子组流量和第四子组流量,则至少可以得到如下四对子组流量:
第一子组流量与第三子组流量;
第一子组流量与第四子组流量;
第二子组流量与第三子组流量;
第二子组流量与第四子组流量。
操作S150,使用至少四对子组流量,进行多次对比测试,得到AB测试结果。
在实际应用时,可使用每一对子组流量进行一次对比测试,得到多个对比测试结果,之后再根据多个对比测试结果确定AB测试结果。
在根据多个对比测试结果确定AB测试结果时,可根据实施需要和实施效果设置相应的策略或规则,例如,只要有一个测试结果为效果改进“显著”则将AB测试结果设定为效果改进“显著”;或者,只有超过半数的测试结果为效果改进“显著”,才将AB测试结果设定为效果改进“显著”等。
在实际应用中,AB测试通常是通过假设和假设检验来实现的,因此,此处的多次对比测试实际上是基于每一对子组流量进行一个假设检验的多重假设检验,之后可根据多重检验的结果来确定AB测试结果。
其中,多重假设检验指将多个单重的假设检验作为一个整体,也称为一个检验族(Family-wise),然后对这个检验族中的每个假设同时进行检验得到最终的一个检验结果。
而在本公开实施例中,对A组流量和B组流量进行了二次分流,用使用子组流量进行交叉配对形成多对子组流量,进行了多次对比测试(多重假设检验),有多个测试结果可参考,如此得到的AB测试结果,比起只使用一对流量:A组流量和B组流量得到的AB测试结果,更为稳定和可靠,大大减少了AB测试的随机性和偶然性。
图2示出了本公开另一实施例对流量进行分组的具体实现。该实施例通过抽样平台201执行“发起抽样”的操作,然后将该操作请求发送至抽样引擎202;抽样引擎202接收到“发起抽样”的操作请求后,执行数据抽样(也就是流量划分)的操作,并将抽样结果:A组数据和B组数据返回给抽样平台201;抽样平台201获取抽样结果后,将抽样结果显示给发起抽样的用户。
在图2所述的本公开实施例中,抽样引擎202在执行数据抽样时,会:一方面,随机从流量中抽取10%作为A组数据;另一方面,随机从流量中抽取10%作为B组数据;之后,从A组数据中随机抽取5%的数据作为A1子组数据,剩下5%的数据作为A2子组数据;从B组数据中随机抽取5%的数据作为B1子组数据,剩下5%的数据作为B2子组数据。
其中,A1子组流量和A2子组流量分别为A组流量的子集,且A1子组流量和A2子组流量之间没有交集。B1子组流量和B2子组流量分别为B组流量的子集,且B1子组流量和B2子组流量之间没有交集。
而上述数据和分组之间的映射关系(例如,数据1属于A组中的A1组)会写入数据库,用于后续的指标数据计算。
在图2所示的实施例中,将A组数据划分为A1子组数据和A2子组数据,以及将B组数据划分为B1子组数据和B2子组数据都是在抽样引擎202中进行的,并不影响抽样平台201的操作和呈现。如此,只需在抽样引擎202增加对A组数据和B组数据的二次抽样的操作即可实现本公开AB测试方法,而无须改动应用层的流程或操作。如此,可以较小的代价实现AB测试结果的改进。
图3示出了本公开图2所示实施例实现AB测试的方法的流程,如图3所示,包括:
操作S310,将数据随机划分为A组数据和B组数据;
操作S320,将A组数据随机等量划分为两个子组数据:A1子组数据和A2子组数据;
操作S330,将B组数据随机等量划分为两个子组数据:B1子组数据和B2子组数据;
其中,关于操作S310至S330中如何划分数据的细节,请参照图2及相关描述,在此不再赘述。
操作S340,对子组数据进行排列组合得到六对子组数据:A1A2,B1B2,A1B1,A1B2,A2B1和A2B2;
在本公开实施例中,对子组数据进行排列组合时,除了保留原有的AB分组,使A组的数据尽量用于对照组的测试,使B最的数据尽量用于实验组的数据之外,还增加了两对子组数据:A1A2和B1B2。一方面,可将A2子组数据作为B组数据的补充,B1子组数据作为A组数据的补充,增加测试的场景;另一方面,也可以通过上述配对检验,来检测A1和A2之间的同质性,以及B1和B2之间的同质性,从而确保实验是有效的,测试结果是可信的。
操作S350,使用六对子组数据,进行多重假设检验,得到AB测试结果;
在本公开实施例中,进行对比测试时,是通过假设检验的方式进行的,而在使用子组数据,进行多次对比测试,得到AB测试结果是通过基于多个子组数据进行多重假设检验得到的。
操作S360,对六对子组数据进行测试有效性检验;
在本公开实施例中,在得到AB测试结果之后,还会进一步进行测试有效性检测。
其中,测试有效性检测主要证明测试所使用的数据有效、策略得当、运行环节无误等。
具体地,在本公开实施例中进行了以下有效性测试:
1)同质性检验;
同质性检验主要为了确保二次划分(例如,将A组数据划分为A1子组数据和A2子组数据;将B组数据划分为B1子组数据和B2子组数据)是否同质(所进行的流量划分是否是随机的),如果不同质,则各对子组流量所得到测试结果不具有可比性,所进行的AB测试无效。
具体地,在本公开实施例中,是通过对A1A2和B1B2这两对子组流量的核心指标进行检验的。如果A1A2或B1B2进行对比测试所得到的核心指标分布不均有异常值,或不同类别之间的指标指差异较大,则可判定实验无效。
故为了进行同质性检验,本公开实施例依照假设检验方法,提出如下假设:
H0:实验有效(满足同质性检验)
H1:实验无效(不满足同质性检验)
该假设为同质性二重检验,通过获取核心指标数据,分别就对照组A1A2、实验组B1B2进行检验,若两组检验均不通过,则认为分流同质,不能拒绝H0,实验有效。具体如下表1所示:
A1A2同质性检验 | B1B2同质性检验 | 测试有效性检验 |
通过 | 通过 | 通过 |
通过 | 不通过 | 不通过 |
不通过 | 通过 | 不通过 |
不通过 | 不通过 | 不通过 |
表1
2)效果有效性检验;
效果有效性检验主要为了检验测试效果的有效性,在本公开实施例中通过指标值是否交叉衡量。如果核心指标值在实验组与对照组发生了显著性的交叉,例如,使用AB测试来验证修改策略后的效果,如果实验组A1的效果显著优于对照组B1,而对照组B1的效果又显著优于实验组A2,此时无法判断策略改变后的效果是变好了,还是变差了,故判定实验无效。
故为了进行效果有效性检验,本公开实施例依照假设检验方法,提出如下假设:
H0:实验有效(满足交叉检验)
H1:实验无效(不满足交叉检验)
在本公开实施例中,该假设为交叉多重检验,将各子组数据对的核心指标按均值排序后可以形成6种情形(详见表2):
表2
其中,除AABB和BBAA不存在交叉情况,无需进行检验外,其他4种情形需要同时对B1A1、B1A2、A1B2、A2B2进行4重假设检验,若交叉部分有两组检验存在差异显著,且方向相反,则A、B发生了显著交叉,拒绝H0,实验无效;否则不能拒接H0,实验有效。
操作S370,确定测试有效性检验是否通过,如果通过,则继续操作S380,如果不通过,则返回操作S320,重新对A组数据和B组数据进行随机等量划分,并执行后续测试和测试有效性检验;
在本公开实施例中当1)同质性检验和2)效果有效性检验都通过时,则可确定测试有效性检验通过,否则不通过。
操作S380,根据所述AB测试结果,进行测试评估,得到测试评估结果。
在图3所示的本公开实施中,增加了测试有效性检验,从而可进一步确保测试的有效性,避免被无效的测试结果所误导。
图4示出了本公开另一实施例实现AB测试的方法的流程,如图4所示,包括:
操作S4010,将数据随机划分为A组数据和B组数据;
操作S4020,将A组数据随机等量划分为两个子组数据:A1子组数据和A2子组数据;
操作S4030,将B组数据随机等量划分为两个子组数据:B1子组数据和B2子组数据;
操作S4040,对子组数据进行排列组合得到六对子组数据:A1A2,B1B2,A1B1,A1B2,A2B1和A2B2;
操作S4050,使用六对子组数据,进行多重假设检验,得到AB测试结果;
操作S4060,对六对子组数据进行测试有效性检验;
操作S4070,确定测试有效性检验是否通过,如果通过,则继续操作S4080,如果不通过,则返回操作S4020,重新对A组数据和B组数据进行随机等量划分;
操作S4080,根据所述AB测试结果,进行测试评估,得到测试评估结果;
操作S4090,根据测试评估结果,修正P值,使用修正后的P值进行测试有效性检验。
其中,P值为(P value)就是当原假设为真时,得到的样本观察结果更极端的结果出现的概率。如果P值很小,说明原假设情况的发生的概率很小,而如果出现了,根据小概率原理,我们就有理由拒绝原假设,P值越小,我们拒绝原假设的理由越充分。总之,P值越小,表明结果越显著。
由于操作S4080中的检验过程涉及多重假设检验,随着假设检验的重数的增多,会导致第一类错误概率陡升。
为此,需要根据假设检验的次数校正p值,以消减单纯由于多重假设检验而所导致的第一类错误概率。
操作S4100,输出测试评估结果。
使用修正后的P值再次进行测试评估,并输出相应的测试评估结果。
在图4所示的本公开实施例中,针对多重假设检验导致第一类错误概率提升等问题,增加了P值校正的过程,以消除多重假设检验导致的误差问题,使得AB测试结果更准确,更能反映策略改进后的效果是否显著这一实质问题。
在本公开的另一些实施例中,也可以在操作S4060中加入修正P值的步骤,以确保涉及多重假设检验的测试有效性检验,也是经过修正的更为准确的检验。
图5示出了本公开另一实施例实现修正P值的过程,如图5所示,在本公开实施例中,A组数据划分为A1子组数据和A2子组数据,B组数据划分为B1子组数据和B2子组数据,配对成4对子组数据进行AB测试:A1B1、A2B1、A1B2、A2B2,测试执行完之后执行以下操作对测试结果进行评估:
操作S510,针对每个指标进行多重假设检验;
在本公开实施例中,针对每个指标进行4重假设检验,每重假设包括:
H0:实验组和对照组指标之间无显著差异(所有AB组合均不显著);
H1:实验组和对照组指标之间有显著差异(AB组合中只需有一组显著)。
4重假设检验分别得到:A1B1子组数据得到的检验结果1、A2B1子组数据得到的A1B1子组数据得到的检验结果2、A1B2子组数据得到的检验结果3和A2B2子组数据得到的检验结果4。其中,检验结果1的p值为p1;检验结果2的p值为p2;检验结果3的p值为p3;检验结果4的p值为p4。
在本公开实施例中,指标显著性多重检验导致第一类错误概率提升至1-0.954=0.185。
操作S520,BH法修正P值;
在本公开实施例中,使用BH方法(Ben2am1n1 and Hochberg FDR)进行P值调整。对的m个假设,可使用如下BH方法检验流程计算相应的p值:
第一步:将m个假设的p值进行排序得到p(1)≤…≤p(m)
其中,p(j)是第j重假设检验的p值,α(j)是针对第j重假设给定的显著性水平。
第三步:若p(j)≤p(k),则拒绝H0(j)
计算而得,其中r表示其中一次检验结果P值所对应的排名rank,若存在p′(r)<0.05,则在显著性水平5%条件下拒绝原假设H0。
经过上述p值修正过程后,可得到修正后的p值:p1’,p2’,p3’和p4’。
之后就可以通过修正后的p值,重新评价显著多重检验,以得到AB测试结果。在本公开实施例中,4重假设检验中有一个结果为效果改进“显著”则将AB测试结果确定为效果改进“显著”。
操作S530,输出AB测试结果。
在本公开实施例中,利用上述BH方法进行P值修正,可将第一类错误概率调整回0.05,从而使AB测试结果更为精准。
需要说明的是图1至图5所示实施例仅为本公开AB测试方法的示例性说明,并非对实施方式和应用场景的限定。
在实际应用中,实施者还可将本公开AB测试的方法应用于AB测试平台,并在AB测试平台提供选项以设置划分子组流量选项,若所述划分子组流量选项被选中,则执行本公开AB测试的方法,例如,将A组流量进一步随机划分为至少一个子组流量等。当用户进入AB测试平台,查看实验报表时,平台会获取相应的AB测试信息,并判断该AB测试是否划分了子组流量,若是,在页面上显示划分子组流量的标志,并展示AB测试报表结果。其中,在划分了子组流量的AB测试报表结果报表中,可展现:测试有效性的检验结果,包括同质性检验和效果有效性检验;若测试有效,则展示全部经过BH方法矫正后的数据和AB测试结果,若测试无效,则不展示数据和AB测试结果,只给出测试无效结论。
如此,可兼容传统不进行子组流量划分的AB测试和本公开进行进一步子组流量划分的AB测试方法,用户可根据需要灵活选择适合的AB测试方法。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种AB测试装置,如图6所示,该装置60包括:流量组划分模块601,用于将流量随机划分为A组流量和B组流量,A组流量与B组流量等量;A组流量划分模块602,用于将A组流量随机等量划分为至少两个子组流量;B组流量划分模块603,用于将B组流量随机等量划分为至少两个子组流量,B组流量的每一子组流量与A组流量的每一子组流量等量;子组流量配对模块604,用于对子组流量进行排列组合得到至少四对子组流量;AB测试模块605,用于使用至少四对子组流量,进行多次对比测试,得到AB测试结果。
根据本公开一实施例,该装置60,还包括:测试有效性检验模块,用于对至少四对子组流量进行测试有效性检验。
根据本公开一实施例,其中,测试有效性检验模块具体用于对至少四对子组流量进行同质性检验。
根据本公开一实施例,其中,测试有效性检验模块具体用于对至少四对子组流量进行效果有效性检验。
根据本公开一实施例,该装置60,还包括:测试评估模块,用于根据AB测试结果,进行测试评估,得到测试评估结果;P值修正模块,用于根据测试评估结果,修正P值。
根据本公开一实施例,其中,P值修正模块包括:最佳假发现率确定子模块,用于根据测试评估结果,确定最佳假发现率FDR;P值修正子模块,用于根据FDR,修正P值。
根据本公开一实施例,该装置60,还包括:选项设定模块,用于设置划分子组流量选项,若划分子组流量选项被选中,则执行上述本公开AB测试的方法。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如本公开AB测试的方法。例如,在一些实施例中,本公开AB测试的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的本公开AB测试的方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行本公开AB测试的方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (17)
1.一种AB测试的方法,包括:
将流量随机划分为A组流量和B组流量,所述A组流量与所述B组流量等量;
将所述A组流量随机等量划分为至少两个子组流量;
将所述B组流量随机等量划分为至少两个子组流量,所述B组流量的每一子组流量与所述A组流量的每一子组流量等量;
对所述子组流量进行排列组合得到至少四对子组流量;
使用所述至少四对子组流量,进行多次对比测试,得到AB测试结果。
2.根据权利要求1所述的方法,还包括:
对所述至少四对子组流量进行测试有效性检验。
3.根据权利要求2所述的方法,其中,所述对所述四对子组流量进行测试有效性检验,包括:
对所述至少四对子组流量进行同质性检验。
4.根据权利要求2所述的方法,其中,所述对所述四对子组流量进行测试有效性检验,包括:
对所述至少四对子组流量进行效果有效性检验。
5.根据权利要求1所述的方法,还包括:
根据所述AB测试结果,进行测试评估,得到测试评估结果;
根据所述测试评估结果,修正P值。
6.根据权利要求5所述的方法,其中,所述根据所述测试评估结果,修正P值,包括:
根据所述测试评估结果,确定最佳假发现率FDR;
根据所述FDR,修正P值。
7.根据权利要求1所述的方法,还包括:
设置划分子组流量选项,若所述划分子组流量选项被选中,则执行权利要求1所述的方法。
8.一种AB测试的装置,包括:
流量组划分模块,用于将流量随机划分为A组流量和B组流量,所述A组流量与所述B组流量等量;
A组流量划分模块,用于将所述A组流量随机等量划分为至少两个子组流量;
B组流量划分模块,用于将所述B组流量随机等量划分为至少两个子组流量,所述B组流量的每一子组流量与所述A组流量的每一子组流量等量;
子组流量配对模块,用于对所述子组流量进行排列组合得到至少四对子组流量;
AB测试模块,用于使用所述至少四对子组流量,进行多次对比测试,得到AB测试结果。
9.根据权利要求8所述的装置,还包括:
测试有效性检验模块,用于对所述至少四对子组流量进行测试有效性检验。
10.根据权利要求9所述的装置,其中,测试有效性检验模块具体用于对所述至少四对子组流量进行同质性检验。
11.根据权利要求9所述的装置,其中,测试有效性检验模块具体用于对所述至少四对子组流量进行效果有效性检验。
12.根据权利要求8所述的装置,还包括:
测试评估模块,用于根据所述AB测试结果,进行测试评估,得到测试评估结果;
P值修正模块,用于根据所述测试评估结果,修正P值。
13.根据权利要求12所述的装置,其中,所述P值修正模块包括:
最佳假发现率确定子模块,用于根据所述测试评估结果,确定最佳假发现率FDR;
P值修正子模块,用于根据所述FDR,修正P值。
14.根据权利要求8所述的装置,还包括:
选项设定模块,用于设置划分子组流量选项,若所述划分子组流量选项被选中,则执行权利要求1所述的方法。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210953107.2A CN115391184A (zh) | 2022-08-09 | 2022-08-09 | 一种ab测试的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210953107.2A CN115391184A (zh) | 2022-08-09 | 2022-08-09 | 一种ab测试的方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115391184A true CN115391184A (zh) | 2022-11-25 |
Family
ID=84119133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210953107.2A Pending CN115391184A (zh) | 2022-08-09 | 2022-08-09 | 一种ab测试的方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115391184A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493422A (zh) * | 2023-12-29 | 2024-02-02 | 智者四海(北京)技术有限公司 | 抽样方法、装置、电子设备及存储介质 |
-
2022
- 2022-08-09 CN CN202210953107.2A patent/CN115391184A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493422A (zh) * | 2023-12-29 | 2024-02-02 | 智者四海(北京)技术有限公司 | 抽样方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Popescu et al. | The emergence of the effects and determinants of the energy paradigm changes on European Union economy | |
AU2016288779A1 (en) | Modifying data structures to indicate derived relationships among entity data objects | |
CN113282960A (zh) | 一种基于联邦学习的隐私计算方法、装置、系统及设备 | |
CN115391184A (zh) | 一种ab测试的方法、装置及设备 | |
JP2017068293A (ja) | テストdbデータ生成方法及び装置 | |
CN112256691A (zh) | 一种数据映射方法、装置及电子设备 | |
Zhu et al. | Clusterwise linear regression with the least sum of absolute deviations–an mip approach | |
KR101478935B1 (ko) | 리스크-프로파일 생성 장치 | |
Biagini et al. | Detecting asset price bubbles using deep learning | |
CN104156312A (zh) | 一种评估软件可靠性的方法 | |
CN114048010A (zh) | 服务超时时间的控制方法、装置、设备以及存储介质 | |
CN112966199A (zh) | 一种页面调整收益的确定方法、装置、电子设备和介质 | |
CN115221663A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN110147325B (zh) | 一种基于自动化测试的数据生成方法及装置 | |
CN112433932B (zh) | 一种数据处理方法、装置以及计算机存储介质 | |
CN116596651A (zh) | 客户逾期风险信息的管理方法、装置、设备以及存储介质 | |
da Costa et al. | The gamma-Maxwell regression for COVID-19 mortality rates of the 50 US largest cities | |
CN117455684A (zh) | 一种数据处理方法、装置、电子设备、存储介质及产品 | |
CN116228382A (zh) | 数据处理方法、装置、电子设备以及存储介质 | |
CN117934154A (zh) | 交易风险预测方法、模型训练方法、装置、设备、介质和程序产品 | |
CN115329021A (zh) | 地图数据变更验证方法、装置和电子设备 | |
CN115729396A (zh) | 结果公示方法、装置、设备、存储介质和程序产品 | |
CN115687323A (zh) | 一种指标数据质量监测方法、装置、电子设备及存储介质 | |
CN114331680A (zh) | 一种基于列联表统计检验的提额与授信金额关联性判别方法 | |
CN117421363A (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 |