基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf

上传人:le****a 文档编号:10952453 上传时间:2021-08-28 格式:PDF 页数:18 大小:671.07KB
收藏 版权申诉 举报 下载
基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf_第1页
第1页 / 共18页
基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf_第2页
第2页 / 共18页
基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf_第3页
第3页 / 共18页
文档描述:

《基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf》由会员分享,可在线阅读,更多相关《基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf(18页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201911017338.7 (22)申请日 2019.10.24 (71)申请人 深圳前海微众银行股份有限公司 地址 518000 广东省深圳市前海深港合作 区前湾一路1号A栋201室 (入驻深圳市 前海商务秘书有限公司) (72)发明人 李诗琦黄启军陈瑞钦唐兴兴 刘玉德 (74)专利代理机构 深圳市世纪恒程知识产权代 理事务所 44287 代理人 王韬 (51)Int.Cl. G06F 16/21(2019.01) G06F 16/242(2019.01) (54)发明名称 。

2、基于SQL语句的决策树模型生成方法、 装置、 设备及介质 (57)摘要 本发明公开了一种基于SQL语句的决策树模 型生成方法、 装置、 终端设备及可计算机读存储 介质, 通过通过拆分SQL语句生成与决策树模型 中各节点相匹配的子SQL语句块; 对所述子SQL语 句块进行语法解析以生成各所述节点的拆分规 则; 按照所述拆分规则进行决策树推理, 以更新 节点预测值生成所述决策树模型。 本发明直接从 SQL语句导入而自动生成决策树模型, 无需建模 人员手动对每个节点进行拆分, 从而节省了手动 建模所消耗的时间, 提升了决策树模型的构建效 率。 权利要求书2页 说明书11页 附图4页 CN 11072。

3、7659 A 2020.01.24 CN 110727659 A 1.一种基于SQL语句的决策树模型生成方法, 其特征在于, 所述基于SQL语句的决策树 模型生成方法, 包括: 拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述决策树模型。 2.如权利要求1所述的基于SQL语句的决策树模型生成方法, 其特征在于, 所述决策树 模型中的所述节点至少包括: 根节点和子节点, 所述拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块的步骤, 包括: 逐层拆分所。

4、述SQL语句以得到各待匹配子SQL语句块; 识别各所述待匹配子SQL语句块中的关键字以建立各所述待匹配子SQL语句块与所述 根节点或者所述子节点之间的匹配关系。 3.如权利要求2所述的基于SQL语句的决策树模型生成方法, 其特征在于, 所述逐层拆 分所述SQL语句以得到各待匹配子SQL语句块的步骤, 包括: 拆分最外层SQL语句为父节点信息和各子节点信息; 对各所述子节点信息中含有所述关键字的子节点信息继续进行拆分, 以得到新的所述 子节点信息; 将拆分得到的所述父节点信息、 各所述子节点信息中不含有所述关键字的子节点信 息, 和新的所述子节点信息标记为所述待匹配子SQL语句块。 4.如权利要。

5、求1所述的基于SQL语句的决策树模型生成方法, 其特征在于, 在按照所述 拆分规则进行决策树推理, 以更新节点预测值生成所述决策树模型的步骤之前, 还包括: 遍历各所述子SQL语句块对应生成所述决策树模型的整体结构; 所述按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述决策树模型, 包 括: 将经决策树推理得到的节点预测值填充至所述整体结构中, 以生成所述决策树模型。 5.如权利要求1所述的基于SQL语句的决策树模型生成方法, 其特征在于, 所述对所述 子SQL语句块进行语法解析以生成各所述节点的拆分规则的步骤, 包括: 解析识别所述子SQL语句块的判断条件, 并获取所述判断条件的取。

6、值信息; 将所述判断条件和所述取值信息转化为拆分规则填充至与所述子SQL语句块相匹配的 节点。 6.如权利要求1所述的基于SQL语句的决策树模型生成方法, 其特征在于, 所述按照所 述拆分规则进行决策树推理, 以更新节点预测值生成所述决策树模型的步骤, 包括: 调用预设训练数据按照所述决策树模型中各所述节点的所述拆分规则进行决策树推 理; 将经过推理得到的预测值作为所述决策树模型的节点预测值, 以确定生成所述决策树 模型。 7.如权利要求1所述的基于SQL语句的决策树模型生成方法, 其特征在于, 在所述拆分 SQL语句生成与决策树模型中各节点相匹配的子SQL语句块的步骤之前, 还包括: 对预设。

7、判断规则进行SQL语句转化, 得到所述预设判断规则对应的SQL语句; 所述拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块, 对所述子SQL语 权利要求书 1/2 页 2 CN 110727659 A 2 句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推理, 以 更新节点预测值生成所述决策树模型包括: 拆分所述预设判断规则对应的SQL语句, 得到所述预设判断规则对应的子SQL语句块; 对所述预设判断规则对应的子SQL语句块进行语法解析以生成各所述节点的拆分规则; 按 照所述拆分规则进行决策树推理, 以更新节点预测值生成用于反映所述预设判断规则的决 策树模型。

8、。 8.一种基于SQL语句的决策树模型生成装置, 其特征在于, 所述基于SQL语句的决策树 模型生成装置, 包括: 拆分模块, 用于拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 解析模块, 用于对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则; 推理模块, 用于按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述决策 树模型。 9.一种终端设备, 其特征在于, 所述终端设备包括: 存储器、 处理器及存储在所述存储 器上并可在所述处理器上运行的基于SQL语句的决策树模型生成程序, 所述基于SQL语句的 决策树模型生成程序被所述处理器执行时实现如权利要求1至7中任。

9、一项所述的基于SQL语 句的决策树模型生成方法的步骤。 10.一种存储介质, 其特征在于, 所述存储介质上存储有计算机程序, 所述计算机程序 被处理器执行时实现如权利要求1至7中任一项所述的基于SQL语句的决策树模型生成方法 的步骤。 权利要求书 2/2 页 3 CN 110727659 A 3 基于SQL语句的决策树模型生成方法、 装置、 设备及介质 技术领域 0001 本发明涉及Fintech(金融科技)技术领域, 尤其涉及一种基于SQL语句的决策树模 型生成方法、 装置、 终端设备及计算机可读存储介质。 背景技术 0002 决策树算法广泛的应用于金融领域, 例如银行最基本最重要的资产业务。

10、信贷业务 中会使用到决策树进行信贷风险建模。 0003 目前, 建模人员需要使用旧有模型、 或从SQL(Structured Query Language, 结构 化查询语言)语句中建立模型时, 需要使用交互式建模的方法, 一般使用类似SAS Enterprise Miner(一种应用于数据挖掘市场的商业统计分析工具)的工具, 手动一个节点 一个节点的进行拆分构建, 如此, 模型构建耗时长, 效率低下。 发明内容 0004 本发明的主要目的在于提供一种基于SQL语句的决策树模型生成方法、 装置、 终端 设备及计算机可读存储介质, 旨在解决现有依靠建模人员手动构建决策树模型耗费时间 长, 构建效。

11、率严重低下的技术问题。 0005 为实现上述目的, 本发明提供一种基于SQL语句的决策树模型生成方法, 所述基于 SQL语句的决策树模型生成方法包括: 0006 拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 0007 对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则; 0008 按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述决策树模型。 0009 进一步地, 所述决策树模型中的所述节点至少包括: 根节点和子节点, 0010 所述拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块的步骤, 包 括: 0011 逐层拆分所述SQL语句以得到各待匹配子。

12、SQL语句块; 0012 识别各所述待匹配子SQL语句块中的关键字以建立各所述待匹配子SQL语句块与 所述根节点或者所述子节点之间的匹配关系。 0013 进一步地, 所述逐层拆分所述SQL语句以得到各待匹配子SQL语句块的步骤, 包括: 0014 拆分最外层SQL语句为父节点信息和各子节点信息; 0015 对各所述子节点信息中含有所述关键字的子节点信息继续进行拆分, 以得到新的 所述子节点信息; 0016 将拆分得到的所述父节点信息、 各所述子节点信息中不含有所述关键字的子节点 信息, 和新的所述子节点信息标记为所述待匹配子SQL语句块。 0017 进一步地, 在所述拆分SQL语句生成与决策树。

13、模型中各节点相匹配的子SQL语句块 的步骤之后, 还包括: 0018 遍历各所述子SQL语句块对应生成所述决策树模型的整体结构, 以将经决策树推 说明书 1/11 页 4 CN 110727659 A 4 理得到的预测值填充至所述整体结构中。 0019 进一步地, 所述对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则 的步骤, 包括: 0020 解析识别所述子SQL语句块的判断条件, 并获取所述判断条件的取值信息; 0021 将所述判断条件和所述取值信息转化为拆分规则填充至与所述子SQL语句块相匹 配的节点。 0022 进一步地, 所述按照所述拆分规则进行决策树推理, 以更新节点预测。

14、值生成所述 决策树模型的步骤, 包括: 0023 调用预设训练数据按照所述决策树模型中各所述节点的所述拆分规则进行决策 树推理; 0024 将经过推理得到的预测值作为所述决策树模型的节点预测值, 以确定生成所述决 策树模型。 0025 进一步地, 在所述拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块 的步骤之前, 还包括: 0026 对预设判断规则进行SQL语句转化, 得到所述预设判断规则对应的SQL语句; 0027 所述拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块, 对所述子 SQL语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推 理。

15、, 以更新节点预测值生成所述决策树模型包括: 0028 拆分所述预设判断规则对应的SQL语句, 得到所述预设判断规则对应的子SQL语句 块; 对所述预设判断规则对应的子SQL语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推理, 以更新节点预测值生成用于反映所述预设判断规则的 决策树模型。 0029 此外, 为实现上述目的, 本发明还提供一种基于SQL语句的决策树模型生成装置, 所述基于SQL语句的决策树模型生成装置包括: 0030 拆分模块, 用于拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 0031 解析模块, 用于对所述子SQL语句块进行语法解。

16、析以生成各所述节点的拆分规则; 0032 推理模块, 用于按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述 决策树模型。 0033 本发明还提供一种终端设备, 所述终端设备包括: 存储器、 处理器及存储在所述存 储器上并可在所述处理器上运行的基于SQL语句的决策树模型生成程序, 所述基于SQL语句 的决策树模型生成程序被所述处理器执行时实现如上述中的基于SQL语句的决策树模型生 成方法的步骤。 0034 本发明还提供一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质 上存储有计算机程序, 所述计算机程序被处理器执行时实现如上述的基于SQL语句的决策 树模型生成方法的步骤。。

17、 0035 本发明提出的基于SQL语句的决策树模型生成方法、 装置、 终端设备以及计算机可 读存储介质, 通过拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 对所述 子SQL语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树 推理, 以更新节点预测值生成所述决策树模型。 本发明实现了, 直接从SQL语句导入而自动 说明书 2/11 页 5 CN 110727659 A 5 生成决策树模型, 无需建模人员手动对每个节点进行拆分, 从而节省了手动建模所消耗的 时间, 提升了决策树模型的构建效率。 附图说明 0036 图1是本发明实施例方案涉及的硬件运行的结构。

18、示意图; 0037 图2是本发明一种基于SQL语句的决策树模型生成方法第一实施例的流程示意图; 0038 图3是本发明一种基于SQL语句的决策树模型生成方法一实施例中步骤S100的细 化流程示意图; 0039 图4是本发明一种基于SQL语句的决策树模型生成方法一实施例中步骤S200的细 化流程示意图; 0040 图5是本发明一种基于SQL语句的决策树模型生成方法一实施例的应用场景示意 图; 0041 图6是本发明一种基于SQL语句的决策树模型生成装置的结构示意图。 0042 本发明目的的实现、 功能特点及优点将结合实施例, 参照附图做进一步说明。 具体实施方式 0043 应当理解, 此处所描述。

19、的具体实施例仅仅用以解释本发明, 并不用于限定本发明。 0044 如图1所示, 图1是本发明实施例方案涉及的硬件运行环境的结构示意图。 0045 需要说明的是, 图1即可为终端设备的硬件运行环境的结构示意图。 本发明实施例 终端设备可以是PC, 便携计算机等终端设备。 0046 如图1所示, 该终端设备可以包括: 处理器1001, 例如CPU, 网络接口1004, 用户接口 1003, 存储器1005, 通信总线1002。 其中, 通信总线1002用于实现这些组件之间的连接通信。 用户接口1003可以包括显示屏(Display)、 输入单元比如键盘(Keyboard), 可选用户接口 1003。

20、还可以包括标准的有线接口、 无线接口。 网络接口1004可选的可以包括标准的有线接 口、 无线接口(如WI-FI接口)。 存储器1005可以是高速RAM存储器, 也可以是稳定的存储器 (non-volatile memory), 例如磁盘存储器。 存储器1005可选的还可以是独立于前述处理器 1001的存储装置。 0047 本领域技术人员可以理解, 图1中示出的终端设备结构并不构成对终端设备的限 定, 可以包括比图示更多或更少的部件, 或者组合某些部件, 或者不同的部件布置。 0048 如图1所示, 作为一种计算机存储介质的存储器1005中可以包括操作系统、 网络通 信模块、 用户接口模块以及。

21、分布式任务的处理程序。 其中, 操作系统是管理和控制样本终端 设备硬件和软件资源的程序, 支持分布式任务的处理程序以及其它软件或程序的运行。 0049 在图1所示的终端设备中, 用户接口1003主要用于与各个终端进行数据通信; 网络 接口1004主要用于连接后台服务器, 与后台服务器进行数据通信; 而处理器1001可以用于 调用存储器1005中存储的基于SQL语句的决策树模型生成程序, 并执行以下操作: 0050 拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块; 0051 对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则; 0052 按照所述拆分规则进行决策树推理, 以。

22、更新节点预测值生成所述决策树模型。 0053 进一步地, 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型 说明书 3/11 页 6 CN 110727659 A 6 生成程序, 还执行以下操作: 0054 逐层拆分所述SQL语句以得到各待匹配子SQL语句块; 0055 识别各所述待匹配子SQL语句块中的关键字以建立各所述待匹配子SQL语句块与 所述根节点或者所述子节点之间的匹配关系。 0056 进一步地, 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型 生成程序, 还执行以下操作: 0057 拆分最外层SQL语句为父节点信息和各子节点信息; 00。

23、58 对各所述子节点信息中含有所述关键字的子节点信息继续进行拆分, 以得到新的 所述子节点信息; 0059 将拆分得到的所述父节点信息、 各所述子节点信息中不含有所述关键字的子节点 信息, 和新的所述子节点信息标记为所述待匹配子SQL语句块。 0060 进一步地, 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型 生成程序, 在执行拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块之后, 还 执行以下操作: 0061 遍历各所述子SQL语句块对应生成所述决策树模型的整体结构, 以将经决策树推 理得到的预测值填充至所述整体结构中。 0062 进一步地, 处理器10。

24、01可以调用存储器1005中存储的基于SQL语句的决策树模型 生成程序, 还执行以下操作: 0063 解析识别所述子SQL语句块的判断条件, 并获取所述判断条件的取值信息; 0064 将所述判断条件和所述取值信息转化为拆分规则填充至与所述子SQL语句块相匹 配的节点。 0065 进一步地, 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型 生成程序, 还执行以下操作: 0066 调用预设训练数据按照所述决策树模型中各所述节点的所述拆分规则进行决策 树推理; 0067 将经过推理得到的预测值作为所述决策树模型的节点预测值, 以确定生成所述决 策树模型。 0068 进一步地,。

25、 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型 生成程序, 在执行拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块之前, 还 执行以下操作: 0069 对预设判断规则进行SQL语句转化, 得到所述预设判断规则对应的SQL语句; 0070 处理器1001可以调用存储器1005中存储的基于SQL语句的决策树模型生成程序, 还执行以下操作: 0071 拆分所述预设判断规则对应的SQL语句, 得到所述预设判断规则对应的子SQL语句 块; 对所述预设判断规则对应的子SQL语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推理, 以更新节点预测。

26、值生成用于反映所述预设判断规则的 决策树模型。 0072 基于上述的结构, 提出本发明基于SQL语句的决策树模型生成方法的各个实施例。 0073 请参照图2, 图2为本发明基于SQL语句的决策树模型生成方法第一实施例的流程 说明书 4/11 页 7 CN 110727659 A 7 示意图。 0074 本发明实施例提供了基于SQL语句的决策树模型生成方法的实施例, 需要说明的 是, 虽然在流程图中示出了逻辑顺序, 但是在某些情况下, 可以以不同于此处的顺序执行所 示出或描述的步骤。 0075 本发明实施例基于SQL语句的决策树模型生成方法应用于上述终端设备, 本发明 实施例终端设备可以是PC,。

27、 便携计算机等终端设备, 在此不做具体限制。 0076 本实施例基于SQL语句的决策树模型生成方法包括: 0077 步骤S100, 拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块。 0078 在开始创建决策树模型时, 对已有或者即时转化生成的SQL语句进行拆分, 从而生 成多个与需要构建的决策树模型的各个节点对应匹配的子SQL语句块。 0079 需要说明的是, 决策树模型指具有决策树要素的数据结构, 可以由任意编程语言 实现, 而由于SQL语句作为一种数据结构化查询语言, 其数据存取与方式的运行过程与决策 树模型的整体运行之间存在相对应的层级关系, 因此可以从SQL语句中来构建决。

28、策树模型。 0080 进一步地, 请参照图3, 图3为步骤S100的细化流程示意图, 步骤S100, 包括: 0081 步骤S101, 逐层拆分所述SQL语句以得到各待匹配子SQL语句块。 0082 按照由外至里的层级顺序, 逐层的对建模人员所选择的SQL语句进行拆分, 从而形 成多个等待与建模人员需要构建的决策树模型中各节点相对应匹配的待匹配子SQL语句 块。 0083 进一步地, 步骤S101, 包括: 0084 步骤S1011, 拆分最外层SQL语句为父节点信息和各子节点信息; 0085 步骤S1012, 对各所述子节点信息中含有所述关键字的子节点信息继续进行拆分, 以得到新的所述子节点。

29、信息; 0086 步骤S1013, 将拆分得到的所述父节点信息、 各所述子节点信息中不含有所述关键 字的子节点信息, 和新的所述子节点信息标记为所述待匹配子SQL语句块。 0087 具体地, 例如, 在如图5所示的应用场景中, 按照由最外层逐层至里的拆分顺序, 先 将SQL语句的最外层节点(判断 “age(年龄)” )拆分为两个最外层CASE WHEN ELSE END(条件 语句)所划分下的子SQL语句块1: 0088 0089 和子SQL语句块2: 说明书 5/11 页 8 CN 110727659 A 8 0090 0091 需要说明的是, 本实施例中, 建模人员需要构建的决策树模型中各。

30、节点的节点类 型至少包括: 根节点和子节点。 0092 步骤S102, 识别各所述待匹配子SQL语句块中的关键字以建立各所述待匹配子SQL 语句块与所述根节点或者所述子节点之间的匹配关系。 0093 通过调用预设字符匹配算法, 对拆分SQL语句而形成的多个待匹配子SQL语句块进 行匹配, 从而为每一个待匹配子SQL语句块与建模人员所需要构建的决策树模型的根节点 和各子节点之间所一一对应的匹配关系。 0094 具体地, 例如, 可通过调用括号匹配算法, 使用栈的数据结构对拆分得到的子SQL 语句块中的 “CASE” 、“WHEN” 、“ELSE” 和/或者 “END” 几个关键字进行匹配, 从而。

31、对应的建立最 外层CASE WHEN ELSE END条件语句与建模人员当前所需要构建的决策树模型中, 根节点之 间一一对应的匹配关系, 并同时建立各子SQL语句块与建模人员当前所需要构建的决策树 模型中, 各子节点之间一一对应的匹配关系。 0095 需要说明的是, 本实施例中, 可调用的预设字符匹配算法可以是括号匹配算法或 者正则表达式匹配算法等任意字符串匹配算法, 应当理解的是, 本发明建模数据评价指标 的计算方法, 并不对将各子SQL语句块匹配为决策树模型中根节点或者各子节点所对应的 代码块而调用的匹配算法进行限定。 0096 进一步地, 在另一个实施例中, 在上述步骤S100, 拆分S。

32、QL语句生成与决策树模型 中各节点相匹配的子SQL语句块之后, 本发明基于SQL语句的决策树模型生成方法, 还包括: 0097 步骤A, 遍历各所述子SQL语句块对应生成所述决策树模型的整体结构, 以将经决 策树推理得到的预测值填充至所述整体结构中。 0098 采用前序遍历的方式对拆分SQL语句而形成的多个子SQL语句块进行遍历, 从而对 应组建决策树模型中根节点与各子节点, 以最终形成整个建模人员所需构建的决策树模型 的整体架构。 0099 具体地, 例如, 采用前序遍历(根、 左、 右)的遍历方式, 先导入拆分出来的SQL语句 的最外层CASE WHEN ELSE END条件语句, 对应的。

33、生成当前建模人员所需要构建的决策树模 型的根节点, 随后导入各子SQL语句块的CASE WHEN ELSE END条件语句, 以对应的生成所需 要构建的决策树模型的根节点向左方向指定的子节点, 并在全部左方向上的子节点生成至 叶子节点, 即导入的SQL语句的最外层CASE WHEN ELSE END条件语句下的其中一个判断分 支, 子SQL语句块中不含有 “CASE” 、“WHEN” 、“ELSE” 或者 “END” 关键字时, 再基于从决策树模 型的根节点向右方向开始生成指定的子节点, 直到最终所导入的子SQL语句块中不含有 “CASE” 、“WHEN” 、“ELSE” 或者 “END” 关。

34、键字。 说明书 6/11 页 9 CN 110727659 A 9 0100 步骤S200, 对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则。 0101 调用现有的任意语法解析算法, 对通过拆分完整的SQL语句得到的各子SQL语句块 进行语法解析, 从而解析识别出各子SQL语句块的判断条件, 并同时获取各子SQL语句块不 同判断条件所对应的取值信息, 然后运用任意编程语言将解析出的各子SQL语句块不同的 判断条件以及判断条件下对应的取值信息, 转化为各子SQL语句块所对应匹配的当前建模 人员所需构建决策树模型各节点的拆分规则, 并将该转化完成的拆分规则填充至当前节 点, 以构建当前。

35、决策树模型完整架构下的各完整的拆分节点。 0102 需要说明的是, 本实施例中, 可以通过调用任意语法解析算法对子SQL语句块进行 语法解析操作, 并且也可通过调用任意的编程语言将判断条件以及取值信息转化为各子 SQL语句块在决策树模型中所对应匹配的节点的拆分规则, 应当理解的是, 本发明基于SQL 语句的决策树模型生成方法, 并不对可实现语法解析以及字符匹配等计算平台和编程语言 进行限定, 因此, 本发明可无需考虑建模人员对特征计算平台以及编程语言的使用能力, 提 升了决策树模型的构建效率。 0103 步骤S300, 按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述决策 树模型。 。

36、0104 进一步地, 步骤S300, 包括: 0105 步骤S301, 调用预设训练数据按照所述决策树模型中各所述节点的所述拆分规则 进行决策树推理。 0106 步骤S302, 将经过推理得到的预测值作为所述决策树模型的节点预测值, 以确定 生成所述决策树模型。 0107 调用建模人员构建当前决策树模型所使用的训练数据, 按照当前决策树已经构建 完成的整体结构以及当前决策树模型中, 根节点与各子节点当中所填充的拆分规则, 对当 前决策树模型进行决策树推理得出当前决策树模型中各 “叶子节点” 的预测值, 将该推理得 出的预测值对该各个 “叶子节点” 进行更新作为当前决策树模型的最终预测结果。 0。

37、108 需要说明的是, 本实施例中, 决策树模型由节点和分支构成, 节点可分为两类: 叶 子节点和非叶子节点; 非叶子节中有一个根节点, 是决策树模型的第一个选择点; 每个非叶 子节点分出至少两个分支, 每个分支指向一个叶子节点或非叶子节点; 非叶子节点的分支 所指向的节点, 称为该非叶子节点的子节点, 该非叶子节点称为所指向的各节点的父节点; 非叶子节点中包含拆分规则, 非叶子节点的数据将根据选定变量特征的取值不同, 分配至 不同的子节点, 这种选定的变量特征, 以及取值的划分称为拆分规则; 叶子节点不再指向任 何节点。 0109 在本实施例中, 通过在开始创建决策树模型时, 对已有或者即时。

38、转化生成的SQL语 句进行拆分, 从而生成多个与需要构建的决策树模型的各个节点对应匹配的子SQL语句块, 采用前序遍历的方式对拆分SQL语句而形成的多个子SQL语句块进行遍历, 从而对应组建决 策树模型中根节点与各子节点, 以最终形成整个建模人员所需构建的决策树模型的整体架 构, 调用现有的任意语法解析算法, 对通过拆分完整的SQL语句得到的各子SQL语句块进行 语法解析, 从而解析识别出各子SQL语句块的判断条件, 并同时获取各子SQL语句块不同判 断条件所对应的取值信息, 然后运用任意编程语言将解析出的各子SQL语句块不同的判断 条件以及判断条件下对应的取值信息, 转化为各子SQL语句块所。

39、对应匹配的当前建模人员 说明书 7/11 页 10 CN 110727659 A 10 所需构建决策树模型各节点的拆分规则, 并将该转化完成的拆分规则填充至当前节点, 以 构建当前决策树模型完整架构下的各完整的拆分节点, 调用建模人员构建当前决策树模型 所使用的训练数据, 按照当前决策树已经构建完成的整体结构以及当前决策树模型中, 根 节点与各子节点当中所填充的拆分规则, 对当前决策树模型进行决策树推理得出当前决策 树模型中各 “叶子节点” 的预测值, 将该推理得出的预测值对该各个 “叶子节点” 进行更新作 为当前决策树模型的最终预测结果。 0110 实现了, 可直接从SQL语句导入而自动生成。

40、决策树模型, 无需建模人员手动对每个 节点进行拆分, 从而节省了手动建模所消耗的时间, 提升了决策树模型的构建效率。 0111 进一步地, 基于上述基于SQL语句的决策树模型生成方法第一实施例, 提出本发明 基于SQL语句的决策树模型生成方法的第二实施例。 0112 请参照图4, 图4为上述本发明基于SQL语句的决策树模型生成方法第一实施例中, 步骤S200的细化流程示意图, 在本发明基于SQL语句的决策树模型生成方法的第二实施例 中, 步骤S200, 对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则, 包括: 0113 步骤S201, 解析识别所述子SQL语句块的判断条件, 并获取。

41、所述判断条件的取值信 息。 0114 步骤S202, 将所述判断条件和所述取值信息转化为拆分规则填充至与所述子SQL 语句块相匹配的节点。 0115 具体地, 例如, 在如图5所示的应用场景中, 将拆分SQL语句最外层CASE WHEN ELSE END条件语句时, 通过解析识别到该完整的最外层条件语句: 0116 “CASE WHEN AGE28.5 THEN 0117 ELSE 0118 END” 0119 中, 所出现的字符 “” 得出当前判断条件中的 “age” 特征-年龄, 属于区 间型特征, 而紧随该字符 “” 的数值字符 “28.5” 即为当前判断条件下的取值信 息, 则对应的将。

42、该 “28.5” 转化为当前构建的决策树模型中当前最外层CASE WHEN ELSE END 条件语句所对应匹配的根节点的拆分点, 拆分条件中其中一个分支为可编程书写为: 28.5。 0120 需要说明的是, 本实施例中, SQL语句判断条件中的特征所属的特征类型包括区间 型特征和列名型特征, 其中, 区间型特征是指按区间进行划分, 例如年龄, 升高、 体重等具有 大小属性的特征, 列名型特征是指按取值类别进行划分的特征, 例如国籍、 民族等特征。 0121 进一步地, 在另一个实施例中, 若解析识别出在通过拆分完整的SQL语句而得到的 各子SQL语句块判断条件中的特征所属的特征类型为和列名型。

43、特征时, 对应的将取值转化 为所需构建的决策树模型中对应匹配节点的拆分规则。 0122 具体地, 例如, 若解析识别的条件语句: 0123 “CASE WHEN国籍in(中国, 日本, 韩国)THEN 0124 ELSE 0125 END” 0126 中, 所出现的关键字符为 “in” , 则确定当前语句判断条件中的 “国籍” 特征属于区 间型特征, 而处于该关键字符 “in” 与当前语句中 “THEN” 之间的字符内容 “中国, 日本, 韩 说明书 8/11 页 11 CN 110727659 A 11 国” , 即为当前判断条件下的取值, 则可通过编程语言将该 “中国, 日本, 韩国” 转。

44、化为当前构 建的决策树模型中, 当前子SQL语句块所对应匹配的子节点的拆分条件。 0127 进一步地, 在另一个实施例中, 本发明基于SQL语句的决策树模型生成方法, 在上 述第一实施例的步骤S100, 拆分SQL语句生成与决策树模型中各节点相匹配的子SQL语句块 之前, 还包括: 0128 步骤B, 对预设判断规则进行SQL语句转化, 得到所述预设判断规则对应的SQL语 句。 0129 需要说明的是, 建模人员基于模型的构建需求, 往往在构建决策树模型过程中, 结 合机器学习结果与专家规则(行业长时间实践的经验规则), 则当建模人员需要在决策树模 型中的部分节点使用到专家规则时, 需要建模人。

45、员手动采用交互式的建模方式来将专家规 则导入到该决策树模型中, 如此, 整个规则的导入操作将异常繁琐。 0130 对预设判断规则进行SQL语句转化, 得到预设判断规则对应的SQL语句; 拆分预设 判断规则对应的SQL语句, 得到预设判断规则对应的子SQL语句块; 对预设判断规则对应的 子SQL语句块进行语法解析以生成各节点的拆分规则; 按照拆分规则进行决策树推理, 以更 新节点预测值生成用于反映预设判断规则的决策树模型。 0131 本实施例中, 通过将建模人员需要导入到决策树模型中的专家规则, 首先基于任 意编程语言先转化为SQL语句, 从而基于上述对SQL语句进行拆分形成决策树模型中各节点 。

46、所对应匹配的各子SQL语句块, 然后通过语法解析对应转化各子SQL语句块判断条件为对应 节点的拆分规则, 最后使用训练数据基于各节点的拆分规则进行决策树推理, 从而对决策 树模型中的叶子节点预测值进行更新, 即实现只需要将需要导入到决策树模型中的专家规 则转化为SQL语句, 即可自动基于SQL语句将该专家规则导入至决策树模型当中, 提升了决 策树模型构建的灵活性与构建效率。 0132 此外, 请参照图6, 本发明实施例还提出一种基于SQL语句的决策树模型生成装置, 本发明基于SQL语句的决策树模型生成装置, 包括: 0133 拆分模块, 用于拆分SQL语句生成与决策树模型中各节点相匹配的子SQ。

47、L语句块; 0134 解析模块, 用于对所述子SQL语句块进行语法解析以生成各所述节点的拆分规则; 0135 推理模块, 用于按照所述拆分规则进行决策树推理, 以更新节点预测值生成所述 决策树模型。 0136 优选地, 拆分模块, 包括: 0137 拆分单元, 用于逐层拆分所述SQL语句以得到各待匹配子SQL语句块; 0138 匹配单元, 用于识别各所述待匹配子SQL语句块中的关键字以建立各所述待匹配 子SQL语句块与所述根节点或者所述子节点之间的匹配关系。 0139 优选地, 拆分单元, 还包括: 0140 第一拆分子单元, 用于拆分最外层SQL语句为父节点信息和各子节点信息; 0141 第。

48、一拆分子单元, 用于对各所述子节点信息中含有所述关键字的子节点信息继续 进行拆分, 以得到新的所述子节点信息; 0142 第一标记单元, 用于将拆分得到的所述父节点信息、 各所述子节点信息中不含有 所述关键字的子节点信息, 和新的所述子节点信息标记为所述待匹配子SQL语句块。 0143 优选地, 本发明基于SQL语句的决策树模型生成装置, 还包括: 说明书 9/11 页 12 CN 110727659 A 12 0144 遍历模块, 用于遍历各所述子SQL语句块对应生成所述决策树模型的整体结构, 以 将经决策树推理得到的预测值填充至所述整体结构中。 0145 优选地, 解析模块, 包括: 01。

49、46 解析识别单元, 用于解析识别所述子SQL语句块的判断条件, 并获取所述判断条件 的取值信息; 0147 填充单元, 用于将所述判断条件和所述取值信息转化为拆分规则填充至与所述子 SQL语句块相匹配的所述节点。 0148 优选地, 推理模块, 还包括: 0149 推理单元, 用于调用预设训练数据按照所述决策树模型中各所述节点的所述拆分 规则进行决策树推理; 0150 第二标记单元, 用于将经过推理得到的预测值作为所述决策树模型的节点预测 值, 以确定生成所述决策树模型。 0151 优选地, 本发明基于SQL语句的决策树模型生成装置, 还包括: 0152 转化模块, 用于对预设判断规则进行S。

50、QL语句转化, 得到所述预设判断规则对应的 SQL语句; 0153 本发明基于SQL语句的决策树模型生成装置, 还用于拆分所述预设判断规则对应 的SQL语句, 得到所述预设判断规则对应的子SQL语句块; 对所述预设判断规则对应的子SQL 语句块进行语法解析以生成各所述节点的拆分规则; 按照所述拆分规则进行决策树推理, 以更新节点预测值生成用于反映所述预设判断规则的决策树模型。 0154 本实施例提出的基于SQL语句的决策树模型生成装置各个功能模块在运行时实现 如上所述的基于SQL语句的决策树模型生成方法的步骤, 在此不再赘述。 0155 此外, 本发明实施例还提出一种计算机可读存储介质, 应用。

展开阅读全文
内容关键字: 基于 SQL 语句 决策树 模型 生成 方法 装置 设备 介质
关于本文
本文标题:基于SQL语句的决策树模型生成方法、装置、设备及介质.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10952453.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1