CN115408280A - 流量分配方法、分流模型配置方法、设备、介质和产品 - Google Patents

流量分配方法、分流模型配置方法、设备、介质和产品 Download PDF

Info

Publication number
CN115408280A
CN115408280A CN202211046984.8A CN202211046984A CN115408280A CN 115408280 A CN115408280 A CN 115408280A CN 202211046984 A CN202211046984 A CN 202211046984A CN 115408280 A CN115408280 A CN 115408280A
Authority
CN
China
Prior art keywords
flow
experiment
distributed
experimental
different
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
Application number
CN202211046984.8A
Other languages
English (en)
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.)
Shanghai Pudong Development Bank Co Ltd
Original Assignee
Shanghai Pudong Development Bank 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 Shanghai Pudong Development Bank Co Ltd filed Critical Shanghai Pudong Development Bank Co Ltd
Priority to CN202211046984.8A priority Critical patent/CN115408280A/zh
Publication of CN115408280A publication Critical patent/CN115408280A/zh
Pending legal-status Critical Current

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

Abstract

本申请涉及一种流量分配方法、分流模型配置方法、装置、计算机设备、存储介质和计算机程序产品,通过获取待分配流量对应的群体标签以及业务场景,根据群体标签划分多个实验域,以及根据业务场景在实验域中设置多个实验层,根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数,根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,且根据实验参数在实验中设置多个实验组,在实验中,将待分配流量分配至不同的实验组,能够降低分流实验间的相互干扰,实现流量的充分利用。

Description

