CN117667051A - Method, device, system and storage medium for configuring directed acyclic graph - Google Patents

Method, device, system and storage medium for configuring directed acyclic graph Download PDF

Info

Publication number
CN117667051A
CN117667051A CN202211058898.9A CN202211058898A CN117667051A CN 117667051 A CN117667051 A CN 117667051A CN 202211058898 A CN202211058898 A CN 202211058898A CN 117667051 A CN117667051 A CN 117667051A
Authority
CN
China
Prior art keywords
node
acyclic graph
directed acyclic
subunit
drawing page
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
Application number
CN202211058898.9A
Other languages
Chinese (zh)
Inventor
郜婕
徐昀
张冠一
迟娩
冯佳宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
4Paradigm Beijing Technology Co Ltd
Original Assignee
4Paradigm Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 4Paradigm Beijing Technology Co Ltd filed Critical 4Paradigm Beijing Technology Co Ltd
Priority to CN202211058898.9A priority Critical patent/CN117667051A/en
Publication of CN117667051A publication Critical patent/CN117667051A/en
Pending legal-status Critical Current

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

Provided are a method, a device, a system and a storage medium for configuring a directed acyclic graph. The configuration method comprises the following steps: displaying a drawing page of the directed acyclic graph; responsive to a node selection operation performed on a node in the directed acyclic graph on the drawing page, displaying a plurality of function entry controls for the selected node; responding to a control selection operation executed on the displayed function entry control, and displaying a configuration window for configuring a function corresponding to the selected function entry control on the drawing page; and configuring the selected node in response to a configuration operation performed in the configuration window.

Description

