一种可视化拖拽式的复合算子实现方法与流程

文档序号:23101105发布日期:2020-11-27 13:09阅读:268来源:国知局
一种可视化拖拽式的复合算子实现方法与流程

本发明涉及计算机技术领域,具体提供一种可视化拖拽式的复合算子实现方法。



背景技术:

数据科学工作台,旨在降低机器学习使用门槛,提供可视化的操作界面,通过拖拽算子,组建流程实现模型的训练、评估和预测过程,有效降低机器学习模型的生命周期管理难度,为用户的数据挖掘分析业务提供易用、高效、高性能的平台服务。

在已有的工作台中,同一流程的所有算子展现在同一面板上,容易造成以下两种问题:

1.对于大型流程,前端展示算子庞杂,难以找出流程主干,严重影响用户体验;

2.对于一些流程中可能存在循环,判断等逻辑,原有非复合算子的拖拽方式无法满足需求。



技术实现要素:

本发明是针对上述现有技术的不足,提供一种实用性强的可视化拖拽式的复合算子实现方法。

本发明解决其技术问题所采用的技术方案是:

一种可视化拖拽式的复合算子实现方法,设定好的执行逻辑用于根据用户需求通过简单的前端操作修改参数,复合算子的流程块可以再次拖入复合算子,用于完成自定义的复杂流程。

进一步的,具体分为以下四个步骤:

s01、复合算子的数据结构设计;

s02、界面交互设计;

s03、复合算子运行逻辑设计;

s04、复合算子流程的构建。

进一步的,在步骤s01中,包括component_id、pipeline_id、is_compound、ref_pipeline_id、param、input_param、output_param、inner_input_param和inner_output_param;

其中,is_compound标定算子是否为复合算子,如果是复合算子,那么根据其对应的ref_pipeline_id可查询到其附属的流程id,通过流程id查询到所述流程包含的所有算子id,通过递归查询,遍历出整个流程的所有信息。

进一步的,param存储算子执行逻辑中一些可变的参数,input_param和output_param中存储算子输入输出的端口信息,包括所对应的文件位置;

对于复合算子还存在内部流程的输入输出端口信息,将其存储在inner_input_param和inner_output_param中。

进一步的,在步骤s02中,包括:

s021、进出复合算子,展示相应流程;

s022、复合算子内流程块设计;

s023、复合算子的逻辑参数面板。

进一步的,在步骤s021中,所述复合算子由两部分组成,一部分为算子本身的逻辑,单击复合算子,右侧面板会展示出该算子自身执行逻辑的可调参数;

另一部分是复合算子内部包含的流程块,通过双击复合算子,即可进入复合算子后的界面,通过点击界面中上方的按键即可退出当前流程块;

在步骤s022中,用户未操作之前,双击打开复合算子,在面板上会初始化输入节点和输出节点两个算子,算子的端口数,从数据库中inner_input_param和inner_output_param两个字段中获得,在这两个算子间连接流程,即可构成复合算子内部代码块;

在步骤s023中,分为主页面和子页面,在主页面单击复合算子,展示出算子的执行逻辑,单击面板空白处,会展示当前流程信息,在子页面单击流程块算子,展示点击算子的执行逻辑参数面板,单击面板空白处,展示这个流程块所附属的复合算子的参数。

进一步的,在步骤s03中,复合算子包含输入、输出端口及内部输入、输出端口共四组端口信息,其中的输出端口和内部输入端口在算子拖入面板后就随即根据算子实例id、端口类型、端口次序确定;

输入端口和内部输出端口在流程块完成连接时,由连接上游的端口赋予,赋予的端口信息与上游端口信息相同,至此,整个流程块的端口信息在流程组建好时就可以确定;

首先读取输入端口信息,通过自身逻辑将数据处理为内部输入端口需要的格式传入内部输入端口,内部流程块读取内部输入端口数据,执行结束后将输出写入复合算子的内部输出端口,再由复合算子的自身逻辑将内部输出端口的数据整合成输出端口需要的格式写入输出端口对应的存储位置中,内部流程块各算子的运行逻辑与主页面个算子的运行逻辑相同。

进一步的,在步骤s04中,包括:

s041、循环;

s042、条件判断。

进一步的,在步骤s041中,复合算子参数面板可以自主编辑运行时的逻辑参数,也可编辑循环算子的循环次数,所述复合算子内部的流程块将安装设定的参数循环执行。

进一步的,在步骤s042中,条件判断复合算子的子流程页面分为两块,可根据复合算子的逻辑选择其中一块,当所有字段的值大于一个阈值时,执行左侧流程,否则执行右侧流程。

本发明的一种可视化拖拽式的复合算子实现方法和现有技术相比,具有以下突出的有益效果:

本发明提供了一种基于可视化拖拽式的复合算子实现方法,将原有复杂流程能够通过该复合算子实现自定义拆分、拼接,从而模块化原有的流程,前端展现时突出主干。此外通过复合算子,可实现非复合算子流程无法完成的循环、判断等逻辑。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

附图1是一种可视化拖拽式的复合算子实现方法中复合算子运行逻辑流程图;

