CN111638883A - 基于决策树的决策引擎实现方法 - Google Patents
基于决策树的决策引擎实现方法 Download PDFInfo
- Publication number
- CN111638883A CN111638883A CN202010407619.XA CN202010407619A CN111638883A CN 111638883 A CN111638883 A CN 111638883A CN 202010407619 A CN202010407619 A CN 202010407619A CN 111638883 A CN111638883 A CN 111638883A
- Authority
- CN
- China
- Prior art keywords
- node
- decision
- decision tree
- expression
- tree
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明涉及基于决策树的决策引擎实现方法,包括:A.以控件拖动方式选择需要的决策节点,并将各决策节点形成决策树;B.检测决策树的正确性;C.检测各节点中包含的表达式的正确性;D.解析决策树:根据决策树的分支结构解析出所有的决策路径,将每条决策路径中每个节点包含的信息和配置的条件转换成SQL语句表达方式,使得每条决策路径都由一条SQL语句表达;E.将决策树的SQL语句发送到大数据集群中进行分布式计算和运行。本发明不需要通过编程即可生成可执行的决策方案,大幅度降低用户的操作难度,并且通过分布式计算的方式,使大数据量级的决策方案能够并发计算和运行。
Description
技术领域
本发明涉及金融领域的数据处理方法,具体讲是基于决策树的决策引擎实现方法。
背景技术
在银行领域,随着金融规模的逐渐扩大,人们总结出了一些关于风控、反欺诈、营销等场景的各类规则,通过这些规则,可以识别出逾期率较高、信用较低的用户,也可以识别出偿还能力较好、贷款意愿较强的用户。通过各种规则的类型,可以做出对用户进行冻结、解冻、调额度、利率等决策。既可以降低银行的资产不良的风险,也能增加银行的收益。
目前实现银行金融策略的方案主要通过购买第三方规则引擎来实现,比如ilog、URule等。但是规则引擎的价格一般比较昂贵,而且规则配置需要用户懂得一定的编程技巧,因此一般比较适用于风控部门,但对于运营或其他业务部门,学习难度较大。另外,以ilog为例,ilog对外提供的服务的方式是提供API接口(应用程序接口),这种方式主要有两个缺点:
A)不适合大批量业务,随着数据规模的增大,银行每天可能需要决策的数据量超过千万,此时如果需要继续使用ilog,则需要部署若干台ilog的服务器来并发处理请求以满足时效性,这无疑进一步加大了资源消耗。
B)不同的业务部门需要开发不同的入口程序用于调用ilog或者配置ilog规则,大大增加了开发的任务量。
因此需要一种不需要进行编程,并且能够适用于大数据银行策略的实现方式,以适应多种不同类型的部门、用户的操作。
发明内容
本发明提供了一种基于决策树的决策引擎实现方法,不需要通过编程即可生成可执行的决策方案,降低用户的操作难度,并且可以适用于大数据的决策计算和运行。
本发明基于决策树的决策引擎实现方法,包括:
A.通过信号输入设备在显示装置上以可视化的控件拖动方式选择出需要的决策节点,并对选择的决策节点进行配置和根据各决策节点之间的逻辑关系建立父/子节点关系,从而形成从跟节点到叶节点的决策树;
B.检测决策树的正确性,包括检测决策树对应代码中必要字段信息的正确性、每个节点的父节点和子节点的正确性和每个节点条件设置的正确性;
C.检测各节点中包含的表达式的正确性,包括检测表达式格式的正确性和表达式中包含的函数及变量的正确性;
D.解析决策树:通过遍历决策树,根据决策树的分支结构解析出所有的决策路径,将每条决策路径中每个节点包含的信息和配置的条件转换成SQL语句表达方式,使得每条决策路径都由一条SQL语句表达;
E.将决策树的SQL语句发送到大数据集群中进行分布式计算和运行。
本发明采用可视化的页面以托拉拽的方式构建出决策树,然后对每个决策节点配置规则即可,使用起来非常简单,不需要进行实际的编程,大幅度降低了用户的使用难度。通过把决策树解析成多条SQL语句的脚本,并提交到大数据集群进行分布式计算,保证了千万量级数据决策的计算效率。并且,本发明不通过API(应用程序接口)的方式与外部交互,用户直接在决策树(决策引擎)上配置需要的决策即可,避免了业务部门需要投入人力开发调用程序的问题。因为只有决策树的构建和SQL语句的转换在本地,SQL语句的执行和计算都没有在本地,而是通过大数据集群进行分布式计算的,因此实际计算和处理能力得到了大幅度提高,能够并行计算大数据量级的数据,而传统的决策引擎方案数据均在本地内存,计算时必须逐条进行计算,这就造成了并发效果较弱。而本发明中,计算任务会分摊到各个节点对应的各个内核当中进行并发计算,决策规模越大,决策速度相较于传统方案越快。
具体的,步骤B包括:
B1.解析出决策树对应的json格式代码,json格式代码中包含的每个对象代表一个对应的节点,每个节点包含节点ID和关联节点ID,如果所述json格式代码无法解析或缺失必要字段,则抛出决策树解析异常错误;
B2.根据决策树中每个节点的信息,在内存中建立用于保存决策树的树结构的邻接表,并且检测每个节点的父节点数量,如果某个节点的父节点数量大于1则抛出入度异常;
B3.通过并查集算法,判断决策树中是否存在环路或断路,如果存在则对应抛出环路异常或者森林异常;
B4.检测每个节点的条件设置是否存在信息缺失,如果有缺失则抛出信息缺失异常,并显示出具体缺失信息的节点名。
具体的,步骤C包括:
C1.扫描各节点中包含的表达式,检测是否有异常字符;
C2.通过正则表达式抽取出所有表达式中包含的函数和变量,并依次判定这些变量是否已存在于基础字段表或已声明函数表中,如果不存在则抛出表达式存在未知变量或未知函数的错误;
C3.对表达式进行语法检测,如果存在语法错误则抛出表达式语法错误异常。
进一步的,步骤C1中,如果除去表达式中引号内的内容后,表达式中仍有其他字符,会判定该表达式不合法。
具体的,步骤D包括:
D1.获取决策树的邻接表形式的图结构;
D2.根据所述图结构,从决策树的根节点,通过深度优先搜索算法遍历整棵决策树,并且在遍历过程中,记录每一个节点的父节点;
D3.循环遍历所有叶节点,并根据步骤D2记录的每个叶节点的所有父节点,递归回溯到根节点,回溯过程中,根据每一个节点当中配置的条件,得到SQL语句的条件列表,通过对条件列表中的内容进行组装后形成每条决策路径的SQL语句表达。
本发明基于决策树的决策引擎实现方法,不需要通过编程即可生成可执行的决策方案,大幅度降低用户的操作难度,并且通过分布式计算的方式,使大数据量级的决策方案能够并发计算和运行。经测试,6个节点的集群,执行大约300万条决策花费时间大约只需要1~2分钟。
以下结合实施例的具体实施方式,对本发明的上述内容再作进一步的详细说明。但不应将此理解为本发明上述主题的范围仅限于以下的实例。在不脱离本发明上述技术思想情况下,根据本领域普通技术知识和惯用手段做出的各种替换或变更,均应包括在本发明的范围内。
附图说明
图1为本发明基于决策树的决策引擎实现方法的流程图。
图2为步骤B2中样例a的邻接表图结构示意图。
图3为步骤B2中样例b的邻接表图结构示意图。
图4为步骤B3中样例a的邻接表图结构示意图。
图5为步骤B3中样例b的邻接表图结构示意图。
图6为步骤D1中得到的决策树结构示意图。
图7为根据图6的决策树得到的决策路径示意图。
具体实施方式
如图1所示本发明基于决策树的决策引擎实现方法,包括:
A.通过信号输入设备在显示装置上以可视化的控件拖动方式选择出需要的决策节点,并对选择的决策节点进行配置和根据各决策节点之间的逻辑关系建立父/子节点关系,从而形成从跟节点到叶节点的决策树。
通过拖动决策节点构建决策树的***为已有***,在此不对该***做详述,其实现原理可参考现有的多种具有拖拽控件功能的软件,如Visio、Dreamweaver等。
B.检测决策树的正确性,包括:
B1.解析出决策树对应的json格式代码,json格式代码中包含的每个对象代表一个对应的节点,每个节点包含节点ID和关联节点ID,如果所述json格式代码无法解析或缺失必要字段,则抛出决策树解析异常错误。例如:
样例a:有如下json:
[{"node_id":"a","next_nodes":["b","c"]},{"node_id":"b","next_nodes":[]},{"node_id":"c","
next_nodes":[]}]
实际代码中的json字段更加丰富,此处仅做示例。本样例是一个正常的json格式,可以完成json解析,因此会通过检测。
在本样例和本实施例的后续样例中,node_id用于记录当前节点标号,next_nodes用于记录该节点的后继节点。
样例b:有json如下:
[{"node_id":"a"}]
当该节点不是叶节点时,必须包含子节点,而此时无法解析得到next_nodes信息(必要键缺失),该样例会抛出解析异常。
B2.根据决策树中每个节点的信息,在内存中建立用于保存决策树的树结构的邻接表,并且检测每个节点的父节点数量,如果某个节点的父节点数量大于1则抛出入度异常。
样例a:根据上一步的解析结果,构建邻接表,假设得到的邻接表为以下关系:a->b,b->c,b->d,b->e,绘制为可视化形式,图结构如图2所示。
可以看到,该结构为标准树结构,并且结构中没有节点的入度大于1。于是此时可以检测通过。
样例b:假设邻接表关系为:a->b,a->c,b->d,c->d,绘制为可视化形式,图结构如图3所示。
可以明显看到,图3的d节点入度为2,此时不符合数据结构中树的定义,此时会抛出入度的异常。
B3.通过并查集算法,判断决策树中是否存在环路或断路,如果存在则对应抛出环路异常或者森林异常。例如:
样例a:假设邻接表关系为:a->b,b->c,c->a,可视化如图4所示。
此时能发现虽然各个节点的入度均为1,但是结构当中存在环路,这种情况在数据结构中也是不符合树的定义的,通过并查集算法可以识别出图结构中的环路,发现存在环路时会通知用户环路异常。
样例b:假设邻接表关系为:a->b,c->d,可视化如图5所示。
此时图结构中不存在环路也不存在入度大于1的情况,但此时可以发现图是不连通的,此时可以通过并查集算法发现森林异常并通知用户。
B4.检测每个节点的条件设置是否存在信息缺失,如果有缺失则抛出信息缺失异常,并显示出具体缺失信息的节点名。例如:
样例a:假设收到某个节点的json结构如下:
{"expr":"max((crdt_limit/aval_limit)*crdt_limit,300000)","operator_type":">","value":""}
在该json结构中隐藏了图结构的信息,只保留了与节点条件相关的数据。可以发现,该json结构中,value的值未填写为空,此时会通知用户信息有缺失。同时,还会通过表达式的检测,校验expr这个字段的表达式是否有异常,如果均无异常,则说明决策树是可以正常解析为SQL语句的。
在本实施例中,expr表示表达式的内容,operator_type代表操作符,包括'>','<','>=','<=','=',五种符号,value代表具体的比较对象,这里可以填写一个常量。
C.检测各节点中包含的表达式的正确性,包括:
C1.扫描各节点中包含的表达式,检测是否有异常字符。字符串只允许有数值、字母、下划线、括号、加、减、乘、除、百分号(取模运算)、逗号、小数点、引号。如果除去引号内的内容后,仍有其他字符,则直接判定该表达式不合法。例如:
样例a:max((crdt_limit/aval_limit)*crdt_limit,300000),此时会校验成功,因为表达式中的所有符号均为合法字符。
该表达式当中max是取两个值的最大值函数,aval_limit是可使用额度,crdt_limit是用户的授信额度(最大额度),该表达式的含义为根据用户的额度使用情况,提升其额度,但是最多提升至30万。
样例b:crdt_limit^1.2,此时会扫描出异常符号^,从而抛出错误。
C2.通过正则表达式'[A-Za-z][A-Za-z_0-9]+'抽取出所有表达式中包含的函数和变量,并依次判定这些变量是否已存在于基础字段表或已声明函数表中,如果不存在则抛出表达式存在未知变量或未知函数的错误。例如:
样例a:max((crdt_limit/aval_limit)*crdt_limit,300000),此时会通过表达式读取出max、aval_limit、crdt_limit、crdt_limit这4个字符串,通过对这4个字符串在数据库中的函数表和字段表进行比对,查询是否有未定义的函数或变量,如果全部是已定义的,则会通过校验。
样例b:maxx(sample1+sample2,20),此时会抽取出maxx、sample1、sample2这3个字符串,通过对比,maxx既不是变量也不是函数,则抛出未定义异常。
C3.对表达式进行语法检测,如果存在语法错误则抛出表达式语法错误异常。其实现方式有两种,第一种是利用递归下降分析法直接对表达式进行递归分析,判断是否通过语法检测。第二种是把表达式编译成脚本,利用脚本编译器进行检测。本实施例采用的是第二中方式,把表达式编译为groovy脚本完成了文法检测。如果未发现表达式异常,则说明表达式是正确的。例如:
样例a:max((crdt_limit/aval_limit)*crdt_limit,300000),符合编程规范,该表达式会通过校验。
样例b:max(aatt,bbcc,该表达式明显缺少右括号,此时会被查出语法错误。
D.解析决策树:
D1.获取决策树的邻接表形式的图结构。例如:
样例:假设得到了如图6所示的决策树。图6是一个标准的二叉树结构,并且每个节点当中都按需要填写了正确的表达式条件等信息,因此检测通过。
授信额度字段的名称为crdt_limit,曾经是否逾期过的字段名称为is_overdue,是否是黑名单的字段名称为is_black。在对决策树解析时,所有涉及到的字段名称都会被解析为SQL语句的表达方式,SQL语句中使用的字段即为上述三个名称的英文。
D2.根据所述图结构,从决策树的根节点,通过深度优先搜索算法遍历整棵决策树,并且在遍历过程中,记录每一个节点的父节点。以图6的决策树为例,图6中具有4个叶子节点,我们可以使用深度优先算法计算出4条决策路径,分别如图7所示。
D3.循环遍历所有叶节点,并根据步骤D2记录的每个叶节点的所有父节点,递归回溯到根节点,回溯过程中,根据每一个节点当中配置的条件,得到SQL语句的条件列表,通过对条件列表中的内容进行组装后形成每条决策路径的SQL语句表达。仍然以图6和图7为例:
解析出图7所示的4条决策路径后,把每条路径转化为SQL条件。这4条决策路径的SQL条件分别是:
A)crdt_limit>20000,is_overdue=1;
B)crdt_limit>20000,is_overdue=0;
C)crdt_limit<=20000,is_black=1;
D)crdt_limit<=20000,is_black=0;
然后将得到的条件列表,组装SQL语句,每一个叶子节点均对应一条SQL语句。
把上述的SQL条件进行拼接,得到4条SQL语句,分别是:
A)select(crdt_limit/2)from search_table where(1=1)and(crdt_limit>20000)and(is_overdue=1);
B)select(crdt_limit*1.2)from search_table where(1=1)and(crdt_limit>20000)and(is_overdue=0);
C)select('冻结')from search_table where(1=1)and(crdt_limit<=20000)and(is_black=1);
D)select('无动作')from search_table where(1=1)and(crdt_limit<=20000)and(is_black=0);
E.将决策树的SQL语句发送到大数据集群中进行分布式计算和运行。
经测试,6个节点的集群,执行大约300万条决策花费时间大约只需要1~2分钟。
本发明的核心思想是类似于spark(一种大规模数据处理的快速通用的计算引擎)的操作方式,本地只进行任务解析与提交,利用大数据的集群对这些任务进行计算。在大数据集群当中,数据被分布式的存储在各个节点当中,能够同时计算的数据量也远超过本地单节点的内存大小。所以本发明能够一次性完成上百万的决策。而传统的决策引擎方案计算时依靠本地内存,如果本地内存太小,很难支撑大规模的计算。如果需要支撑则需要对数据进行切分,分批次进行计算,所以传统方案如果要达到相同规模的效果,不仅编程实现上、数据管理上都比本提案复杂很多。
并且,本发明对批量决策的实现速度非常快。传统的决策引擎方案数据均在本地内存,计算时必须逐条进行计算,这就造成了并发效果较弱。而本发明的大部分计算没有在本地,计算任务会分摊到各个节点的各个内核当中进行并发计算,决策规模越大,决策速度相较于传统方案越快。
Claims (5)
1.基于决策树的决策引擎实现方法,其特征包括:
A.通过信号输入设备在显示装置上以可视化的控件拖动方式选择出需要的决策节点,并对选择的决策节点进行配置和根据各决策节点之间的逻辑关系建立父/子节点关系,从而形成从跟节点到叶节点的决策树;
B.检测决策树的正确性,包括检测决策树对应代码中必要字段信息的正确性、每个节点的父节点和子节点的正确性和每个节点条件设置的正确性;
C.检测各节点中包含的表达式的正确性,包括检测表达式格式的正确性和表达式中包含的函数及变量的正确性;
D.解析决策树:通过遍历决策树,根据决策树的分支结构解析出所有的决策路径,将每条决策路径中每个节点包含的信息和配置的条件转换成SQL语句表达方式,使得每条决策路径都由一条SQL语句表达;
E.将决策树的SQL语句发送到大数据集群中进行分布式计算和运行。
2.如权利要求1所述的基于决策树的决策引擎实现方法,其特征为:步骤B包括:
B1.解析出决策树对应的json格式代码,json格式代码中包含的每个对象代表一个对应的节点,每个节点包含节点ID和关联节点ID,如果所述json格式代码无法解析或缺失必要字段,则抛出决策树解析异常错误;
B2.根据决策树中每个节点的信息,在内存中建立用于保存决策树的树结构的邻接表,并且检测每个节点的父节点数量,如果某个节点的父节点数量大于1则抛出入度异常;
B3.通过并查集算法,判断决策树中是否存在环路或断路,如果存在则对应抛出环路异常或者森林异常;
B4.检测每个节点的条件设置是否存在信息缺失,如果有缺失则抛出信息缺失异常,并显示出具体缺失信息的节点名。
3.如权利要求1所述的基于决策树的决策引擎实现方法,其特征为:步骤C包括:
C1.扫描各节点中包含的表达式,检测是否有异常字符;
C2.通过正则表达式抽取出所有表达式中包含的函数和变量,并依次判定这些变量是否已存在于基础字段表或已声明函数表中,如果不存在则抛出表达式存在未知变量或未知函数的错误;
C3.对表达式进行语法检测,如果存在语法错误则抛出表达式语法错误异常。
4.如权利要求3所述的基于决策树的决策引擎实现方法,其特征为:步骤C1中,如果除去表达式中引号内的内容后,表达式中仍有其他字符,会判定该表达式不合法。
5.如权利要求1所述的基于决策树的决策引擎实现方法,其特征为:步骤D包括:
D1.获取决策树的邻接表形式的图结构;
D2.根据所述图结构,从决策树的根节点,通过深度优先搜索算法遍历整棵决策树,并且在遍历过程中,记录每一个节点的父节点;
D3.循环遍历所有叶节点,并根据步骤D2记录的每个叶节点的所有父节点,递归回溯到根节点,回溯过程中,根据每一个节点当中配置的条件,得到SQL语句的条件列表,通过对条件列表中的内容进行组装后形成每条决策路径的SQL语句表达。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010407619.XA CN111638883B (zh) | 2020-05-14 | 2020-05-14 | 基于决策树的决策引擎实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010407619.XA CN111638883B (zh) | 2020-05-14 | 2020-05-14 | 基于决策树的决策引擎实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111638883A true CN111638883A (zh) | 2020-09-08 |
CN111638883B CN111638883B (zh) | 2023-05-16 |
Family
ID=72333258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010407619.XA Active CN111638883B (zh) | 2020-05-14 | 2020-05-14 | 基于决策树的决策引擎实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111638883B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609845A (zh) * | 2021-08-13 | 2021-11-05 | 南京艾科朗克信息科技有限公司 | 一种实时解析模板引擎的方法 |
CN113721896A (zh) * | 2021-06-25 | 2021-11-30 | 中债金科信息技术有限公司 | 一种金融欺诈建模语言的优化处理方法及装置 |
CN114153721A (zh) * | 2021-11-16 | 2022-03-08 | 大连理工大学 | 一种基于决策树算法的api误用检测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921600A (zh) * | 2018-06-20 | 2018-11-30 | 北京京东金融科技控股有限公司 | 实现信息分类的装置和方法及存储介质 |
US20190114364A1 (en) * | 2017-10-13 | 2019-04-18 | Capital One Services, Llc | Systems and methods for web analytics testing and web development |
CN110597847A (zh) * | 2019-09-19 | 2019-12-20 | 深圳前海微众银行股份有限公司 | Sql语句自动生成方法、装置、设备及可读存储介质 |
CN110727659A (zh) * | 2019-10-24 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 基于sql语句的决策树模型生成方法、装置、设备及介质 |
CN110909066A (zh) * | 2019-12-06 | 2020-03-24 | 中科院计算技术研究所大数据研究院 | 一种基于SparkSQL和RestAPI的流数据处理方法 |
-
2020
- 2020-05-14 CN CN202010407619.XA patent/CN111638883B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190114364A1 (en) * | 2017-10-13 | 2019-04-18 | Capital One Services, Llc | Systems and methods for web analytics testing and web development |
CN108921600A (zh) * | 2018-06-20 | 2018-11-30 | 北京京东金融科技控股有限公司 | 实现信息分类的装置和方法及存储介质 |
CN110597847A (zh) * | 2019-09-19 | 2019-12-20 | 深圳前海微众银行股份有限公司 | Sql语句自动生成方法、装置、设备及可读存储介质 |
CN110727659A (zh) * | 2019-10-24 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 基于sql语句的决策树模型生成方法、装置、设备及介质 |
CN110909066A (zh) * | 2019-12-06 | 2020-03-24 | 中科院计算技术研究所大数据研究院 | 一种基于SparkSQL和RestAPI的流数据处理方法 |
Non-Patent Citations (3)
Title |
---|
ALVARO MONJARAS等: "Decision Tree Model to Support the Successful Selection of a Database Engine for Novice Database Administrators" * |
晋亮: "数据挖掘技术在***客户营销中的应用" * |
林雨欣: "基于决策树和ARIMA的销售管理***的设计与实现" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113721896A (zh) * | 2021-06-25 | 2021-11-30 | 中债金科信息技术有限公司 | 一种金融欺诈建模语言的优化处理方法及装置 |
CN113609845A (zh) * | 2021-08-13 | 2021-11-05 | 南京艾科朗克信息科技有限公司 | 一种实时解析模板引擎的方法 |
CN114153721A (zh) * | 2021-11-16 | 2022-03-08 | 大连理工大学 | 一种基于决策树算法的api误用检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111638883B (zh) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112394922B (zh) | 决策配置方法、业务决策方法和决策引擎*** | |
US11003568B2 (en) | Error recovery | |
US20190205636A1 (en) | Artificial Intelligence Based Smart Data Engine | |
CN111638883B (zh) | 基于决策树的决策引擎实现方法 | |
US11157272B2 (en) | Automatic identification of appropriate code reviewers using machine learning | |
Wang et al. | Machine/deep learning for software engineering: A systematic literature review | |
US9703683B2 (en) | Software testing coverage | |
US20220291966A1 (en) | Systems and methods for process mining using unsupervised learning and for automating orchestration of workflows | |
CN111966817A (zh) | 基于深度学习及代码上下文结构和文本信息的api推荐方法 | |
Saifullah et al. | Learning from examples to find fully qualified names of api elements in code snippets | |
US20220051126A1 (en) | Classification of erroneous cell data | |
CN111178701B (zh) | 一种基于特征衍生技术的风险控制方法方法、装置和电子设备 | |
Chen et al. | Multiclass classification for self-admitted technical debt based on XGBoost | |
US11500619B1 (en) | Indexing and accessing source code snippets contained in documents | |
US11532174B2 (en) | Product baseline information extraction | |
CN112464237A (zh) | 一种静态代码安全诊断方法及装置 | |
Li et al. | Automatic identification of assumptions from the hibernate developer mailing list | |
CN116610558A (zh) | 代码检测方法、装置、电子设备及计算机可读存储介质 | |
CN115994331A (zh) | 基于决策树的报文分拣方法及装置 | |
Philip et al. | Composite pattern to handle variation points in software architectural design of evolving application systems | |
CN110928535A (zh) | 衍生变量部署方法、装置、设备及可读存储介质 | |
Jiménez et al. | On the design of an advanced business rule engine | |
US20230342114A1 (en) | Decision logic translation system and method | |
Raza | Author’s Declaration | |
CN118377558A (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 |