Method, device, system and storage medium for configuring directed acyclic graph
Technical Field
The present disclosure relates generally to the field of data processing, and more particularly, to a method, apparatus, system, and storage medium for configuring a directed acyclic graph.
Background
The directed acyclic graph DAG can be used for modeling some kinds of structures in mathematics and computer science, and is mainly used for related problems such as data processing, scheduling, data compression and the like. Because the DAG is flexible and extensible enough, the method is very suitable for complex artificial intelligence scenes, can pack complex codes and functions into operators, and can be visually presented according to logic of the structure of the DAG, so that the technical threshold and the cognitive learning cost of products are reduced.
However, in the course of product development using a DAG, the ease of configuration of the DAG has yet to be further improved.
Disclosure of Invention
Exemplary embodiments of the present disclosure provide a method, an apparatus, a system, and a storage medium for configuring a directed acyclic graph, which can improve the configuration efficiency and the configuration experience of the directed acyclic graph, and can reduce the configuration threshold of the directed acyclic graph.
According to an exemplary embodiment of the present disclosure, there is provided a method of configuring a directed acyclic graph, the method including: displaying a drawing page of the directed acyclic graph; responsive to a node selection operation performed on a node in the directed acyclic graph on the drawing page, displaying a plurality of function entry controls for the selected node; responding to a control selection operation executed on the displayed function entry control, and displaying a configuration window for configuring a function corresponding to the selected function entry control on the drawing page; and configuring the selected node in response to a configuration operation performed in the configuration window.
Optionally, the functions corresponding to the plurality of function entry controls include at least one of: a function for controlling the node execution state; functions for controlling the timing of the node execution; a function for monitoring the execution of the node; a function for deleting the node and/or configuration information of the node; a function for copying configuration information of the node and/or nodes.
Optionally, the monitoring type of the execution condition of the monitoring node includes at least one of the following: task monitoring for monitoring a task execution state of a node; the service index monitoring is used for monitoring the execution index value of the node aiming at the specific service index; and (5) custom monitoring.
Optionally, the method further comprises: after the configuration of the selected node is completed, the selected node is displayed as being in a state in which a function corresponding to the selected function entry control has been configured.
Optionally, the method further comprises: determining subunits in the directed acyclic graph based on the relation among nodes in the directed acyclic graph on the drawing page, wherein the subunits are composed of one node or a plurality of nodes connected with each other; in response to a state adjustment operation on a subunit in the directed acyclic graph, a display state of the subunit is adjusted.
Optionally, the step of determining the subunit in the directed acyclic graph based on the relationships between the nodes in the directed acyclic graph on the drawing page comprises: determining subunits in the directed acyclic graph based on functional attributes of nodes in the directed acyclic graph on the drawing page, wherein any one of the subunits is used for realizing one or more functions; or determining a subunit in the directed acyclic graph based on the edge connection relation of each node in the directed acyclic graph on the drawing page, wherein the edge connection relation of a node in a non-subunit connected by a termination node or a start node of any subunit meets a specific condition.
Optionally, in response to a state adjustment operation on a subunit in the directed acyclic graph, the step of adjusting a display state of the subunit includes: in response to a folding operation on a subunit in the directed acyclic graph, folding the subunit and displaying a subunit icon representing the folded subunit; or, in response to the unfolding operation of the displayed subunit icon, displaying the node included in the subunit represented by the subunit icon.
Optionally, the display style of the subunit icon is used to prompt the number of nodes included in the subunit represented by the subunit icon.
Optionally, the folding operation includes hovering over a connection point of the subunit for connection to other nodes, and clicking a folding control displayed in response to the hovering operation.
Optionally, the method further comprises: the sub-units in the directed acyclic graph are multiplexed in response to a multiplexing operation on the sub-units.
Optionally, the multiplexing operation includes: and copying the sub-units in the directed acyclic graph, and pasting the copied sub-units at the positions needing multiplexing in the drawing page.
Optionally, the method further comprises: the constructed sub-units are added to the drawing page in response to a multiplexing operation that multiplexes the constructed sub-units on the drawing page.
Optionally, the multiplexing operation includes: newly adding a blank node on the drawing page, and configuring the blank node as the constructed subunit; alternatively, the multiplexing operation includes: dragging the constructed sub-units from the sub-unit list to the drawing page.
Optionally, configuring the blank node as the constructed subunit includes: and configuring the file path of the blank node as the file path of the constructed subunit, or importing the file of the constructed subunit into the blank node.
Optionally, the step of displaying the drawing page of the directed acyclic graph comprises: displaying the directed acyclic graph on the drawing page based on the display style corresponding to each node; wherein the display style is associated with node information.
Optionally, the node information includes at least one of: the method comprises the steps of a function type of a node, a link to which the node belongs, an editing mode of the node, a creator of the node, an execution condition of the node and a type of an object aimed by the node.
Optionally, the display style includes a color and/or an icon.
Optionally, the step of displaying the drawing page of the directed acyclic graph comprises: presenting a directed acyclic graph representing the constructed machine learning modeling process in a drawing page for constructing the machine learning modeling process; wherein the nodes in the directed acyclic graph are operators corresponding to steps in the machine learning modeling process.
According to an exemplary embodiment of the present disclosure, there is provided a configuration apparatus of a directed acyclic graph, the apparatus including: a drawing page display unit configured to display a drawing page of the directed acyclic graph; an entry control display unit configured to display a plurality of functional entry controls for a node in the directed acyclic graph on the drawing page in response to a node selection operation performed on the selected node; a configuration window display unit configured to display, on the drawing page, a configuration window for configuring a function corresponding to the selected function entry control in response to a control selection operation performed on the displayed function entry control; a configuration unit configured to configure the selected node in response to a configuration operation performed in the configuration window.
Optionally, the functions corresponding to the plurality of function entry controls include at least one of: a function for controlling the node execution state; functions for controlling the timing of the node execution; a function for monitoring the execution of the node; a function for deleting the node and/or configuration information of the node; a function for copying configuration information of the node and/or nodes.
Optionally, the monitoring type of the execution condition of the monitoring node includes at least one of the following: task monitoring for monitoring a task execution state of a node; the service index monitoring is used for monitoring the execution index value of the node aiming at the specific service index; and (5) custom monitoring.
Optionally, the apparatus further comprises: and a state display unit configured to display the selected node as being in a state in which a function corresponding to the selected function entry control has been configured after completion of the configuration of the selected node.
Optionally, the apparatus further comprises: a subunit determining unit configured to determine a subunit in the directed acyclic graph based on a relationship between nodes in the directed acyclic graph on the drawing page, wherein the subunit is composed of one node or a plurality of nodes connected to each other; a subunit adjusting unit configured to adjust a display state of a subunit in the directed acyclic graph in response to a state adjustment operation on the subunit.
Optionally, the subunit determining unit is configured to: determining subunits in the directed acyclic graph based on functional attributes of nodes in the directed acyclic graph on the drawing page, wherein any one of the subunits is used for realizing one or more functions; or determining a subunit in the directed acyclic graph based on the edge connection relation of each node in the directed acyclic graph on the drawing page, wherein the edge connection relation of a node in a non-subunit connected by a termination node or a start node of any subunit meets a specific condition.
Optionally, the subunit adjusting unit is configured to: in response to a folding operation on a subunit in the directed acyclic graph, folding the subunit and displaying a subunit icon representing the folded subunit; or, in response to the unfolding operation of the displayed subunit icon, displaying the node included in the subunit represented by the subunit icon.
Optionally, the display style of the subunit icon is used to prompt the number of nodes included in the subunit represented by the subunit icon.
Optionally, the folding operation includes hovering over a connection point of the subunit for connection to other nodes, and clicking a folding control displayed in response to the hovering operation.
Optionally, the apparatus further comprises: a multiplexing unit configured to multiplex the sub-units in the directed acyclic graph in response to a multiplexing operation on the sub-units.
Optionally, the multiplexing operation includes: and copying the sub-units in the directed acyclic graph, and pasting the copied sub-units at the positions needing multiplexing in the drawing page.
Optionally, the apparatus further comprises: a multiplexing unit configured to add the constructed sub-units on the drawing page in response to a multiplexing operation of multiplexing the constructed sub-units on the drawing page.
Optionally, the multiplexing operation includes: newly adding a blank node on the drawing page, and configuring the blank node as the constructed subunit; alternatively, the multiplexing operation includes: dragging the constructed sub-units from the sub-unit list to the drawing page.
Optionally, configuring the blank node as the constructed subunit includes: and configuring the file path of the blank node as the file path of the constructed subunit, or importing the file of the constructed subunit into the blank node.
Optionally, the drawing page display unit is configured to: displaying the directed acyclic graph on the drawing page based on the display style corresponding to each node; wherein the display style is associated with node information.
Optionally, the node information includes at least one of: the method comprises the steps of a function type of a node, a link to which the node belongs, an editing mode of the node, a creator of the node, an execution condition of the node and a type of an object aimed by the node.
Optionally, the display style includes a color and/or an icon.
Optionally, the drawing page display unit is configured to: presenting a directed acyclic graph representing the constructed machine learning modeling process in a drawing page for constructing the machine learning modeling process; wherein the nodes in the directed acyclic graph are operators corresponding to steps in the machine learning modeling process.
According to an exemplary embodiment of the present disclosure, a system is provided comprising at least one computing device and at least one storage device storing instructions, wherein the instructions, when executed by the at least one computing device, cause the at least one computing device to perform a method of configuring a directed acyclic graph as described above.
According to an exemplary embodiment of the present disclosure, a computer-readable storage medium storing instructions is provided, wherein the instructions, when executed by at least one computing device, cause the at least one computing device to perform a method of configuring a directed acyclic graph as described above.
According to the configuration method, the device, the system and the storage medium of the directed acyclic graph, the multifunctional shortcut configuration entry for a single node can be provided for a user on a drawing page of the directed acyclic graph, and a corresponding configuration window is displayed on the drawing page in response to the selection operation of the configuration entry, so that the user can specifically configure the node through the configuration window. On one hand, the user can conveniently and quickly configure the directed acyclic graph in the drawing page without jumping the interface; on the other hand, the user-defined configuration is supported in the drawing page aiming at each node, so that the configuration easiness and flexibility of the node level are improved, the configuration efficiency and the configuration experience of a user can be improved, and the configuration threshold of the directed acyclic graph can be reduced.
Additional aspects and/or advantages of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the general inventive concept.
Drawings
The foregoing and other objects and features of exemplary embodiments of the present disclosure will become more apparent from the following description taken in conjunction with the accompanying drawings which illustrate the embodiments by way of example, in which:
FIG. 1 illustrates a flow chart of a method of configuring a directed acyclic graph according to an exemplary embodiment of the disclosure;
FIG. 2 illustrates an example of a drawing page of a directed acyclic graph, according to an example embodiment of the disclosure;
FIG. 3 illustrates an example of a display style of a node according to an exemplary embodiment of the present disclosure;
FIG. 4 illustrates an example of displaying a plurality of functional entry controls according to an exemplary embodiment of the present disclosure;
fig. 5 to 7 illustrate examples of presentation configuration windows according to exemplary embodiments of the present disclosure;
FIG. 8 illustrates an example of displaying a node as being in a state with functions configured according to an exemplary embodiment of the present disclosure;
fig. 9 illustrates an example of a folding operation according to an exemplary embodiment of the present disclosure;
fig. 10 illustrates an example of a display style of a sub-unit icon according to an exemplary embodiment of the present disclosure;
fig. 11 illustrates an example of subunit multiplexing according to an exemplary embodiment of the present disclosure;
fig. 12 shows a block diagram of a configuration apparatus of a directed acyclic graph according to an exemplary embodiment of the disclosure.
Detailed Description
Reference will now be made in detail to embodiments of the present disclosure, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments will be described below in order to explain the present disclosure by referring to the figures.
Fig. 1 shows a flow chart of a method of configuring a directed acyclic graph according to an exemplary embodiment of the disclosure.
Referring to fig. 1, in step S101, a drawing page of a directed acyclic graph is displayed.
The drawing page is used for constructing the directed acyclic graph and displaying the constructed directed acyclic graph.
As an example, a directed acyclic graph for representing a built machine learning modeling process may be presented in a drawing page for building the machine learning modeling process. Nodes in the directed acyclic graph are operators corresponding to steps in the machine learning modeling process.
As an example, a drawing page of a directed acyclic graph may be displayed in response to a user operation to open a file for describing a machine learning modeling process, and the directed acyclic graph representing a content-defined machine learning modeling process of the file may be presented in the drawing page; the drawing page in which the directed acyclic graph representing the machine learning modeling process that the user has constructed is also displayed in response to a user operation requesting the creation of the machine learning modeling process, and in real time in response to a user operation for constructing the machine learning modeling process, for example, adding and connecting respective nodes corresponding to respective steps.
As an example, the machine learning modeling process may include, but is not limited to, at least one of the following steps: data input, data processing, data loading, data quality inspection, data missing value filling, data splicing, data splitting, feature extraction, model training, model testing, model evaluation, post-trigger processing conditions, data storage, data format conversion and result submission.
Further, as an example, a directed acyclic graph representing a constructed machine learning prediction process may be presented in a drawing page for constructing the machine learning prediction process. Nodes in the directed acyclic graph are operators corresponding to steps in the machine learning prediction process. It should be understood that the method of configuring a directed acyclic graph according to an exemplary embodiment of the present disclosure can also be applied to other scenarios in which a directed acyclic graph needs to be constructed, which is not limited by the present disclosure.
Fig. 2 illustrates an example of a drawing page of a directed acyclic graph, according to an example embodiment of the disclosure. As shown in FIG. 2, a directed acyclic graph can be presented in a canvas area of a drawing page.
As an example, on the drawing page, the directed acyclic graph may be displayed based on a display style corresponding to each node; wherein the display style is associated with node information.
As an example, the node information may include, but is not limited to, at least one of: the method comprises the steps of a function type of a node, a link to which the node belongs, an editing mode of the node, a creator of the node, an execution condition of the node and a type of an object aimed by the node. For example, in a machine learning scenario, the types of links may include, but are not limited to: data management, characteristic engineering, judgment conditions and data output. For example, the types of editing means may include, but are not limited to: a code editing mode and a form editing mode. For example, the types of execution may include, but are not limited to: successful execution, execution failure, to be executed, executed. The types of objects for which the node is directed may include, but are not limited to: data, features, models.
As an example, the display style may include, but is not limited to, at least one of: color, icon. For example, the color may refer to at least one of the following: the border color of the node, the fill color of the node, the color of the name of the node, the color of the icon.
Fig. 3 illustrates an example of a display style of a node according to an exemplary embodiment of the present disclosure. As shown in fig. 3, the icons of the nodes with the same function type in the directed acyclic graph are the same, and the icons of the nodes with different function types are different.
According to the embodiment of the disclosure, the display modes of the nodes in the directed acyclic graph are used for prompting the types of the nodes differently, the display modes of the nodes of the same type are consistent, and the display modes of the nodes of different types are different, so that a user can intuitively know the nodes belonging to the same type or the nodes belonging to different types through the visual effect of the nodes in the directed acyclic graph, and the user can conveniently and uniformly search the nodes, for example, the user can conveniently and uniformly check and edit all the steps belonging to the same type in the machine learning modeling process.
In step S102, in response to a node selection operation performed on a node in the directed acyclic graph on the drawing page, a plurality of function entry controls are displayed for the selected node.
As an example, the node selection operation may be a single click operation of a node, and it should be understood that other types of user operations for selecting a node are also possible, which is not limited by the present disclosure.
As an example, the functions corresponding to the plurality of function entry controls may include at least one of: a function for controlling the node execution state; functions for controlling the timing of the node execution; a function for monitoring the execution of the node; a function for deleting the node and/or configuration information of the node; a function for copying configuration information of the node and/or nodes.
As an example, the control node execution state may include start execution/retry/pause execution.
As an example, the monitoring type of the execution condition of the monitoring node may include at least one of the following for task monitoring of the task execution state of the monitoring node; the service index monitoring is used for monitoring the execution index value of the node aiming at the specific service index; and (5) custom monitoring.
As an example, the task execution state may include, but is not limited to: task success, task failure, task execution.
As an example, in a machine learning scenario, business metrics may include, but are not limited to: accuracy and recall rate.
As an example, custom monitoring may be customized by a user to what needs to be monitored and the subsequent alert mode and alert triggered operation. For example, in a financial anti-fraud machine learning scenario, a suspicious account may be alerted or automatically locked after triggering.
As an example, multiple function entry controls for a selected node may be displayed in the vicinity of the node. For example, as shown in FIG. 4, the plurality of functional entry controls displayed in the vicinity of the selected node are, in order from left to right: start/retry/pause function entry control, monitor function entry control, timing function entry control, delete function entry control, copy function entry control.
According to an exemplary embodiment of the present disclosure, start/retry/pause, monitoring, timing, deletion, duplication at the support node level.
In step S103, in response to a control selection operation performed on the displayed function entry control, a configuration window for configuring a function corresponding to the selected function entry control is presented on the drawing page.
As an example, the control selection operation may be an operation of clicking on a control, and it should be understood that other types of user operations for selecting a control are also possible, which is not limited by the present disclosure.
As an example, a configuration window for configuring a function corresponding to the selected function entry control may be presented in the vicinity of the selected node.
According to the exemplary embodiment of the disclosure, the corresponding configuration window can be directly popped up on the drawing page without page skip, so that the user can conveniently conduct subsequent detailed configuration.
In step S104, the selected node is configured in response to the configuration operation performed in the configuration window.
As an example, when the selected function entry control is a duplicate function entry control, a configuration window as shown in fig. 5 may be displayed.
As an example, when the selected function entry control is a monitoring function entry control, a configuration window as shown in fig. 6 may be displayed, through which a user may select a new monitoring task or modify a configured monitoring task, for example, after selecting a control of the new monitoring task, the user may jump to the configuration window as shown in fig. 7, through which the user may specifically configure the type and content of the new monitoring task. For example, the types of monitoring tasks may include, but are not limited to: task monitoring, business index monitoring and custom monitoring.
It should be understood that the number of monitoring tasks can be flexibly configured according to specific situations and actual requirements. Corresponding monitoring result prompts are given in the monitoring process and/or monitoring results are given at the end of the monitoring process.
According to the exemplary embodiment of the disclosure, the monitoring and monitoring configuration visualization of the node level is increased, so that in the engineering of DAG work, not only the global but also the particularly important nodes can be monitored individually.
Further, as an example, the configuration method of the directed acyclic graph according to an exemplary embodiment of the present disclosure may further include: after the configuration of the selected node is completed, the selected node is displayed as being in a state in which a function corresponding to the selected function entry control has been configured. For example, as shown in fig. 8, after the monitoring function of a node is configured, a corresponding icon may be displayed on the node to indicate that the node is in a state in which the monitoring function has been configured. According to the embodiment of the disclosure, which functions of the user node are configured can be conveniently prompted.
As an example, the configuration method of the directed acyclic graph according to an exemplary embodiment of the present disclosure may further include: determining a subunit in the directed acyclic graph based on a relationship between nodes in the directed acyclic graph on the drawing page, wherein the subunit is composed of one node or a plurality of nodes connected to each other.
As an example, a sub-unit in the directed acyclic graph may be determined based on functional attributes of nodes in the directed acyclic graph on the drawing page, wherein any one of the sub-units is configured to implement one or more functions. In other words, the present embodiment divides each subunit in the directed acyclic graph by the commonly implemented functions, specifically, divides at least one node commonly implementing one or more functions into one subunit.
As another example, the subunits in the directed acyclic graph may be determined based on the edge connection relationships of the nodes in the directed acyclic graph on the drawing page, wherein the edge connection relationship of a node in the subunit, which is not within the subunit, connected by the end node or the start node of any one of the subunits satisfies a specific condition. For example, for any one subunit, the number of input edges of the subunit to which the termination node of the subunit is connected is greater than 1 (i.e., the ingress of the downstream node of the edge where the termination node is located is greater than 1), and/or the number of output edges of the subunit to which the start node of the subunit is connected to the node other than the subunit is greater than 1 (i.e., the egress of the upstream node of the edge where the start node is located is greater than 1).
The termination node of a subunit, i.e., the node furthest downstream of all nodes of the subunit, and the start node of a subunit, i.e., the node furthest upstream of all nodes of the subunit, is connected to other nodes (i.e., nodes not within the subunit) by its termination or start node. The directed graph is composed of nodes and directed edges, the directed edges connect upstream points and downstream points, the directed edges are directional and point from one node to another, namely point from the upstream point to the downstream point, correspondingly, the incoming degree refers to the number of the directed edges where one node is located as the downstream point, and the outgoing degree refers to the number of the directed edges where one node is located as the upstream point.
In other words, the present embodiment divides each subunit in the directed acyclic graph by determining each branch as one subunit, specifically, divides all nodes on the same branch into one subunit. For example, as shown in fig. 9, DAG2 is the termination node of the subunit in which it is located (the subunit encircled by the dashed box). For example, as shown in fig. 9, DAG2 and its upstream node may be determined as a subunit, DAG3 and its upstream node may be determined as a subunit, DAG4 and its upstream node may be determined as a subunit, and so on, which will not be described in detail.
As an example, the configuration method of the directed acyclic graph according to an exemplary embodiment of the present disclosure may further include: in response to a state adjustment operation on a subunit in the directed acyclic graph, a display state of the subunit is adjusted. For example, the display state may include: a folded state and an unfolded state.
As an example, a subunit in the directed acyclic graph may be folded and a subunit icon representing the folded subunit may be displayed in response to a folding operation of the subunit; or, in response to the unfolding operation of the displayed subunit icon, displaying the node included in the subunit represented by the subunit icon.
As an example, the collapse operation may include hovering a river over a connection point of the subunit for connection to other nodes (an input point of a start node or an output point of a termination node of the subunit), and clicking a collapse control (e.g., a control shown within a solid line box in fig. 9) displayed in response to the hover operation. It should be appreciated that the folding operation may also be other types of user operations for folding the subunits, as this disclosure is not limited in this regard.
As an example, the expand operation may be a single click operation of a subunit icon, and it should be understood that other types of user operations for expanding subunits are also possible, as this disclosure is not limited in this regard.
As an example, the display style of the subunit icon may be used to hint the number of nodes included in the subunit represented by the subunit icon. For example, the display style of the sub-unit icon may be as shown in fig. 10, which intuitively indicates that the sub-unit includes 6 nodes.
In one embodiment, the method for configuring a directed acyclic graph according to an exemplary embodiment of the present disclosure may further include: the sub-units in the directed acyclic graph are multiplexed in response to a multiplexing operation on the sub-units. As an example, the multiplexing operation includes: and copying the sub-units in the directed acyclic graph, and pasting the copied sub-units at the positions needing multiplexing in the drawing page.
In another embodiment, the configuration method of the directed acyclic graph according to an exemplary embodiment of the present disclosure may further include: the constructed sub-units are added to the drawing page in response to a multiplexing operation that multiplexes the constructed sub-units on the drawing page. Here, the constructed sub-units may include both sub-units displayed on the current drawing page and sub-units not displayed on the current drawing page (i.e., sub-units that have been constructed and saved before). According to embodiments of the present disclosure, subunits may be multiplexed within a global scope.
As an example, the multiplexing operation may include: newly adding a blank node on the drawing page, and configuring the blank node as the constructed subunit; alternatively, the multiplexing operation includes: dragging the constructed sub-units from the sub-unit list to the drawing page.
By way of example, the list of sub-units includes identifications of sub-units that have been constructed, including, for example, sub-units that are displayed on the current drawing page and sub-units that are not displayed on the current drawing page as determined by the exemplary manner described above.
As an example, the operation of configuring the blank node as the constructed subunit may include: and configuring the file path of the blank node as the file path of the constructed subunit, or importing the file of the constructed subunit into the blank node. For example, as shown in FIG. 11, the DAG model operator at 1 may be dragged into the canvas area (at 2) and then the required sub-units imported into the directed acyclic graph for use by path association or import files at right side 3.
It should be understood that the multiplexing operation may also be other types of user operations for multiplexing subunits, which the present disclosure is not limited to.
According to exemplary embodiments of the present disclosure, the merging of DAG portions of one or more different functional modules into one DAG subunit is supported, and the folding and unfolding of the DAG subunit is supported, as well as the multiplexing of one DAG subunit at different places. According to the exemplary embodiment of the disclosure, the user can be facilitated to multiplex the constructed sub-units, so that the flexibility and the expandability of configuring the directed acyclic graph are improved.
According to an exemplary embodiment of the present disclosure, visualization of the directed acyclic graph is enhanced and interaction means of the directed acyclic graph are optimized, in particular:
providing a user with a multifunctional shortcut configuration entry for a single node on a drawing page of the directed acyclic graph, and responding to a selection operation of the configuration entry, directly popping up a corresponding configuration window on the drawing page without page jump, so that the user can carry out subsequent detailed configuration for the single node, and the configured node can be displayed in a configured state;
different types of nodes are distinguished through display patterns, so that a user can intuitively know the nodes belonging to the same type or the nodes belonging to different types through the visual effect of the nodes in the directed acyclic graph;
Support node level start/retry/pause, monitor, timing, delete, copy;
the monitoring and monitoring configuration visualization of the node level is increased;
the DAG part of one group of functional modules or a plurality of groups of different functional modules is combined into one DAG subunit, the folding and unfolding of the DAG subunit are supported, and the multiplexing of one DAG subunit in different places is also supported.
Therefore, the configuration efficiency and the configuration experience of the directed acyclic graph can be improved, and the configuration threshold of the directed acyclic graph can be reduced.
Fig. 12 shows a block diagram of a configuration apparatus of a directed acyclic graph according to an exemplary embodiment of the disclosure.
As shown in fig. 12, a configuration apparatus of a directed acyclic graph according to an exemplary embodiment of the present disclosure includes: drawing page display unit 101, entry control display unit 102, configuration window display unit 103, and configuration unit 104.
Specifically, the drawing page display unit 101 is configured to display a drawing page of a directed acyclic graph.
The portal control display unit 102 is configured to display a plurality of functional portal controls for a node in the directed acyclic graph on the drawing page in response to a node selection operation performed on the selected node.
The configuration window display unit 103 is configured to display, on the drawing page, a configuration window for configuring a function corresponding to the selected function entry control in response to a control selection operation performed on the displayed function entry control.
The configuration unit 104 is configured to configure the selected node in response to a configuration operation performed in the configuration window.
As an example, the functions corresponding to the plurality of function entry controls may include at least one of: a function for controlling the node execution state; functions for controlling the timing of the node execution; a function for monitoring the execution of the node; a function for deleting the node and/or configuration information of the node; a function for copying configuration information of the node and/or nodes.
As an example, the monitoring type of the execution condition of the monitoring node may include at least one of: task monitoring for monitoring a task execution state of a node; the service index monitoring is used for monitoring the execution index value of the node aiming at the specific service index; and (5) custom monitoring.
As an example, the apparatus may further include: a status display unit (not shown) configured to display the selected node as being in a state in which a function corresponding to the selected function entry control has been configured after completion of the configuration of the selected node.
As an example, the apparatus may further include: a subunit determining unit (not shown) configured to determine a subunit in the directed acyclic graph based on a relationship between nodes in the directed acyclic graph on the drawing page, wherein the subunit is composed of one node or a plurality of nodes connected to each other; the subunit adjusting unit is configured to adjust a display state of a subunit in the directed acyclic graph in response to a state adjustment operation on the subunit.
As an example, the subunit determination unit may be configured to: determining subunits in the directed acyclic graph based on functional attributes of nodes in the directed acyclic graph on the drawing page, wherein any one of the subunits is used for realizing one or more functions; or determining a subunit in the directed acyclic graph based on the edge connection relation of each node in the directed acyclic graph on the drawing page, wherein the edge connection relation of a node in a non-subunit connected by a termination node or a start node of any subunit meets a specific condition.
As an example, the subunit adjustment unit may be configured to: in response to a folding operation on a subunit in the directed acyclic graph, folding the subunit and displaying a subunit icon representing the folded subunit; or, in response to the unfolding operation of the displayed subunit icon, displaying the node included in the subunit represented by the subunit icon.
As an example, the display style of the subunit icon may be used to hint the number of nodes included in the subunit represented by the subunit icon.
As an example, the folding operation may include hovering over a connection point of the subunit for connection to other nodes, and clicking a folding control displayed in response to the hovering operation.
As an example, the apparatus may further include: a multiplexing unit (not shown) may be configured to multiplex the sub-units in the directed acyclic graph in response to a multiplexing operation on the sub-units.
As an example, the multiplexing operation may include: and copying the sub-units in the directed acyclic graph, and pasting the copied sub-units at the positions needing multiplexing in the drawing page.
As an example, the multiplexing unit may be configured to add the constructed sub-units on the drawing page in response to a multiplexing operation of multiplexing the constructed sub-units on the drawing page.
As an example, the multiplexing operation may include: newly adding a blank node on the drawing page, and configuring the blank node as the constructed subunit; alternatively, the multiplexing operation includes: dragging the constructed sub-units from the sub-unit list to the drawing page.
As an example, the operation of configuring the blank node as the constructed subunit may include: and configuring the file path of the blank node as the file path of the constructed subunit, or importing the file of the constructed subunit into the blank node.
As an example, the drawing page display unit 101 may be configured to: displaying the directed acyclic graph on the drawing page based on the display style corresponding to each node; wherein the display style is associated with node information.
As an example, the node information may include at least one of: the method comprises the steps of a function type of a node, a link to which the node belongs, an editing mode of the node, a creator of the node, an execution condition of the node and a type of an object aimed by the node.
As an example, the display style may include a color and/or an icon.
As an example, the drawing page display unit 101 may be configured to: presenting a directed acyclic graph representing the constructed machine learning modeling process in a drawing page for constructing the machine learning modeling process; wherein the nodes in the directed acyclic graph are operators corresponding to steps in the machine learning modeling process.
It should be appreciated that the specific implementation of the configuration apparatus of the directed acyclic graph according to the exemplary embodiment of the disclosure may be implemented with reference to the related specific implementations described in connection with fig. 1 to 11, and will not be described herein again.
The units included in the configuration apparatus of the directed acyclic graph according to an exemplary embodiment of the present disclosure may be configured as software, hardware, firmware, or any combination thereof, respectively, that perform a specific function. For example, these units may correspond to application specific integrated circuits, to pure software code, or to modules of software in combination with hardware. Furthermore, one or more functions implemented by these units may also be performed uniformly by components in a physical entity device (e.g., a processor, a client, a server, or the like).
It should be understood that the configuration method of the directed acyclic graph according to the exemplary embodiment of the present disclosure may be implemented by a program recorded on a computer-readable medium, for example, according to the exemplary embodiment of the present disclosure, a computer-readable medium having recorded thereon the configuration method for performing the directed acyclic graph as described in the exemplary embodiment above may be provided.
The computer program in the above-described computer readable medium may be run in an environment deployed in a computer device such as a client, a host, a proxy device, a server, etc., and it should be noted that the computer program may also be used to perform additional steps other than the above-described steps or to perform more specific processes when the above-described steps are performed, and the contents of these additional steps and further processes have been described with reference to fig. 1 to 11, and will not be repeated here.
It should be noted that the configuration means of the directed acyclic graph according to an exemplary embodiment of the present disclosure may rely entirely on the execution of a computer program to implement the respective functions, i.e. the respective means correspond to the respective steps in the functional architecture of the computer program, such that the entire system is invoked by a dedicated software package (e.g. lib library) to implement the respective functions.
On the other hand, the respective units included in the configuration apparatus of the directed acyclic graph according to the exemplary embodiment of the present disclosure may also be implemented by hardware, software, firmware, middleware, microcode, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the corresponding operations may be stored in a computer-readable medium, such as a storage medium, so that the processor can perform the corresponding operations by reading and executing the corresponding program code or code segments.
For example, exemplary embodiments of the present disclosure may also be implemented as a computing device including a storage component and a processor, the storage component having stored therein a set of computer-executable instructions that, when executed by the processor, perform a method of configuring a directed acyclic graph as described in the above exemplary embodiments.
In particular, the computing devices may be deployed in servers or clients, as well as on node devices in a distributed network environment. Further, the computing device may be a PC computer, tablet device, personal digital assistant, smart phone, web application, or other device capable of executing the above-described set of instructions.
Here, the computing device need not be a single computing device, but may be any device or collection of circuits capable of executing the above-described instructions (or instruction set) alone or in combination. The computing device may also be part of an integrated control system or system manager, or may be configured as a portable electronic device that interfaces with locally or remotely (e.g., via wireless transmission).
In the computing device, the processor may include a Central Processing Unit (CPU), a Graphics Processor (GPU), a programmable logic device, a special purpose processor system, a microcontroller, or a microprocessor. By way of example, and not limitation, processors may also include analog processors, digital processors, microprocessors, multi-core processors, processor arrays, network processors, and the like.
Some operations described in the configuration method of the directed acyclic graph according to the exemplary embodiment of the present disclosure may be implemented in software, some operations may be implemented in hardware, and furthermore, the operations may be implemented in a combination of software and hardware.
The processor may execute instructions or code stored in one of the storage components, wherein the storage component may also store data. Instructions and data may also be transmitted and received over a network via a network interface device, which may employ any known transmission protocol.
The memory component may be integrated with the processor, for example, RAM or flash memory disposed within an integrated circuit microprocessor or the like. Further, the storage component may comprise a stand-alone device, such as an external disk drive, a storage array, or any other storage device usable by a database system. The storage component and the processor may be operatively coupled or may communicate with each other, such as through an I/O port, network connection, etc., such that the processor is able to read files stored in the storage component.
In addition, the computing device may also include a video display (such as a liquid crystal display) and a user interaction interface (such as a keyboard, mouse, touch input device, etc.). All components of the computing device may be connected to each other via buses and/or networks.
Operations involved in the method of configuring a directed acyclic graph according to an exemplary embodiment of the present disclosure may be described as various interconnected or coupled functional blocks or functional diagrams. However, these functional blocks or functional diagrams may be equally integrated into a single logic device or operate at non-exact boundaries.
For example, as described above, a computing device according to an exemplary embodiment of the present disclosure may include a storage unit and a processor, wherein the storage unit stores a set of computer-executable instructions that, when executed by the processor, perform the method of configuring a directed acyclic graph as described in the above exemplary embodiment.
The foregoing description of exemplary embodiments of the present disclosure has been presented only to be understood as illustrative and not exhaustive, and the present disclosure is not limited to the exemplary embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the disclosure. Accordingly, the scope of the present disclosure should be determined by the scope of the claims.