附图2是一种可视化拖拽式的复合算子实现方法中复合算子本身逻辑的可调参数界面示意图;

附图3是一种可视化拖拽式的复合算子实现方法中复合算子内部流程块的界面初始化示意图;

附图4是一种可视化拖拽式的复合算子实现方法中复合算子内部流程块已拖拽的界面示意图;

附图5是一种可视化拖拽式的复合算子实现方法中条件判断复合算子的子流程块图。

具体实施方式

为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。

下面给出一个最佳实施例:

如图1-5所示,本实施例中一种可视化拖拽式的复合算子实现方法,复合算子是具有子流程特性的流程块,流程块内用户可以通过已有算子编排自己的流程,编排好的流程可根据该复合算子设定好的逻辑执行该流程块,本发明提出的复合算子,其设定好的执行逻辑可以根据用户需求通过简单的前端操作修改参数,此外复合算子的流程块内可以再次拖入复合算子,从而完成自定义的复杂流程。

具体分为以下四个步骤:

s01、复合算子的数据结构设计:

复合算子的数据结构设计如上表所示,其中,“is_compound”字段标定该算子是否为复合算子,如果是复合算子,那么根据其对应的“ref_pipeline_id”可查询到其附属的流程(块)id,通过该流程id便可查询到该流程(块)所包含的所有算子id,从而通过递归查询,遍历出整个流程的所有信息。

表中的“param”存储算子执行逻辑中一些可变的参数,“input_param”,“output_param”中存储算子输入输出的端口信息,包括所对应的文件位置。而对于复合算子,其除了外部输入输出端口外,还存在内部流程块的输入输出端口信息,本发明将其存储在“inner_input_param”和“inner_output_param”中。

s02、界面交互设计:

包括:

s021、进出复合算子,展示相应流程:

本发明的复合算子由两部分组成,一部分是算子本身的逻辑,我们通过单击复合算子(如附图二中的“循环”算子——前端展示为双线框),右侧面板会展示出该算子自身执行逻辑的可调参数;另一部分是复合算子内部包含的流程块,我们通过双击复合算子,即可进入复合算子,进入复合算子后的界面如附图三所示,我们通过点击界面中上方的“面包屑”即可退出当前流程块。

另外,如果复合算子的流程块内仍然包含复合算子,即构成了多层嵌套。我们可以通过上述“面包屑”,实现任意流程块的界面切换。

s022、复合算子内流程块设计:

复合算子内流程块的设计如附图三所示,在用户未操作之前,双击打开复合算子,我们在面板上会初始化“输入节点”和“输出节点”两个算子,算子的端口数,从数据库中的“inner_input_param”和“inner_output_param”两个字段中获得。用户在这两个算子间连接需要的流程,即可构成复合算子的内部代码块。

s023、复合算子的逻辑参数面板:

这里做两个说明:主页面:即,附图二所对应页面,也是附图三中“面包屑”中“root”所指的页面;子页面:附图三所对应页面。

本发明所设计的复合算子,在主页面单击复合算子,会展示出算子的执行逻辑,单击面板空白处,会展示当流程的信息。在子页面单击流程块算子,会展示点击算子的执行逻辑参数面板,单击面板空白处,会展示这个流程块所附属的复合算子的参数。

s03、复合算子运行逻辑设计:

本发明所述复合算子包含输入、输出端口及内部输入、输出端口共四组端口信息,其中的输出端口和内部输入端口在算子拖入面板后就随即根据算子实例id、端口类型、端口次序确定了。而其它两组端口信息,即输入端口和内部输出端口在流程块完成连线时,由连线上游的端口赋予,赋予的端口信息与上游端口信息相同。至此,整个流程块的端口信息在流程组建好时就可完全确定。

此处,需要注意,通过附图三可见复合算子的内部输入端口,从内部来看实为输出端口。

当知道了算子的输入和输出端口信息后,非复合算子(只有自身逻辑,不包含子流程块)即可通过读取输入端口信息完成自己的逻辑,再将结果写在输出端口对应的存储位置中。而对于本发明提到的复合算子,首先读取输入端口信息,通过自身逻辑将数据处理为内部输入端口需要的格式传入内部输入端口,内部流程块读取内部输入端口数据,执行结束后将输出写入复合算子的内部输出端口,再由复合算子的自身逻辑将内部输出端口的数据整合成输出端口需要的格式写入输出端口对应的存储位置中。而内部流程块各算子的运行逻辑与主页面各算子的运行逻辑相同。

s04、复合算子流程的构建:

包括:

s041、循环:

如附图二所示,复合算子通过右侧的参数面板可以自主编辑运行时的逻辑参数,如图中可以编辑该“循环算子”的循环次数,这样该复合算子内部的流程块将按照设定的参数循环执行。

s042、条件判断:

如附图五所示,“条件判断”复合算子的子流程页面分为两块,可根据复合算子的逻辑选择其中的一块。以图示为例,当所有字段(conditiontype=all)的值大于50时,执行左侧流程,否则执行右侧流程(此处仅为举例,具体逻辑规则可根据算子内部逻辑自行规定)。

上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种可视化拖拽式的复合算子实现方法权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1