CN114185767A - Ab测试方法、装置及计算机可读存储介质 - Google Patents
Ab测试方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114185767A CN114185767A CN202111360224.XA CN202111360224A CN114185767A CN 114185767 A CN114185767 A CN 114185767A CN 202111360224 A CN202111360224 A CN 202111360224A CN 114185767 A CN114185767 A CN 114185767A
- Authority
- CN
- China
- Prior art keywords
- test
- model
- result data
- performance information
- data
- 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/368—Test management for test version control, e.g. updating test cases to a new software version
-
- 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
-
- 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/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种AB测试方法、装置及计算机可读存储介质,方法包括:接收测试数据流并基于当前测试模型和测试数据流输出测试结果数据;获取数据库中与测试数据流对应的真实结果数据;基于测试结果数据与真实结果数据生成模型性能信息;基于模型性能信息判断是否需要修改当前测试模型,若是,则根据模型性能信息和预设修改规则修改当前测试模型;将当前测试模型输出的测试结果数据与真实结果数据进行对比生成模型性能信息,从而清晰明确的展示模型当前的状态,精准判断当前测试模型的性能是否需要进行修改替换。
Description
技术领域
本发明涉及计算机测试领域,具体涉及一种AB测试方法、装置及计算机可读存储介质。
背景技术
为验证用户体验、市场推广等是否正确,目前通常采用AB测试进行对比实验以根据实际效果确定最佳方案,即为web或APP界面或流程制作两个(A/B)或多个(A/B/n)版本,在同一时间维度,分别让组成成分相同(相似)的访客群组(目标人群)随机的访问这些版本,收集各群组的用户体验数据和业务数据,最后分析、评估出最好版本,正式采用,通常将基于统计学的一种测试方法植入到模型中,从而供模型自动进行AB测试。
但目前的AB测试所使用的模型通常基于一些简单的统计学方法进行比较,当应用环境发生变化时,需要人工定期使用新数据重新训练并替换模型,每次测试需要人工有计划地执行,执行的时间长度也有限,如果频繁替换模型将浪费大量资源和成本,而若替换的过于缓慢,那么测试模型的性能和表现将会大幅滑落,导致影响到业务。
发明内容
本发明目的是:提供一种能清晰明确地展示模型当前状态,从而便于以精准频率对模型进行替换的AB测试方法、装置及计算机可读存储介质。
本发明的技术方案是:第一方面,本发明提供一种AB测试方法,所述方法包括:
接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取数据库中与所述测试数据流对应的真实结果数据;
基于所述测试结果数据与所述真实结果数据生成模型性能信息;
基于所述模型性能信息判断是否需要修改当前测试模型,
若是,则根据所述模型性能信息和预设修改规则修改当前测试模型。
在一种较佳的实施方式中,所述当前测试模型至少包括A测试模型与B测试模型;
所述接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据包括:
接收前端输入的测试数据流;
将所述测试数据流分别输入所述A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据。
在一种较佳的实施方式中,所述A测试模型至少包括第一实验模型与第一对照模型,所述B测试模型至少包括第二实验模型与第二对照模型,所述将所述测试数据流分别输入所述A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据包括:
将所述测试数据流按第一预设比例分配至所述第一实验模型与所述第一对照模型中获得第一实验模型输出结果数据与第一对照模型输出结果数据;
所述A测试结果数据包括所述第一实验模型输出结果数据与所述第一对照模型输出结果数据;
将所述测试数据流按第二预设比例分配至所述第二实验测试模型与所述第二对照模型中获得第二实验测试模型输出结果数据与第二对照模型输出结果数据;
所述B测试结果数据包括所述第二实验模型输出结果数据与第二对照模型输出结果数据。
在一种较佳的实施方式中,所述接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据之后,所述方法还包括:
发送所述A测试结果数据至下游接口;
发送所述A测试结果数据与所述B测试结果数据至数据库以供所述数据库保存。
在一种较佳的实施方式中,所述基于所述测试结果数据与所述真实结果数据生成模型性能信息包括:
基于所述A测试结果数据与所述真实结果数据生成A测试模型性能信息;
基于所述B测试结果数据与所述真实结果数据生成B测试模型性能信息。
在一种较佳的实施方式中,所述根据所述模型性能信息和预设修改规则修改当前测试模型包括:
根据所述模型性能信息和预设修改规则修改所述第一预设比例和/或所述第二预设比例。
在一种较佳的实施方式中,所述方法还包括:
获取N个周期的A测试结果数据和B测试结果数据,N≥2;
基于所述N个周期的A测试结果数据和B测试结果数据判断所述A测试模型与所述B测试模型是否符合预设假设。
在一种较佳的实施方式中,所述基于所述N个周期的A测试结果数据和B测试结果数据判断所述A测试模型与所述B测试模型是否符合预设假设包括:
基于所述N个周期的A测试结果数据计算所述第一实验模型的测量值与所述第一对照模型的测量值;
判断所述第一实验模型的测量值与所述第一对照模型的测量值差值是否符合第一预设假设;
基于所述N个周期的A测试结果数据和B测试结果数据计算所述第一对照模型的测量值与B测试模型的测量值;
判断所述第一对照模型的测量值与所述B测试模型的测量值差值是否符合第二预设假设。
第二方面,本发明提供一种AB测试装置,所述装置包括:
接收测试模块,用于接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取模块,用于获取数据库中与所述测试数据流对应的真实结果数据;
生成模块,用于基于所述测试结果数据与所述真实结果数据生成模型性能信息;
判断模块,用于基于所述模型性能信息判断是否需要修改当前测试模型;
修改模块,用于在判断模块基于所述模型性能信息判断是否需要修改当前测试模型的判断结果为是时,根据所述模型性能信息和预设修改规则修改当前测试模型。
第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。
本发明的优点是:本发明提供一种AB测试方法、装置及计算机可读存储介质,方法包括:接收测试数据流并基于当前测试模型和测试数据流输出测试结果数据;获取数据库中与测试数据流对应的真实结果数据;基于测试结果数据与真实结果数据生成模型性能信息;基于模型性能信息判断是否需要修改当前测试模型,若是,则根据模型性能信息和预设修改规则修改当前测试模型;将当前测试模型输出的测试结果数据与真实结果数据进行对比生成模型性能信息,从而清晰明确的展示模型当前的状态,精准判断当前测试模型的性能是否需要进行修改替换。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的AB测试方法的流程图;
图2为本申请实施例一所提供的AB测试方法的部署图;
图3为本申请实施例一所提供的AB测试方法的架构图;
图4为本申请所提供的AB测试装置的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如本申请背景技术中所述,目前AB测试的模型部署流程,是将测试模型直接部署到某一环境内,上游接入数据流,然后将模型根据接入的数据流输出的结果向下游进行推送,但这存在以下问题:1)测试前需要对模型进行性能和表现的评估,以确定如何使用模型和是否能根据模型测试结果进行重要决策,是否需要对模型进行优化或回炉重造;2)由于模型的应用环境经常发生变化,需要定期使用新数据对模型进行训练和替换,如果替换太过频繁,那么会浪费大量资源和成本,而如果替换的过于缓慢,那么模型的性能和表现差,导致业务不佳,因此需要找到一个平衡成本和效果的训练替换模型时间点,但人工难以准确判断训练替换模型的时间点;3)需要对模型运行情况进行监控,目前人工监控模型运行情况效率不佳。
为解决上述问题,本申请提供一种AB测试方法、装置及计算机可读存储介质,将AB测试的统计学方法制作成可替换的模块,通过API快速进行替换,同时将AB测试的流程植入到模型部署的流程中,在模型预测流程中增加了B测试的流程,每一条经过该模型预测的数据都参与AB测试,因此,本模型可以提供非常优良的模型性能评估,表现评估数据,从而解决模型的性能评估的问题。同时,本申请部署期间,会持续进行AB测试,时刻可查看模型表现数据,从而清晰明确的展示模型当前的状态,从而解决模型替换的问题。此外,本申请可以支持对同一数据流,按照浮动可变的比例,同时部署多个模型并进行评估,并能通过设定一系列阈值参数,自动修改数据的比例,从而实现整个模型在当前数据风格下的最优性。
下面将结合附图和各个实施例,对本申请的方案进行详细介绍。
实施例一:本实施例介绍一种AB测试方法,参照图1-图3所示,该方法包括:
110、接收测试数据流并基于当前测试模型和测试数据流输出测试结果数据。
具体的,接收前端输入的测试数据流,将数据流输入当前测试模型输出测试结果数据。
在一种较佳的实施方式中,当前测试模型至少包括A测试模型与B测试模型;B测试模型可以热拔插,随时添加删除,方便测试模型的表现。本步骤包括:
110-1、接收前端输入的测试数据流。
110-2、将测试数据流分别输入A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据。
在模型预测流程中增加了B测试的流程,从前端接收的每一条测试数据都参与A测试模型测试和B测试模型测试,因而本申请可以通过A测试模型测试与B测试模型测试对比更准确地评估模型性能,表现评估数据从而解决模型的性能评估问题。
优选的,A测试模型至少包括第一实验模型与第一对照模型,B测试模型至少包括第二实验模型与第二对照模型,本步骤包括:
110-21、将测试数据流按第一预设比例分配至第一实验模型与第一对照模型中获得第一实验模型输出结果数据与第一对照模型输出结果数据;
A测试结果数据包括第一实验模型输出结果数据与第一对照模型输出结果数据。
示例性的,参照图3所示,第一实验模型包括一个主模型部署实例,第一对照模型包括一个试水模型部署实例,第一预设比例为1:9,即将所接收的测试数据流中10%的数据输入至主模型部署实例中由主模型部署实例进行测试生成第一实验模型输出结果数据,将所接收的测试数据流中90%的数据输入至试水模型部署实例中由试水模型部署实例测试生成第一对照模型输出结果数据,A测试结果数据包括第一实验模型输出结果数据与第一对照模型输出结果数据。
110-22、将测试数据流按第二预设比例分配至第二实验测试模型与第二对照模型中获得第二实验测试模型输出结果数据与第二对照模型输出结果数据;
B测试结果数据包括第二实验模型输出结果数据与第二对照模型输出结果数据。
示例性的,参照图3所示,第二实验模型与第二对照模型均为草稿模型部署实例且有三个草稿模型部署实例,将所接收的测试数据流按第二预设比例分配至三个草稿模型部署实例中测试生成第二实验测试模型输出结果数据与第二对照模型输出结果数据。第二预设比例可以随意设定0%到100%的数据输入比例,将相应比例的数据输入到草稿模型内。
在一种较佳的实施方式中,110之后,该方法还包括:
111、发送A测试结果数据至下游接口。
具体的,A测试模型生成的A测试结果数据输入到下游接口,而B测试模型生成的B测试结果数据不会输入到下游接口,不会实际生效。
112、发送A测试结果数据与B测试结果数据至数据库以供数据库保存。
将A测试结果数据与B测试结果数据保存至数据库中,具体的,保存至REDIS缓存数据库中,本申请部署于多组云服务器中,云服务器的数量应当需要两台机器部署本发明逻辑代码,需要一组或更多的互相备份的REDIS服务实例,此外需要和部署的模型实例数量相同的云服务器用以部署模型实例。使用REDIS通信,第一实验模型、第一对照模型、第二实验模型与第二对照模型的数量没有上限,可以同时进行大量模型的对比。
120、获取数据库中与测试数据流对应的真实结果数据。
具体的,在当前测试模型预测之后,当当前测试模型预测的情况在现实中实际发生后,收集GROUND TRUTH即为这个测试收集适当的目标(可证明的)数据,并转化为结构化数据输入到HIVE数据库中作为真实结果数据。从HIVE数据库中获取真实结果数据和A测试结果数据与B测试结果数据进行比较以评价A测试模型与B测试模型的性能。
130、基于测试结果数据与真实结果数据生成模型性能信息。
将从HIVE数据库中获取的真实结果数据分别和A测试结果数据与B测试结果数据进行对比,从而分别计算出A测试模型的模型性能信息和B测试模型的性能信息。
在一种较佳的实施方式中,所述基于所述测试结果数据与所述真实结果数据生成模型性能信息包括:
130-1、基于A测试结果数据与真实结果数据生成A测试模型性能信息;
130-2、基于B测试结果数据与真实结果数据生成B测试模型性能信息。
具体的,计算A测试结果数据中每个第一实验模型输出结果数据与真实结果数据的差值,以及每个第一对照模型输出结果数据与真实结果数据的差值,计算B测试结果数据中每个第二实验模型输出结果数据与真实结果数据的差值,以及每个第二对照模型输出结果数据与真实结果数据的差值,若差值大于预设阈值,则生成对应模型性能信息为高于真实结果,若差值小于预设阈值,则生成该模型性能信息为小于真实结果,若差值等于预设阈值,则生成该模型性能信息为与真实结果相符。模型性能信息包括高于真实结果或低于真实结果或与真实结果相符。
优选的,保存A测试模型性能信息与B测试模型性能信息至HIVE数据库。更优选的,将A测试模型性能信息与B测试模型性能信息邮件发送至预设指定邮箱或将A测试模型性能信息与B测试模型性能信息生成系统公告。
140、基于模型性能信息判断是否需要修改当前测试模型,
若是,则进入150。
具体的,当模型性能信息包括高于真实结果或低于真实结果时,则判断为需要修改当前测试模型。
150、根据模型性能信息和预设修改规则修改当前测试模型。
在一种较佳的实施方式中,本步骤包括:
根据模型性能信息和预设修改规则修改第一预设比例和/或第二预设比例。
具体的,按照预先设定的参数,对当前测试模型中第一预设比例和/或第二预设比例进行修改。示例性的,如A测试模型包括一个第一实验模型a与两个第一对照模型b、c,当前第一预设比例为9:5:5,即将完整测试数据流中的90%数据分配至第一实验模型a,两个第一对照模型b、c各分配5%,a的模型性能信息持续不为与真实结果相符,而b的模型性能信息为与真实结果信息相符,则按预设调整规则,将第一预设比例修改为10:85:5,即修改为将10%数据分配给a,85%数据分配给b,5%数据分配给c。第二预设比例的修改同理。
在一种较佳的实施方式中,该方法还包括:
151、检验当前测试模型的显著性。
本实施例结合图3,对本申请中对当前测试模型的显著性检验进行介绍。具体的,A测试模型包括一个试水模型部署实例与一个主模型部署实例,B测试模型包括三个草稿模型部署实例。首先对试水模型部署实例和主模型部署实例进行Wilcoxon Signed RanksTest——Wilcoxon符号秩检验,再对试水模型和草稿模型进行Friedman Test(弗里德曼检验)和post-hoc test(事后分析)。具体包括:
151-1、获取N个周期的A测试结果数据和B测试结果数据,N≥2。
151-2、基于N个周期的A测试结果数据和B测试结果数据判断A测试模型与B测试模型是否符合预设假设。
具体的,计算N个周期的主模型部署实例、试水模型部署实例、草稿模型部署实例在N个周期数据上的测量值来检验是否符合预先对主模型部署实例与试水模型部署实例、试水模型部署实例与草稿模型部署实例的假设。
在一种较佳的实施方式中,本步骤包括:
151-21、基于所述N个周期的A测试结果数据计算第一实验模型的测量值与第一对照模型的测量值。
参照图3为例,本步骤对A测试模型中的试水模型部署实例与主模型部署实例的测量值进行计算。
具体的,计算试水模型部署实例与主模型部署实例在N个周期数据上的测量值AUC(Area Under Curve,即ROC曲线下的面积)。将主模型部署实例记为模型a,试水模型部署实例记为模型b。
假设ai为模型a在第i个数据集上的测量值,bi为模型b在第i个数据集上的测量值,那么模型a、模型b的测量值向量分别为:
AMeasurement=[a1,a2,...,an]
BMeasurement=[b1,b2,....,bn]
计算向量DMeasurement,即模型b和模型a测量值的差异:
DMeasurement=[b1-a1,b2-a2,...,bn-an]=[d1,....,dn]
对|d1|,|d2|,....,|dn|从小到大进行排序,rank(d1)即为|d1|在所有|di|中的序列值;
计算统计量(test statistic)
由于在此情况下做的是one-tail测试,并且对立假设是两个模型测量值的差异大于0,用到的统计量是W-,若对立假设是两个模型测量值的差异小于0,则用到的统计量是W+。
151-22、判断第一实验模型的测量值与第一对照模型的测量值差值是否符合第一预设假设。
于本实施例中,对主模型部署实例和试水模型部署实例的测量值进行零假设与对立假设。零假设是做统计检验时的一类假设。零假设的内容一般是希望证明其错误的假设。对立假设与零假设相对,即希望证明是正确的另一种可能,也可以理解为零假设的其余可能结果。本实施例中零假设认为模型b的测量值AUC等于模型a的测量值,对立假设则认为模型b的测量值大于a模型的测量值。
H0:μb=μa,H1:μb>μa
ie.H0:μb-μa=0,H1:μb-μa>0
零假设认为b模型的测量值(如AUC)等于a模型的测量值,对立假设则认为b模型的测量值大于a模型的测量值。
当周期数量N小于25时,选定α,在表1中根据对应的n和α找到对应的统计比较值,若统计量小于比较值,那么拒绝零假设,若统计量大于等于比较值,则无法拒绝零假设。
表1
当周期数量N大于等于20时,计算Z值:
Z值服从标准正态分布,查询标准正态分布的p值对应表,得到p值,与α比较。
当N大于等于20时,可以使用配对t检验。
151-23、基于N个周期的A测试结果数据和B测试结果数据计算第一对照模型的测量值与B测试模型的测量值。
具体的,对试水模型部署实例与草稿模型部署实例的测量值进行计算。
计算所有试水模型部署实例和草稿模型部署实例在N个周期数据上的测量值AUC。将草稿模型部署实例记为模型C、D、E。
假设bi为模型b在第i个数据集上的测量值,ci为模型C在第i个数据集上的测量值,那么模型B,C,D…的测量值向量分别为
BMeasurement=[b1,b2,...,bn]
CMeasurement=[c1,c2,...,cn]
……
比较每个模型在各个数据集上的表现,表现最好的模型rank为1,第二好的rank为2,依次推算。
计算统计量(test statistic)
151-24、判断第一对照模型的测量值与B测试模型的测量值差值是否符合第二预设假设。
于本实施例中,对试水模型部署实例和草稿模型部署实例的测量值进行多重假设检验的零假设与对立假设。Friedman检定零假设和对立假设如下:
H0:模型B、C、D…在N各数据集上的表现一样;
H1:模型B、C、D…模型在N个数据集上的表现不一样;
即,零假设认为试水模型的测量值(如AUC)等于草稿模型的测量值,对立假设则认为模型的性能不完全一样。
当周期数量N小于等于13,并且模型数量小于5时,选定α(在表2中是b),在表2中根据对应的N,k和α找到对应的统计比较值,若统计量大于比较值,那么拒绝零假设,若统计量小于或等于比较值,则无法拒绝零假设。
表2
当周期值数量N大于13,或模型数量大于5时,计算Chi-square test的比较值为(degree of freedom)。卡方分布的自由度是k-1,即模型数量减1。若统计量大于比较值,那么拒绝零假设,若统计量小于或等于比较值,则无法拒绝零假设。
更优选的,本申请还进行试水模型部署实例与草稿模型部署实例的事后假设检验(post-hoc test)。
具体的,由于我们的目的是比较其他模型性能是否好于模型b,那么模型b即为控制模型,假如有k个草稿模型,需要将控制模型与k个草稿模型进行两两比较,就需要进行k次比较。为了控制多重比较的Familywise Error Rate(拒绝至少一个实际为真的零假设的概率)为α,需要对α进行矫正。
151-25、事后假设检验包括:
151-251、计算用于比较模型b与第j个草稿模型部署实例的统计量:
151-252、对所有检验的p值从小到大排序:
p1≤p2≤…≤pk
151-253、选取合适的α矫正法,比较p值,以判断是否要拒绝对应假设。
其中,α矫正法包括:
则拒绝所有假设,反之继续比较pk-1与α/2。
Bonferroni矫正法虽然计算方便,但是过于保守,很难拒绝假设,Hochberg矫正法会比Holm矫正法拒绝更多零假设,有时候会使得Familywise Error Rate(拒绝至少一个实际为真的零假设的概率)大于α,故选取Holm矫正法。
实施例二:本实施例提供一种AB测试装置,参照图4所示,该装置包括:
接收测试模块410,用于接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取模块420,用于获取数据库中与测试数据流对应的真实结果数据;
生成模块430,用于基于测试结果数据与真实结果数据生成模型性能信息;
判断模块440,用于基于模型性能信息判断是否需要修改当前测试模型;
修改模块450,用于在判断模块440基于模型性能信息判断是否需要修改当前测试模型的判断结果为是时,根据模型性能信息和预设修改规则修改当前测试模型。
在一种较佳的实施方式中,当前测试模型至少包括A测试模型与B测试模型;
接收测试模块410包括:
接收单元410-1,用于接收前端输入的测试数据流;
测试单元410-2,用于将测试数据流分别输入A测试模型与B测试模型以获得A测试结果数据和B测试结果数据。
优选的,A测试模型至少包括第一实验模型与第一对照模型,B测试模型至少包括第二实验模型与第二对照模型,测试单元410-2包括:
第一分配测试子单元410-21,用于将测试数据流按第一预设比例分配至第一实验模型与第一对照模型中获得第一实验模型输出结果数据与第一对照模型输出结果数据;
A测试结果数据包括所述第一实验模型输出结果数据与第一对照模型输出结果数据;
第二分配测试子单元410-22,用于将测试数据流按第二预设比例分配至第二实验测试模型与第二对照模型中获得第二实验测试模型输出结果数据与第二对照模型输出结果数据;
B测试结果数据包括第二实验模型输出结果数据与第二对照模型输出结果数据。
优选的,该装置还包括:
发送模块451,包括:
第一发送单元451-1,用于在接收测试模块410接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据之后,发送A测试结果数据至下游接口;
第一发送单元451-2,用于在接收测试模块410接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据之后,发送A测试结果数据与B测试结果数据至数据库以供数据库保存。
优选的,生成模块430包括:
第一生成单元430-1,用于基于A测试结果数据与真实结果数据生成A测试模型性能信息;
第二生成单元430-2,用于基于B测试结果数据与真实结果数据生成B测试模型性能信息。
优选的,修改模块450,具体用于根据模型性能信息和预设修改规则修改第一预设比例和/或第二预设比例。
优选的,该装置还包括:
显著性检验模块452,包括:
获取单元452-1,用于获取N个周期的A测试结果数据和B测试结果数据,N≥2;
判断单元452-2,用于基于N个周期的A测试结果数据和B测试结果数据判断A测试模型与B测试模型是否符合预设假设。
更优选的,判断单元452-2包括:
第一计算子单元452-21,用于基于N个周期的A测试结果数据计算第一实验模型的测量值与第一对照模型的测量值;
第一判断子单元452-22,用于判断第一实验模型的测量值与第一对照模型的测量值差值是否符合第一预设假设;
第二计算子单元452-23,用于基于N个周期的A测试结果数据和B测试结果数据计算第一对照模型的测量值与B测试模型的测量值;
第二判断子单元452-24,用于判断第一对照模型的测量值与B测试模型的测量值差值是否符合第二预设假设。
该装置还包括:事后假设检验模块453,包括:
计算查找子单元453-1,计算用于比较第一对照模型与第j个B测试模型的统计量并对照正态分布表查找对应的p值;
排序子单元453-2,用于对所有检验的p值从小到大排序;
第三判断子单元453-3,用于选取合适的α矫正法,比较p值,以判断是否要拒绝对应假设。
本实施例提供的AB测试装置用于实现实施例一中所提供的AB测试方法,其有益效果与实施例一中提供的AB测试方法的有益效果相同,在此不做赘述。
需要说明的是:上述实施例提供的AB测试装置在执行AB测试方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的AB测试装置与AB测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
实施例三:本实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取数据库中与所述测试数据流对应的真实结果数据;
基于所述测试结果数据与所述真实结果数据生成模型性能信息;
基于所述模型性能信息判断是否需要修改当前测试模型,
若是,则根据所述模型性能信息和预设修改规则修改当前测试模型。
作为一种较优的实施方式,本发明实施例中,所述当前测试模型至少包括A测试模型与B测试模型;
处理器执行计算机程序时还实现以下步骤:
接收前端输入的测试数据流;
将所述测试数据流分别输入所述A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据。
作为一种较优的实施方式,本发明实施例中,所述A测试模型至少包括第一实验模型与第一对照模型,所述B测试模型至少包括第二实验模型与第二对照模型,处理器执行计算机程序时还实现以下步骤:
将所述测试数据流按第一预设比例分配至所述第一实验模型与所述第一对照模型中获得第一实验模型输出结果数据与第一对照模型输出结果数据;
所述A测试结果数据包括所述第一实验模型输出结果数据与所述第一对照模型输出结果数据;
将所述测试数据流按第二预设比例分配至所述第二实验测试模型与所述第二对照模型中获得第二实验测试模型输出结果数据与第二对照模型输出结果数据;
所述B测试结果数据包括所述第二实验模型输出结果数据与所述第二对照模型输出结果数据。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
发送所述A测试结果数据至下游接口;
发送所述A测试结果数据与所述B测试结果数据至数据库以供所述数据库保存。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
基于所述A测试结果数据与所述真实结果数据生成A测试模型性能信息;
基于所述B测试结果数据与所述真实结果数据生成B测试模型性能信息。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述模型性能信息和预设修改规则修改所述第一预设比例和/或所述第二预设比例。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
获取N个周期的A测试结果数据和B测试结果数据,N≥2;
基于所述N个周期的A测试结果数据和B测试结果数据判断所述A测试模型与所述B测试模型是否符合预设假设。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
基于所述N个周期的A测试结果数据计算所述第一实验模型的测量值与所述第一对照模型的测量值;
判断所述第一实验模型的测量值与所述第一对照模型的测量值差值是否符合第一预设假设;
基于所述N个周期的A测试结果数据和B测试结果数据计算所述第一对照模型的测量值与B测试模型的测量值;
判断所述第一对照模型的测量值与所述B测试模型的测量值差值是否符合第二预设假设。
本实施例提供的一种计算机可读存储介质用于处理执行实施例一中所提供的AB测试方法的步骤,其有益效果与实施例一中提供的AB测试方法的有益效果相同,在此不做赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是但不限于只读存储器,磁盘或光盘等。
当然上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明主要技术方案的精神实质所做的修饰,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种AB测试方法,其特征在于,所述方法包括:
接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取数据库中与所述测试数据流对应的真实结果数据;
基于所述测试结果数据与所述真实结果数据生成模型性能信息;
基于所述模型性能信息判断是否需要修改当前测试模型,
若是,则根据所述模型性能信息和预设修改规则修改当前测试模型。
2.根据权利要求1所述的AB测试方法,其特征在于,所述当前测试模型至少包括A测试模型与B测试模型;
所述接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据包括:
接收前端输入的测试数据流;
将所述测试数据流分别输入所述A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据。
3.根据权利要求2所述的AB测试方法,其特征在于,所述A测试模型至少包括第一实验模型与第一对照模型,所述B测试模型至少包括第二实验模型与第二对照模型,所述将所述测试数据流分别输入所述A测试模型与所述B测试模型以获得A测试结果数据和B测试结果数据包括:
将所述测试数据流按第一预设比例分配至所述第一实验模型与所述第一对照模型中获得第一实验模型输出结果数据与第一对照模型输出结果数据;
所述A测试结果数据包括所述第一实验模型输出结果数据与所述第一对照模型输出结果数据;
将所述测试数据流按第二预设比例分配至所述第二实验测试模型与所述第二对照模型中获得第二实验测试模型输出结果数据与第二对照模型输出结果数据;
所述B测试结果数据包括所述第二实验模型输出结果数据与所述第二对照模型输出结果数据。
4.根据权利要求3所述的AB测试方法,其特征在于,所述接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据之后,所述方法还包括:
发送所述A测试结果数据至下游接口;
发送所述A测试结果数据与所述B测试结果数据至数据库以供所述数据库保存。
5.根据权利要求3所述的AB测试方法,其特征在于,所述基于所述测试结果数据与所述真实结果数据生成模型性能信息包括:
基于所述A测试结果数据与所述真实结果数据生成A测试模型性能信息;
基于所述B测试结果数据与所述真实结果数据生成B测试模型性能信息。
6.根据权利要求3所述的AB测试方法,其特征在于,所述根据所述模型性能信息和预设修改规则修改当前测试模型包括:
根据所述模型性能信息和预设修改规则修改所述第一预设比例和/或所述第二预设比例。
7.根据权利要求3所述的AB测试方法,其特征在于,所述方法还包括:
获取N个周期的A测试结果数据和B测试结果数据,N≥2;
基于所述N个周期的A测试结果数据和B测试结果数据判断所述A测试模型与所述B测试模型是否符合预设假设。
8.根据权利要求7所述的AB测试方法,其特征在于,所述基于所述N个周期的A测试结果数据和B测试结果数据判断所述A测试模型与所述B测试模型是否符合预设假设包括:
基于所述N个周期的A测试结果数据计算所述第一实验模型的测量值与所述第一对照模型的测量值;
判断所述第一实验模型的测量值与所述第一对照模型的测量值差值是否符合第一预设假设;
基于所述N个周期的A测试结果数据和B测试结果数据计算所述第一对照模型的测量值与B测试模型的测量值;
判断所述第一对照模型的测量值与所述B测试模型的测量值差值是否符合第二预设假设。
9.一种AB测试装置,其特征在于,所述装置包括:
接收测试模块,用于接收测试数据流并基于当前测试模型和所述测试数据流输出测试结果数据;
获取模块,用于获取数据库中与所述测试数据流对应的真实结果数据;
生成模块,用于基于所述测试结果数据与所述真实结果数据生成模型性能信息;
判断模块,用于基于所述模型性能信息判断是否需要修改当前测试模型;
修改模块,用于在判断模块基于所述模型性能信息判断是否需要修改当前测试模型的判断结果为是时,根据所述模型性能信息和预设修改规则修改当前测试模型。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360224.XA CN114185767A (zh) | 2021-11-17 | 2021-11-17 | Ab测试方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360224.XA CN114185767A (zh) | 2021-11-17 | 2021-11-17 | Ab测试方法、装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114185767A true CN114185767A (zh) | 2022-03-15 |
Family
ID=80602135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111360224.XA Pending CN114185767A (zh) | 2021-11-17 | 2021-11-17 | Ab测试方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114185767A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023204857A1 (en) * | 2022-04-22 | 2023-10-26 | Dell Products, L.P. | Custom signal data generation in a radio system |
CN116991693A (zh) * | 2023-09-27 | 2023-11-03 | 宁波银行股份有限公司 | 一种测试方法、装置、设备及存储介质 |
US12003259B2 (en) | 2022-04-29 | 2024-06-04 | Dell Products L.P. | Custom signal data generation in a radio system |
-
2021
- 2021-11-17 CN CN202111360224.XA patent/CN114185767A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023204857A1 (en) * | 2022-04-22 | 2023-10-26 | Dell Products, L.P. | Custom signal data generation in a radio system |
US12003259B2 (en) | 2022-04-29 | 2024-06-04 | Dell Products L.P. | Custom signal data generation in a radio system |
CN116991693A (zh) * | 2023-09-27 | 2023-11-03 | 宁波银行股份有限公司 | 一种测试方法、装置、设备及存储介质 |
CN116991693B (zh) * | 2023-09-27 | 2023-12-26 | 宁波银行股份有限公司 | 一种测试方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114185767A (zh) | Ab测试方法、装置及计算机可读存储介质 | |
CN107818509B (zh) | 业务数据校验方法、装置、存储介质及电子设备 | |
WO2021219054A1 (zh) | 横向联邦学习系统优化方法、装置、设备及可读存储介质 | |
CN106339351B (zh) | 一种sgd算法优化系统及方法 | |
CN111506485B (zh) | 特征分箱方法、装置、设备及计算机可读存储介质 | |
CN106919957B (zh) | 处理数据的方法及装置 | |
Mitzenmacher | Analyzing distributed join-idle-queue: A fluid limit approach | |
CN104182278B (zh) | 一种判定计算机硬件资源繁忙程度的方法和装置 | |
CN110597719B (zh) | 一种用于适配测试的图像聚类方法、装置及介质 | |
CN112396211B (zh) | 一种数据预测方法及装置、设备和计算机存储介质 | |
CN109067867A (zh) | 面向数据中心负载监控的虚拟化容器服务弹性伸缩方法 | |
CN106991070B (zh) | 实时计算方法及装置 | |
CN109246178B (zh) | 一种在线题目发放方法、装置、服务器及存储介质 | |
CN107239337A (zh) | 虚拟化资源的分配和调度方法及系统 | |
CN108833592A (zh) | 云主机调度器优化方法、装置、设备及存储介质 | |
CN109618281B (zh) | 一种高铁小区的识别方法及装置 | |
CN111428885A (zh) | 一种联邦学习中用户的索引方法及联邦学习装置 | |
CN106611021B (zh) | 一种数据处理方法和设备 | |
CN113112126A (zh) | 基于人工智能的供水管漏损预警方法及系统 | |
CN114297066A (zh) | 一种基于统计学原理的ab测试方法和装置 | |
CN106888237B (zh) | 一种数据调度方法及系统 | |
CN114912627A (zh) | 推荐模型训练方法、系统、计算机设备及存储介质 | |
CN109446057B (zh) | 基于gde3算法的动态系统测试资源分配方法 | |
CN111124681B (zh) | 一种集群负载分配方法及装置 | |
CN111459651B (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 |