Claims (10)

1. A method of configuring a directed acyclic graph, the method comprising:
displaying a drawing page of the directed acyclic graph;
responsive to a node selection operation performed on a node in the directed acyclic graph on the drawing page, displaying a plurality of function entry controls for the selected node;
responding to a control selection operation executed on the displayed function entry control, and displaying a configuration window for configuring a function corresponding to the selected function entry control on the drawing page;
and configuring the selected node in response to a configuration operation performed in the configuration window.
2. The method of claim 1, wherein the functions corresponding to the plurality of function entry controls comprise at least one of:
A function for controlling the node execution state;
functions for controlling the timing of the node execution;
a function for monitoring the execution of the node;
a function for deleting the node and/or configuration information of the node;
a function for copying configuration information of the node and/or nodes.
3. The method of claim 2, wherein the type of monitoring of the execution of the monitoring node comprises at least one of:
task monitoring for monitoring a task execution state of a node;
the service index monitoring is used for monitoring the execution index value of the node aiming at the specific service index;
and (5) custom monitoring.
4. The method of claim 1, wherein the method further comprises:
after the configuration of the selected node is completed, the selected node is displayed as being in a state in which a function corresponding to the selected function entry control has been configured.
5. The method of any one of claims 1 to 4, further comprising:
determining subunits in the directed acyclic graph based on the relation among nodes in the directed acyclic graph on the drawing page, wherein the subunits are composed of one node or a plurality of nodes connected with each other;
In response to a state adjustment operation on a subunit in the directed acyclic graph, a display state of the subunit is adjusted.
6. The method of claim 5, wherein determining the sub-units in the directed acyclic graph based on relationships between nodes in the directed acyclic graph on the drawing page comprises:
determining subunits in the directed acyclic graph based on functional attributes of nodes in the directed acyclic graph on the drawing page, wherein any one of the subunits is used for realizing one or more functions; or,
determining a subunit in the directed acyclic graph based on the edge connection relation of each node in the directed acyclic graph on the drawing page, wherein the edge connection relation of a node in a non-subunit connected by a termination node or a start node of any subunit meets a specific condition.
7. The method of claim 5, wherein adjusting the display state of a subunit in the directed acyclic graph in response to a state adjustment operation on the subunit comprises:
in response to a folding operation on a subunit in the directed acyclic graph, folding the subunit and displaying a subunit icon representing the folded subunit; or,
And responding to the unfolding operation of the displayed subunit icons, and displaying the nodes included in the subunits represented by the subunit icons.
8. A directed acyclic graph configuration apparatus, the apparatus comprising:
a drawing page display unit configured to display a drawing page of the directed acyclic graph;
an entry control display unit configured to display a plurality of functional entry controls for a node in the directed acyclic graph on the drawing page in response to a node selection operation performed on the selected node;
a configuration window display unit configured to display, on the drawing page, a configuration window for configuring a function corresponding to the selected function entry control in response to a control selection operation performed on the displayed function entry control;
a configuration unit configured to configure the selected node in response to a configuration operation performed in the configuration window.
9. A system comprising at least one computing device and at least one storage device storing instructions that, when executed by the at least one computing device, cause the at least one computing device to perform the method of configuring a directed acyclic graph according to any one of claims 1 to 7.
10. A computer readable storage medium storing instructions which, when executed by at least one computing device, cause the at least one computing device to perform the method of configuring a directed acyclic graph according to any one of claims 1 to 7.
CN202211058898.9A 2022-08-31 2022-08-31 Method, device, system and storage medium for configuring directed acyclic graph Pending CN117667051A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211058898.9A CN117667051A (en) 2022-08-31 2022-08-31 Method, device, system and storage medium for configuring directed acyclic graph

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211058898.9A CN117667051A (en) 2022-08-31 2022-08-31 Method, device, system and storage medium for configuring directed acyclic graph

