CN115048386A - 一种业务执行方法、装置、存储介质及设备 - Google Patents
一种业务执行方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN115048386A CN115048386A CN202210752054.8A CN202210752054A CN115048386A CN 115048386 A CN115048386 A CN 115048386A CN 202210752054 A CN202210752054 A CN 202210752054A CN 115048386 A CN115048386 A CN 115048386A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- users
- user
- shunting
- 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
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000003066 decision tree Methods 0.000 claims abstract description 152
- 238000009826 distribution Methods 0.000 claims abstract description 38
- 230000006870 function Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 16
- 230000006399 behavior Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000002474 experimental method Methods 0.000 description 98
- 238000010586 diagram Methods 0.000 description 22
- 230000000052 comparative effect Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 12
- 238000012544 monitoring process Methods 0.000 description 12
- 230000006872 improvement Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 241000404030 Anacyclus clavatus Species 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 201000009487 Amblyopia Diseases 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008774 maternal effect Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013517 stratification Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
本说明书公开了一种业务执行方法、装置、存储介质及设备,确定决策请求匹配的决策树及各用户,从根节点开始依次针对决策树的每一层,采用下述方式分流各用户:针对规则节点,根据规则节点的分流规则及规则节点的父节点分得用户的特征数据,确定父节点分得的用户中规则节点匹配的用户;针对分流节点,根据分流节点的分流区间及分流节点的父节点分得的用户的标识,确定分流节点的父节点分得的用户中分流节点分得的用户,直至将各用户皆分流至叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。可基于决策树节点的规则及分流区间逐层对用户分流,基于分流结果合理确定不同用户对应的不同策略。
Description
技术领域
本说明书涉及数据处理技术领域,尤其涉及一种业务执行方法、装置、存储介质及设备。
背景技术
目前,在执行业务时,业务平台针对不同用户通常采用统一的策略执行业务。而统一策略的确定缺乏可靠依据,通常是人为根据经验确定。
可见,基于统一的策略执行业务不够灵活,也不符合用户需求:不同用户在执行相同业务时存在需求之间的差异,统一的策略未必适合所有的用户,基于统一的策略执行业务并不合理,容易导致业务执行效果差。
发明内容
本说明书提供一种业务执行方法及装置,以实现基于决策树对用户分流,并基于分流结果为不同用户确定合适的策略以基于策略执行业务。
本说明书采用下述技术方案:
本说明书提供了一种业务执行方法,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点,所述分流节点的子节点为叶子节点或规则节点,不同叶子节点对应不同的业务的策略,所述方法包括:
接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户;
从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:
针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户;
直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
可选地,各决策树的根节点中至少存储有业务类型,所述业务类型为基于所述决策树进行决策的业务的业务类型;
接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户,具体包括:
接收决策请求,所述决策请求中至少携带有请求进行决策的业务的业务类型;
根据所述决策请求携带的业务类型,以及各决策树的根节点中存储的业务类型,确定所述决策请求匹配的决策树;确定当前执行所述请求进行决策的业务的用户,作为所述决策请求对应的各用户。
可选地,分流规则由若干条件构成;
根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户,具体包括:
确定构成所述规则节点的分流规则的各条件及各条件包含的特征;
针对所述规则节点的父节点分得的每个用户,确定该用户的各特征的特征值;
根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件;
根据该用户匹配的各条件,以及该规则节点中各条件的逻辑计算关系,确定该规则节点匹配的用户;
其中,所述特征至少包括用户行为特征。
可选地,针对每个条件,该条件由预设的右值、比较符以及特征作为的左值构成;
根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件,具体包括:
针对每个条件,当基于该条件包含的特征的特征值,确定该条件的左值与该条件的右值满足该条件的比较符对应的比较关系时,确定该条件为该用户匹配的条件,否则,确定该用户不匹配该条件。
可选地,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户,具体包括:
针对所述分流节点的父节点分得的每个用户,根据该用户的标识以及所述分流节点所在的层,通过哈希函数,确定该用户对应的哈希值;
根据预设值对所述哈希值取模,得到该用户对应的分流值;
确定预设的所述分流节点对应的分流区间,并将所述分流节点的父节点分得的用户中,分流值落入所述分流区间的用户,作为所述分流节点分得的用户。
可选地,作为同一父节点的子节点的各分流节点的分流区间的区间范围之和,与所述预设值相同;所述用户的标识至少包括所述用户的身份标识、网页浏览数据以及所述用户在执行当前的业务时进行的操作的操作标识中的一种。
可选地,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务,具体包括:
针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务;
获取执行对应的策略后各叶子节点的用户的反馈数据;
根据得到的反馈数据,调整所述决策树中至少部分分流节点对应的分流区间,和/或,至少部分规则节点对应的分流规则;
继续接收决策请求,并基于调整分流区间和/或分流规则后的所述决策树,继续对所述决策树匹配的决策请求对应的用户进行分流,以及按照叶子节点所属业务的策略执行业务,直至满足停止条件为止。
本说明书提供了一种业务执行装置,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点,所述分流节点的子节点为叶子节点或规则节点,不同叶子节点对应不同的业务的策略,所述装置包括:
匹配模块,用于接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户;
遍历模块,用于从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户;
业务执行模块,用于直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述业务执行方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述业务执行方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在上述业务执行方法中,确定决策请求匹配的决策树及各用户,从根节点开始依次针对决策树的每一层,采用下述方式分流各用户:针对规则节点,根据规则节点的分流规则及规则节点的父节点分得用户的特征数据,确定父节点分得的用户中规则节点匹配的用户;针对分流节点,根据分流节点的分流区间及分流节点的父节点分得的用户的标识,确定分流节点的父节点分得的用户中分流节点分得的用户,直至将各用户皆分流至叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
从上述内容中可以看出,本说明书中提供的业务执行方法可基于决策树节点的规则及分流区间逐层对用户分流,基于分流结果合理确定不同用户对应的不同策略。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附
图中:
图1为本说明书中一种业务执行方法的流程示意图;
图2为本说明书中提供的一种对决策树进行遍历的过程示意图;
图3为本说明书中提供的一种决策树的示意图;
图4为本说明书提供的一种决策树的分支与实验的对应关系的示意图;
图5为本说明书提供的一种决策树的示意图;
图6为本说明书中提供的一种业务执行方法对应的系统架构的示意图;
图7为本说明书提供的一种监控与评估模块的示意图;
图8为本说明书提供的一种业务执行装置示意图;
图9为本说明书提供的一种电子设备的示意图。
具体实施方式
目前,在执行业务时,业务平台针对不同用户通常采用统一的策略执行业务。该方法对统一策略的确定缺乏可靠依据,通常是人为根据经验确定,人去指定策略容易失误。基于统一的策略执行业务不够灵活,也不符合用户需求:不同用户在执行相同业务时存在需求之间的差异,统一的策略未必适合所有的用户,基于统一的策略执行业务并不合理,容易导致业务执行效果差。
例如,在确定的策略为对用户执行的风险提示方法时,策略可包括语音提示以及图文提示。对于弱视用户,其需求为语音提示。对于弱听用户,其需求为图文提示。需求差异使得两种用户在基于统一的策略执行业务时,总会有用户的业务执行效果不理想。
为了解决上述问题,其中一种方法是基于用户的标签(如性别),对相同标签的用户确定相同的策略,标签不同的用户则确定不同的策略。但标签对用户的描述较为单一,基于标签仅能实现简单逻辑下的用户策略的分配,对用户进行分类以分配不同策略也不够准确,尤其是在为用户确定具有复杂业务逻辑的业务对应的策略时,同一标签下的用户也未必适合相同的策略。因此,通过该基于标签的方法确定出的不同用户的策略也不够合理,对于一些用户,业务执行效果也不佳。
另一种方法是基于A/B实验(即对比实验)的方法。该方法基于用户标签,将不同用户分配至执行不同的A/B实验,以确定不同用户对应的策略。其中,相同标签的用户用于进行一个对比实验,在执行对比实验时通过对用户进行分流,可基于分流结果为各用户确定出对应的策略。对于同一个对比实验对应的不同用户,也可确定出不同的策略。
具体的,基于对比实验的方法为通过将对用户打的标签进行比对,以将不同标签的用户分流到不同的对比实验中,实现对比实验对用户的圈定。圈定用户即为对比实验圈定适合进行该对比实验的与该对比实验的策略匹配的用户。例如,标签可包括性别、年龄、是否为母亲、是否为老年人、是否为年轻人等。基于不同的标签可将不同用户分配至不同的对比实验,如,对于一个针对女性应用的业务界面确定色调的对比实验则需要基于标签圈定女性用户,基于标签圈定出女性用户后,则需将女性用户随机分流至该对比实验的A实验组与B实验组。A实验组与B实验组对应的策略不同。如,A实验组对应的策略是为用户展示冷色调业务界面,B实验组对应的策略是为用户展示暖色调业务界面。将用户分流至不同的实验组后,即可基于不同实验组对应的策略执行业务。
如此,可将用户分流到不同的对比实验的不同实验组,以为不同用户分别确定相应的策略。然而,该方法依然依靠用户标签,基于标签对用户到不同对比实验的分流不够灵活,且分流逻辑简单,不适合具有复杂逻辑的业务对应的对比实验。
并且,业务对应的业务需求会随着时间变更,业务对应的对比实验的实验场景和实验需求相应也千变万化,对于复杂的实验场景和实验需求,基于标签为对比实验圈定用户的方法难以满足实验需求。当对对比实验圈定的用户不够合理时,为对比实验的各实验组分流的用户也难以合理,则基于对比实验的分流结果确定的策略执行业务的效果也会不佳。
其中,A/B实验:即为同一个目标制定多个方案,将用户流量随机分流给不同的方案。一个A/B实验可包括至少两个实验组,一个实验组基于一组用户进行,两个实验组对应的用户不同。并且,一个实验组对应一个方案,两个实验组互为对照组。如上述示例中,冷色调业务界面是一个方案,暖色调业务界面为另一个方案。并且,方案对应本说明书中的策略。则一个对比实验中可包括多个实验组,如,对于确定页面中某一按钮颜色的对比实验,该对比实验可包括红色按钮、黑色按钮、白色按钮三个实验组。该对比实验圈定的用户可被随机分流到三个实验组中。
为了解决上述问题,本说明书提供了一种业务执行方法(后续简称业务执行方法为该方法,后续当提及该方法时,仅指代该业务执行方法)。
在该方法中,决策树可对应至少一个对比实验,通过该业务执行方法,基于决策树为对比实验圈定用户并将用户分流到不同叶子节点,不同叶子节点对应不同的实验组,也对应不同的策略。基于策略执行业务的过程,也为进行对比实验的过程。
在本说明书中,基于决策树包含的规则节点的分流规则实现对用户到一个对比实验的圈定,对同一对比实验内不同实验组的分流,则基于决策树的分流节点的分流区间实现。
决策树的不同规则节点对应不同的分流规则,分流规则可由规则引擎进行计算。并且,根据业务需求,基于规则引擎对规则进行灵活修改与配置。规则引擎即一种嵌入在应用程序中的组件,可实现将分流规则从应用程序代码中分离出来,并使用预定义的语义模块编写分流规则,接受数据输入,解释规则,并根据规则得出决策、结论。
在本说明书中,基于决策树的分流规则与用户的特征数据可实现将用户到不同对比实验的圈定,基于决策树的分流区间与用户的标识可实现用户到一个对比实验下不同实验组的分流,经过决策树对用户逐层分流,将用户分流至决策树的叶子节点后,则可基于叶子节点确定用户对应的策略。相比于标签,决策树中灵活的分流规则能够实现复杂实验场景下对对比实验匹配的用户的合理圈定,以将圈定的用户分流到不同实验组中。对不同用户策略的确定基于决策树不同层节点对应的复杂的分流规则以及用户特征数据作为合理依据,且规则能够基于业务需求、实验需求灵活配置或调整,使得为不同用户确定的策略足够合理,基于策略执行业务的效果更佳。
并且,在进行决策树对应的对比实验的过程中,可基于业务执行结果调整不同用户对应的策略,以逐渐为各用户分别确定合理的策略,以保障各用户的业务执行效果。
基于该方法,即使最终在不同用户对应的不同策略中为各用户确定统一的策略,所确定出的策略也比人为确定的统一策略更合理。
在本说明书一个或多个实施例中,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点。决策树的不同叶子节点对应不同业务的策略。决策树的分流节点的子节点为叶子节点或规则节点,对于规则节点的子节点则不做限制,可以是规则节点或分流节点或叶子节点。
其中,策略即执行用户对应的业务时所需执行的策略。
例如,在上述确定页面中某一按钮颜色的对比实验的示例中,该对比实验中包括3个实验组对应的策略:红色按钮、黑色按钮以及白色按钮。
或者,例如,在风控场景中,为正在执行需要进行风控的业务的用户确定的策略可以是对用户进行风险提示的方式。如,策略可包括:考卷(智能交互式考卷)提示、外呼(智能语音外呼)提示等。
为了方便理解,后续以风控这一应用场景对本说明书提供的业务执行方法进行说明。用户在执行需要进行风控的业务(如借贷业务、支付业务等风险业务)时,可触发该业务执行方法。即,本说明书中分流的用户为正在执行需要进行风控的业务的用户。
在本说明书一个或多个实施例中,基于决策树进行分流以确定策略的各用户,具体可为在正在执行需要进行风控的业务的用户中,经过风控引擎确定其可能存在风险的用户(风险用户)。
在本说明书中,该业务执行方法可由业务平台的决策服务器执行,当用户在执行业务时,业务服务器可基于执行业务的用户,触发决策请求。该决策服务器可在接收到决策请求时,执行该业务执行方法。
需要说明的是,后续在提及决策服务器时,简称为服务器。后续在明确说明是“业务”服务器时,才指业务服务器,当未进行说明时,“服务器”仅指决策服务器。
并且,一个A/B实验未必仅包含两个实验组,本说明书对一个A/B实验包含的实验组数量不做限制,至少为两个实验组。并且,风控场景仅为示例,还可应用于其他需要通过对用户进行圈定与分流,以确定相应的策略以执行业务的应用场景。
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书中一种业务执行方法的流程示意图,具体包括以下步骤:
S100:接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户。
在本说明书中,对于不同类型的业务,可执行不同的对比实验,则不同类型的业务对应的用于确定业务执行策略的决策树不同。因此,业务平台的服务器可接收决策请求,在接收到决策请求后,确定该决策请求匹配的决策树以及所述决策请求对应的各用户。
如上所述,用于进行对比实验的决策树至少包括规则节点、分流节点以及叶子节点。
其中,不同规则节点对应不同的分流规则,规则节点用于进行分流规则的计算,分流规则被满足的规则节点可分配到满足其分流规则的用户。
在本说明书一个或多个实施例中,该决策树还包括根节点。该服务器存储的各决策树的根节点中至少存储有业务类型,该业务类型为基于决策树进行决策的业务的业务类型。即决策树适用于的业务类型。
在收到决策请求时,该服务器则可基于决策请求以及用于对不同业务确定策略的决策树的根节点,进行决策树的路由,为该决策请求确定适配的决策树。
在本说明书一个或多个实施例中,在确定决策请求匹配的决策树以及决策请求对应的各用户时,具体的,该服务器可接收决策请求,其中,该决策请求中至少携带有请求进行决策的业务的业务类型。之后,该服务器可根据该决策请求携带的业务类型,以及各决策树的根节点中存储的业务类型,确定该决策请求匹配的决策树。以及确定当前执行该请求进行决策的业务的用户,作为该决策请求对应的各用户。
需要说明的是,一个决策树可对应多个业务类型。一个业务类型的业务也可对应多个决策树。并且,确定该决策请求匹配的决策树的过程与确定该决策请求对应的各用户的过程互不干扰,可同时执行。
在本说明书一个或多个实施例中,该服务器可将根节点中的业务类型与该决策请求携带的业务类型一致的决策树,作为该决策请求匹配的决策树。
在本说明书一个或多个实施例中,根节点中还可存储有该根节点所属的决策树的各叶子节点对应的策略。以使得该服务器可综合业务类型以及策略,为决策请求确定匹配的决策树。
在本说明书一个或多个实施例中,该服务器接收的决策请求可以是多个用户对应的一个决策请求,也可以是一个用户对应的一个决策请求,当然也可以是多个用户对应的多个决策请求。
当是多个用户对应的一个决策请求时,该决策请求可由业务服务器针对每类业务,确定该业务对应的当前需要基于决策树确定策略的各用户,并确定各用户对应的一个决策请求。
当是一个用户对应的一个决策请求时,该进行对比实验的服务器可接收各用户对应的决策请求,并对各决策请求进行分类,以分别为各类决策请求确定匹配的决策树。
并且,该服务器可实时或以一定时间间隔为决策请求确定匹配的决策树。例如,当接收到决策请求时,可立刻确定其匹配的决策树,或者,可在距离上次为决策请求确定匹配的决策树已等待满足该时间间隔后,对在该时间间隔内累积的决策请求确定匹配的决策树。
S102:从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户。
在确定出决策树后,该服务器则可从决策树根节点开始,依次针对决策树的每一层,对用户逐层进行分流,直至将所有用户皆分流至决策树的叶子节点为止,最终叶子节点对应的策略即分流至叶子节点的用户对应的策略。
在本说明书一个或多个实施例中,在决策树的一层中,该层中可皆为规则节点,也可皆为分流节点,或者,也可既包含规则节点又包含分流节点。
规则节点用于为一个对比实验圈定用户。一个对比实验对应的不同分流节点对应不同实验组,分流节点则用于为其父节点圈定的用户进一步进行分流,确定该分流节点从父节点圈定的用户中分流得到的用户。基于分流节点,可实现将分流节点的父节点分流至不同实验组对应的节点。
由于规则节点与分流节点的作用不同,因此,在基于决策树自上而下逐层分流用户时,采用下述方式分流决策请求对应的各用户:
针对该层的规则节点,根据规则节点的分流规则以及该规则节点的父节点分得的用户的特征数据,在该父节点分得的用户中,确定该规则节点匹配的用户。针对该层的分流节点,根据该分流节点对应的分流区间以及该分流节点的父节点分得的用户的标识,在该分流节点的父节点分得的用户中,确定该分流节点分得的用户。
其中,规则节点匹配的用户即规则节点圈定的用户。
S104:直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
在本说明书一个或多个实施例中,通过基于决策树自上而下逐层分流用户,直至将决策请求对应的各用户皆分流至决策树的叶子节点时,该服务器可根据各叶子节点所属业务的策略,以针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
在本说明书一个或多个实施例中,在满足对比实验对应的停止条件前,基于策略执行业务的过程,也为基于策略进行对比实验的过程。
在本说明书一个或多个实施例中,该服务器可针对决策请求对应的每个用户,在该用户执行该决策请求对应的业务的过程中,执行该用户对应的策略。例如,不同叶子节点对应的策略可包括:风险问卷、弹窗提示、语音电话提示、信息提示等提示方式。假设最终确定的叶子节点甲对应的策略为风险问卷,对应的用户为各用户A,叶子节点乙对应的策略为弹窗提示,对应的用户为各用户B,叶子节点丙对应的策略为发送信息提示,对应的用户为用户C。
则通过执行叶子节点甲、乙、丙对应的策略,可对正在执行该决策请求对应的业务的用户A展示风险问卷,以提示用户其执行的业务当前可能存在风险,对正在执行该决策请求对应的业务的用户B进行弹窗提示,提示其执行的业务当前可能存在风险,并对正在执行该决策请求对应的业务的用户C发送信息提示,以提示其执行的业务当前可能存在风险。
在本说明书一个或多个实施例中,在对不同的用户执行相应的业务对应的策略后,可基于用户在预设时间内的反馈操作,对用户对应的策略评估。基于评估结果,可调整在进行分流时,决策树的不同分支的分流区间的区间范围。
例如,对于评估结果满足要求的分支,可将其对应的分支的分流区间的区间范围调大,使更多的用户可被分流到该分支。或者,也可调整规则节点对应的分流规则。
因此,该服务器可针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务,并获取执行对应的策略后各叶子节点的用户的反馈数据。以根据得到的反馈数据,调整该决策树中至少部分分流节点对应的分流区间,和/或,至少部分规则节点对应的分流规则。
之后,继续接收决策请求,并基于调整分流区间和/或分流规则后的决策树,继续对该决策树匹配的决策请求对应的用户进行分流,以及按照叶子节点所属业务的策略执行业务,直至满足停止条件为止。
其中,反馈数据为反馈策略执行效果的数据,例如用户对业务的评论数据、投诉数据、维权数据等,或者业务执行后的风险数据。该停止条件可包括实验时长对应的停止条件,和/或参与对比实验的用户数量对应的停止条件。
例如,该服务器可针对每个对比实验,在确定进行实验的时长达到预设时长时,确定满足停止条件。或者,该服务器可针对每个对比实验,在确定参与该对比实验的用户数量达到预设数量时,确定满足停止条件。再或者,还可针对每个对比实验,在确定进行对比实验的时长达到预设时长且参与实验的用户数量达到预设数量时,确定满足停止条件。
在确定满足停止条件时,该服务器则可将最终基于决策树确定出的各用户对应的策略,作为用于执行业务的策略。对于同一业务,不同用户最终对应的策略可以相同也可以不同。
基于图1所示的安全计算方法,确定决策请求匹配的决策树及各用户,从根节点开始依次针对决策树的每一层,采用下述方式分流各用户:针对规则节点,根据规则节点的分流规则及规则节点的父节点分得用户的特征数据,确定父节点分得的用户中规则节点匹配的用户;针对分流节点,根据分流节点的分流区间及分流节点的父节点分得的用户的标识,确定分流节点的父节点分得的用户中分流节点分得的用户,直至将各用户皆分流至叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
从上述方法中可以看出,本方法能够基于决策树节点的规则及分流区间逐层对用户分流,基于分流结果合理确定不同用户对应的不同策略,以基于合理的策略执行业务。对于具有复杂的业务逻辑的业务,也能为其用户合理确定策略。并且,通过进行对比实验,还可基于用户的反馈数据调整决策树对应的分流规则和/或分流区间,灵活性与合理性更高。
在本说明书一个或多个实施例中,分流规则可由若干条件构成,至少包括一个条件。分流规则可规定该分流规则包含的各条件的逻辑计算关系。当用户满足该逻辑计算关系时,则可确定用户满足该分流规则。
在步骤S102中,在规则节点的父节点分得的用户中,确定该规则节点匹配的用户时,具体的,该服务器可确定构成该规则节点的分流规则的各条件及各条件包含的特征,并针对规则节点的父节点分得的每个用户,确定该用户的各特征的特征值。之后,根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件,并根据该用户匹配的各条件,以及该规则节点中各条件的逻辑计算关系,确定该规则节点匹配的用户。该规则节点匹配的用户即满足该规则节点对应的对各条件的逻辑计算关系的用户。
其中,特征数据可包括若干特征值。因此,该服务器可获取用户与分流规则对应的特征数据,并根据该特征数据确定该用户的各特征的特征值。
在本说明书一个或多个实施例中,对于特征对应的特征数据,该服务器可通过查询数据库或调用相应的服务实现。
在本说明书一个或多个实施例中,特征至少包括用户行为特征。
在本说明书一个或多个实施例中,该特征可与该业务执行方法的应用场景关联。例如,风控场景下的该特征可以是能够用于确定用户执行的业务的风险性的特征。如,该特征可以是:用户在预设时段内是否向陌生人转账、预设时段内向陌生人转账次数、预设时段内是否对业务页面进行截屏、预设时段内对业务页面进行截屏次数等。当然特征还可包括其他特征,如,是否在风控黑名单、失信名单中等。当然特征还可包括其他内容,本说明书在此不做限制。
或者,在本说明书一个或多个实施例中,该服务器还可当该用户匹配规则节点对应的所有条件时,确定该用户为该规则节点匹配的用户。
另外,在本说明书一个或多个实施例中,针对每个条件,该条可件由预设的右值、比较符以及特征作为的左值构成。
例如,假设决策树的其中一个规则节点的分流规则为:条件11&&(条件12or条件13)。分流规则中的条件可以为“cal(featueId)比较符Value”的形式,featueId即左值(特征),Value为预设的右值。cal(featueId)表示通过查询数据库或调用服务确定用户与该特征的特征值,比较符可包括:eq(即equal,等于)、lt(即less than,小于)、gt(即greaterthan,大于)中的一种。当然比较符还可以包括其他,例如,不等于等。
在根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件时,具体的,该服务器可针对每个条件,当基于该条件包含的特征的特征值,确定该条件的左值与该条件的右值满足该条件的比较符对应的比较关系时,确定该条件为该用户匹配的条件,否则,确定该用户不匹配该条件。
需要说明的是,针对该层规则节点的父节点分得的每个用户,该层中存在该用户能够匹配的规则节点。但针对该层每个规则节点,该规则节点未必一定能匹配到用户。
另外,在本说明书步骤S102中,根据分流节点对应的分流区间以及分流节点的父节点分得的用户的标识,在分流节点的父节点分得的用户中,确定分流节点分得的用户时,具体的,该服务器可针对分流节点的父节点分得的每个用户,根据该用户的标识以及该分流节点所在的层,通过哈希函数,确定该用户对应的哈希值。之后,根据预设值对哈希值取模,得到该用户对应的分流值。最后,确定预设的该分流节点对应的分流区间,并将该分流节点的父节点分得的用户中,分流值落入该分流区间的用户,作为该分流节点分得的用户。
其中,该标识至少包括该用户的身份标识、网页浏览数据(cookies)以及用户在执行当前的业务时进行的操作的操作标识中的一种。并且,作为同一父节点的子节点的各分流节点的分流区间的区间范围之和,与该预设值相同。使得确定出的分流值能够落入其中一个分流节点对应的分流区间中。
例如,假设一个父节点的子节点包含两个分流节点,其中一个分流节点的分流区间为[0,49],区间范围为50。另一个分流区间为[50,99],区间范围也为50。二者分流区间的区间范围之和为100。用于对哈希值取模的预设值也为100,可以使得取模后得到的数在[0,99],始终会落入到其中一个分流区间之中。
需要说明的是,本说明书中基于哈希函数的分流方法是无偏哈希分流,对于同一用户,若不修改决策树中的分流规则或分流区间,该用户在不同时刻执行业务时(即作为不同的决策请求对应的用户时),经过该决策树通过无偏哈希分流被分流至的叶子节点相同。
例如,在不修改决策树中的分流规则或分流区间的前提下,用户一周前执行该业务时与一周后执行该业务时,被分流至的叶子节点相同,对应的策略也相同。
为了便于理解,本说明书还该提供了如图2所示的一种对决策树进行遍历的过程示意图。其中:
S300:获取决策树的根节点,依次针对决策树的每一层,针对该层中作为匹配节点的规则节点,在该规则节点的父节点分得的用户中,确定该规则节点匹配的用户,针对该层中作为匹配节点的分流节点,确定该分流节点的父节点分得的用户中,该分流节点分得的用户,并将该层节点中从自身父节点分流得到用户的节点,作为匹配节点。
在开始遍历后,该服务器可先确定决策树的根节点,并依次针对根节点下的每一层中的匹配节点,对用户进行分流。由于分流节点的分流区间与对哈希值取模的预设值相同,因此,各分流节点皆为匹配节点。但规则节点中可能存在非匹配节点。
S302:直至将决策请求对应的各用户皆分流至决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
需要说明的是,上述步骤S300~S302的具体内容可参考上述步骤S100~S104,本说明书在此不做赘述。
为了便于理解,本说明书还提供了一种决策树的示意图,如图3所示。
如图3所示,三角形表示决策树的根节点,矩形表示决策树的规则节点,圆形表示分流节点,五边形表示关联不同业务的策略的叶子节点。可见,不同层的规则节点间通过分流节点连接。其中,部分规则节点也可直接连接叶子节点,部分叶子节点通过分流节点与规则节点连接。
可见,在决策树的第一层中,自左向右规则节点分别对应规则1以及规则2。规则1对应的规则节点连接的两个分流节点中,各分流节点对应的分流概率皆为50%。
针对每个分流节点,该分流节点的分流概率为,该分流节点的分流区间与和该分流节点连接同一个父节点的其他分流节点的分流区间的区间范围之和的比值。
例如,假设规则1对应的分流节点中,左侧的分流节点的分流区间为[0,49],区间范围为50,右侧的分流节点的分流区间为[50,99],区间范围为50。当规则1对应的节点为匹配节点时,对该匹配节点匹配的用户进行分流时,当计算得到的用户的分流值为0~49的整数时,则该用户被分流至分流区间为[0,49]对应的分流节点,当计算得到的用户的分流值为0~49的整数时,则该用户被分流至分流区间为[50,99]对应的分流节点。两个分流节点的分流概率皆为50/(50+50)=50%,分流节点的分流概率即用户被分流至该分流节点对应的分支的概率。
对于不同分支对应的分流节点,可预先配置不同的分流区间,以使不同分流节点对应不同的分流概率。如图3,根节点下分为规则1对应的分支以及规则2对应的分支,两个分支,左侧分支规则1对应的两个分流节点的分流概率与右侧分支规则2对应的两个分流节点的分流概率不同。规则1对应的两个分流节点的分流概率皆为50%,规则2对应的两个分流节点的分流概率分别为40%、60%。随着决策树的层加深,对同一规则节点连接的两个分流节点的分流概率的差异可加大。规则3对应的分流节点的分流概率分别为20%、80%,规则6对应的分流节点的分流概率分别为35%、65%。其中,规则5与规则4对应的规则节点皆直接连接叶子节点。
其中,安全保镖、考卷(智能交互式考卷)、外呼(智能语音外呼)、图文(图文提醒)、助手(智能交互助手)等皆是叶子节点对应的策略,考卷+外呼、图文+助手为组合的提示方式对应的策略。例如,假设通过分流概率为80%的分流节点,用户A被分流至策略为“图文+助手”的叶子节点,则,在执行该策略时,通过对用户进行图文提醒以及智能交互助手进行交互式提醒的方式,提示用户当前执行的业务存在风险。
在本说明书一个或多个实施例中,由于可能存在一个用户与多个不同的规则节点匹配,导致该用户被分流至不同的叶子节点的情况,而应保证并列的不同对比实验的用户流量互斥,在并列的若干对比实验中,一个用户仅匹配其中一个对比实验。因此,不同叶子节点可对应不同的优先级,该服务器可对于被分流至多个叶子节点的用户,根据该用户对应的叶子节点的优先级,确定优先级最高的一个叶子节点对应的策略,作为该用户对应的策略。
例如,用户B同时满足规则3与规则4,因此,规则3、4对应的节点皆为匹配节点。且该用户被分流至规则3的分流概率为20%的分流节点对应的分支,该分支的策略为“考卷+外呼”,同样,该用户与规则4对应的分支的策略“安全保镖”也关联。则,最终可基于“考卷+外呼”对应的叶子节点的优先级以及“安全保镖”对应的叶子节点的优先级,确定对该用户执行的一个策略。
另外,在本说明书一个或多个实施例中,决策树中还可存在既作为规则节点又作为分流节点的具有双重“身份”的节点。
需要说明的是,如上所述,在一个决策树中,该决策树的不同分支、不同分支的组合可对应不同的对比实验。如图4所示。与图3相同,图4中三角形表示决策树的根节点,矩形表示决策树的规则节点,圆形表示分流节点,五边形表示关联不同对比实验的策略的叶子节点。
图4中单数标号的箭头(B1、B3、……B19、B21)构成的分支组合对应一个对比实验,标号B3、B7对应的分支与标号B5、B9、B11、B13、B15、B17、B19、B21则是该对比实验包含的两个实验组。或者,标号B3、B7对应的分支、标号B5、B9、B13、B19对应的分支、B5、B9、B15、B21对应的分支、标号B5、B11、B17对应的分支这四个分支为该对比实验包含的四个实验组。另外,标号B9、B13、B15、B19、B21对应的分支与B11、B17对应的分支又对应两个对比实验,基于各自对应的规则节点可实现对各自匹配的用户的圈定,其中,B13、B19对应的分支与B15、B21对应的分支为该对比实验下的两个实验组。
图4中双数标号的箭头(B2、B4……B16、B18)构成的分支组合对应与单数标号箭头(B1、B3、……B19、B21)对应对比实验并列的另一个对比实验,标号B4、B8对应的分支与标号B6、B10、B12、B14、B16、B18对应的分支为该双数标号的对比实验包含的两个实验组。标号B10、B12、B14、B16、B18为另一个对比实验,B12、B16对应的分支与B14、B18对应的分支为该对比实验下的两个实验组。
可见,本说明书基于决策树实现了对对比实验的用户的分层。
当然,图3、图4仅为决策树的一种示例,图5为另一种决策树的示意图。与图3相同,图5中三角形表示决策树的根节点,矩形表示决策树的规则节点,圆形表示分流节点,五边形表示关联不同对比实验的策略的叶子节点。并且,在同一层中,可既包括规则节点又包括分流节点,也可即包括规则节点又包括叶子节点,甚至包括除根节点外的各类节点。
本说明书还提供了在风控场景下执行该业务执行方法的实施例:
该服务器可接收风险业务对应的决策请求,并确定所述决策请求匹配的决策树,以及所述决策请求对应的当前执行所述风险业务的各风险用户。
其中,所述风险业务可至少包括支付业务、借贷业务中的一种。风险业务即需要进行风控的业务。风险用户即经风控引擎确定出的,当前在执行所述风险业务的用户中,可能存在风险的用户。
在确定出该决策请求匹配的决策树后,该服务器则可通过上述步骤S102,基于确定出的决策树,将各风险用户进行分流。
直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,该服务器可针对每个叶子节点,根据该叶子节点所属业务的策略,在执行该叶子节点分得的风险用户的业务的过程中,向该风险用户进行风险提示。
之后,该服务器可根据执行对应的策略后各用户对应的反馈数据,判断各用户对应的业务是否出现风险,以根据判断结果,重新确定各用户分别对应的策略。
例如,该服务器可根据出现风险的业务对应的用户,调整决策树的至少部分规则节点的分流规则,以使基于规则节点对用户的圈定更合理,降低基于确定出的策略执行业务会出现风险的概率。或调整至少部分分流节点的分流区间,使得更多的用户可被分流至未出现风险的策略对应的叶子节点。
在满足停止条件前,经过多次重新确定各用户对应的策略,可为各用户确定出最佳策略。
另外,为了从系统角度理解本说明书提供的该业务执行方法如何实现,本说明书还该提供了如图6所示的业务执行方法对应的系统架构示意图。
如图6,该系统架构包括管理模块、实验组件以及监控与评估模块。管理模块包括:实验管理模块、场景管理模块以及白名单管理模块。其中,实验管理模块用于为决策树对应的各实验进行参数配置,例如,各决策树的分流节点的分流区间、分流概率的配置。场景管理模块用于对决策树各规则节点对应的规则进行配置。白名单管理模块用于对一些白名单用户的分流结果进行限制,以使得白名单用户被分流到指定的叶子节点中。
实验组件包括接口层、策略层、分流层以及仓储层。接口层即应用程序编程接口(Application Programming Interface,API)层,用于为不同的业务提供发起决策请求以调用决策树的接口。策略层用于进行分流规则的计算,以为对比实验圈定人群。仓储层用于将管理模块的配置数据(即实验管理模块、场景管理模块以及白名单管理模块配置的数据)按照一定数据结构加载到内存中,供该实验组件的各层使用。监控与评估模块基于管理模块的配置数据以及实验组件的分流数据对各实验进行监控与评估。
监控与评估模块具体如图7所示。如图7,监控与评估模块基于分流数据、配置数据以及对用户执行各叶子节点对应的业务的策略后,根据用户的行为数据(如,反馈数据),对基于策略的业务执行结果进行离线的评估与实时的监控。其中,斜线填充箭头对应的链路为离线评估链路,无填充箭头对应的链路为实时进行的在线监控链路。进行评估时,评估模块将分流数据、用户的行为数据、配置数据通过埋点采集,而后同步到离线开放数据处理服务(Open Data Processing Service,ODPS)中,经过离线任务清洗聚合后,回流到线上的关系型数据库(如MySQL)表中,通过评估服务提供业务执行结果评估能力。在进行监控时,监控模块将分流数据、用户的行为数据、实验的配置数据通过实时日志及消息采集,而后通过流处理框架(Flink)进行清洗聚合,写入到搜索服务器(ElasticSearch,ES)中,通过提供在线监控服务提供实时监控能力。
图8为本说明书提供的一种业务执行装置示意图,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点,所述分流节点的子节点为叶子节点或规则节点,不同叶子节点对应不同的业务的策略,所述装置包括:
匹配模块200,用于接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户;
遍历模块201,用于从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户;
业务执行模块202,用于直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
可选地,各决策树的根节点中至少存储有业务类型,所述业务类型为基于所述决策树进行决策的业务的业务类型,所述匹配模块200,还用于接收决策请求,所述决策请求中至少携带有请求进行决策的业务的业务类型,根据所述决策请求携带的业务类型,以及各决策树的根节点中存储的业务类型,确定所述决策请求匹配的决策树;确定当前执行所述请求进行决策的业务的用户,作为所述决策请求对应的各用户。
可选地,分流规则由若干条件构成,所述遍历模块201,还用于确定构成所述规则节点的分流规则的各条件及各条件包含的特征,针对所述规则节点的父节点分得的每个用户,确定该用户的各特征的特征值,根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件,根据该用户匹配的各条件,以及该规则节点中各条件的逻辑计算关系,确定该规则节点匹配的用户,其中,所述特征至少包括用户行为特征。
可选地,针对每个条件,该条件由预设的右值、比较符以及特征作为的左值构成,所述遍历模块201,还用于针对每个条件,当基于该条件包含的特征的特征值,确定该条件的左值与该条件的右值满足该条件的比较符对应的比较关系时,确定该条件为该用户匹配的条件,否则,确定该用户不匹配该条件。
可选地,所述遍历模块201,还用于针对所述分流节点的父节点分得的每个用户,根据该用户的标识以及所述分流节点所在的层,通过哈希函数,确定该用户对应的哈希值,根据预设值对所述哈希值取模,得到该用户对应的分流值,确定预设的所述分流节点对应的分流区间,并将所述分流节点的父节点分得的用户中,分流值落入所述分流区间的用户,作为所述分流节点分得的用户。
可选地,作为同一父节点的子节点的各分流节点的分流区间的区间范围之和,与所述预设值相同;所述用户的标识至少包括所述用户的身份标识、网页浏览数据以及所述用户在执行当前的业务时进行的操作的操作标识中的一种。
可选地,所述业务执行模块202,还用于针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务,获取执行对应的策略后各叶子节点的用户的反馈数据,根据得到的反馈数据,调整所述决策树中至少部分分流节点对应的分流区间,和/或,至少部分规则节点对应的分流规则,继续接收决策请求,并基于调整分流区间和/或分流规则后的所述决策树,继续对所述决策树匹配的决策请求对应的用户进行分流,以及按照叶子节点所属业务的策略执行业务,直至满足停止条件为止。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述业务执行方法。
本说明书还提供了图9所示的电子设备的示意结构图。如图9所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述业务执行方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在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)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、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),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (10)
1.一种业务执行方法,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点,所述分流节点的子节点为叶子节点或规则节点,不同叶子节点对应不同的业务的策略,所述方法包括:
接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户;
从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:
针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户;
直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
2.如权利要求1所述的方法,各决策树的根节点中至少存储有业务类型,所述业务类型为基于所述决策树进行决策的业务的业务类型;
接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户,具体包括:
接收决策请求,所述决策请求中至少携带有请求进行决策的业务的业务类型;
根据所述决策请求携带的业务类型,以及各决策树的根节点中存储的业务类型,确定所述决策请求匹配的决策树;确定当前执行所述请求进行决策的业务的用户,作为所述决策请求对应的各用户。
3.如权利要求1所述的方法,分流规则由若干条件构成;
根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户,具体包括:
确定构成所述规则节点的分流规则的各条件及各条件包含的特征;
针对所述规则节点的父节点分得的每个用户,确定该用户的各特征的特征值;
根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件;
根据该用户匹配的各条件,以及该规则节点中各条件的逻辑计算关系,确定该规则节点匹配的用户;
其中,所述特征至少包括用户行为特征。
4.如权利要求3所述的方法,针对每个条件,该条件由预设的右值、比较符以及特征作为的左值构成;
根据各条件包含的特征以及该用户的各特征的特征值,确定该用户匹配的各条件,具体包括:
针对每个条件,当基于该条件包含的特征的特征值,确定该条件的左值与该条件的右值满足该条件的比较符对应的比较关系时,确定该条件为该用户匹配的条件,否则,确定该用户不匹配该条件。
5.如权利要求1所述的方法,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户,具体包括:
针对所述分流节点的父节点分得的每个用户,根据该用户的标识以及所述分流节点所在的层,通过哈希函数,确定该用户对应的哈希值;
根据预设值对所述哈希值取模,得到该用户对应的分流值;
确定预设的所述分流节点对应的分流区间,并将所述分流节点的父节点分得的用户中,分流值落入所述分流区间的用户,作为所述分流节点分得的用户。
6.如权利要求5所述的方法,作为同一父节点的子节点的各分流节点的分流区间的区间范围之和,与所述预设值相同;所述用户的标识至少包括所述用户的身份标识、网页浏览数据以及所述用户在执行当前的业务时进行的操作的操作标识中的一种。
7.如权利要求1所述的方法,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务,具体包括:
针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务;
获取执行对应的策略后各叶子节点的用户的反馈数据;
根据得到的反馈数据,调整所述决策树中至少部分分流节点对应的分流区间,和/或,至少部分规则节点对应的分流规则;
继续接收决策请求,并基于调整分流区间和/或分流规则后的所述决策树,继续对所述决策树匹配的决策请求对应的用户进行分流,以及按照叶子节点所属业务的策略执行业务,直至满足停止条件为止。
8.一种业务执行装置,用于确定业务执行策略的决策树至少包括规则节点、分流节点以及叶子节点,所述分流节点的子节点为叶子节点或规则节点,不同叶子节点对应不同的业务的策略,所述装置包括:
匹配模块,用于接收决策请求,确定所述决策请求匹配的决策树以及所述决策请求对应的各用户;
遍历模块,用于从所述决策树的根节点开始,依次针对所述决策树的每一层,采用下述方式分流所述各用户:针对该层的规则节点,根据所述规则节点的分流规则以及所述规则节点的父节点分得的用户的特征数据,在所述父节点分得的用户中,确定所述规则节点匹配的用户;针对该层的分流节点,根据所述分流节点对应的分流区间以及所述分流节点的父节点分得的用户的标识,在所述分流节点的父节点分得的用户中,确定所述分流节点分得的用户;
业务执行模块,用于直至将所述决策请求对应的各用户皆分流至所述决策树的叶子节点,针对每个叶子节点,根据该叶子节点所属业务的策略,执行该叶子节点分得的用户的业务。
9.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210752054.8A CN115048386A (zh) | 2022-06-28 | 2022-06-28 | 一种业务执行方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210752054.8A CN115048386A (zh) | 2022-06-28 | 2022-06-28 | 一种业务执行方法、装置、存储介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115048386A true CN115048386A (zh) | 2022-09-13 |
Family
ID=83164587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210752054.8A Pending CN115048386A (zh) | 2022-06-28 | 2022-06-28 | 一种业务执行方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115048386A (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130246453A1 (en) * | 2012-03-19 | 2013-09-19 | Alcatel-Lucent U.S.A. Inc. | Method of extending web service application programming interfaces using query languages |
US8744891B1 (en) * | 2007-07-26 | 2014-06-03 | United Services Automobile Association (Usaa) | Systems and methods for dynamic business decision making |
US9355155B1 (en) * | 2015-07-01 | 2016-05-31 | Klarna Ab | Method for using supervised model to identify user |
US20160350426A1 (en) * | 2015-06-01 | 2016-12-01 | Yahoo! Inc. | Location-awareness search assistance system and method |
CN108921600A (zh) * | 2018-06-20 | 2018-11-30 | 北京京东金融科技控股有限公司 | 实现信息分类的装置和方法及存储介质 |
CN109190874A (zh) * | 2018-07-12 | 2019-01-11 | 阿里巴巴集团控股有限公司 | 多分支业务流程的实现方法和装置 |
CN109218211A (zh) * | 2017-07-06 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 数据流的控制策略中阈值的调整方法、装置和设备 |
US20190102921A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | System and method for data visualization using machine learning and automatic insight of outliers associated with a set of data |
US20190130013A1 (en) * | 2017-10-26 | 2019-05-02 | Salesforce.com. inc. | User clustering based on query history |
US20190370600A1 (en) * | 2018-05-31 | 2019-12-05 | Fujitsu Limited | Accessible machine learning |
US20200293924A1 (en) * | 2018-05-21 | 2020-09-17 | Alibaba Group Holding Limited | Gbdt model feature interpretation method and apparatus |
WO2021000561A1 (zh) * | 2019-07-01 | 2021-01-07 | 创新先进技术有限公司 | 数据处理方法、装置和电子设备 |
US10924348B1 (en) * | 2019-04-24 | 2021-02-16 | Snap Inc. | Split decision trees on client and server |
WO2021169212A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 风控模型构建方法、风控审核方法、装置及计算机设备 |
CN113379301A (zh) * | 2021-06-29 | 2021-09-10 | 未鲲(上海)科技服务有限公司 | 通过决策树模型对用户进行分类的方法、装置和设备 |
US20220198283A1 (en) * | 2020-12-22 | 2022-06-23 | Paypal, Inc. | Dynamic reconstruction of decision tree structures |
-
2022
- 2022-06-28 CN CN202210752054.8A patent/CN115048386A/zh active Pending
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8744891B1 (en) * | 2007-07-26 | 2014-06-03 | United Services Automobile Association (Usaa) | Systems and methods for dynamic business decision making |
US20130246453A1 (en) * | 2012-03-19 | 2013-09-19 | Alcatel-Lucent U.S.A. Inc. | Method of extending web service application programming interfaces using query languages |
US20160350426A1 (en) * | 2015-06-01 | 2016-12-01 | Yahoo! Inc. | Location-awareness search assistance system and method |
US9355155B1 (en) * | 2015-07-01 | 2016-05-31 | Klarna Ab | Method for using supervised model to identify user |
CN109218211A (zh) * | 2017-07-06 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 数据流的控制策略中阈值的调整方法、装置和设备 |
US20190102921A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | System and method for data visualization using machine learning and automatic insight of outliers associated with a set of data |
US20190130013A1 (en) * | 2017-10-26 | 2019-05-02 | Salesforce.com. inc. | User clustering based on query history |
US20200293924A1 (en) * | 2018-05-21 | 2020-09-17 | Alibaba Group Holding Limited | Gbdt model feature interpretation method and apparatus |
US20190370600A1 (en) * | 2018-05-31 | 2019-12-05 | Fujitsu Limited | Accessible machine learning |
CN108921600A (zh) * | 2018-06-20 | 2018-11-30 | 北京京东金融科技控股有限公司 | 实现信息分类的装置和方法及存储介质 |
CN109190874A (zh) * | 2018-07-12 | 2019-01-11 | 阿里巴巴集团控股有限公司 | 多分支业务流程的实现方法和装置 |
US10924348B1 (en) * | 2019-04-24 | 2021-02-16 | Snap Inc. | Split decision trees on client and server |
WO2021000561A1 (zh) * | 2019-07-01 | 2021-01-07 | 创新先进技术有限公司 | 数据处理方法、装置和电子设备 |
WO2021169212A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 风控模型构建方法、风控审核方法、装置及计算机设备 |
US20220198283A1 (en) * | 2020-12-22 | 2022-06-23 | Paypal, Inc. | Dynamic reconstruction of decision tree structures |
CN113379301A (zh) * | 2021-06-29 | 2021-09-10 | 未鲲(上海)科技服务有限公司 | 通过决策树模型对用户进行分类的方法、装置和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200327551A1 (en) | Resource transferring monitoring method and device | |
US10554388B2 (en) | Service execution method and device | |
JP7291709B2 (ja) | ナレッジ・グラフのための動的アクセス制御 | |
US10776337B2 (en) | Multi-dimensional knowledge index and application thereof | |
CN107679686B (zh) | 一种业务执行方法及装置 | |
US11063949B2 (en) | Dynamic socialized collaboration nodes | |
CN110322349B (zh) | 一种数据的处理方法、装置及设备 | |
KR102267270B1 (ko) | 인센티브 기반 앱 실행 기법 | |
US11412349B2 (en) | Suppressing notifications based on directed location activity | |
CN109739873A (zh) | 一种业务数据查询方法、装置、设备及可读存储介质 | |
US20110264704A1 (en) | Methods and Systems for Deleting Large Amounts of Data From a Multitenant Database | |
CN106899666A (zh) | 一种针对业务标识的数据处理方法及装置 | |
CN110740194B (zh) | 基于云边融合的微服务组合方法及应用 | |
US10547973B2 (en) | Group identification and action | |
US20190075141A1 (en) | Persistent chat channel consolidation | |
US10025645B1 (en) | Event Processing System | |
CN111784468B (zh) | 一种账户关联方法、装置及电子设备 | |
US11159911B2 (en) | User adapted location based services | |
Nagarajan et al. | A review on intelligent cloud broker for effective service provisioning in cloud | |
US11363094B2 (en) | Efficient data processing in a mesh network of computing devices | |
CN108696418B (zh) | 一种社交网络中隐私保护方法及装置 | |
CN115048386A (zh) | 一种业务执行方法、装置、存储介质及设备 | |
US10417403B2 (en) | Automation authentication and access | |
US9864785B2 (en) | Processing a query via a lambda application | |
CN113037625B (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 |