CN111309614B - A/b测试方法、装置及电子设备 - Google Patents
A/b测试方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111309614B CN111309614B CN202010097674.3A CN202010097674A CN111309614B CN 111309614 B CN111309614 B CN 111309614B CN 202010097674 A CN202010097674 A CN 202010097674A CN 111309614 B CN111309614 B CN 111309614B
- Authority
- CN
- China
- Prior art keywords
- test
- user
- characteristic information
- service
- 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.)
- Active
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
Abstract
本说明书实施例公开了一种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测试过程中的测试指标数据与历史指标数据进行比较,将比较结果确立为测试版本的评估指标。其实质是利用历史指标数据对测试指标数据进行降噪,消除用户的个体要素对测试指标数据产生的噪声影响,使得比较结果更能反映用户对测试版本的兴趣,提升测试版本的评估结果的精确度。
附图说明
此处所说明的附图用来提供对本说明书实施例的进一步理解,构成本说明书实施例的一部分,本说明书的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图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测试装置的结构示意图。
具体实施方式
对现有技术进行分析发现,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测试方法的流程图。
步骤202:确定在A/B测试中的测试版本所分配的测试用户组。
本说明书实施例记载的测试版本可以是为客户提供业务功能的服务版本。具体可以是应用、网页、应用界面等,还可以是一种权益,如红包,折扣等,在此不作具体限定。
A/B测试中的版本包括至少两个。具体地,其中一个版本可以是原始版本,作为对照版,另外的业务版本可以是优化的测试版本,其目的是测试优化的测试版本相比于原始版本是否更能带来良好的用户体验。还可以是,A/B测试中的业务版本中包括至少两个优化的测试版本,相互之间互为对照版和测试版,可以根据最终的测试结果从中选择其一,作为最终版本进行推广。
因此,在A/B测试中,对应每个测试版本可以分配一个测试用户组,那么后续具体测试过程中,可以采集各测试用户组中用户产生的数据,进行相互对比和评估。
在本说明书实施例中,确定在A/B测试中的测试版本所分配的测试用户组,可以包括:
利用所述测试用户组与测试版本之间的映射关系,获取所述测试版本所分配的测试用户组;
从所获取的测试用户组中提取各用户的标识信息,以便利用各用户的标识信息有针对性地采集测试指标数据。
步骤204:采集所述测试版本在运行时产生的测试指标数据。
在本说明书实施例中,A/B测试的目的为评测优化的测试版本对用户的吸引力,以期在全面推广时获得确定的用户增长。因此,所述测试指标数据为评估测试版本运行过程中的用户兴趣数据,用于评估测试版本的优劣。
具体地,测试指标数据可以包括:测试版本的注册率、转化率、点击率等,在此不作具体限定。
在本说明书实施例中,采集所述测试版本在运行时产生的测试指标数据,可以包括:
采集所述测试版本在运行时产生的测试业务数据;
从所述测试业务数据中提取所述测试指标数据。
其中,测试业务数据是计算测试指标数据的参考数据或输入数据,可以包含测试指标数据和其他类型数据。
在具体应用中,采集测试版本在运行时产生的测试业务数据,可以是连续或实时检测各测试用户组关联的客户端与服务端的交互信息。
步骤206:将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较。
本说明书实施例考虑不同用户对原始版本所提供功能的兴趣差异或行为差异,调整对测试版本的评估指标。具体地,有些用户对原始版本的行为数据不足,另一些用户对原始版本的行为数据很丰富,本说明书实施例通过求取用户的历史指标数据与测试指标数据之间的比较结果,
本说明书实施例记载的历史指标数据为在业务历史运行时采集的,可以是测试版本对应的历史版本在运行时产生的,例如包括用户行为数据,比如过去30天打开APP次数;还可以包括用户自身的特征信息,比如性别,城市等级,在此不作具体限定。
在本说明书实施例中,将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较,可以包括:
将各用户的所述测试指标数据与该测试指标数据所属用户关联的历史指标数据进行比较。
本说明书实施例以用户为单位,对测试指标数据进行降噪。
将测试指标数据与历史指标数据进行比较,可以是计算测试指标数据与历史指标数据之间的比值或变化率,在此不作具体限定。
步骤208:根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件。
本说明书实施例将比较结果作为测试版本最终的评估指标,以评估测试版本是否达到预设指标条件。若是,则确定该测试版本达标,可以推广到全部用户。若否,则确定该测试版本未达标。
利用本说明书实施例记载的方案,将当前A/B测试过程中的测试指标数据与历史指标数据进行比较,将比较结果确立为测试版本的评估指标。其实质是利用历史指标数据对测试指标数据进行降噪,消除用户的个体要素对测试指标数据产生的噪声影响,使得比较结果更能反映用户对测试版本的兴趣,提升测试版本的评估结果的精确度。
图3为本说明书实施例提出的一种A/B测试方法的应用示例的流程图。
步骤301可以参考上文步骤202的内容;
步骤303:将所述测试版本发送给所述测试用户组中各用户关联的客户端。
具体地,若测试版本为测试的业务权益信息,则将该业务权益信息发送给客户端,并展示给用户。
若测试版本为测试的页面、界面或应用,则基于测试版本对历史版本进行升级更新,此时可以将测试版本的升级包发送给用户关联的客户端。
步骤305可以参考上文步骤204,步骤307可以参考上文步骤206,步骤309可以参考上文步骤206,在此不再赘述。
图4为本说明书实施例提出的一种A/B测试方法的应用示例的流程图。
步骤401:获取各用户的历史业务数据。
具体地,历史业务数据可以是在为用户提供业务服务过程中产生的业务数据,或者说,用户享受业务服务过程中产生的行为数据。
历史业务数据可以从数据库中查找得到,具体可根据测试用户组中的用户标识检索数据库而得到。
这里的各用户为待分簇的用户,可以是随机选取的。
步骤403:从所述各用户的历史业务数据中提取指定类业务特征信息。
本说明书实施例记载的指定类业务特征信息为预设类别的业务特征信息。具体地,指定类业务特征信息可以包括:业务发生地的地理位置、业务发生时间、业务对象、对业务的分享信息等,在此不作具体限定。
步骤405:根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,使得所述测试用户组包括至少一个所述用户团簇。
在A/B测试中,对测试版本的效果准确预估,其中使用的假设是SUTVA(StableUnit Treatment Value Assumption),其原理是,假设各版本分配的测试用户各自是独立同分布的样本,测试效果对于某一用户的影响只取决于这一用户自身被分在哪个组,与其他用户的分组状况无关,这两个测试用户组的用户之间尽量避免存在业务分享或交流。本说明书实施例利用指定类业务特征信息,将可能存在业务分享或业务关联的各用户分配在同一个用户团簇中,并最终分配到同一个测试用户组中,这样可以在一定程度上避免各版本的用户之间可能存在业务分享或交流,确保各版本测试结果的准确性。
在本说明书实施例中,指定类业务特征信息为用户分簇指标。具有同一指定类业务特征信息的各用户之间存在相互影响或相互营销的可能,因此将这些用户划分到同一用户团簇,并最终归到同一测试用户组,可以确保测试用户组中各用户不受到其他测试用户组中用户的影响,保持测试用户组所对应测试版本的评估结果独立性。
具体地,根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,可以包括:
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系;
将所述至少两个用户划分到同一用户团簇。
本说明书实施例记载的业务分享关系可以是用户之间对测试版本可能存在业务分享或交流,业务分享关系可以包含线上通过社交软件的分享,还可以包含线下可能存在的面对面分享和交流,在此不作具体限定。将这些用户分配同一个用户团簇和测试用户组,可以增强测试用户组的独立性,避免两测试用户组之间的用户相互分享以影响到各测试版本独立的测试结果。
在一种改进实施例中,根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系,可以包括:
若提取到不同的所述指定类业务特征信息,则统计所述指定类业务特征信息在获取的所述历史业务数据中的分布数据;
利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重;
筛选所述关系权重达到预设权重条件的所述指定类业务特征信息;
确定筛选的所述指定类业务特征信息所属用户之间存在业务分享关系。
本说明书实施例记载的关系权重可以表征不同的指定类业务特征信息所属用户之间存在业务分享的概率值。在具体应用中,利用关系权重可以表征用户之间可能存在的线下面对面交流和影响。在这种情况下,所述指定类业务特征信息的分布数据可以是指,每个指定类业务特征信息在历史业务数据中的数据量或单位时间单位内的分布值。
那么,利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重,可以包括:
对每两个指定类业务特征信息,基于各指定类业务特征信息的分布数据计算这两个指定类业务特征信息之间的关系权重。
具体的计算算法,可以是求和或计算平均数或其他算法,在此不作限定。
在本说明书实施例中,若从所述历史业务数据中提取到所述用户的至少两个指定类业务特征信息,则根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,可以包括:
确定所述用户与所述至少两个指定类业务特征信息之间的交互关系深度;
从所述至少两个指定类业务特征信息中选择所述交互关系深度达到预设深度条件的指定类业务特征信息;
根据选择的所述指定类业务特征信息对所述用户进行分簇。
利用本方案,可以确定用户与指定类业务特征信息之间的一一对应关系,进而对用户进行精确分簇。
本说明书实施例记载的交互关系深度可以表征用户与各指定类业务特征信息的关联程度,或说表征用户的行为轨迹。交互关系深度越深,则说明该指定类业务特征信息更能表征用户的行为轨迹。
本说明书实施例记载的交互关系深度可以利用各指定类业务特征信息在用户的历史业务数据中的分布数据来确定,该分布数据可以是用户与指定类业务特征信息的交互频率、交互次数中的一种或两种来表征。
步骤407可以参考上文步骤202的内容,步骤409可以参考上文步骤204的内容,步骤411可以参考上文步骤206的内容,步骤413可以参考上文步骤208的内容,在此不再赘述。
图5为本说明书实施例提出的一种A/B测试方法的应用示例的流程图。
步骤502可以参考上文步骤202的内容,步骤504可以参考上文步骤204的内容,在此不在赘述。
步骤506:在将测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较之前,获取所述测试用户组中各用户的历史业务数据。
本说明书实施例记载的步骤506与504之间的时序关系不受图5所限定,可以相互替换。
步骤508:从所述历史业务数据中提取所述历史指标数据。
步骤510可以参考上文步骤206的内容,步骤512可以参考上文步骤208的内容,在此不再赘述。
图6为本说明书实施例提出的一种A/B测试方法的流程图。
步骤601:利用各用户的历史分享数据和历史支付数据中的一种或多种历史业务数据,构建用户关系图。
在这种情况下,通过用户关系图可以识别用户之间的分享关系。
步骤603:利用图算法对用户关系图进行切割,得到各用户团簇,每个用户团簇中的各用户之间基于预设关联关系被分配到同一个用户团簇。
步骤605:团簇分流,以团簇为单位构建测试用户组。
步骤607:对各测试用户组,以团簇为单位统计测试指标数据。
步骤609:利用历史指标数据对测试指标数据进行降噪,具体参考上文步骤206,在此不再赘述。
步骤611:以用户团簇为单位,利用降噪后的比较结果评估测试版本的优劣。
以用户的支付地的地理位置为例,阐述用户团簇构建方案的应用示例。
按照用户常支付地的地理位置切割用户关系图,构建用户团簇。这种构建用户团簇的理由是,在同一地理位置支付的用户之间有可能存在相互分享和营销的可能,例如若测试版本为一种权益时,那么用户有可能是受到支付地展示的权益影响,这样,经常在同一地理内交易的用户之间的相互影响被包在基于该支付地所构建的用户团簇。
另外,考虑到用户之间对权益的分享,被分享用户的常支付地点大概率是分享用户所在地理位置,那么在该地理位置内的分享用户和被分享用户尽可能被分在同一团簇内。
具体地,获取用户在一定时期内的支付行为,进而利用支付行为识别用户的常支付地。
获取用户在N天内的支付行为为Si,其中i∈[1,N],其中每一天支付次数最多的M个地点Si={Si1,Si2...,SiM};
统计整个窗口内N天出现次数最多的支付地点Sij,把这个作为用户所属用户团簇。
接着,对用户之间的分享关系进行构图(这个分享关系可以是支付关系、分享关系等),其中构图的边为buyerk与分享用户sellerl之间的关系,其边权重表示buyerk与sellerl之间的分享关系强弱。buyerk与支付地之间的关系是一一对应的,所以可以根据买家-卖家关系和买家-常支付地关系,构建卖家-地理位置关系,卖家sellerl与地理位置loc0的边权重为在卖家-地理位置关系之上,继续推导出地理位置-地理位置之间的关系,定义为可以表征lo1与lo2这两个地理位置的用户之间存在业务分享的概率。
之后,对所构建的地理位置-地理位置关系图进行分割,使得交互关系紧密(即关系权重达到预设权重条件)的各地理位置loc0被分配到同一个用户团簇。具体地,可以采用graph partitioning的算法。这个算法在切割较少边的情况下,使切割产出的各个用户团簇的节点权重之和接近平衡。在这种情况下,在满足各用户团簇内包含的用户人均支付天数相似的约束下,尽量少地切割地理位置-地理位置之间的分享关系,使得用户团簇中可以包含多个买家用户。
图7为本说明书实施例提出的一种A/B测试装置的结构示意图。
本装置可以包括:
第一确定模块701,确定在A/B测试中的测试版本所分配的测试用户组;
采集模块702,从所述测试用户组采集所述测试版本在运行时产生的测试指标数据;
比较模块703,将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较;
第二确定模块704,根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件。
利用本说明书实施例记载的装置,将当前A/B测试过程中的测试指标数据与历史指标数据进行比较,将比较结果确立为测试版本的评估指标。其实质是利用历史指标数据对测试指标数据进行降噪,消除用户的个体要素对测试指标数据产生的噪声影响,使得比较结果更能反映用户对测试版本的兴趣,提升测试版本的评估结果的精确度。
图8为本说明书实施例提出的一种A/B测试装置的结构示意图。
本装置可以包括:
获取模块801,在确定在A/B测试中的测试版本所分配的测试用户组之前,获取各用户的历史业务数据;
提取模块802,从所述各用户的历史业务数据中提取指定类业务特征信息;
分簇模块803,根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,使得所述测试用户组包括至少一个所述用户团簇。
第一确定模块804可以参考上文第一确定模块701,采集模块805可以参考上文采集模块702,比较模块806可以参考上文步骤703,第二确定模块807可以参考上文第二确定模块704,在此不再详述。
可选地,根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系;
将所述至少两个用户划分到同一用户团簇。
可选地,根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系,包括:
若提取到不同的所述指定类业务特征信息,则统计所述指定类业务特征信息在获取的所述历史业务数据中的分布数据;
利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重;
筛选所述关系权重达到预设权重条件的所述指定类业务特征信息;
确定筛选的所述指定类业务特征信息所属用户之间存在业务分享关系。
可选地,若从所述历史业务数据中提取到所述用户的至少两个指定类业务特征信息,则根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
确定所述用户与所述至少两个指定类业务特征信息之间的交互关系深度;
从所述至少两个指定类业务特征信息中选择所述交互关系深度达到预设深度条件的指定类业务特征信息;
根据选择的所述指定类业务特征信息对所述用户进行分簇。
图9为本说明书实施例提出的一种A/B测试装置的结构示意图。
在本装置中,第一确定模块901可以参考上文第一确定模块701,采集模块902可以参考上文采集模块702。
本装置还可以包括:
获取模块903,在将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较之前,获取测试指标数据所属用户的历史业务数据;
提取模块904,从所述历史业务数据中提取所述历史指标数据。
比较模块905可以参考上文步骤703,第二确定模块906可以参考上文第二确定模块704,在此不再详述。
基于同一发明构思,本说明书实施例中还提供了一种电子设备,包括:
处理器;以及
被配置成存储计算机程序的存储器,所述计算机程序在被执行时使所述处理器执行以下操作:
确定在A/B测试中的测试版本所分配的测试用户组;
从所述测试用户组采集所述测试版本在运行时产生的测试指标数据;
将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较;
根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件。
基于同一发明构思,本说明书实施例中还提供了一种计算机可读存储介质,包括与电子设备结合使用计算机程序,所述计算机程序可被处理器执行以完成以下步骤:
确定在A/B测试中的测试版本所分配的测试用户组;
从所述测试用户组采集所述测试版本在运行时产生的测试指标数据;
将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较;
根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,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、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种A/B测试方法,包括:
确定在A/B测试中的测试版本所分配的测试用户组;
采集所述测试版本在运行时产生的测试指标数据;
将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较,所述历史指标数据包括所述测试版本对应的历史版本在运行时产生的数据;
根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件;
在确定在A/B测试中的测试版本所分配的测试用户组之前,还包括:
获取各用户的历史业务数据;
从所述各用户的历史业务数据中提取指定类业务特征信息;
根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,使得所述测试用户组包括至少一个所述用户团簇;
根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系;
将所述至少两个用户划分到同一用户团簇;
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系,包括:
若提取到不同的所述指定类业务特征信息,则统计所述指定类业务特征信息在获取的所述历史业务数据中的分布数据;
利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重;
筛选所述关系权重达到预设权重条件的所述指定类业务特征信息;
确定筛选的所述指定类业务特征信息所属用户之间存在业务分享关系。
2.如权利要求1所述的方法,若从所述历史业务数据中提取到所述用户的至少两个指定类业务特征信息,则根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
确定所述用户与所述至少两个指定类业务特征信息之间的交互关系深度;
从所述至少两个指定类业务特征信息中选择所述交互关系深度达到预设深度条件的指定类业务特征信息;
根据选择的所述指定类业务特征信息对所述用户进行分簇。
3.如权利要求1所述的方法,所述指定类业务特征信息包括业务发生地的地理位置。
4.如权利要求1所述的方法,在将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较之前,还包括:
获取所述测试用户组中各用户的历史业务数据;
从所述历史业务数据中提取所述历史指标数据。
5.如权利要求1所述的方法,在从所述测试用户组采集所述测试版本在运行时产生的测试指标数据之前,还包括:
将所述测试版本发送给所述测试用户组中各用户关联的客户端。
6.一种A/B测试装置,包括:
第一确定模块,确定在A/B测试中的测试版本所分配的测试用户组;
采集模块,从所述测试用户组采集所述测试版本在运行时产生的测试指标数据;
比较模块,将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较,所述历史指标数据包括所述测试版本对应的历史版本在运行时产生的数据;
第二确定模块,根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件;
获取模块,在确定在A/B测试中的测试版本所分配的测试用户组之前,获取各用户的历史业务数据;
提取模块,从所述各用户的历史业务数据中提取指定类业务特征信息;
分簇模块,根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,使得所述测试用户组包括至少一个所述用户团簇;根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系;
将所述至少两个用户划分到同一用户团簇;
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系,包括:
若提取到不同的所述指定类业务特征信息,则统计所述指定类业务特征信息在获取的所述历史业务数据中的分布数据;
利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重;
筛选所述关系权重达到预设权重条件的所述指定类业务特征信息;
确定筛选的所述指定类业务特征信息所属用户之间存在业务分享关系。
7.如权利要求6所述的装置,若从所述历史业务数据中提取到所述用户的至少两个指定类业务特征信息,则根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
确定所述用户与所述至少两个指定类业务特征信息之间的交互关系深度;
从所述至少两个指定类业务特征信息中选择所述交互关系深度达到预设深度条件的指定类业务特征信息;
根据选择的所述指定类业务特征信息对所述用户进行分簇。
8.如权利要求6所述的装置,还包括:
获取模块,在将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较之前,获取所述测试指标数据所属用户的历史业务数据;
提取模块,从所述历史业务数据中提取所述历史指标数据。
9.一种电子设备,包括:
处理器;以及
被配置成存储计算机程序的存储器,所述计算机程序在被执行时使所述处理器执行以下操作:
确定在A/B测试中的测试版本所分配的测试用户组;
从所述测试用户组采集所述测试版本在运行时产生的测试指标数据;
将所述测试指标数据与所述测试指标数据所属用户关联的历史指标数据进行比较,所述历史指标数据包括所述测试版本对应的历史版本在运行时产生的数据;
根据比较结果确定所述测试版本的评估指标,以利用所述评估指标评估所述测试版本是否达到预设指标条件;
在确定在A/B测试中的测试版本所分配的测试用户组之前,还包括:
获取各用户的历史业务数据;
从所述各用户的历史业务数据中提取指定类业务特征信息;
根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,使得所述测试用户组包括至少一个所述用户团簇;
根据所述指定类业务特征信息对所述各用户进行分簇得到至少一个用户团簇,包括:
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系;
将所述至少两个用户划分到同一用户团簇;
根据所述指定类业务特征信息确定至少两个用户之间存在业务分享关系,包括:
若提取到不同的所述指定类业务特征信息,则统计所述指定类业务特征信息在获取的所述历史业务数据中的分布数据;
利用所述分布数据确定不同的所述指定类业务特征信息之间的关系权重;
筛选所述关系权重达到预设权重条件的所述指定类业务特征信息;
确定筛选的所述指定类业务特征信息所属用户之间存在业务分享关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010097674.3A CN111309614B (zh) | 2020-02-17 | 2020-02-17 | A/b测试方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010097674.3A CN111309614B (zh) | 2020-02-17 | 2020-02-17 | A/b测试方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111309614A CN111309614A (zh) | 2020-06-19 |
CN111309614B true CN111309614B (zh) | 2022-10-18 |
Family
ID=71145753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010097674.3A Active CN111309614B (zh) | 2020-02-17 | 2020-02-17 | A/b测试方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309614B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784173B (zh) * | 2020-07-09 | 2022-06-03 | 支付宝(杭州)信息技术有限公司 | Ab实验数据处理方法、装置、服务器及介质 |
CN111737144B (zh) * | 2020-07-17 | 2020-12-22 | 北京热云科技有限公司 | 一种智能设备ab测试故障排查方法及系统 |
CN112162918A (zh) * | 2020-09-07 | 2021-01-01 | 北京达佳互联信息技术有限公司 | 应用程序的测试方法、装置及电子设备 |
CN112306836B (zh) * | 2020-11-09 | 2023-07-25 | 百度在线网络技术(北京)有限公司 | 采样对象确定方法、装置、电子设备存储介质和程序产品 |
EP4024217A4 (en) | 2020-11-09 | 2022-08-10 | Baidu Online Network Technology (Beijing) Co., Ltd | IMAGE PROCESSING METHOD AND DEVICE, AND ELECTRONIC DEVICE AND COMPUTER READABLE STORAGE MEDIUM |
CN112905476B (zh) * | 2021-03-12 | 2023-08-11 | 网易(杭州)网络有限公司 | 测试的执行方法及装置、电子设备、存储介质 |
CN113392018B (zh) * | 2021-06-28 | 2024-01-16 | 北京字节跳动网络技术有限公司 | 流量分发方法、装置、存储介质及电子设备 |
CN113609013A (zh) * | 2021-08-03 | 2021-11-05 | 挂号网(杭州)科技有限公司 | Ab测试的评估方法及装置、电子设备、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017202208A1 (zh) * | 2016-05-24 | 2017-11-30 | 腾讯科技(深圳)有限公司 | 征信特征获取方法及其设备 |
CN107766235A (zh) * | 2017-09-06 | 2018-03-06 | 北京五八到家信息技术有限公司 | 一种基于随机分流的a/b测试方法 |
WO2018099275A1 (zh) * | 2016-11-29 | 2018-06-07 | 阿里巴巴集团控股有限公司 | 一种业务对象属性标识的生成方法、装置和系统 |
CN110033156A (zh) * | 2018-12-14 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种业务活动效果的确定方法及装置 |
WO2019143543A2 (en) * | 2018-01-21 | 2019-07-25 | Microsoft Technology Licensing, Llc | Dynamic experimentation evaluation system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130030868A1 (en) * | 2011-07-25 | 2013-01-31 | Cbs Interactive, Inc. | Scheduled Split Testing |
CN103324566B (zh) * | 2012-03-20 | 2016-04-06 | 阿里巴巴集团控股有限公司 | 一种网页产品多版本测试方法及装置 |
US20150227962A1 (en) * | 2014-02-11 | 2015-08-13 | Sears Brands, L.L.C. | A/b testing and visualization |
CN104993946B (zh) * | 2015-06-01 | 2019-04-05 | 华为技术有限公司 | 灰度发布的评估方法、装置和系统 |
US10796337B2 (en) * | 2015-08-27 | 2020-10-06 | Staples, Inc. | Realtime feedback using affinity-based dynamic user clustering |
US10261890B2 (en) * | 2015-09-14 | 2019-04-16 | Salesforce.Com, Inc. | Methods and systems for executing tests using grouped/filtered test classes during testing of an application |
US10489425B2 (en) * | 2017-10-26 | 2019-11-26 | Salesforce.Com, Inc. | User clustering based on query history |
CN108647981A (zh) * | 2018-05-17 | 2018-10-12 | 阿里巴巴集团控股有限公司 | 一种目标对象关联关系确定方法和装置 |
-
2020
- 2020-02-17 CN CN202010097674.3A patent/CN111309614B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017202208A1 (zh) * | 2016-05-24 | 2017-11-30 | 腾讯科技(深圳)有限公司 | 征信特征获取方法及其设备 |
WO2018099275A1 (zh) * | 2016-11-29 | 2018-06-07 | 阿里巴巴集团控股有限公司 | 一种业务对象属性标识的生成方法、装置和系统 |
CN107766235A (zh) * | 2017-09-06 | 2018-03-06 | 北京五八到家信息技术有限公司 | 一种基于随机分流的a/b测试方法 |
WO2019143543A2 (en) * | 2018-01-21 | 2019-07-25 | Microsoft Technology Licensing, Llc | Dynamic experimentation evaluation system |
CN110033156A (zh) * | 2018-12-14 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种业务活动效果的确定方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111309614A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111309614B (zh) | A/b测试方法、装置及电子设备 | |
CN110363449B (zh) | 一种风险识别方法、装置及系统 | |
CN107563429B (zh) | 一种网络用户群体的分类方法及装置 | |
CN109063966B (zh) | 风险账户的识别方法和装置 | |
US20210042628A1 (en) | Building a federated learning framework | |
US10929899B2 (en) | Dynamic pricing of application programming interface services | |
US10990810B2 (en) | Automated facial recognition detection | |
CN110688974B (zh) | 一种身份识别方法及装置 | |
CN108416616A (zh) | 投诉举报类别的排序方法和装置 | |
US10368196B2 (en) | Suppressing notifications based on directed location activity | |
US11281992B2 (en) | Predicting geofence performance for optimized location based services | |
US20210374582A1 (en) | Enhanced Techniques For Bias Analysis | |
CN110399268B (zh) | 一种异常数据检测的方法、装置及设备 | |
CN110674188A (zh) | 一种特征提取方法、装置及设备 | |
CN110781971A (zh) | 一种商户类型识别方法、装置、设备和可读介质 | |
CN111160793A (zh) | 一种服务网点自助设备数量的配置方法、装置及设备 | |
US11501239B2 (en) | Metric specific machine learning model improvement through metric specific outlier removal | |
CN111062431A (zh) | 图像聚类方法、图像聚类装置、电子设备及存储介质 | |
CN112966756A (zh) | 一种可视化的准入规则的生成方法、装置、机器可读介质及设备 | |
US11200502B2 (en) | Streaming atomic link learning based on socialization and system accuracy | |
CN111259975B (zh) | 分类器的生成方法及装置、文本的分类方法及装置 | |
US11303683B2 (en) | Methods and systems for managing distribution of online content based on content maturity | |
US11093636B2 (en) | Maintaining data protection compliance and data inference from data degradation in cross-boundary data transmission using containers | |
US11327825B2 (en) | Predictive analytics for failure detection | |
CN115564450B (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 |