[发明专利]基于决策树的决策引擎实现方法有效
申请号: | 202010407619.X | 申请日: | 2020-05-14 |
公开(公告)号: | CN111638883B | 公开(公告)日: | 2023-05-16 |
发明(设计)人: | 谢世茂;彭恒;陈杰 | 申请(专利权)人: | 四川新网银行股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30;G06F8/20 |
代理公司: | 成都智言知识产权代理有限公司 51282 | 代理人: | 濮云杉 |
地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 决策树 决策 引擎 实现 方法 | ||
1.基于决策树的决策引擎实现方法,其特征包括:
A.通过信号输入设备在显示装置上以可视化的控件拖动方式选择出需要的决策节点,并对选择的决策节点进行配置和根据各决策节点之间的逻辑关系建立父/子节点关系,从而形成从跟节点到叶节点的决策树;
B.检测决策树的正确性,包括检测决策树对应代码中必要字段信息的正确性、每个节点的父节点和子节点的正确性和每个节点条件设置的正确性;
C.检测各节点中包含的表达式的正确性,包括检测表达式格式的正确性和表达式中包含的函数及变量的正确性;
D.解析决策树:通过遍历决策树,根据决策树的分支结构解析出所有的决策路径,将每条决策路径中每个节点包含的信息和配置的条件转换成SQL语句表达方式,使得每条决策路径都由一条SQL语句表达;
E.将决策树的SQL语句发送到大数据集群中进行分布式计算和运行;
步骤B包括:
B1.解析出决策树对应的json格式代码,json格式代码中包含的每个对象代表一个对应的节点,每个节点包含节点ID和关联节点ID,如果所述json格式代码无法解析或缺失必要字段,则抛出决策树解析异常错误;
B2.根据决策树中每个节点的信息,在内存中建立用于保存决策树的树结构的邻接表,并且检测每个节点的父节点数量,如果某个节点的父节点数量大于1则抛出入度异常;
B3.通过并查集算法,判断决策树中是否存在环路或断路,如果存在则对应抛出环路异常或者森林异常;
B4.检测每个节点的条件设置是否存在信息缺失,如果有缺失则抛出信息缺失异常,并显示出具体缺失信息的节点名。
2.如权利要求1所述的基于决策树的决策引擎实现方法,其特征为:步骤C包括:
C1.扫描各节点中包含的表达式,检测是否有异常字符;
C2.通过正则表达式抽取出所有表达式中包含的函数和变量,并依次判定这些变量是否已存在于基础字段表或已声明函数表中,如果不存在则抛出表达式存在未知变量或未知函数的错误;
C3.对表达式进行语法检测,如果存在语法错误则抛出表达式语法错误异常。
3.如权利要求2所述的基于决策树的决策引擎实现方法,其特征为:步骤C1中,如果除去表达式中引号内的内容后,表达式中仍有其他字符,会判定该表达式不合法。
4.如权利要求1所述的基于决策树的决策引擎实现方法,其特征为:步骤D包括:
D1.获取决策树的邻接表形式的图结构;
D2.根据所述图结构,从决策树的根节点,通过深度优先搜索算法遍历整棵决策树,并且在遍历过程中,记录每一个节点的父节点;
D3.循环遍历所有叶节点,并根据步骤D2记录的每个叶节点的所有父节点,递归回溯到根节点,回溯过程中,根据每一个节点当中配置的条件,得到SQL语句的条件列表,通过对条件列表中的内容进行组装后形成每条决策路径的SQL语句表达。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010407619.X/1.html,转载请声明来源钻瓜专利网。