Publications (1)

Publication Number Publication Date
CN117667051A true CN117667051A (en) 2024-03-08

Family

ID=90083243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211058898.9A Pending CN117667051A (en) 2022-08-31 2022-08-31 Method, device, system and storage medium for configuring directed acyclic graph

Country Status (1)

Country Link
CN (1) CN117667051A (en)

Similar Documents

Publication Publication Date Title
US10216509B2 (en) Continuous and automatic application development and deployment
US9898396B2 (en) Automated software testing and validation via graphical user interface
CN109034394B (en) Updating method and device of machine learning model
US11389960B2 (en) Systems and methods for robotic process automation
US20150100829A1 (en) Method and system for selecting and executing test scripts
CN113449877B (en) Method and system for demonstrating machine learning modeling process
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
US20150100832A1 (en) Method and system for selecting and executing test scripts
CA2925015A1 (en) System and method for testing data representation for different mobile devices
CN111580926A (en) Model publishing method, model deploying method, model publishing device, model deploying device, model publishing equipment and storage medium
CN111309734B (en) Method and system for automatically generating table data
WO2023284312A1 (en) Workflow construction method and apparatus, device, computer storage medium, and computer program product
CN113342387A (en) Automatic software upgrading method, updating client and updating server
CN111142884A (en) Applet version deployment method and device, electronic equipment and storage medium
CN114297056A (en) Automatic testing method and system
CN110895718A (en) Method and system for training machine learning model
CN106952426B (en) Data processing method and device
CN114912897A (en) Workflow execution method, workflow arrangement method and electronic equipment
CN111523676B (en) Method and device for assisting machine learning model to be online
CN115129574A (en) Code testing method and device
CN114282686A (en) Method and system for constructing machine learning modeling process
CN111381995A (en) Method and device for restoring user operation and computer
CN117667051A (en) Method, device, system and storage medium for configuring directed acyclic graph
CN115237441A (en) Upgrade test method, device and medium based on cloud platform
CN112068895B (en) Code configuration method, device, video playing equipment and storage medium

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