流量分配方法、分流模型配置方法、设备、介质和产品
技术领域
本申请涉及互联网科技领域,特别是涉及一种流量分配方法、分流模型配置方法、计算机设备、存储介质和计算机程序产品。
背景技术
对特定场景进行业务实验,往往需要通过前端与服务端交互来查询实验信息以判断准入以及限制流量,并根据准入结果查询实验数据。由于各个场景面向的用户群体不同,实验的周期以及流量配比各不相同,因而各个实验需要独立完成准入判断和限流的工作。
传统方法中,主要是将可能相互干扰的实验放在独占试验区,将互相独立的实验放在并行试验区。独占实验区的流量与并行实验区相互隔离,保证互不干扰;并行实验区则划分为多个实验层,每个实验层有各自的准入规则,实验层内可以放置多个实验。
然而,上述方法在实际应用时,独占实验区的实验并不是和并行实验区的所有实验都有耦合关系,如果将存在耦合关系的实验全部纳入独占区,且相应的流量与其他实验隔离,会导致大量的流量无法复用。
发明内容
基于此,有必要针对上述技术问题,提供一种能够充分利用所有实验流量的流量分配方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种流量分配方法,该方法包括:
获取待分配流量;
根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;
在实验中,将待分配流量分配至不同的实验组。
在其中一个实施例中,上根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,包括:
根据群体标签将待分配流量分配至不同的实验域;
根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
在其中一个实施例中,上述根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,还包括:
将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;
对第一计算结果取模,得到待分配流量的流量区间;
获取不同实验的实验参数,实验参数包括实验流量占比以及各实验组的流量占比;
根据流量区间以及流量占比将待分配流量分配至不同的实验。
在其中一个实施例中,上述在实验中,将待分配流量分配至不同的实验组,包括:
对第一计算结果进行哈希计算,得到第二计算结果;
对第二计算结果取模,得到分配至实验的流量区间;
根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
在其中一个实施例中,上述方法还包括:
获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;
根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
在其中一个实施例中,上述方法还包括:
获取待分配流量在不同的实验组中的实验结果;
根据实验结果计算评价指标;
根据评价指标对实验组进行评估。
第二方面,本申请还提供了一种分流模型配置方法,该方法包括:
获取待分配流量对应的群体标签以及业务场景
根据群体标签划分多个实验域,其中不同实验域中的群体标签不同;
根据业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;
根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数;
根据实验参数在实验中设置多个实验组,实验组间的流量相互独立。
第三方面,本申请还提供了一种流量分配装置,该装置包括:
流量获取模块,用于获取待分配流量;
第一分配模块,用于根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;
第二分配模块,用于在实验中,将待分配流量分配至不同的实验组。
第四方面,本申请还提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现第一方面或第二方面中任一项的方法步骤。
第五方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现第一方面或第二方面中任一项的方法步骤。
第六方面,本申请还提供了一种计算机程序产品,该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面或第二方面中任一项的方法步骤。
上述流量分配方法、分流模型配置方法、流量分配装置、计算机设备、存储介质和计算机程序产品,通过获取待分配流量对应的群体标签以及业务场景,根据群体标签划分多个实验域,以及根据业务场景在实验域中设置多个实验层,根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数,根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,且根据实验参数在实验中设置多个实验组,在实验中,将待分配流量分配至不同的实验组,能够降低分流实验间的相互干扰,实现流量的充分利用。
附图说明
图1为传统技术中分流模型的结构示意图;
图2为本申请实施例中流量分配方法和分流模型配置方法的应用环境图;
图3为本申请一个实施例中流量分配方法的流程示意图;
图4为图3所示实施例中S302步骤的流程示意图;
图5为图3所示实施例中S303步骤的流程示意图;
图6为本申请一个实施例中流量分配方法的流程示意图;
图7为本申请一个实施例中分流模型配置方法的流程示意图;
图8为本申请一个实施例中多层分流实验系统分流计算的流程示意图;
图9为本申请一个实施例中多层分流实验系统的业务构架示意图;
图10为本申请一个实施例中流量分配模型的结构示意图;
图11为本申请一个实施例中流量分配装置的结构框图;
图12为本申请一个实施例中分流模型配置装置的结构框图;
图13为本申请一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种数据,但这些数据不受这些术语限制。这些术语仅用于将第一个数据与另一个数据区分。除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本申请。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作或它们的组合的可能性。同时,在本说明书中使用的术语“和/或”包括相关所列项目的任何及所有组合。
正如背景技术所述,对特定场景进行业务实验,需要通过前端与服务端交互来查询客户信息以判断准入以及限制流量,由于各个场景面向的用户群体不同,各个实验需要独立完成准入判断和限流的工作。同一个业务场景很难配置多个实验进行实验,实验的新增和下线都需要科技变更,难以维护;而同一个业务模块的不同功能点,由于缺乏校验机制,实验间的相互影响也难以避免。为了量化判断新业务方案与既有方案的优劣,互联网行业一般使用AB Test的分流对比方案来进行实验,AB Test需要解决流量分配和互斥实验流量隔离的问题。
AB Test也就是AB测试,简单来说,就是为同一个产品目标制定两个方案(比如两个页面一个用红色的按钮,另一个用蓝色的按钮),让一部分用户使用A方案,另一部分用户使用B方案,然后通过日志记录用户的使用情况,并通过结构化的日志数据分析相关指标,如点击率、转化率等,从而得出哪个方案更符合预期设计目标,并最终将全部流量切换至符合目标的方案。点击率是指网站页面上某一内容被点击的次数与被显示次数之比,即clicks(点击)/views(显示);转化率指产品中单一交互行为和总体功能,使用后与使用前的用户数量之比。
采用AB Test进行分流实验时的模型如图1所示,将可能相互干扰的实验放在独占试验区,将互相独立的实验放在并行试验区。独占实验区的客户流量与并行实验区相互隔离,保证互不干扰;并行实验区则划分为多个实验层,每个实验层有各自的准入规则,实验层内可以放置多个实验。
然而在实际实验中,独占实验区的实验并不是和并行实验区的所有实验都有耦合关系,各个实验间的耦合关系也并不一致,如果将存在耦合关系的实验全部纳入独占区,将其流量与其他实验隔离,将导致大量的流量无法复用。针对上述问题,本申请中提供了一种流量分配方法以及分流模型训练方法,通过多维度的标签组合以及多层级的流量分发,保证各个实验间互不干扰且实验内各组用户具备相同的统计特征,实现客户流量的多次利用。
本申请实施例提供的流量分配方法,可以应用于如图2所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102是由多个终端组成的集群,用于进行分流实验。服务器104用于将流量分配至终端102的实验中。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。在一个实施例中,如图3所示,提供了一种流量分配方法,以该方法应用于图2中的服务器为例,包括以下步骤:
S301:获取待分配流量。
其中,待分配流量包括流量对应的群体标签,例如地域标签以及性别标签等。待分配流量还包括流量对应的业务场景,业务场景指业务需求对应的业务模块,以手机银行软件为例,粗颗粒度的业务模块可以按频道来划分,如“首页”、“资讯”以及“财富”等,细颗粒度的业务模块可以按具体的页面来划分,如“我的账户”以及“我的资产负债”。颗粒度是指具体的详细和清晰程度,颗粒度越细,表示细节越详尽,越有助于了解事情的全貌;颗粒度越粗,表示细节越少,更多的是抽象概括。
S302:根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验。
其中,从标签建立的维度,可将标签分为用户属性类、用户行为类、用户消费类以及风险控制类,群体标签则是指用户属性类标签,例如性别、年龄、地域、注册日期以及会员类型等。对于相同的一级标签,需要判断多个标签之间的关系是互斥还是非互斥关系,例如,在判断性别时,不能既是男又是女,这就是互斥关系。业务场景是指企业和商家需要在用户某个特定的环节中,适时提供给消费者可能需要的以及关联的产品或服务,也就是业务需求对应的业务模型。以银行业务为例,主要包括存款业务、贷款业务、支付结算业务以及现金业务等,业务模块则包括:银行产品模块以及零售服务模块等。实验是指通过ABTest测试,选择出最佳方案,而进行流量分配能够支持更多的实验,多个实验可以并行扩展,保证实验的准确性和合理性,而且针对实验结果,能够快速获取数据分析实验结果。
所有待分配流量按照不同维度的标签划分到各个实验域,维度不同的实验域定义的客户群体维度也不同,视为相互独立。在同一个实验域下,根据业务模块划分为多个实验层,每个业务模块占据一个实验层,且对于有重叠的实验域,某一业务模块只能在其中一个实验域建立实验层,以避免相互干扰。一个实验层中包含多个实验,每个实验在实验层中的流量占比不相同。在进行流量分配时,待分配流量在穿过一个实验层后,将被打散进入下一个实验层,而单个实验层中的流量切分与实验层的流量切分类似,各个实验的流量相互隔离,互相独立。
S303:在实验中,将待分配流量分配至不同的实验组。
其中,每个实验中包括多个实验组,每个实验组包括不同的对比实验,每个实验组在单个实验中的流量占比不同。实验组中的流量切分与单个实验层中的流量切分类似,流量同样相互隔离,互相独立。
上述流量分配方法中,通过获取待分配流量,根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,在实验中,将待分配流量分配至不同的实验组,能够降低分流实验间的相互干扰,实现流量的充分利用。
在一个实施例中,上述根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,包括:根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
其中,实验域以群体标签为划分标准,例如将地域标签相同的流量划分为同一实验域,对于地域标签相同的流量按照地域标签的细分标签进行划分,例如地域标签为A省,则细分标签可以为B市、C市以及D市等,对应的实验域则分别为实验域E、实验域F以及实验域G。不同的实验域定义的客户群体也不同,可视为相互独立,细分标签不同的情况下,也视为相互独立。
实验层以业务场景为划分标准,在同一个实验域下,可建立多个实验层。每个业务模块占据一个实验层,且对于有重叠的实验域,某一业务模块只能在其中一个实验域建立实验层,以避免相互干扰。以银行业务为例,银行产品模块为实验层A,零售服务模块则为实验层B。同一个实验层的实验目标客群相同且业务场景相互影响,为互斥实验,因而各自占据实验层的部分流量,以保证独立性。
上述实施例中,根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,使得各个实验层之间的流量正交,能够保证实验中的流量相互独立,降低分流实验间的互相干扰,同时通过实验层的划分能够实现流量的充分利用。
在一个实施例中,如图4所示,上述根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,还包括以下步骤:
S401:将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果。
其中,在进行群体标签和实验周期等准入判断后,将当前待分配流量随机分配至对应实验以及分组中,因此,选用哈希函数(Murmur Hash)进行计算。Murmur Hash是一种非加密型哈希函数,适用于一般的哈希检索操作,具有简单、计算结果分布均匀,以及较一般哈希算法速度更快的特点。哈希又称作“散列”,是一种数学计算机程序,它接收任何一组任意长度的输入信息,通过哈希算法变换成固定长度的数据指纹输出形式,如字母和数字的组合,该输出就是“哈希值”。以客户号、实验域号以及实验模块号为例,进行哈希计算时,首先将客户号、实验域号和实验模块号进行拼接,获得的数字作为入参调用哈希运算函数,获得哈希运算后的结果。哈希的过程其实是将可能有序的客户号映射到无序的运算结果中去,举例来说,一串连续的客户号,经过哈希运算后就可以得到离散分布的集合。
S402:对第一计算结果取模,得到待分配流量的流量区间。
其中,由于流量的分配按照百分比进行,所有待分配流量的范围为[0,100),流量区间则表示待分配流量的范围中的一个子集,因此,对于得到的第一计算结果取模后,则可以使第一计算结果均匀分布在[0,100)区间中。
S403:获取不同实验的实验参数。
其中,实验参数包括实验流量占比以及各实验组的流量占比,实验流量占比表示不同实验在当前实验层中占据的流量比例,实验组的流量占比表示不同实验组在当前实验中占据的流量比例。
S404:根据流量区间以及流量占比将待分配流量分配至不同的实验。
其中,将待分配流量按照百分比分配至不同实验,例如实验流量占比为30%的实验,设定的流量区间可以是[20,50),值在该区间的对应流量就被分配到该实验。
上述实施例中,将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果,并对第一计算结果取模,得到待分配流量的流量区间,根据流量区间以及流量占比将待分配流量分配至不同的实验,能够保证实验中的流量相互独立,降低分流实验间的互相干扰,同时实现流量的充分利用。
在一个实施例中,如图5所示,上述在实验中,将待分配流量分配至不同的实验组,包括以下步骤:
S501:对第一计算结果进行哈希计算,得到第二计算结果。
其中,当流量分配至实验中,需要将实验内的流量同样按百分比分配给各个实验组,分配至实验组的方法与分配至实验的方法相同。例如:当前实验在实验层中占据的流量区间为[0,2),有4个实验组,平分实验流量。进入当前实验的流量对应的第一计算结果取模结果只有0和1,为了能够按百分比区间分配,将第一次哈希计算结果作为输入参数再次进行哈希运算,获得离散的二次哈希运算结果,即第二计算结果。
S502:对第二计算结果取模,得到分配至实验的流量区间。
其中,对第二计算结果取模后,得到的结果均匀分布在[0,100)区间中,就可以按百分比分配给各个实验组。
S503:根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
其中,与分配至实验中相同,将待分配流量按照百分比分配至不同实验组。
上述实施例中,对第一计算结果进行哈希计算,得到第二计算结果,并对第二计算结果取模,得到分配至实验的流量区间,根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中,能够保证实验组中的流量相互独立,降低实验组间的互相干扰,实现流量的充分利用。
在一个实施例中,上述方法还包括:获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
其中,在前端有N个场景建立AB实验的情况下,统一访问分流服务与各场景前端分别访问分流服务相比,统一访问分流服务的交互次数降低为后者的1/N。各个前端页面按待分配流量对应的群体标签以及业务场景,展示对应的分配结果以及相关数据等。
上述实施例中,统一获取待分配流量的分配结果,并根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示,能够有效降低通信次数,提高数据显示效率。
在一个实施例中,如图6所示,上述方法还包括以下步骤:
S601:获取待分配流量在不同的实验组中的实验结果。
其中,实验结果中包括用于表示当前分流实验组的行为数据,例如曝光量、点击率以及购买率等指标。
S602:根据实验结果计算评价指标。
其中,评价指标可采用漏斗模型进行分析,将实验中的各组数据进行统计,按自然日、周以及月等时间维度统计各组实验在业务流程各个环节的曝光量、点击率以及购买率等指标的变化趋势,进而计算出总的评价指标。例如,以月为单位,从月平均曝光率Er、点击率Cr和购买率Pr三个指标计算某系列同类产品的得分,其权重分别为a、b、c,那么可以得到各个产品的总指标为:S=a·Er+b·Cr+c·Cr。
漏斗模型的核心分为分解和量化,通过这种分解和量化的形式,将问题进行不断的拆解,最后通过量化的形式来辅助达成目标,或者对异常的步骤进行调优,最终达到总目标。
S603:根据评价指标对实验组进行评估。
上述实施例中,通过获取待分配流量在不同的实验组中的实验结果,并根据实验结果计算评价指标,最后根据评价指标对实验组进行评估,能够直观对比出各实验组的指标优劣,选出最佳的业务方案。
在一个实施例中,如图7所示,提供了一种分流模型配置方法,该方法包括以下步骤:
S701:获取待分配流量对应的群体标签以及业务场景。
其中,群体标签可以是地域标签以及性别标签等;业务场景指业务需求对应的业务模块。
S702:根据群体标签划分多个实验域。
其中,不同实验域中的群体标签不同,例如将地域标签相同的流量划分为同一实验域,对于地域标签相同的流量按照地域标签的细分标签进行划分。
S703:根据业务场景在实验域中设置多个实验层。
其中,每个实验层对应的业务场景不同,在同一个实验域下,可建立多个实验层。每个业务模块占据一个实验层,且对于有重叠的实验域,某一业务模块只能在其中一个实验域建立实验层,以避免相互干扰。
S704:根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数。
其中,实验周期用于表示分流实验过程中实验相关数据的保存期限,当达到实验周期的时长,会重新进行分流数据的缓存。实验参数包括实验流量占比以及各实验组的流量占比,实验流量占比表示不同实验在当前实验层中占据的流量比例,实验组的流量占比表示不同实验组在当前实验中占据的流量比例。
S705:根据实验参数在实验中设置多个实验组。
其中,实验组间的流量相互独立,待分配流量在穿过一个实验组后被重新打散进入下一个实验组,各个实验组之间的流量正交。
上述实施例中,通过获取待分配流量对应的群体标签以及业务场景,根据群体标签划分多个实验域,并根据业务场景在实验域中设置多个实验层,根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数,根据实验参数在实验中设置多个实验组,能够实现对分流模型配置,使得分流模型能够按照需求进行分流实验。
在一个实施例中,提供了一种手机银行的多层分流AB Test实验系统,包括管理端、服务端以及客户端。
其中,管理端用于实验参数配置以及冲突校验:管理端为业务提供方便直观的操作平台,便于灵活配置一系列AB实验。管理端的配置过程可以视为实验数据模型实例化的构建过程,因而管理端的设计需基于实验分流模型的设计,包括实验域配置页面、实验层配置页面和实验配置页面。管理端配置的流程为:1)配置实验域,划定目标客群;2)实验域下配置实验层,确定业务模块;3)配置实验,确定实验的周期、流量划分等具体参数。
服务端用于查询客户属性并进行准入判断:如图8所示,当业务发起,分流服务首先读取实验列表并遍历。对每个实验,遍历实验的准入条件,任意一个准入条件不满足,即视为不准入,判断为准入的客户号将结合实验层号进行哈希运算,运算结果与设置流量比较,判断进入哪一个实验以及实验组。
客户端用于根据分流结果向客户展示不同的数据或者样式并记录客户足迹数据,这些数据经分析对比得出实验结论:分流业务启动后,客户端发送客户号至服务端取得所有实验的分流结果并缓存下来。用户进入配备AB Test实验的场景时,页面从缓存获取对应的实验信息,按分流结果向服务端或者其他渠道获取展示数据。由于实验的周期以日为单位,因此客户端的缓存有效期为24小时,且隔日就会重新发送分流业务,以更新缓存。
上述多层分流AB Test实验系统的业务构架如图9所示,以该系统应用于手机银行App为例,包括以下步骤:
(1)建立分流模型:如图10所示,客户的流量按照不同维度的标签划分到各个实验域,维度不同的实验域定义的客户群体维度也不同,可视为相互独立。在同一个实验域下,建立多个实验层,实验层的划分以业务模块为依据。不同实验层中的实验互不相关,因而各个实验层间的流量共享,流量在穿过一个实验层后将被重新打散进入下一个实验层,使得各个实验层间的流量正交。单个实验中的流量切分与实验层中的流量切分类似,各个实验组的流量相互隔离,互相独立。
(2)分流计算:基于分流的随机原则,用于分流计算的客户属性必须在统计上分布均匀,在时间维度上不发生变化,且与其他客户属性不能有业务属性的关联关系。由于客户号符合上述条件,并且手机银行已经提供客户号查询客户标签的标签服务,故而选择客户号作为分流计算的源数据。
在进行标签和实验周期等准入判断后,将客户号进行分流计算,将当前用户随机分配至对应实验以及分组中,这里选用Murmur Hash算法,运算时,首先将客户号、实验域号、实验模块号组合,进行哈希计算,保证各个实验域和实验层中的流量互相正交。将计算结果对100取模,按流量区间分配进入不同实验,然后将上述计算结果再次进行哈希运算打散,分配给对应的实验组流量区间,分流计算即结束。
(3)分组展示与数据收集:由于手机银行的业务场景众多,微服务数量庞大,为避免各业务场景的客户端应用单独与服务端交互获取分流结果导致的客户端与服务端交互频繁、占用通信和计算资源的情况,采取手机银行App统一与服务端交互获取分流结果的方案。各个前端页面按所属实验的分流结果,向用户展示对应的样式、数据等。在数据收集方面,除了常规的用户行为数据,各个页面埋点还需要收集对应的实验号和分组号,用于标记实验数据。
(4)数据分析与评估:手机银行中的业务场景主要关注点击率和转化率等指标,统计上需要关注业务场景整个流程中的行为数据,将实验中的各组用户数据进行统计,按自然时间维度统计各组用户在业务流程各个环节的曝光量、点击率以及购买率等指标的变化趋势,并计算总的指标结果,在排除各种干扰因素的同时,直观对比出各实验组的指标优劣,选出最佳的业务方案。
上述实施例中,基于标签服务实现高效的客群准入判断,通过多维度的标签组合以及多层级的流量分发,保证各个实验间互不干扰且实验内各组用户具备相同的统计特征,实现客户流量的多次利用。结合前端组件,通过埋点记录客户行为数据,采用漏斗模型进行分析,得出各实验组的点击率、转化率等产品指标。充分利用手机银行的渠道优势,为产品推荐、界面设计(UI)、广告方案以及产品功能等业务场景提供决策依据,帮助业务选择较优产品方案,提高流量的转化效率和产品研发的迭代效率,实现数据驱动业务增长。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的流量分配方法的流量分配装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个流量分配装置实施例中的具体限定可以参见上文中对于流量分配方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种流量分配装置,包括:流量获取模块10、第一分配模块20和第二分配模块30,其中:
流量获取模块10,用于获取待分配流量;
第一分配模块20,用于根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;
第二分配模块30,用于在实验中,将待分配流量分配至不同的实验组。
在一个实施例中,上述第一分配模块还用于根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
在一个实施例中,上述第一分配模块包括:第一计算单元、第一取模单元、参数获取单元和流量分配单元,其中:
第一计算单元,用于将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;
取模计算单元,用于对第一计算结果取模,得到待分配流量的流量区间;
参数获取单元,用于获取不同实验的实验参数,实验参数包括实验流量占比以及各实验组的流量占比;
流量分配单元,用于根据流量区间以及流量占比将待分配流量分配至不同的实验。
在一个实施例中,上述流量分配单元包括:第二计算子单元、第二取模子单元和流量分配子单元,其中:
第二计算子单元,用于对第一计算结果进行哈希计算,得到第二计算结果;
第二取模子单元,用于对第二计算结果取模,得到分配至实验的流量区间;
流量分配子单元,用于根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
在一个实施例中,上述第二分配模块还用于获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
在一个实施例中,上述第二分配模块还用于获取待分配流量在不同的实验组中的实验结果;根据实验结果计算评价指标;根据评价指标对实验组进行评估。
在一个实施例中,如图12所示,提供了一种分流模型配置装置,包括:流量信息获取模块40、实验域划分模块50、实验层划分模块60、实验划分模块70和实验组划分模块80,其中:
流量信息获取模块40,用于获取待分配流量对应的群体标签以及业务场景;
实验域划分模块50,用于根据群体标签划分多个实验域,其中不同实验域中的群体标签不同;
实验层划分模块60,用于根据业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;
实验划分模块70,用于根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数;
实验组划分模块80,用于根据实验参数在实验中设置多个实验组,实验组间的流量相互独立。
上述流量分配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种流量分配方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待分配流量;根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;在实验中,将待分配流量分配至不同的实验组。
在一个实施例中,处理器执行计算机程序时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,包括:根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
在一个实施例中,处理器执行计算机程序时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,还包括:将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;对第一计算结果取模,得到待分配流量的流量区间;获取不同实验的实验参数,实验参数包括实验流量占比以及各实验组的流量占比;根据流量区间以及流量占比将待分配流量分配至不同的实验。
在一个实施例中,处理器执行计算机程序时涉及的在实验中,将待分配流量分配至不同的实验组,包括:对第一计算结果进行哈希计算,得到第二计算结果;对第二计算结果取模,得到分配至实验的流量区间;根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取待分配流量在不同的实验组中的实验结果;根据实验结果计算评价指标;根据评价指标对实验组进行评估。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待分配流量对应的群体标签以及业务场景;根据群体标签划分多个实验域,其中不同实验域中的群体标签不同;根据业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数;根据实验参数在实验中设置多个实验组,实验组间的流量相互独立。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待分配流量;根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;在实验中,将待分配流量分配至不同的实验组。
在一个实施例中,计算机程序被处理器执行时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,包括:根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
在一个实施例中,计算机程序被处理器执行时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,还包括:将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;对第一计算结果取模,得到待分配流量的流量区间;获取不同实验的实验参数,实验参数包括实验流量占比以及各实验组的流量占比;根据流量区间以及流量占比将待分配流量分配至不同的实验。
在一个实施例中,计算机程序被处理器执行时涉及的在实验中,将待分配流量分配至不同的实验组,包括:对第一计算结果进行哈希计算,得到第二计算结果;对第二计算结果取模,得到分配至实验的流量区间;根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取待分配流量在不同的实验组中的实验结果;根据实验结果计算评价指标;根据评价指标对实验组进行评估。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待分配流量对应的群体标签以及业务场景;根据群体标签划分多个实验域,其中不同实验域中的群体标签不同;根据业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数;根据实验参数在实验中设置多个实验组,实验组间的流量相互独立。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:获取待分配流量;根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验;在实验中,将待分配流量分配至不同的实验组。
在一个实施例中,计算机程序被处理器执行时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,包括:根据群体标签将待分配流量分配至不同的实验域;根据业务场景在不同的实验域中,将待分配流量分配至不同的实验层中的实验,其中待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
在一个实施例中,计算机程序被处理器执行时涉及的根据待分配流量对应的群体标签以及业务场景,将待分配流量分配至不同的实验,还包括:将待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;对第一计算结果取模,得到待分配流量的流量区间;获取不同实验的实验参数,实验参数包括实验流量占比以及各实验组的流量占比;根据流量区间以及流量占比将待分配流量分配至不同的实验。
在一个实施例中,计算机程序被处理器执行时涉及的在实验中,将待分配流量分配至不同的实验组,包括:对第一计算结果进行哈希计算,得到第二计算结果;对第二计算结果取模,得到分配至实验的流量区间;根据分配至实验的流量区间以及实验组的流量占比将待分配流量分配至不同的实验组中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取待分配流量的分配结果,分配结果包括待分配流量分配到的实验,以及实验中的实验组;根据待分配流量对应的群体标签以及业务场景和分配结果进行数据显示。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取待分配流量在不同的实验组中的实验结果;根据实验结果计算评价指标;根据评价指标对实验组进行评估。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:获取待分配流量对应的群体标签以及业务场景;根据群体标签划分多个实验域,其中不同实验域中的群体标签不同;根据业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;根据预设流量占比在实验层中划分多个实验,并设定实验周期以及实验参数;根据实验参数在实验中设置多个实验组,实验组间的流量相互独立。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种流量分配方法,其特征在于,所述方法包括:
获取待分配流量;
根据所述待分配流量对应的群体标签以及业务场景,将所述待分配流量分配至不同的实验;
在所述实验中,将所述待分配流量分配至不同的实验组。
2.根据权利要求1所述的方法,其特征在于,所述根据所述待分配流量对应的群体标签以及业务场景,将所述待分配流量分配至不同的实验,包括:
根据群体标签将所述待分配流量分配至不同的实验域;
根据业务场景在不同的实验域中,将所述待分配流量分配至不同的实验层中的实验,其中所述待分配流量在穿过一个实验层后被重新打散进入下一个实验层,各个实验层之间的流量正交。
3.根据权利要求1所述的方法,其特征在于,所述根据所述待分配流量对应的群体标签以及业务场景,将所述待分配流量分配至不同的实验,还包括:
将所述待分配流量对应的群体标签以及业务场景进行哈希计算,得到第一计算结果;
对所述第一计算结果取模,得到所述待分配流量的流量区间;
获取不同实验的实验参数,所述实验参数包括实验流量占比以及各实验组的流量占比;
根据所述流量区间以及流量占比将所述待分配流量分配至不同的实验。
4.根据权利要求3所述的方法,其特征在于,所述在所述实验中,将所述待分配流量分配至不同的实验组,包括:
对所述第一计算结果进行哈希计算,得到第二计算结果;
对所述第二计算结果取模,得到分配至所述实验的流量区间;
根据所述分配至所述实验的流量区间以及实验组的流量占比将所述待分配流量分配至不同的实验组中。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述待分配流量的分配结果,所述分配结果包括所述待分配流量分配到的实验,以及所述实验中的实验组;
根据所述待分配流量对应的群体标签以及业务场景和所述分配结果进行数据显示。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述待分配流量在不同的实验组中的实验结果;
根据所述实验结果计算评价指标;
根据所述评价指标对所述实验组进行评估。
7.一种分流模型配置方法,其特征在于,所述方法包括:
获取待分配流量对应的群体标签以及业务场景;
根据所述群体标签划分多个实验域,其中不同实验域中的群体标签不同;
根据所述业务场景在实验域中设置多个实验层,其中每个实验层对应的业务场景不同;
根据预设流量占比在所述实验层中划分多个实验,并设定实验周期以及实验参数;
根据所述实验参数在所述实验中设置多个实验组,所述实验组间的流量相互独立。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6或7中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6或7中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6或7中任一项所述的方法的步骤。
CN202211046984.8A 2022-08-30 2022-08-30 流量分配方法、分流模型配置方法、设备、介质和产品 Pending CN115408280A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211046984.8A CN115408280A (zh) 2022-08-30 2022-08-30 流量分配方法、分流模型配置方法、设备、介质和产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211046984.8A CN115408280A (zh) 2022-08-30 2022-08-30 流量分配方法、分流模型配置方法、设备、介质和产品

