CN111324533B - A/b测试方法、装置及电子设备 - Google Patents

A/b测试方法、装置及电子设备 Download PDF

Info

Publication number
CN111324533B
CN111324533B CN202010097681.3A CN202010097681A CN111324533B CN 111324533 B CN111324533 B CN 111324533B CN 202010097681 A CN202010097681 A CN 202010097681A CN 111324533 B CN111324533 B CN 111324533B
Authority
CN
China
Prior art keywords
evaluation
version
service
test
index
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
Application number
CN202010097681.3A
Other languages
English (en)
Other versions
CN111324533A (zh
Inventor
窦雯
李钢
谢辉志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010097681.3A priority Critical patent/CN111324533B/zh
Publication of CN111324533A publication Critical patent/CN111324533A/zh
Application granted granted Critical
Publication of CN111324533B publication Critical patent/CN111324533B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书实施例公开了一种A/B测试方法、装置及电子设备,其包含的技术方案实质是,通过采集A/B测试中的业务版本在运行过程中的业务数据;利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。

Description

A/B测试方法、装置及电子设备
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及一种A/B测试方法、装置及电子设备。
背景技术
A/B测试,也叫随机实验或对照实验,在软件开发过程中,A/B测试是业界公认的评估新功能对客户行为影响的因果关系的最有效的手段,通过合理的实验设计,科学的流量分配,精细的统计推断等方式来获得可信的实验结论,保证A/B测试时得到的业务结论在后续正式推送至所有用户时以很大的概率维持不变。具体地,A/B测试为同一个优化目标提供不同业务版本,统计各业务版本在运行时产生的业务数据,利用业务数据评估各业务版本的优劣,最终做出决策。
发明内容
有鉴于此,本说明书实施例提供了一种提升A/B测试效率及精确度的A/B测试方法、装置及电子设备。
本说明书实施例采用下述技术方案:
本说明书实施例提供一种A/B测试方法,包括:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
本说明书实施例还提供一种A/B测试装置,包括:
采集模块,采集A/B测试中的业务版本在运行过程中的业务数据;
第一评估模块,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
判断模块,若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;
第二评估模块,若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
本说明书实施例还提供一种电子设备,包括:
处理器;以及
被配置成存储计算机程序的存储器,所述计算机程序在被执行时使所述处理器执行以下操作:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
本说明书实施例提出一种不同于现有技术的A/B测试方案,通过采集A/B测试中的业务版本在运行过程中的业务数据;利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
利用本说明书实施例记载的方案,第二评估策略采用固定测试时长的方式,也就是设定预设测试结束日,在预设测试结束日基于第二评估策略对业务版本作最终评估。而在预设测试结束日之前,可以利用第一评估策略对业务版本进行评估,并能够提供基于第一评估策略的连续评估方案。第二评估策略所采用的固定时长方式可以弥补所述连续评估所产生的低统计功效问题,进而能够尽可能地对A/B测试中存在显著区别的各业务版本得到显著差异的结论。因此,本说明书实施例记载的方案能够提高A/B测试的效率及测试精确度。
附图说明
此处所说明的附图用来提供对本说明书实施例的进一步理解,构成本说明书实施例的一部分,本说明书的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提出的一种A/B测试方案的系统架构示意图;
图2为本说明书实施例提出的一种A/B测试方法的流程图;
图3为本说明书实施例提出的一种A/B测试方法的应用示例的流程图;
图4为本说明书实施例提出的一种A/B测试方法的应用示例的流程图;
图5为本说明书实施例提出的一种A/B测试方法的应用示例的流程图;
图6为本说明书实施例提出的一种A/B测试方法的应用示例的流程图;
图7为本说明书实施例提出的一种A/B测试装置的结构示意图;
图8为本说明书实施例提出的一种A/B测试装置的应用示例的结构图;
图9为本说明书实施例提出的一种A/B测试装置的应用示例的结构图;
图10为本说明书实施例提出的一种A/B测试装置的应用示例的结构图。
具体实施方式
对现有技术进行分析发现,A/B测试是利用统计学假设检验的原理,通过检验用户在只有一个因素不同的几个版本中的反应来选择出更优的版本。现有一种A/B测试方案是在测试前预设测试的起止时间,在约定的结束日,利用采集的各业务版本的业务数据进行版本评估。该方案只在结束日进行一次评估和决策。
为了满足用户随时评估和决策的需求,现有技术又发展出另一种A/B测试方案,在测试运行过程中,多次进行版本评估,一旦得出显著结论即提前决策并结束测试。
本说明书实施例提出一种不同于现有技术的A/B测试方法、装置及电子设备,其包含的技术方案实质是,通过采集A/B测试中的业务版本在运行过程中的业务数据;利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
利用本说明书实施例记载的方案,第二评估策略采用固定测试时长的方式,也就是设定预设测试结束日,在预设测试结束日基于第二评估策略对业务版本作最终评估。而在预设测试结束日之前,可以利用第一评估策略对业务版本进行评估,基于第一评估策略的评估方案为连续评估,并且在业务版本持续未达到第一指标条件的情况下,第二评估策略所采用的固定时长方式可以弥补所述连续评估所产生的低统计功效问题,进而能够尽可能地对A/B测试中存在显著区别的各业务版本得到显著差异的结论。因此,本说明书实施例记载的方案能够提高A/B测试的效率及测试精确度。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书实施例提出的一种A/B测试方案的系统架构示意图。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用。例如浏览器类应用、搜索类应用、即时通信类工具等等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103上所安装的客户端应用进行测试的后端服务器。需要说明的是,本公开的实施例所提供的A/B测试方法一般由服务器105执行,相应地,A/B测试装置一般设置于服务器105中。此时,可以不存在终端设备101、102、103和网络104。
还需要指出的是,对终端设备101、102、103上所安装的客户端应用的测试也可以由终端设备101、102、103执行。此时,A/B测试方法可以由终端设备101、102、103执行,相应地,A/B测试装置也可以设置于终端设备101、102、103中。此时,示例性系统架构100可以不存在服务器105和网络104。
需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2为本说明书实施例提出的一种A/B测试方法的流程图。
步骤201:采集A/B测试中的业务版本在运行过程中的业务数据。
本说明书实施例记载的业务版本可以是为客户提供业务功能的服务版本。具体可以是应用、网页、应用界面等,在此不作具体限定。
A/B测试中的业务版本包括至少两个。具体地,其中一个业务版本可以是原始版本,作为对照版,另外的业务版本可以是优化的测试版本,其目的是测试优化的测试版本相比于原始版本是否更能带来良好的用户体验。还可以是,A/B测试中的业务版本中包括至少两个优化的测试版本,相互之间互为对照版和测试版,可以根据最终的测试结果从中选择其一,作为最终版本进行推广。
在具体应用中,为各业务版本分配用户群,将业务版本推送给对应用户群中的各用户终端。则,采集A/B测试中的业务版本在运行过程中的业务数据,可以包括:
从业务版本所分配的用户终端采集该业务版本在运行过程中的业务数据。
其中,可以通过监测用户终端和/或服务端,来采集业务数据。这样,业务数据可以包括用户终端上传的业务数据,或服务端向用户终端下发的业务数据。
业务数据是对应的业务版本在运行过程中所产生的数据,其数据类型可以包括点击、注册、登录、支付等,对数据类型可根据具体应用场景进行确定,在此不作具体限定。
步骤203:利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件。
A/B测试是一种对照实验,因此本说明书实施例记载的采集的业务数据可以是采集的A/B测试中各业务版本的业务数据,该业务数据可用于评估业务版本的优劣。
而本说明书实施例记载的待评估的业务版本可以是优化的测试版本,因此利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,以包括:
利用采集的各业务版本的业务数据评估待测试的业务版本是否达到基于第一评估策略设定的第一指标条件。
本说明书实施例记载的第一评估策略提供对业务数据的处理策略,以及从业务数据中所要监测的评估指标等。而第一指标条件可以是第一评估策略所预设的阈值,以此判断业务版本的优劣。
具体地,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,可以包括:
利用第一评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第一评估指标;
评估所述第一评估指标是否达到所述第一指标条件。
第一评估指标用于评估测试的业务版本相比于原始业务版本的优劣。
具体地,利用第一评估策略对采集的所述业务数据进行处理,可以包括:
利用第一评估策略,从采集的各业务数据中提取指标数据;
利用第一评估策略,利用提取的指标数据计算业务版本的第一评估指标。
步骤205:若业务版本未达到第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,第一评估策略不同于第二评估策略。
第二评估策略适用于固定时长的版本评估,具体通过设定预设测试结束日,并在预设测试结束日利用在前采集的业务数据对业务数据进行评估。
第一评估策略不同于第二评估策略,第一评估策略适用于连续或定期地监控和版本评估。由于两者适用场景区别,因此两者的版本评估规则不同。
其中,预设测试结束日可在A/B测试开始之前根据第二评估策略的适用条件进行预设。
步骤207:若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
其中,本步骤所采集的业务数据可以是截止到所述预设测试结束日所采集的业务数据。这样,利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,包括:
利用截止到所述预设测试结束日所采集的业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件。
基于第二评估策略对业务版本的评估结果将作为最终评估结果。具体评估结果包括达到第二指标条件和未达到第二指标条件。因此,可以根据该评估结果决策,测试的业务版本是否进行推广到所有用户。
具体地,利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,可以包括:
利用所述第二评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第二评估指标;
评估所述第二评估指标是否达到所述第二指标条件。
评估所述第二评估指标是否达到所述第二指标条件,可以包括:
将第二评估指标与第二指标条件设定的指标阈值进行比较。若第二评估指标达到指标阈值,则判断业务版本达标,反之则判断业务版本未达标。
本说明书实施例记载的第二评估指标不同于上文第一评估指标,具体的指标类型不同。这样,第一指标条件也不同于第二指标条件。
利用本说明书实施例记载的方案,第二评估策略是采用固定测试时长的方式,也就是设定预设测试结束日,在预设测试结束日基于第二评估策略对业务版本作最终评估。而在预设测试结束日之前,可以利用第一评估策略对业务版本进行连续评估,第二评估策略所采用的固定测试时长方式可以弥补连续评估所产生的低统计功效问题,进而能够尽可能地对A/B测试中存在显著区别的各业务版本得到显著差异的结论。因此,本说明书实施例记载的方案能够提高A/B测试的效率及测试精确度。
图3为本说明书实施例提出的一种A/B测试方法的应用示例的流程图。
步骤302可参考上文步骤201的内容,步骤304可参考上文步骤203的内容,在此不再赘述。
若是,则执行步骤306:根据所述业务版本达到第一指标条件,确定对所述业务版本的评估结果,该评估结果可以是最终评估结果。具体地,该评估结果可以是业务版本的测试结果显著,可以向全部用户推广。
若否,则执行步骤308,判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日。
若是,则执行步骤310:利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。具体可参考上文步骤207,在此不再详述。若是,则评估结果为达标。若否,则业务版本未达标。
若否,则返回步骤302所述采集A/B测试中的业务版本在运行过程中的业务数据。这样可以基于第一评估策略对业务版本进行连续监控和评估。
需要说明的是,在连续评估时,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,所利用的采集的业务数据可以是从A/B测试开始时采集的业务数据开始起采集的所有业务数据,也就是截止到当前阶段已采集的所有业务数据。
图4为本说明书实施例提出的一种A/B测试方法的流程图。
步骤401:在所述A/B测试开始之前,根据第二指标条件预估在评估业务版本是否达到基于第二评估策略所设定的第二指标条件时,所采集的所述业务数据的数据量;
步骤403:根据预估的所述业务数据的数量预估所述预设测试结束日。
在A/B测试开始之前,预估预设测试结束日,以保证在预设测试结束日时检验方法可以从第一评估策略切换到第二评估策略,从而保证不过分损失统计功效。
第二指标条件可以表征预估业务版本达标或显著的决策指标最小变化量,作为第二评估指标的参考标准,低于这个决策指标的变动是没有意义的。因此,可以利用第二指标条件预估待采集的业务数据的数据量,例如能够达到80%统计功效的数据量,以此预估预设测试结束日。
在预估预设测试结束日之后,可以执行具体的A/B测试进程,具体可参考图2所示实施例的步骤及图3所示示例,在此不再赘述。
图5为本说明书实施例提出的一种A/B测试方法的应用示例的流程图。
本方法的应用示例提供一种第一指标条件和第二指标条件的预估方案,适用于具体的A/B测试之前,具体阐述如下。
步骤501:确定为第一评估策略和第二评估策略各自分配的预设错误率;
步骤503:基于各自的预设错误率预估所述第一指标条件和第二指标条件。
为了保证基于第一评估策略和第二评估策略的两种检验方式结合后总体的错误率仍然保持在设定范围内,例如不超过0.05或其他数值,可以事先对这两种检验方式的一类错误率进行调整和分配。其中,错误率的分配取决于实际测试场景中能够提前决策的概率。
因此,可以通过为第一评估策略和第二评估策略分配不同的预设错误率,利用各自的预设错误率预估第一指标条件和第二指标条件。具体地,利用为第一评估策略分配的预设错误率预估第一指标条件中的评估指标阈值,利用为第二评估策略分配的预设错误率预估第二指标条件中的评估指标阈值。
在预估第一指标条件和第二指标条件之后,可以执行具体的A/B测试进程,具体可参考图2所示实施例的步骤及图3所示示例,在此不再赘述。
图6为本说明书实施例提出的一种A/B测试方法的流程图。
本方法提供一种对第一评估策略中超参数的调整及确定方法。超参数是第一评估策略的外部参数,而非第一评估策略中的评估指标等参数。根据贝叶斯思想假设评估指标数据服从均值为0的正态分布,然而先验分布的方差作为一个超参数是需要计算的。
步骤602:在利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件之前,从所述A/B测试的首个采集时间区间内采集的所述业务数据中提取评估指标数据。
具体地,首个采集时间区间,例如第一天,在此不作具体限定。
在本说明书实施例中,提取到的评估指标数据可以是指评估指标的方差。
步骤604:利用提取到的所述评估指标数据为输入,调整预估的所述第一评估策略中的超参数,直到得到达到预设期望值的所述第一指标条件。
具体地,提取到的评估指标数据为输入的常量,超参数为变量。调整预估的所述第一评估策略中的超参数,可以是指,通过尝试在一定区间内选取不同超参数,调整第一指标条件中的指标阈值,直到指标阈值能够达到预设期望值。
在本说明书实施例中,基于第一评估策略的评估方案旨在追求A/B测试的高统计功效,因此预设期望值为极小值,也就是该预设期望值小于其他超参数取值时的指标阈值。在其他实施例场景中,该预设期望值也可以是极大值,在此不作具体限定。
本说明书实施例利用A/B测试开始阶段的首个采集区间内采集的业务数据计算超参数,该方法不需要依赖平台对于历史实验信息的管理和利用,更加适合冷启动的场景。
步骤606:根据所述达到预设期望值的所述第一指标条件时的超参数更新所述第一评估策略。
基于上文步骤602和604确定第一评估策略中的超参数的具体值,利用该具体值更新第一评估策略,可以是指将第一评估策略中的超参数取值为该具体值。这样,该超参数可以用于基于第一评估策略的连续评估过程,提高该方法的可操作性,以此在一定程度上最大化统计功效。
在确定超参数及更新第一评估策略之后,可以执行具体的A/B测试进程,具体可参考图2所示实施例的步骤及图3所示示例,在此不再赘述。
图7为本说明书实施例提出的一种A/B测试装置的结构示意图。
在这种情况下,超参数可适用于其后基于第一评估策略的版本评估过程。其后各步骤可以参考图2-图4各实施例,在此不再赘述。
因此,本说明书实施例提出基于A/B测试过程中,
本说明书实施例记载的A/B测试装置可以包括:
采集模块701,采集A/B测试中的业务版本在运行过程中的业务数据;
第一评估模块702,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
判断模块703,若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;
第二评估模块704,若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
可选地,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,包括:
利用所述第一评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第一评估指标;
评估所述第一评估指标是否达到所述第一指标条件。
可选地,利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,包括:
利用所述第二评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第二评估指标;
评估所述第二评估指标是否达到所述第二指标条件。
利用本说明书实施例记载的装置,第二评估策略采用固定测试时长的方式,也就是设定预设测试结束日,在预设测试结束日基于第二评估策略对业务版本作最终评估。而在预设测试结束日之前,可以利用第一评估策略对业务版本进行评估,并且在业务版本持续未达到第一指标条件的情况下,基于第一评估策略的评估方案为连续评估,第二评估策略所采用的固定时长方式可以弥补所述连续评估所产生的低统计功效问题,进而能够尽可能地对A/B测试中存在显著区别的各业务版本得到显著差异的结论。因此,本说明书实施例记载的方案能够提高A/B测试的效率及测试精确度。
图8为本说明书实施例提出的一种A/B测试装置的应用示例的结构图。
图8所示A/B测试装置与图7的不同之处在于,还包括:
第一预估模块801,在所述A/B测试开始之前,根据所述第二指标条件预估在评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件时,所采集的所述业务数据的数据量;
第二预估模块802,根据预估的业务数据的数量预估所述预设测试结束日。
图9为本说明书实施例提出的一种A/B测试装置的结构示意图。
本装置与图7所示装置的不同之处在于,还包括:
确定模块901,确定为所述第一评估策略和第二评估策略各自配置的预设错误率;
预估模块902,基于各自的预设错误率预估第一指标条件和第二指标条件。
图10为本说明书实施例提出的一种A/B测试装置的结构示意图。
本装置与图7所示装置的不同之处在于,还包括:
提取模块1001,在利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件之前,从所述A/B测试的首个采集时间区间内采集的所述业务数据中提取评估指标数据;
调整模块1002,利用提取到的所述评估指标数据为输入,调整预估的所述第一评估策略中的超参数,直到得到达到预设期望值的所述第一指标条件;
更新模块1002,根据所述达到预设期望值的所述第一指标条件时的超参数更新所述第一评估策略。
基于同一个发明构思,本说明书实施例还提供了一种电子设备,包括:
处理器;以及
被配置成存储计算机程序的存储器,所述计算机程序在被执行时使所述处理器执行以下操作:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,第一评估策略不同于第二评估策略;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
基于同一发明构思,本说明书实施例中还提供了一种计算机可读存储介质,包括与电子设备结合使用计算机程序,所述计算机程序可被处理器执行以完成以下步骤:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,第一评估策略不同于第二评估策略;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable LogicDevice,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、MicrochipPIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (15)

1.一种A/B测试方法,包括:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;所述第一评估策略用于连续或定期地监控和版本评估,所述第二评估策略用于固定时长的版本评估;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果;在所述预设测试结束日之前,利用第一评估策略对业务版本进行连续评估,在所述预设测试结束日基于所述第二评估策略对业务版本作最终评估;
其中,所述第一指标条件和所述第二指标条件由预先分配的预设错误率确定,所述预先分配的预设错误率由提前决策概率所确定。
2.如权利要求1所述的方法,若所述业务版本达到所述第一指标条件,则还包括:
根据所述业务版本达到第一指标条件,确定对所述业务版本的评估结果。
3.如权利要求1所述的方法,若判断结果确定未到达所述预设测试结束日,则还包括:
返回所述采集A/B测试中的业务版本在运行过程中的业务数据。
4.如权利要求1所述的方法,在所述A/B测试开始之前,还包括:
根据所述第二指标条件预估在评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件时,所采集的所述业务数据的数据量;
根据预估的所述业务数据的数量预估所述预设测试结束日。
5.如权利要求1所述的方法,还包括:
确定为所述第一评估策略和第二评估策略各自配置的预设错误率;
基于各自的所述预设错误率预估所述第一指标条件和第二指标条件。
6.如权利要求5所述的方法,在利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件之前,还包括:
从所述A/B测试的首个采集时间区间内采集的所述业务数据中提取评估指标数据;
利用提取到的所述评估指标数据为输入,调整预估的所述第一评估策略中的超参数,直到得到达到预设期望值的所述第一指标条件;
根据所述达到预设期望值的所述第一指标条件时的超参数更新所述第一评估策略。
7.如权利要求1所述的方法,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,包括:
利用所述第一评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第一评估指标;
评估所述第一评估指标是否达到所述第一指标条件。
8.如权利要求1所述的方法,利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,包括:
利用所述第二评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第二评估指标;
评估所述第二评估指标是否达到所述第二指标条件。
9.一种A/B测试装置,包括:
采集模块,采集A/B测试中的业务版本在运行过程中的业务数据;
第一评估模块,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
判断模块,若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于
第二评估策略;所述第一评估策略用于连续或定期地监控和版本评估,所述第二评估策略用于固定时长的版本评估;
第二评估模块,若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果;在所述预设测试结束日之前,利用第一评估策略对业务版本进行连续评估,在所述预设测试结束日基于所述第二评估策略对业务版本作最终评估;
其中,所述第一指标条件和所述第二指标条件由预先分配的预设错误率确定,所述预先分配的预设错误率由提前决策概率所确定。
10.如权利要求9所述的装置,还包括:
第一预估模块,在所述A/B测试开始之前,根据所述第二指标条件预估在评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件时,所采集的所述业务数据的数据量;
第二预估模块,根据预估的所述业务数据的数量预估所述预设测试结束日。
11.如权利要求9所述的装置,还包括:
计算模块,根据所述A/B测试过程中,首次采集的所述业务数据计算所述第一评估策略中的超参数。
12.如权利要求9所述的装置,还包括:
确定模块,确定为所述第一评估策略和第二评估策略各自配置的预设错误率;
预估模块,基于各自的所述预设错误率预估所述第一指标条件和第二指标条件。
13.如权利要求9所述的装置,利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件,包括:
利用所述第一评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第一评估指标;
评估所述第一评估指标是否达到所述第一指标条件。
14.如权利要求9所述的装置,利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,包括:
利用所述第二评估策略对采集的所述业务数据进行处理,得到针对所述业务版本的第二评估指标;
评估所述第二评估指标是否达到所述第二指标条件。
15.一种电子设备,包括:
处理器;以及
被配置成存储计算机程序的存储器,所述计算机程序在被执行时使所述处理器执行以下操作:
采集A/B测试中的业务版本在运行过程中的业务数据;
利用采集的业务数据评估业务版本是否达到基于第一评估策略设定的第一指标条件;
若所述业务版本未达到所述第一指标条件,则判断所述A/B测试是否到达第二评估策略所设定的预设测试结束日,所述第一评估策略不同于第二评估策略;所述第一评估策略用于连续或定期地监控和版本评估,所述第二评估策略用于固定时长的版本评估;
若判断到达所述预设测试结束日,则利用采集的所述业务数据评估所述业务版本是否达到基于所述第二评估策略所设定的第二指标条件,得到所述业务版本的评估结果;在所述预设测试结束日之前,利用第一评估策略对业务版本进行连续评估,在所述预设测试结束日基于所述第二评估策略对业务版本作最终评估;
其中,所述第一指标条件和所述第二指标条件由预先分配的预设错误率确定,所述预先分配的预设错误率由提前决策概率所确定。
CN202010097681.3A 2020-02-17 2020-02-17 A/b测试方法、装置及电子设备 Active CN111324533B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010097681.3A CN111324533B (zh) 2020-02-17 2020-02-17 A/b测试方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010097681.3A CN111324533B (zh) 2020-02-17 2020-02-17 A/b测试方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111324533A CN111324533A (zh) 2020-06-23
CN111324533B true CN111324533B (zh) 2022-10-18

Family

ID=71163494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010097681.3A Active CN111324533B (zh) 2020-02-17 2020-02-17 A/b测试方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111324533B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737144B (zh) * 2020-07-17 2020-12-22 北京热云科技有限公司 一种智能设备ab测试故障排查方法及系统
CN113760315A (zh) * 2020-09-27 2021-12-07 北京沃东天骏信息技术有限公司 测试系统的方法和装置
CN112348523B (zh) * 2020-10-27 2024-08-27 深圳前海微众银行股份有限公司 规则的更新方法、终端、设备和计算机可读存储介质
CN113034171B (zh) * 2021-01-20 2022-11-18 腾讯科技(深圳)有限公司 一种业务数据处理方法、装置、计算机及可读存储介质
CN113609013A (zh) * 2021-08-03 2021-11-05 挂号网(杭州)科技有限公司 Ab测试的评估方法及装置、电子设备、存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015135043A1 (en) * 2014-03-13 2015-09-17 Bugwolf Pty Ltd Evaluation system and method
CN107678972A (zh) * 2017-10-27 2018-02-09 郑州云海信息技术有限公司 一种测试用例的评估方法及相关装置
CN108845936A (zh) * 2018-05-31 2018-11-20 阿里巴巴集团控股有限公司 一种基于海量用户的ab测试方法及系统
WO2019108633A1 (en) * 2017-12-01 2019-06-06 KnowBe4, Inc. Systems and methods for aida based a/b testing
CN109978062A (zh) * 2019-03-28 2019-07-05 北京九章云极科技有限公司 一种模型在线监控方法及系统
CN110489142A (zh) * 2019-07-12 2019-11-22 中国人民解放军63961部队 设备软件升级的评估方法及装置、存储介质、终端
CN110502431A (zh) * 2019-07-16 2019-11-26 阿里巴巴集团控股有限公司 系统服务评测方法、装置及电子设备
CN110727918A (zh) * 2019-09-09 2020-01-24 上海凯京信达科技集团有限公司 一种物流业务趋势评估方法、计算机存储介质及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150227962A1 (en) * 2014-02-11 2015-08-13 Sears Brands, L.L.C. A/b testing and visualization
US9635052B2 (en) * 2015-05-05 2017-04-25 Christopher J. HADNAGY Phishing as-a-service (PHaas) used to increase corporate security awareness
CN110245978B (zh) * 2019-05-23 2023-09-05 创新先进技术有限公司 策略组中的策略评估、策略选择方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015135043A1 (en) * 2014-03-13 2015-09-17 Bugwolf Pty Ltd Evaluation system and method
CN107678972A (zh) * 2017-10-27 2018-02-09 郑州云海信息技术有限公司 一种测试用例的评估方法及相关装置
WO2019108633A1 (en) * 2017-12-01 2019-06-06 KnowBe4, Inc. Systems and methods for aida based a/b testing
CN108845936A (zh) * 2018-05-31 2018-11-20 阿里巴巴集团控股有限公司 一种基于海量用户的ab测试方法及系统
CN109978062A (zh) * 2019-03-28 2019-07-05 北京九章云极科技有限公司 一种模型在线监控方法及系统
CN110489142A (zh) * 2019-07-12 2019-11-22 中国人民解放军63961部队 设备软件升级的评估方法及装置、存储介质、终端
CN110502431A (zh) * 2019-07-16 2019-11-26 阿里巴巴集团控股有限公司 系统服务评测方法、装置及电子设备
CN110727918A (zh) * 2019-09-09 2020-01-24 上海凯京信达科技集团有限公司 一种物流业务趋势评估方法、计算机存储介质及电子设备

Also Published As

Publication number Publication date
CN111324533A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
CN111324533B (zh) A/b测试方法、装置及电子设备
CN111930486B (zh) 任务选取数据处理方法、装置、设备及存储介质
CN109391680B (zh) 一种定时任务数据处理方法、装置及系统
CN110163417B (zh) 一种业务量的预测方法、装置及设备
CN108243032B (zh) 一种服务等级信息的获取方法、装置及设备
CN115203394A (zh) 一种模型训练的方法、业务执行的方法及装置
CN116225669B (zh) 一种任务执行方法、装置、存储介质及电子设备
CN116151363B (zh) 分布式强化学习系统
CN112003922A (zh) 一种数据传输方法及装置
CN110245978B (zh) 策略组中的策略评估、策略选择方法及装置
CN110599004A (zh) 一种风险控制方法、设备、介质以及装置
CN115543945B (zh) 一种模型压缩的方法、装置、存储介质及电子设备
CN115545572B (zh) 一种业务风控的方法、装置、设备及存储介质
CN112380088A (zh) 测试方法、装置和电子设备
CN116822606A (zh) 一种异常检测模型的训练方法、装置、设备及存储介质
CN112182454B (zh) 一种网页优化的方法、装置及存储介质、电子设备
CN114124838B (zh) 大数据平台的数据传输方法、装置及大数据平台管理系统
CN116188023A (zh) 一种风险识别模型训练的方法、装置、存储介质及设备
CN111026458B (zh) 一种应用程序退出时间设置方法及装置
CN113114395B (zh) 信道确定方法和装置
CN115952271B (zh) 一种生成对话信息的方法、装置、存储介质及电子设备
CN117592102A (zh) 一种业务执行方法、装置、设备及存储介质
CN113806074B (zh) 边缘计算的数据采集方法和装置
CN117294715A (zh) 端边云调度优化方法、系统和装置
CN109615234B (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