Publications (1)

Publication Number Publication Date
CN115408280A true CN115408280A (zh) 2022-11-29

Family

ID=84162456

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211046984.8A Pending CN115408280A (zh) 2022-08-30 2022-08-30 流量分配方法、分流模型配置方法、设备、介质和产品

Country Status (1)

Country Link
CN (1) CN115408280A (zh)

Similar Documents

Publication Publication Date Title
JP7173315B2 (ja) 分析装置、分析システム、分析方法及びプログラム
CN112418929B (zh) 一种数据共享方法及装置
CN114741402A (zh) 业务特征池的处理方法、装置、计算机设备和存储介质
Horváth et al. Detecting common breaks in the means of high dimensional cross-dependent panels
CN114372681A (zh) 基于流水数据的企业分类方法、装置、设备、介质和产品
CN110795638A (zh) 用于输出信息的方法和装置
Wang et al. Visual Analysis of E‐Commerce User Behavior Based on Log Mining
CN115408280A (zh) 流量分配方法、分流模型配置方法、设备、介质和产品
CN114969550A (zh) 业务推荐方法、装置、计算机设备和存储介质
CN112348298B (zh) 设计师管理方法、装置、电子终端、及存储介质
CN115408396B (zh) 业务数据的存储方法、装置、计算机设备和存储介质
Bera et al. Tests for nonlinear restrictions under misspecified alternatives with an application to testing rational expectation hypotheses
CN114693354A (zh) 计价方法、装置、计算机设备、存储介质和程序产品
CN117372152A (zh) 资源归还计划信息生成方法、装置和计算机设备
CN114911835A (zh) 用户信息处理方法、装置、设备、存储介质和程序产品
CN117234639A (zh) 一种业务数据的展示方法、装置、计算机设备
CN116881546A (zh) 资源推荐方法、装置、设备和存储介质
CN117519871A (zh) 金融服务应用操作版面的配置方法、装置、设备
CN115907337A (zh) 物资储备方法、系统、设备、存储介质和程序产品
CN116226554A (zh) 服务推荐方法、装置、计算机设备和存储介质
CN118396652A (zh) 项目的确定方法、装置、设备、存储介质和程序产品
CN116385170A (zh) 业务监控方法及装置
CN118606890A (zh) 对象分类方法、装置、计算机设备和存储介质
CN116452270A (zh) 卡片信息推送方法、装置、计算机设备、介质和程序产品
US20200175607A1 (en) Electronic data segmentation system

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