Causal relationship graph determination method, fault resolution determination method, device, and medium

By constructing a directed acyclic graph and optimizing edge weights, a causal relationship graph is generated, which solves the problem of misdiagnosis and missed diagnosis in circuit board fault analysis, and improves analysis efficiency and the effectiveness of solutions.

CN122173942APending Publication Date: 2026-06-09XFUSION DIGITAL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
XFUSION DIGITAL TECH CO LTD
Filing Date
2026-02-13
Publication Date
2026-06-09

Smart Images

  • Figure CN122173942A_ABST
    Figure CN122173942A_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a method for determining a causal relationship diagram, a method for determining a fault solution, equipment and a medium, the method comprises: taking production parameter information and fault state information of a product sample in a production process as learning data, performing structural learning on production data of the product sample by using a directed acyclic graph under the constraint condition of the directed acyclic graph, obtaining a graph structure learning result of the directed acyclic graph, if a user evaluation result of the graph structure learning result is learning end, optimizing an edge weight of the graph structure learning result, obtaining a causal relationship diagram, and then using the causal relationship diagram to analyze a solution of a target fault. The technical solution can improve fault analysis accuracy and analysis efficiency of a product to be tested such as a circuit board, and improve effectiveness of a fault solution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of fault analysis technology, and in particular to a method for determining a cause-effect diagram, a method for determining a fault solution, equipment, and medium. Background Technology

[0002] When circuit board products manufactured on surface mount technology (SMT) production lines malfunction, relevant methods can be used to analyze the cause of the malfunction and provide solutions. However, these fault analysis methods are prone to errors when analyzing circuit board faults, resulting in low efficiency and an inability to provide effective solutions. Summary of the Invention

[0003] The purpose of this application is to provide a method for determining a cause-effect diagram, a method for determining a fault solution, an apparatus and a medium, so as to improve the accuracy and efficiency of fault analysis of circuit boards and other products under test, and to improve the effectiveness of fault solutions.

[0004] In a first aspect, embodiments of this application provide a method for determining a causal relationship graph, comprising: Obtain the training data for the directed acyclic graph, which includes production parameter information and fault status information of the product sample during the production process. Under the constraints of the directed acyclic graph, the production data of the product sample is structured through the directed acyclic graph to obtain the graph structure learning result of the directed acyclic graph. The directed acyclic graph includes the initial relationship between the production-related information and fault state information of the product sample. Obtain the user evaluation result of the graph structure learning result of the directed acyclic graph. If the user evaluation result of the graph structure learning result of the directed acyclic graph is that the learning has ended, optimize the edge weights of the graph structure learning result of the directed acyclic graph to obtain the causal relationship graph.

[0005] Under the technical solution of this application embodiment, the initial relationship between the production-related information and fault status information of the product sample can be used as a directed acyclic graph (DAG). The production parameter information and fault status information of the product sample during the production process are used as the learning data of the DAG. This allows the DAG to fully learn the relationship between the production parameter information and fault status information of the product sample during the production process, and adjust the initial relationship between the production-related information and fault status information of the product sample. In this way, the causal relationship graph constructed based on a large amount of production data (including production parameter information and fault status information) of the product sample in the actual production process can accurately reflect the relationship between different production parameters and fault status information. Therefore, when a target fault is detected in the product under test, the root cause of the target fault can be obtained from the causal relationship graph, and then the target solution for the target fault can be given based on the root cause of the target fault.

[0006] As can be seen, the method in this application embodiment can construct a causal relationship graph with high reliability and accuracy based on the production data of product samples generated in the actual production process. This allows for the rapid and accurate acquisition of the root cause and target solution of the target fault when a target defect of a product belonging to the same category as the product sample is detected, based on the causal relationship graph. This shortens the fault analysis time and improves the efficiency of fault resolution. Furthermore, because the directed acyclic graph (DAG) fully learns the relationship between the production parameter information and fault state information of the product sample during the production process, the resulting causal relationship graph has strong coverage of various fault types. Therefore, when using the causal relationship graph to analyze the root cause of a fault, it is less likely to result in misdiagnosis or missed diagnosis.

[0007] Furthermore, when using causal relationship diagrams to analyze the root causes of target failures, a relatively reliable causal chain can be obtained from the causal relationship diagram by using the root cause and the target failure. This can prevent false positives such as "similar failure characteristics but different root causes" and improve the interpretability of the relationship between the target failure and the root cause. This makes it easier for technicians to verify the logical relationship between the target failure and the root cause and to trace the responsibility for the target failure.

[0008] Furthermore, this application's embodiments change the traditional reliance on various theoretical evaluation metrics (such as structural Hamming distance, recall, scoring function, hit rate, etc.) to evaluate whether a directed acyclic graph (DAG) has reached the termination learning condition. Instead, they rely on user evaluation results to evaluate whether the DAG has reached the termination learning condition. This allows the experience of technical personnel to be incorporated into the learning of DAGs. Therefore, if the user evaluation result of the DAG's graph structure learning result indicates that learning has ended, it means that the DAG has reached the termination learning condition through user evaluation verification. In other words, by confirming the termination learning condition of the DAG through user evaluation results, the accumulated experience of technical personnel can be transferred in a standardized form to the graph structure of the DAG that has completed structure learning (the relationship between nodes in the DAG's graph structure learning result). This ensures the reliability and accuracy of the obtained causal relationship graph structure. Based on this, the edge weights of the DAG's learning result are optimized. Even if problems occur in the edge weight optimization, it is not necessary to relearn the data to be learned through the DAG, thereby reducing the complexity of the learning process.

[0009] In one possible implementation, the method of this application embodiment further includes: If the user evaluation result of the learning result of the directed acyclic graph (DAG) graph structure is "relearning", it indicates that there may be some problems in the learning process of the DAG graph and the learning termination condition has not been met. Therefore, based on the user evaluation result of the learning result of the DAG graph structure, a learning optimization strategy for the DAG graph is determined; and the learning optimization strategy for the DAG graph is used to control the learning process of the DAG graph.

[0010] It is evident that when the directed acyclic graph (DAG) does not meet the termination condition, the learning optimization strategy for the DAG can be redefined based on the user evaluation results. Then, the learning process of the DAG can be controlled based on this optimization strategy, so that when the DAG relearns the data to be learned, the graph structure of the DAG can evolve in a direction that satisfies the technical personnel, ensuring that the technical personnel's experience can be accumulated in the DAG, and ensuring that the obtained graph structure learning results of the DAG meet the user's needs.

[0011] In one possible implementation, a learning strategy based on directed acyclic graphs (DAGs) controls the learning process of the DAGs, including: If the learning strategy for a directed acyclic graph includes an instruction to change the data to be learned in the directed acyclic graph, it indicates that the data to be learned in the directed acyclic graph is flawed. The data to be learned in the directed acyclic graph can be updated to exclude the flawed data to be learned. If the learning strategy for a directed acyclic graph (DAG) includes DAG constraint update information, it indicates that there is a problem with the constraint relationships between nodes in the DAG. Therefore, the constraints of the DAG can be updated based on the DAG constraint update information.

[0012] In one possible implementation, the method of this application embodiment further includes: determining data description information of the data to be learned based on the data to be learned from the directed acyclic graph; the data description information of the data to be learned can describe the data characteristics of the data to be learned, such as the data volume, data type, data dimension, and even the data missing rate and signal-to-noise ratio of the data to be learned. Since different candidate learning algorithms are applicable to different data to be learned and different scenarios, a preset algorithm selection strategy can be adopted to obtain the target learning algorithm of the directed acyclic graph that matches the data description information of the data to be learned from multiple candidate learning algorithms, thereby ensuring the matching between the selected target learning algorithm and the data to be learned, so that when the target learning algorithm controls the directed acyclic graph to learn the data to be learned, the directed acyclic graph has a high learning ability and learning efficiency for the data to be learned.

[0013] In one possible implementation, the same learning algorithm can be used for both graph structure learning and edge weight learning for directed acyclic graphs (DAGs). Of course, different algorithms can also be used for both, meaning the target learning algorithm can include both graph structure learning and edge weight learning algorithms for DAGs. The graph structure learning algorithm can provide the learning algorithm for the graph structure of the DAG, and the edge weight learning algorithm can provide the learning algorithm for the edge weights of the DAG.

[0014] In one possible implementation, a learning strategy based on directed acyclic graphs (DAGs) controls the learning process of the DAGs, including: If the optimization strategy for a directed acyclic graph includes adjustment information for the algorithm selection strategy, it indicates that there is a problem with the algorithm selection strategy, resulting in poor matching between the selected target learning algorithm and the data to be learned. Therefore, the preset algorithm selection strategy can be updated based on the adjustment information of the algorithm selection strategy.

[0015] In one possible implementation, based on the data description information of the data to be learned, a target learning algorithm for the directed acyclic graph is obtained from multiple candidate learning algorithms, including: The data description information of the data to be learned is matched with the algorithm description information of multiple candidate learning algorithms to obtain the matching degree of multiple candidate learning algorithms corresponding to the data to be learned. Based on the matching degree of multiple candidate learning algorithms corresponding to the data to be learned, the target learning algorithm is obtained from the multiple candidate learning algorithms. The target learning algorithm includes at least one of the multiple candidate learning algorithms whose matching degree is greater than a preset matching degree.

[0016] The algorithm description information of the candidate learning algorithm in this application embodiment can describe the applicable scenarios and even the applicable data types of the candidate learning algorithm. Therefore, the data description information of the data to be learned can be matched with the algorithm description information of multiple candidate learning algorithms to obtain the matching degree of multiple candidate learning algorithms corresponding to the data to be learned. Then, based on the matching degree of multiple candidate algorithms corresponding to the data to be learned, a candidate learning algorithm with a matching degree greater than a preset matching degree is obtained from multiple candidate algorithms, and it is used as the target learning algorithm to be applied to the learning of the directed acyclic graph data to be learned.

[0017] Secondly, embodiments of this application provide an apparatus for determining a causal relationship graph, comprising: The acquisition module is used to acquire the learning data of the directed acyclic graph. The learning data of the directed acyclic graph includes the production parameter information and fault status information of the product sample during the production process. The learning module is used to perform structural learning on the production data of the product samples through the directed acyclic graph (DAG) under the constraints of the DAG, obtain the graph structure learning result of the DAG, obtain the user evaluation result of the graph structure learning result of the DAG, and optimize the edge weights of the graph structure learning result of the DAG to obtain a causal relationship graph. The DAG includes the initial relationship between the production-related information and fault status information of the product samples.

[0018] Thirdly, embodiments of this application also provide a computer storage medium storing computer instructions that, when executed on a processor, cause the processor to perform the method described in the first aspect of the embodiments of this application or any possible implementation thereof.

[0019] Fourthly, embodiments of this application also provide a computer program product, including a computer program, wherein the computer program, when executed by a processor, implements the method described in the first aspect or any possible implementation thereof.

[0020] Fifthly, embodiments of this application also provide a computer device, including: Processor; and, Memory for stored programs; The program includes instructions that, when executed by a processor, cause the processor to perform the method according to the first aspect of the embodiments of this application or any possible implementation thereof.

[0021] The beneficial effects of the technical solutions disclosed in the second to fifth aspects of the embodiments of this application can be referred to the beneficial effects of the method described in the first aspect or any one of the first aspects, and will not be repeated here.

[0022] Sixthly, embodiments of this application also provide a method for determining a fault solution, including: When a target fault is detected in the product under test, the root cause of the target fault is inferred based on the fault information and cause-effect diagram of the target fault. Based on the root cause of the target fault, the target solution for the target fault of the product under test is determined; the cause-effect diagram includes the relationship between the production-related information of the product sample and the fault status information, and the product sample and the product under test belong to the same product category.

[0023] In one possible implementation, determining the solution to the target fault of the product under test based on the root cause of the target fault also includes: Based on the root cause of the target failure, query the suggested solutions for the target failure; Based on the root causes of the target failure, intervention reasoning is performed on the causal relationship graph to obtain a predictive solution for the target failure. In response to the selection instruction for the suggested solution and the predicted solution, a target solution for the target fault is determined.

[0024] In a seventh aspect, embodiments of this application also provide a fault solution determination apparatus, comprising: The reasoning module is used to infer the root cause of the target failure based on the failure information and cause-effect diagram when a target failure is detected in the product under test. The determination module is used to determine the target solution for the target fault of the product under test based on the root cause of the target fault; wherein, the cause-effect diagram includes the relationship between the production-related information of the product sample and the fault status information, and the product sample and the product under test belong to the same product category.

[0025] Eighthly, embodiments of this application also provide a computer storage medium storing computer instructions that, when executed on a processor, cause the processor to execute the method described in the sixth aspect or any possible implementation thereof.

[0026] In a ninth aspect, embodiments of this application also provide a computer program product, including a computer program, wherein the computer program, when executed by a processor, implements the method described in the sixth aspect or any possible implementation thereof.

[0027] In a tenth aspect, embodiments of this application also provide a computer device, including: Processor; and, Memory for stored programs; The program includes instructions that, when executed by a processor, cause the processor to perform the method according to the first aspect of the embodiments of this application or any possible implementation thereof. Attached Figure Description

[0028] Further details, features, and advantages of this application are claimed in the following description of exemplary embodiments in conjunction with the accompanying drawings, in which: Figure 1A A schematic diagram of an example system framework in which various methods described herein can be implemented according to embodiments of this application is shown; Figure 1B This illustration shows a schematic diagram illustrating the principle of the system framework for implementing directed acyclic graph learning according to an embodiment of this application. Figure 1C A schematic diagram illustrating the principle of fault analysis implemented in the system framework of this application embodiment is shown; Figure 2 A schematic flowchart of the method for determining the causal relationship graph according to an embodiment of this application is shown; Figure 3 This illustration shows a schematic diagram of the structure learning method for directed acyclic graphs using the PC algorithm according to an embodiment of this application. Figure 4 A flowchart illustrating a method for determining a fault solution according to an embodiment of this application is shown. Figure 5 A flowchart illustrating the method for determining the causal relationship diagram of automatic optical detection fault analysis in front of the furnace according to an embodiment of this application is shown. Figure 6 The illustration shows a schematic diagram of the process for determining a solution to a furnace-front AOI fault, according to an embodiment of this application. Figure 7 A schematic block diagram of a functional module of a causal relationship diagram determination device according to an exemplary embodiment of the present application is shown; Figure 8 A schematic block diagram of a functional module of a fault solution determination apparatus according to an exemplary embodiment of this application is shown; Figure 9 A structural block diagram of an exemplary computer device that can be used to implement embodiments of this application is shown. Detailed Implementation

[0029] Embodiments of this application will now be described in more detail with reference to the accompanying drawings. While some embodiments of this application are shown in the drawings, it should be understood that this application can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this application. It should be understood that the drawings and embodiments of this application are for illustrative purposes only and are not intended to limit the scope of protection of this application.

[0030] It should be understood that the steps described in the method embodiments of this application may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this application is not limited in this respect.

[0031] The term "comprising" and its variations as used herein are open-ended, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the following description. It should be noted that the concepts of "first", "second", etc., mentioned in this application are used only to distinguish different devices, modules, or units, and are not intended to limit the order of functions performed by these devices, modules, or units or their interdependencies.

[0032] It should be noted that the terms "a" and "a plurality of" used in this application are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0033] Before introducing the embodiments of this application, the relevant terms involved in the embodiments of this application are first explained as follows: A Directed Acyclic Graph (DAG) is a graph consisting of a set of vertices and directed edges. In this graph, it is impossible to return to a vertex from any given vertex via a directed edge, meaning that the graph does not contain any cycles.

[0034] The basic structure of a Bayesian network is a directed acyclic graph, consisting of nodes and lines connecting them with unidirectional arrows.

[0035] Structural causal models (SCMs) clarify the causal direction and mechanism of action between variables through modular structural equations and causal graphs. They can answer causal questions that association analysis cannot answer, such as "What will be the result of the intervention?" or "What is the root cause of the failure?"

[0036] Counterfactual reasoning studies a single individual or a single event. Based on the observed factual state, it constructs a hypothetical scenario that is contrary to the facts, and then infers the outcome under that scenario.

[0037] Interventional reasoning is a core method for analyzing how a variable in a system changes when its value is actively altered. It focuses on the average causal effect at the group level and is a core tool for engineering scenarios such as process optimization and fault prevention.

[0038] ydata-profiling is a data profiling tool that automates and standardizes the generation of detailed reports containing comprehensive statistics and visualizations. The significance of this data profiling tool lies in how it simplifies the process of understanding and preparing data for analysis with just one line of code.

[0039] This application provides a fault analysis model and a method for determining fault solutions to improve the accuracy and efficiency of fault analysis for circuit boards and other products under test, and to enhance the effectiveness of fault solutions.

[0040] Figure 1A A schematic diagram of an example system framework, according to embodiments of this application, in which various methods described herein can be implemented. For example... Figure 1A As shown, the system framework 100 of this application embodiment includes a front-end 101, a back-end 102 and a data storage system 103. The front-end 101 and the back-end 102 can be connected in communication, and the back-end 102 can be connected in communication with the data storage system 103.

[0041] In this embodiment, the front-end 101 can install a client to provide a human-computer interaction interface. Users can input various information through the human-computer interaction interface. The back-end 102 can interact with the front-end 101 to obtain the information input by the human-computer interaction interface of the front-end 101.

[0042] In one alternative approach, the front-end 101 and back-end 102 of the system framework can belong to the same computer device, which can install a client. The front-end 101 can be responsible for the client's interface design and user interaction installation functions. The back-end 102 is responsible for the client's data processing, logic, and interaction with the data storage system 103.

[0043] In another alternative approach, the front-end 101 and back-end 102 included in the system framework can belong to different computer devices. The data storage system 103 can belong to the same computer device as the back-end 102, or it can belong to a different computer device. Here, the computer device can install a client, which, as part of the front-end 101, is responsible for the client's interface design and user interaction installation functions. The back-end 102 is used as a server, interacting with the computer device to which the front-end 101 belongs, and is responsible for the client's data processing, logic, and interaction with the data storage system 103.

[0044] Optionally, the backend 102 may include a learning module 1021 and an inference module 1022. The learning module 1021 may cooperate with the data storage system 103 to determine a causal relationship graph and store the causal relationship graph in the data storage system 103. The inference module 1022 may cooperate with the data storage system 103 to determine a fault solution.

[0045] Figure 1B This diagram illustrates the principle of the system framework for implementing directed acyclic graph learning according to an embodiment of this application. Figure 1B As shown, the front end 101 can respond to the data source input operation input by the human-computer interaction interface, obtain the production information of each production node of the target production line, and send it to the back end 102. The back end 102 can store the production information of each production node of the target production line to the data storage system 103. It can also obtain the production parameter information and fault status information of the product sample in the production process based on the production information of each production node of the target production line. The back end 102 can use the production parameter information and fault status information of the product sample in the production process as the learning data of the directed acyclic graph, and learn the learning data of the directed acyclic graph through the learning module to obtain the graph structure learning result of the directed acyclic graph.

[0046] Optionally, the production information for each production node of the target production line may include production parameter information and fault status information of the product sample at each production node. The production parameter information may include the equipment process parameters and environmental parameters (such as temperature and humidity) of the product sample at each production node, and the fault status information may include whether the product sample has failed at each production node and the fault data when a failure has occurred.

[0047] In one example, taking an SMT production line, historical operating data and trial production data from various production nodes of the SMT production line can be collected, including equipment process parameters, environmental parameters, and defect data. These data are then cleaned to remove outliers. Using the product sample's identifier (such as the identifier of a printed circuit board) as a reference, the equipment process parameters, environmental parameters, and data defects of the same product sample at different production nodes are associated. The equipment process parameters of each production node are preprocessed, including continuous parameter discretization and normalization, to obtain processed data. The processed data is then divided into a test set and a training set. The training set is used as the learning data for a directed acyclic graph (DAG), and the DAG is used to learn from the learning data of the DAG.

[0048] When the equipment process parameters include continuous parameters, the continuous parameters can be converted into discrete parameters represented by states. For example, pressure can be converted into discrete data such as high state, low state, and normal state. Considering that different equipment process parameters may have inconsistent dimensions, the equipment process parameters can be normalized to eliminate the influence of dimensions on the equipment process parameters.

[0049] Optionally, the front-end 101 can also respond to the initial relationship input operation of the human-computer interaction interface, obtain the directed acyclic graph and its constraints, and send the directed acyclic graph and its constraints to the back-end 102. The directed acyclic graph may include the initial relationship between the production-related information and fault status information of the product sample. Therefore, the back-end 102 can use the directed acyclic graph as an initial causal relationship graph, and learn from the data to be learned through the directed acyclic graph under the constraints.

[0050] In one example, based on the experience of those skilled in the application domain, an initial relationship between production-related information and fault status information of a product sample, represented by a directed acyclic graph (DAG), can be obtained. This DAG can include graph nodes and the relationships between different nodes, and can also be configured with constraints such as mandatory edges, prohibited edges, hierarchical constraints, and partial directions.

[0051] In a causal graph, a forbidden edge is a directed edge that is explicitly not allowed to exist. It represents the absence of a direct causal relationship between variables and is a hard rule set based on domain knowledge, data verification, or causal constraints. A mandatory edge is a directed causal edge that must exist and has a fixed direction. It represents a clear and unquestionable direct causal relationship between variables and is a hard constraint set based on domain knowledge, experimental verification, or prior logic, corresponding to a forbidden edge. Partial direction usually refers to the case where the direction of an edge in a directed acyclic graph is only partially determined, i.e., the directed acyclic graph contains undirected edges or edges with undetermined directions.

[0052] Optionally, learning from the data to be learned using a directed acyclic graph (DAG) can be divided into structure learning and parameter optimization. In one example, under the constraints of the DAG, structure learning is performed on the production data of the product sample using the DAG to obtain the graph structure learning result of the DAG. Then, the graph structure learning result of the DAG is sent to the front end 101. The front end 101 can display the graph structure learning result of the DAG through a human-computer interaction interface. The front end 101 can also obtain the user evaluation result of the graph structure learning result of the DAG (such as the empirical evaluation result of application domain technicians and / or algorithm technicians) through the human-computer interaction interface and submit it to the back end 102 as a user evaluation message.

[0053] Backend 102 can judge the user evaluation result of the graph structure learning result of the directed acyclic graph to determine whether the learning of the directed acyclic graph has ended. If the user evaluation result of the graph structure learning result of the directed acyclic graph is that the learning has ended, it means that the structure of the directed acyclic graph that has undergone structure learning meets the requirements. Therefore, the edge weights of the graph structure learning result of the directed acyclic graph can be optimized to obtain the causal relationship graph.

[0054] In one example, the learning algorithm for the directed acyclic graph (DAG) data can be either a target learning algorithm or a target learning algorithm selected from multiple candidate learning algorithms with reference to the DAG data. For instance, based on the DAG data, the data description information of the data to be learned can be determined, and then a preset algorithm selection strategy can be used to obtain the target learning algorithm for the DAG that matches the data description information of the data to be learned from multiple candidate learning algorithms.

[0055] In one example, the preset algorithm selection strategy of this application embodiment can be an algorithm screening strategy based on a large language model, or it can be an algorithm screening strategy summarized manually (such as application domain technicians and algorithm technicians), which can be stored in the data storage system 103. At the same time, algorithm description information of multiple candidate learning algorithms can also be obtained, and multiple candidate learning algorithms and their algorithm description information can be stored in the candidate algorithm table of the data storage system 103.

[0056] The data description information of the data to be learned is matched with the algorithm description information of multiple candidate learning algorithms to obtain the matching degree of multiple candidate learning algorithms. Then, based on the matching degree of multiple candidate learning algorithms, the target learning algorithm is obtained from the multiple candidate learning algorithms. The target learning algorithm includes at least one of the multiple candidate learning algorithms whose matching degree is greater than a preset matching degree.

[0057] Data profiling tools such as ydata-profiling can be used to analyze the data to be learned from the directed acyclic graph, and obtain the missing rate, signal-to-noise ratio, data type (such as discrete or linear), and data sample size of the data to be learned, and use them as descriptive information of the data to be learned; various candidate learning algorithms can also be manually compiled and labeled with their typical application scenarios, advantages and limitations, and then stored in the candidate algorithm table.

[0058] For each candidate learning algorithm, it can include structure learning algorithms and edge weight learning algorithms. For example, structure learning algorithms can include constraint-based data-driven algorithms, such as the Peter-Clark (PC) algorithm and the Fast Causal Inference (FCI) algorithm, and can also include score search-based algorithms, such as the Greedy Equivalence Search (GES) algorithm; edge weight learning algorithms can include maximum likelihood estimation algorithms, least squares regression algorithms, or regularized regression algorithms.

[0059] Each candidate learning algorithm, including the structure learning algorithm and the edge weight learning algorithm, is described as a whole, including its suitable scenarios, limited use scenarios, applicable data types, computational efficiency, interpretability, and other advantages and disadvantages. In addition, both the structure learning algorithm and the edge weight learning algorithm provide corresponding calling links and default parameters.

[0060] For example, a preset algorithm selection strategy might include selecting a learning algorithm suitable for large datasets when the number of data samples exceeds a preset limit (e.g., 500 samples). In this case, the number of data samples to be learned can be obtained from the description information of the data to be learned, and the application scenarios in the algorithm description information of candidate learning algorithms can be matched. If the application scenario of a candidate learning algorithm indicates that it is applicable to the data sample size exceeding the preset limit, then that candidate learning algorithm can be determined as the target learning algorithm. Alternatively, candidate learning algorithms applicable to data sample sizes exceeding the preset limit can be obtained, sorted according to their matching degree, and the top-K candidate learning algorithms can be selected as the top-K target learning algorithms. Then, directed acyclic graph learning can be performed as described above.

[0061] For the graph structure learning results of the directed acyclic graphs corresponding to the top-K target learning algorithms, the backend 102 can return them to the frontend 101 and display them through the human-computer interaction interface. The differences in the graph structure learning results of the directed acyclic graphs corresponding to the top-K target learning algorithms can be displayed by highlighting, so that users can evaluate the learning results based on the differences.

[0062] After learning the directed acyclic graph (DAG) using the top-K target learning algorithms, the best DAG graph structure learning result can be manually selected from the DAG graph structure learning results corresponding to the top-K target learning algorithms through a human-computer interaction interface as the final parameter optimization target.

[0063] In one example, if the user evaluation result of the learning result of the graph structure of the directed acyclic graph is relearning, a learning optimization strategy for the directed acyclic graph can be determined based on the user evaluation result of the learning result of the graph structure of the directed acyclic graph, and the learning process of the directed acyclic graph can be controlled based on the learning optimization strategy of the directed acyclic graph.

[0064] For example, if the learning strategy for a directed acyclic graph includes instructions for changing the data to be learned in the directed acyclic graph, the data to be learned in the directed acyclic graph can be updated. For example, the data sample size of the data to be learned in the directed acyclic graph can be adjusted, or the data samples in the data to be learned in the directed acyclic graph can be replaced.

[0065] For example, if the learning strategy for directed acyclic graphs includes constraint update information for the directed acyclic graph, the constraints of the directed acyclic graph are updated based on this constraint update information. For example, prohibited edges and forced edges can be modified, but this is not the only option.

[0066] For example, if the optimization strategy for a directed acyclic graph includes adjustment information for the algorithm selection strategy, the preset algorithm selection strategy can be updated based on this adjustment information. For instance, the adjustment information for the algorithm selection strategy, the data description information of the data to be learned, and the algorithm description information of multiple candidate learning algorithms can be input into a large language model. This allows the large language model to obtain the target learning algorithm from multiple candidate learning algorithms, thereby achieving the goal of updating the target learning algorithm.

[0067] The following describes the process of determining the causal relationship graph in embodiments of this application, using the structure learning algorithm (including the PC algorithm in the data-driven algorithm) as an example, and the edge weight learning algorithm (including the maximum likelihood estimation algorithm). It should be understood that the following is for illustrative purposes only and is not intended to be limiting.

[0068] First, a directed acyclic graph (DAG) is constructed based on the experience of technical personnel (such as application domain technicians). This DAG, which contains the initial relationship between production-related information and fault status information of product samples, is then used as the learning data. This is combined with user evaluation information from technical personnel (such as application domain technicians and algorithm technicians) regarding the graph structure learning results. Data-driven algorithms, such as PC algorithms, are used to accumulate and solidify the technical personnel's experience into the DAG, ensuring high accuracy and reliability of the obtained DAG graph structure (or topological structure). Finally, the maximum likelihood estimation algorithm is used to optimize the edge weights of the DAG, transforming it into a computable Bayesian network with optimized edge weights. This Bayesian network is the causal relationship graph, which integrates the experience and observation data of technical personnel, such as application domain technicians or algorithm technicians.

[0069] After optimizing the edge weights of a directed acyclic graph (DAG) using the maximum likelihood estimation algorithm, the resulting edge weights can be viewed as conditional probabilities of the DAG. Therefore, the edge weights of the DAG can be stored in the form of a conditional probability table. The graph structure of a causal graph and the conditional probability table can form a Bayesian network, and as a causal graph, it is essentially a causal knowledge base, facilitating its use in subsequent fault solution determination.

[0070] Figure 1C A schematic diagram illustrating the principle of fault analysis implemented in the system framework of this application embodiment is shown. Figure 1C As shown, the front end 101 can respond to the fault input operation input through the human-computer interaction interface, obtain fault information indicating that the product under test has a target fault, and send it to the back end 102. At this time, the back end 102 detects that the product under test has a target fault. The back end 102 can obtain the cause-effect diagram from the data storage system 103, and based on the fault information and the cause-effect diagram, deduce the root cause of the target fault, and then determine the target solution for the target fault of the product under test based on the root cause of the target fault.

[0071] Optional, such as Figure 1C As shown, the causal relationship diagram can include the relationship between production-related information and fault status information of the product sample. Since the product sample and the product under test belong to the same product category, the product sample and the product under test can be produced using the same production line. In this way, the fault information of the target fault can be used as observation data, and the root cause of the target fault can be inferred from the causal relationship diagram using counterfactual reasoning.

[0072] Optional, such as Figure 1CAs shown, the backend 102 can obtain the predicted solution and the suggested solution in two ways: intervention reasoning and knowledge query from the knowledge base. Then, the predicted solution and the suggested solution are pushed to the frontend 101, which displays them through the human-computer interaction interface.

[0073] In one example, the knowledge base could be a repository of solutions for various problems based on the experience of technical personnel in the application domain. This knowledge base could be queried based on the root cause of the failure to output suggested solutions.

[0074] like Figure 1C As shown, front-end 101 can respond to the selection operation for the solution, obtain the selection instructions for the suggested solution and the predicted solution, and send the selection instructions to back-end 102. Back-end 102 can respond to the selection instructions for the suggested solution and the predicted solution to determine the target solution for the target fault.

[0075] In one example, such as Figure 1C As shown, the backend 102 can also send the target solution for the target fault to the frontend 101 and display it through the human-computer interaction interface. Of course, the backend 102 can also determine the causal path and causal probability (e.g., "the probability of tombstone failure (the patch standing up like a tombstone) caused by excessive humidity is 85%) based on the root cause and solution, and send it to the frontend for display through the human-computer interaction interface. This improves the interpretability of the target solution and the root cause of the fault, increases the transparency and credibility of the root cause analysis and the target solution, makes the target solution easier to adopt and implement, and promotes human-computer collaboration.

[0076] It is evident that through front-end and back-end interaction, the experience of technical personnel (at least one of application domain technical personnel and algorithm technical personnel) can be solidified in the causal relationship graph and continuously accumulated to reduce reliance on pure manual labor, facilitate experience transfer, and achieve 24 / 7 automatic diagnosis to improve fault handling efficiency. Moreover, by including the relationship between production-related information and fault status information of product samples in the causal relationship graph, it covers various defects that may occur in the target production line. Therefore, when a product on the target production line fails, the causal chain of the fault can be accurately deduced by combining the causal relationship graph, which greatly reduces false positives of "high feature coincidence but completely different root causes". It is especially applicable in scenarios with high dimensionality and high noise of multi-source data, and has strong interpretability, traceability, and rigorous verifiable logic.

[0077] This application provides a method for determining a causal relationship graph, which can be executed in the backend or applied to a backend chip. Figure 2A schematic flowchart illustrating the method for determining the causal relationship graph according to an embodiment of this application is shown. Figure 2 As shown, the method 200 for determining the causal relationship graph in this application includes steps 201 to 207.

[0078] In step 201, the training data of the directed acyclic graph is obtained. The training data of the directed acyclic graph includes production parameter information and fault status information of the product sample during the production process.

[0079] In this embodiment of the application, when acquiring the training data for a directed acyclic graph, production parameter information and fault status information of each production node of the target production line at multiple historical sampling times can be collected. For the production information of a production node at a certain sampling time, it can include the equipment process parameters and environmental parameters of the target production line at that production node.

[0080] Taking film-forming equipment as an example, the process parameters of the equipment can be the process chamber temperature, process chamber pressure, and flow rate of the reaction gas at the production node, the environmental parameters can be the ambient temperature and humidity at the production node, and the fault status information can include poor step coverage, uneven thickness, delamination, bubbling, etc.

[0081] For the aforementioned production parameter information and fault status information, refer to the relevant descriptions above. Preprocess the production parameter information and fault status information of each production node of the target production line at multiple historical sampling times to obtain the preprocessed results of the production parameter information and the fault status information.

[0082] In step 202, under the constraints of the directed acyclic graph, the production data of the product sample is subjected to structural learning through the directed acyclic graph to obtain the graph structure learning result of the directed acyclic graph. The directed acyclic graph includes the initial relationship between the production-related information and the fault status information of the product sample.

[0083] Optionally, the directed acyclic graph (DAG) without structure learning includes the initial relationship between production-related information and fault state information of the product sample. This initial relationship can be constructed based on the experience of application domain technicians and can be incorporated into the DAG as prior knowledge of the application domain technicians.

[0084] Optionally, the directed acyclic graph can include nodes and the relationships between different nodes. At the same time, those skilled in the application field can also configure the constraints of the directed acyclic graph, including forced edges, forbidden edges, hierarchical constraints, partial directions, etc. For a detailed explanation, please refer to the relevant description above.

[0085] In step 203, user evaluation results of the graph structure learning results of the directed acyclic graph (DAG) are obtained. Optionally, the graph structure learning results of the DAG can be sent to the front end; the front end can display the graph structure learning results of the DAG through a human-computer interaction interface, and the front end can obtain user evaluation results of the graph structure learning results of the DAG (such as empirical evaluation results from at least one of application domain technicians and algorithm technicians) through the human-computer interaction interface, and submit them to the back end as user evaluation messages.

[0086] Optionally, the front-end human-computer interaction interface can simultaneously display the graph structure learning results of the directed acyclic graph and the unlearned directed acyclic graph. Users can input their evaluation results on the graph structure learning results to the front-end through human-computer interaction, and the front-end will send the user evaluation results to the back-end.

[0087] In step 204, based on the user evaluation results of the graph structure learning results, it is determined whether the learning of the directed acyclic graph (DAG) has ended. If the user believes that the graph structure learning results of the DAG are without problems, the user evaluation results of the graph structure learning results obtained by the backend contain information of agreement on the graph structure learning results. At this time, it indicates that the graph structure learning process of the DAG is without problems, and the learning termination condition has been met. Therefore, the user evaluation result of the graph structure learning results of the DAG is that the learning has ended, and step 205 can be executed.

[0088] If a user believes there is a problem with the graph structure learning result of the directed acyclic graph, the user evaluation result of the graph structure learning result obtained by the backend will at least contain negative information about the graph structure learning result. In this case, it indicates that there may be some problems with the learning process of the directed acyclic graph and the conditions for terminating the learning have not been met. Therefore, the user evaluation result of the graph structure learning result of the directed acyclic graph is to relearn, and steps 206 and 207 can be executed.

[0089] In step 205, the edge weights of the graph structure learning results of the directed acyclic graph (DAG) are optimized to obtain a causal relationship graph. When the user evaluation result of the DAG graph structure learning results indicates that learning has ended, the graph structure of the DAG is confirmed, meaning the relationships between nodes in the DAG graph structure are determined. However, the correlation between nodes is not yet confirmed. Therefore, the edge weights of the DAG graph structure learning results can be optimized to obtain a causal relationship graph.

[0090] In the method of this application embodiment, the directed acyclic graph (DAG) fully learns the relationship between production parameter information and fault state information of the product sample during the production process, and adjusts the initial relationship between the DAG including the production-related information and fault state information of the product sample. In this way, the causal relationship graph constructed based on a large amount of production data (including production parameter information and fault state information) of the product sample in the actual production process can accurately reflect the relationship between different production parameters and fault state information. Therefore, when a target fault is detected in the product under test, the root cause of the target fault can be obtained from the causal relationship graph, and then the target solution of the target fault can be given according to the root cause of the target fault.

[0091] As can be seen, the method in this application embodiment can construct a causal relationship graph with high reliability and accuracy based on the production data of product samples generated in the actual production process. This allows for the rapid and accurate acquisition of the root cause and target solution of the target fault when a target defect of a product belonging to the same category as the product sample is detected, based on the causal relationship graph. This shortens the fault analysis time and improves the efficiency of fault resolution. Furthermore, because the directed acyclic graph (DAG) fully learns the relationship between the production parameter information and fault state information of the product sample during the production process, the resulting causal relationship graph has strong coverage of various fault types. Therefore, when using the causal relationship graph to analyze the root cause of a fault, it is less likely to result in misdiagnosis or missed diagnosis.

[0092] When using causal relationship diagrams to analyze the root causes of target failures, a relatively reliable causal chain can be obtained from the causal relationship diagram by using the root cause and the target failure. This can prevent false positives where "failure characteristics are similar, but the root causes are different", and improve the interpretability of the relationship between the target failure and the root cause. This makes it easier for technical personnel in the application field to verify the logical relationship between the target failure and the root cause, and to trace the responsibility for the target failure.

[0093] Furthermore, the embodiments of this application change the traditional reliance on various theoretical evaluation indicators (such as structural Hamming distance, recall, scoring function, hit rate, etc.) to evaluate whether a directed acyclic graph has reached the termination learning condition, to relying on user evaluation results to evaluate whether a directed acyclic graph has reached the termination learning condition. This allows the experience of technical personnel (at least one of application domain technical personnel and algorithm technical personnel) to be introduced into the learning of directed acyclic graphs. Therefore, if the user evaluation result of the graph structure learning result of the directed acyclic graph is that the learning has ended, it means that the directed acyclic graph has reached the termination learning condition through the verification of the user evaluation result. In other words, by confirming the results of user evaluations and determining that the directed acyclic graph (DAG) has reached the termination condition for learning, the accumulated experience of technical personnel can be transferred in a standardized form to the graph structure of the DAG that has completed structural learning (the relationship between nodes in the graph structure learning result of the DAG). This ensures the reliability and accuracy of the obtained causal relationship graph structure. Based on this, the edge weights of the learning result of the DAG can be optimized. Even if problems occur in the edge weight optimization, it is not necessary to relearn the data to be learned through the DAG, thereby reducing the complexity of the learning process.

[0094] In step 206, based on the user evaluation results of the graph structure learning results of the directed acyclic graph (DAG), a learning optimization strategy for the DAG is determined. Here, if the DAG does not meet the termination learning condition, the learning optimization strategy for the DAG can be redefined based on the user evaluation results.

[0095] Optionally, when displaying the graph structure learning results of the directed acyclic graph (DAG) on the front end, if the user is not satisfied with the learning results, they can not only submit a rejection message for the graph structure learning results, but also input learning optimization suggestions for the DAG. The front end will use the rejection message and learning optimization suggestions as user evaluation information and send them to the back end. Therefore, the back end can not only determine relearning based on the user evaluation information, but also determine the learning optimization strategy for the DAG based on the user evaluation information.

[0096] In step 207, the learning process of the directed acyclic graph (DAG) is controlled based on a learning optimization strategy. When the learning process of the DAG is controlled based on this strategy, the DAG can relearn the data to be learned, allowing the graph structure to evolve in a direction satisfactory to the technical personnel. This ensures that the technical personnel's experience is accumulated in the DAG, guaranteeing that the obtained DAG graph structure learning result meets user requirements.

[0097] Optionally, the learning process of the directed acyclic graph (DAG) is controlled by a learning strategy based on the DAG, including: if the learning strategy of the DAG includes an instruction to change the data to be learned in the DAG, it indicates that the data to be learned in the DAG is flawed, and the data to be learned in the DAG can be updated to exclude the flawed data; if the learning strategy of the DAG includes constraint update information of the DAG, it indicates that there is a problem with the constraint relationship between the nodes of the DAG, and therefore, the constraints of the DAG can be updated based on the constraint update information of the DAG.

[0098] In one example, technicians input suggestions for a directed acyclic graph (DAG) to the front end via human-computer interaction. These suggestions may include at least one of the following: suggestions for changing the data to be learned, suggestions for modifying the graph structure, and suggestions for adjusting the constraints. Therefore, the front end can transmit user evaluation information to the back end. The back end can then obtain these suggestions, and based on them, update the data to be learned, modify the relationships between nodes in the learning results, and modify the constraints.

[0099] In one alternative approach, embodiments of this application can use a target learning algorithm to control the learning of a directed acyclic graph (DAG) on the learning data. In this case, a target learning algorithm can be selected from multiple candidate learning algorithms based on a preset algorithm selection strategy. Considering that the learning algorithm and different target learning algorithms have different fitness levels, controlling the learning process of the DAG based on the learning strategy of the DAG can include: if the optimization strategy of the DAG includes adjustment information for the algorithm selection strategy, it indicates that the algorithm selection strategy has a problem, resulting in poor matching between the selected target learning algorithm and the learning data; therefore, the preset algorithm selection strategy can be updated based on the adjustment information of the algorithm selection strategy.

[0100] Optionally, when the front end displays the graph structure learning results of the directed acyclic graph, if the algorithm technician believes that there is a problem with the target learning algorithm, the algorithm technician can explain the preset algorithm selection strategy. Therefore, the algorithm technician can also propose improvement suggestions for the preset algorithm selection strategy and send the improvement suggestions as part of the user evaluation information to the back end. When the back end obtains the user evaluation information, it can obtain the improvement suggestions for the preset algorithm selection strategy from the user evaluation information, and then change the preset algorithm selection strategy according to the improvement suggestions, and re-select the target selection strategy with the changed preset algorithm selection strategy.

[0101] The method in this application embodiment further includes: determining the data description information of the data to be learned based on the directed acyclic graph (DAG); the data description information of the data to be learned can describe the data characteristics of the data to be learned, such as the data volume, data type, data dimension, and even the data missing rate and signal-to-noise ratio. Different candidate learning algorithms are applicable to different data to be learned and different scenarios. Therefore, a preset algorithm selection strategy can be adopted to obtain the target learning algorithm of the DAG that matches the data description information of the data to be learned from multiple candidate learning algorithms, thereby ensuring the matching between the selected target learning algorithm and the data to be learned, so that when the target learning algorithm controls the DAG to learn the data to be learned, the DAG has a high learning ability and learning efficiency for the data to be learned.

[0102] Optionally, the preset algorithm selection strategy can be embedded in the large language model through training. In this way, when selecting the target learning algorithm, at least multiple candidate learning algorithms and data description information of the data to be learned are input into the large language model, so as to utilize the semantic understanding and logical reasoning capabilities of the large language model to deduce at least one target learning algorithm.

[0103] Optionally, the preset algorithm selection strategy may include preset selection rules, which may stipulate that the matching degree of the target learning algorithm corresponding to the data to be learned is greater than a preset matching degree. In this case, the data description information of the data to be learned can be matched with the algorithm description information of the multiple candidate learning algorithms to obtain the matching degree of the multiple candidate learning algorithms corresponding to the data to be learned. Based on the matching degree of the multiple candidate learning algorithms corresponding to the data to be learned, the target learning algorithm is obtained from the multiple candidate learning algorithms. The target learning algorithm includes at least one of the multiple candidate learning algorithms whose matching degree is greater than the preset matching degree.

[0104] In one example, algorithm selection rules can be compiled by technical personnel from different fields (such as application domain technical personnel and algorithm technical personnel) to form an algorithm selection rule table and store it in the database of the data storage system. These algorithm selection rules can be accumulated as assets.

[0105] Optionally, the directed acyclic graphs in this application embodiment can employ the same learning algorithm for graph structure learning and edge weight learning. In this case, the target learning algorithm selected from multiple candidate learning algorithms includes models that can support both the structure learning of directed acyclic graphs and the optimization of edge weights of directed acyclic graphs, such as causal reinforcement learning, graph neural network learning methods, etc.

[0106] Optionally, different algorithms can be used for graph structure learning and edge weight learning of directed acyclic graphs (DAGs). That is, the target learning algorithms include graph structure learning algorithms and edge weight learning algorithms for DAGs. The graph structure learning algorithm can provide a learning algorithm for the graph structure of a DAG, and the edge weight learning algorithm can provide a learning algorithm for the edge weights of a DAG.

[0107] In one example, algorithm engineers can compile information on structure learning algorithms and edge weight learning algorithms for directed acyclic graphs (DAGs), and freely combine these algorithms to construct multiple candidate learning algorithms. Simultaneously, they can provide scenario descriptions, applicable data types, computational efficiency, and interpretability for both structure learning and edge weight learning algorithms, along with their algorithmic advantages and limitations. The scenario description, applicable data types, computational efficiency, interpretability, algorithmic advantages, and algorithmic limitations of the structure learning algorithm are used as the algorithmic description information for the structure learning algorithm, and the scenario description, algorithmic advantages, and algorithmic limitations of the edge weight learning algorithm are used as the algorithmic description information for the edge weight learning algorithm. In other words, the algorithmic description information for candidate learning algorithms can include both the algorithmic description information for structure learning algorithms and the algorithmic description information for edge weight learning algorithms.

[0108] In one example, multiple candidate learning algorithms and their algorithm descriptions can be stored in the database of the data storage system in the form of a candidate algorithm table. When a new candidate learning algorithm is introduced or an existing candidate learning algorithm expires, the candidate algorithm table stored in the database can be maintained by editing the candidate algorithm table.

[0109] When the data description information of the data to be learned can describe its characteristics (such as data volume, data type, data dimension, and even missing data rate, signal-to-noise ratio, etc.), it can be determined whether the candidate learning algorithm is suitable for learning the directed acyclic graph (DAG) data based on the algorithm description information of the candidate learning algorithm and the data description information of the data to be learned. The matching degree of the candidate learning algorithm corresponding to the data to be learned is used as a quantitative parameter to measure the applicability of the candidate learning algorithm to the DAG data. If the matching degree of a candidate learning algorithm among multiple candidate learning algorithms is greater than the preset matching degree, it means that the candidate learning algorithm is suitable for learning the DAG data and can be used as the target learning algorithm.

[0110] Optionally, each candidate learning algorithm included in the candidate algorithm table provides a corresponding calling link and default parameters. When the candidate learning algorithm is selected, the target learning algorithm can be called through the calling link and default parameters to control the learning process of the directed acyclic graph on the data to be learned.

[0111] Optionally, multiple candidate learning algorithms can be selected as target learning algorithms. In this case, the top K candidate learning algorithms can be selected from the multiple candidate learning algorithms that can be used as target learning algorithms based on the matching degree. All of the top K candidate learning algorithms can be used as target learning algorithms, that is, multiple target learning algorithms are selected from multiple candidate learning algorithms.

[0112] When multiple target learning algorithms are selected from multiple candidate learning algorithms, you can refer to steps 201 and 202 above to obtain the graph structure learning results of the directed acyclic graphs corresponding to the structure learning algorithms included in each target learning algorithm (referred to as the graph structure learning results of the directed acyclic graphs corresponding to the target learning algorithms), and display them on the front end. Users can evaluate the graph structure learning results of the directed acyclic graphs corresponding to different target learning algorithms.

[0113] In one example, the front end can distinguish different regions of the graph structure learning results of unlearned directed acyclic graphs and directed acyclic graphs corresponding to multiple target learning algorithms by highlighting or marking colors, so that users can better evaluate the graph structure learning results of directed acyclic graphs corresponding to different target learning algorithms.

[0114] In one example, if the graph structure learning result of a directed acyclic graph (DAG) corresponding to a certain target learning algorithm is more reasonable than the graph structure of an unlearned DAG, the graph structure learning result of the target learning algorithm can be retained. If the graph structure learning result of the DAG meets the user's expectations, the user can submit their agreement on the graph structure learning result through human-computer interaction. Similarly, if the graph structure learning result of a DAG corresponding to a certain target learning algorithm is more degraded than the graph structure of an unlearned DAG, the use of the target learning algorithm to control the DAG to learn the data to be learned can be abandoned directly.

[0115] As can be seen, the algorithm description information of the candidate learning algorithm in the embodiments of this application can describe the applicable scenarios and even the applicable data types of the candidate learning algorithm. Therefore, the data description information of the data to be learned can be matched with the algorithm description information of multiple candidate learning algorithms to obtain the matching degree of multiple candidate learning algorithms corresponding to the data to be learned. Then, based on the matching degree of multiple candidate algorithms corresponding to the data to be learned, a candidate learning algorithm with a matching degree greater than a preset matching degree is obtained from multiple candidate algorithms, and it is used as the target learning algorithm to be applied to the learning of the directed acyclic graph data to be learned.

[0116] Optionally, the target learning algorithm includes both a structure learning algorithm and an edge weight learning algorithm. When learning the graph structure of a directed acyclic graph (DAG), the structure learning algorithm can be used to control the DAG to learn the data to be learned, thereby obtaining the graph structure learning result. When optimizing edge weights, the edge weight learning algorithm can be used to optimize the edge weights of the DAG graph structure learning result, thereby obtaining a causal relationship graph.

[0117] In one example, the structure learning algorithm may include one of the data-driven algorithms such as PC and FCI, or it may include algorithms based on score search, such as GES. The edge weight learning algorithm may include maximum likelihood estimation, least squares regression, or regularized regression.

[0118] When the structure learning algorithm includes the PC algorithm and the edge weight learning algorithm includes the maximum likelihood estimation algorithm, the PC algorithm provides three verification methods for the data to be learned, such as Fisher's Z test, MIC test and chi-square test. Using the three verification methods for the data to be learned as contact, the graph structure learning is carried out by the dynamic weighted conditional independence test method.

[0119] Figure 3 This illustration shows a schematic flowchart of a structure learning method for directed acyclic graphs using the PC algorithm, as described in an embodiment of this application. Figure 3As shown, the structure learning method 300 for directed acyclic graphs using the PC algorithm in this embodiment includes steps 301 to 305.

[0120] In step 301, the weight coefficients of the Fisher Z-test are configured according to the data characteristics of the data to be learned. W fisher Weighting coefficients of the MIC test W mic Weighting coefficients for chi-square test W chi Among them, the Fisher Z-test is Fisher's Z-transformation (Fisher Z) test, and the maximum information system test is the Maximum Information Coefficient (MIC) test.

[0121] Optionally, the data type of each data type can be determined based on its business semantics (predefined by experts), data type, and proportion of unique values ​​(number of unique values / total sample size), among other data characteristics. The weighting coefficients of the Fisher Z-test can then be set according to the business attributes of the data to be learned. W fisher Weighting coefficients of the MIC test W mic Weighting coefficients for chi-square test W chi For example, in high-noise scenarios, the weighting coefficients of the MIC test... W mic The weighting coefficients of the Fisher Z-test are relatively small, especially in small sample scenarios. W fisher Relatively high.

[0122] When the data type is continuous (such as temperature, pressure, etc.), the Fisher-Z test is theoretically the most suitable method among the three testing methods. Therefore, the weighting coefficients for the Fisher-Z test corresponding to this data can be set. W fisher (such as weighting coefficients) W fisher =1.5), while the weighting coefficient of the MIC test. W mic Since the weights remain unchanged, the chi-square test is not suitable for continuous data processing. Therefore, the weight coefficients for the chi-square test corresponding to this data can be set. W chi =0.

[0123] When the data type is discrete (such as equipment status data, classification result data, etc.), the chi-square test is theoretically the most suitable method among the three testing methods. Therefore, a weighting coefficient for the chi-square test corresponding to this data can be set. W chi (such as weighting coefficients) W chi =1.5), while the weighting coefficient of the MIC test. W mic As a supplement, the weights remain unchanged. However, the Fisher Z test is not suitable for discrete data processing. Therefore, the weight coefficients of the Fisher Z test corresponding to this data can be set. W fisher =0.

[0124] When the data type is mixed (such as equipment status within a certain temperature range or classification results within a certain pressure range), the chi-square test is theoretically the most suitable method among the three testing methods. Therefore, the weighting coefficient of the MIC test corresponding to this data can be set. W mic (such as weighting coefficients) W chi =0.8), the weighting coefficient of the Fisher Z test W fisher Weighting coefficients for chi-square test W chi All were assigned low-weight systems (such as the weight coefficients in the Fisher Z test). W fisher =0.1, the weighting coefficient for the chi-square test W chi =0.1).

[0125] In step 302, the weighting coefficients of the Fisher Z-test are obtained. W fisher Weighting coefficients of the MIC test W mic Weighting coefficients for chi-square test W chi The independent probability of the corresponding data to be learned. The independent probability of the data to be learned can represent the independent probability between each data point and another data point in the data to be learned.

[0126] In step 303, the weighting coefficients are based on the Fisher Z-test. W fisher Weighting coefficients of the MIC test W mic Weighting coefficients for chi-square test W chiBased on the independence probabilities of the data to be learned, determine the independence confidence levels of the data to be learned using the Fisher Z-test, MIC test, and chi-square test. These independence confidence levels can be referenced... Calculate, where, Indicates the degree of independence confidence. This represents the independent probability.

[0127] In step 304, the weighting coefficients are based on the Fisher Z-test. W fisher Weighting coefficients of the MIC test W mic Weighting coefficients for the chi-square test W chi Fisher's Z-test, MIC test, and chi-square test are used to determine the independence confidence of the data to be learned, and to determine the fusion confidence of the data to be learned. S _fused .

[0128] For example, S _fused = W fisher S _fisher + W mic S _mic + W chi S _chi ,in, S _fisher This represents the independence confidence level of a given data point in the Fisher Z test. S _mic This represents the independence confidence level of a specific data point in the MIC test. S _chi This represents the independent confidence level of a specific data point in the chi-square test.

[0129] In step 305, when there are no conflicts between the independent confidence scores of the data to be learned corresponding to the Fisher Z-test, MIC test, and chi-square test, the fusion confidence score is based on the data to be learned. S _fused Determine the relationships between the different data included in the data to be learned.

[0130] For any target data included in the learning data, if the fusion confidence of the target data with respect to a certain non-data is greater than the preset confidence, it can be considered that there is no correlation between the target data and the non-target data. If the fusion confidence of the target data with respect to a certain non-data is less than or equal to the preset confidence, it can be considered that there is a correlation between the target data and the non-target data.

[0131] Optionally, the method in this application embodiment can determine whether there is a conflict between the independence confidence scores of the data to be learned corresponding to the Fisher Z-test, MIC test, and chi-square test. For example, the maximum value (max_) among the independence confidence scores of the data to be learned corresponding to the Fisher Z-test, MIC test, and chi-square test can be obtained. S The minimum value is min_S, and then the range value ΔS is determined based on the maximum value max_S and the minimum value min_S.

[0132] If the range value ΔS is greater than the preset range threshold, it indicates that the independent confidence levels of the data to be learned corresponding to the Fisher Z test, MIC test, and chi-square test differ too much, which may indicate a conflict. It needs to be confirmed in conjunction with the front-end user instructions. If the range value ΔS is less than or equal to the preset range threshold, it indicates that the independent confidence levels of the data to be learned corresponding to the Fisher Z test, MIC test, and chi-square test are not significantly different, and there is no conflict.

[0133] In step 306, based on the relationships between different data included in the data to be learned and the constraints of the directed acyclic graph (DAG), the graph structure of the DAG is configured to obtain the graph structure learning result of the DAG. The following example uses data A and data B. It should be understood that data A and data B are not subject to the constraints of the DAG.

[0134] If there is a relationship between data A and data B obtained from step 305, but there is no edge connecting data A and data B in the directed acyclic graph, then an edge can be set to connect data A and data B in the directed acyclic graph to achieve the purpose of adding an edge in the directed acyclic graph.

[0135] If data A and data B are connected by an edge in a directed acyclic graph, but there is no association between data A and data B obtained from step 305, then the edge between data A and data B can be deleted from the directed acyclic graph to achieve the purpose of deleting the edge in the directed acyclic graph.

[0136] If data A and data B are connected by an edge in a directed acyclic graph, and the edge points from data A to data B, although there is an association between data A and data B obtained from step 305, it is a causal association where data B points to data A. Therefore, the direction of the edge between data A and data B in the directed acyclic graph can be changed to achieve the purpose of changing the edge direction in the directed acyclic graph.

[0137] When the backend returns the graph structure learning results of the directed acyclic graph (DAG) obtained from the PC algorithm to the frontend, the frontend can compare the learned DAG with the unlearned DAG and select the top ten, highlighting all changed edges (added edges, deleted edges, and edges with changed directions). Each changed edge is then reviewed by one or more technical personnel to determine whether to adopt it. For adopted changes, confirmation can be provided; for rejected changes, specific suggestions can be made and used as user evaluation information for feedback.

[0138] Optionally, if there are many changing points in the graph structure learning result of the directed acyclic graph (DAG), the learned graph structure result of the DAG is used as the initial DAG for the next round of DAG structure learning, and the PC algorithm is restarted until the number of new changing points found by the PC algorithm decreases, and the DAG graph structure learning result is accepted by technical personnel for most of the changing points, i.e., the graph structure of the DAG tends to stabilize. Of course, various possible learning optimization strategies can also be proposed based on user evaluation information from technical personnel to facilitate further optimization of the structure learning of DAGs.

[0139] If the user evaluation result of the graph structure learning of the directed acyclic graph (DAG) indicates the end of the learning process, the maximum likelihood estimation algorithm can be used based on the graph structure learning result and the discretized training data to obtain the conditional probabilities between nodes in the DAG. The conditional probabilities between all nodes and their adjacent nodes in the DAG can be stored in the database in the form of a conditional probability table. For example, in a DAG where node A = temperature and node B = defect, the edge weights between node A and node B can be represented in Table 1.

[0140] Table 1. Edge weights of temperature and fault under different conditions

[0141] Of course, technical personnel can also review the conditional probabilities in the conditional probability table to determine whether the conditional probabilities in the table conform to experience. If some conditional probabilities are seriously inconsistent with experience, the data quality of the data to be learned and whether the variable discretization interval is reasonable can be checked back. If they are not reasonable, the graph structure learning can be carried out again.

[0142] This application also provides a method for determining a fault solution, which can be executed by a back-end or a chip applied to the back-end. Figure 4 A flowchart illustrating a method for determining a fault solution according to an embodiment of this application is shown. Figure 4 As shown, the fault solution determination method 400 of this application embodiment includes: step 401 and step 402.

[0143] In step 401, when a target fault is detected in the product under test, the root cause of the target fault is inferred based on the fault information and causal relationship diagram of the target fault. The causal relationship diagram includes the relationship between the production-related information of the product sample and the fault status information. The product sample and the product under test belong to the same type of product.

[0144] In this embodiment, the product under test and the learning data used in confirming the causal relationship diagram both belong to the same type of product. This same type of product can refer to products from the same batch or products from different batches produced by the same production line. In this way, the causal relationship diagram determined based on the learning data can more accurately reflect the correlation between various production-related information (such as equipment process parameters and environmental parameters) and fault states that occur during the production process of this type of product.

[0145] Optionally, the target fault can be input into the causal relationship graph, and counterfactual reasoning operations can be performed to obtain the posterior probability of the root cause of the target fault. The root cause of the target fault can be determined based on the posterior probability threshold.

[0146] For example, a cause-effect graph can identify the node where the target fault is located (called the fault node) and the causal node that is related to the fault node. Then, by changing the parameters of the causal node, the defect probability of the fault node is recalculated after the parameter change. If the defect probability of the fault node changes drastically, it indicates that the causal node is the root cause of the target fault.

[0147] In step 402, based on the root cause of the target fault, the target solution for the target fault of the product under test is determined. This can be achieved by directly using a cause-effect diagram to predict the target solution for the target fault, or by combining the prediction results of the cause-effect diagram with the knowledge base of technical personnel to provide two possible solutions, with the user deciding on the final target solution.

[0148] Optionally, when determining the target solution, suggested solutions for the target fault can be queried based on the root cause of the target fault; intervention reasoning can be performed on the causal relationship graph based on the root cause of the target fault to obtain a predicted solution for the target fault; and in response to the selection instruction for the suggested solution and the predicted solution, the target solution for the target fault can be determined.

[0149] In one example, suggested solutions to the target fault can be obtained from a knowledge base based on the causes of the target fault, while predicted solutions to the target fault can be obtained by intervening in the causal relationship graph. The backend can return both the suggested solutions and the predicted solutions to the target fault to the frontend for the frontend user to choose from, so as to ensure the reliability and accuracy of the target solution.

[0150] In one example, during intervention reasoning, the parameters of the target root cause can be adjusted, and then the conditional probability corresponding to the parameters of the target root cause can be determined by looking up the conditional probability table. If the probability of failure occurring in the conditional probability corresponding to the parameters of the target root cause is lower than a preset threshold, a predictive solution can be determined based on the fault root cause parameters with the set target probability.

[0151] After determining the target solution, the target fault can be eliminated using the target solution, and various production-related data before and after the elimination of the target fault can be collected and updated into the data to be learned, so as to update the causal relationship diagram regularly.

[0152] To clearly illustrate the process of determining the causal relationship diagram and the method of determining the fault solution in the embodiments of this application. Figure 5 This document illustrates a flowchart of a method for determining a causal relationship diagram based on fault analysis of Automatic Optical Inspection (AOI) in an embodiment of this application. Figure 5 As shown, the method 500 for determining the causal relationship diagram of furnace front AOI fault analysis in this embodiment of the application includes steps 501 to 508.

[0153] In step 501, defect detection data of the pre-reflow AOI equipment, key parameters of related equipment such as the solder paste printer, SPI equipment, and pick-and-place machine corresponding to the pre-reflow AOI equipment, and historical data of pre-reflow AOI such as environmental parameters are collected. Among them, the SPI equipment is the Solder Paste Inspection (SPI) equipment, and the environmental parameters may include temperature and humidity.

[0154] In step 502, the historical AOI data is preprocessed to obtain the data to be learned. For example, outliers in the historical AOI data can be removed, and the defect detection data of the AOI equipment, solder paste printer, SPI equipment, pick and place machine, and other relevant key parameters and ambient temperature can be aligned according to the identity information of the printed circuit board. Then, the data corresponding to the printed circuit board is discretized (e.g., converted to "high", "normal" or "low" states according to continuous parameters such as "pressure") and normalized (to eliminate the influence of feature data units).

[0155] In step 503, the data to be learned is described to obtain data description information. For example, the data description information can exist as a label for the data to be learned. For example, ydata-profiling can be used to calculate the missing rate, signal-to-noise ratio, and data type (discrete, linear, or mixed), and the data description information is stored in a database. The data to be learned is then divided into training and testing sets according to a set ratio.

[0156] In step 504, based on the experience of technical personnel, a directed acyclic graph (DAG) and its constraints are generated. The initial causal graph includes the defect detection data of the AOI equipment in the AOI scenario, the key parameters of the solder paste printer, SPI equipment, pick-and-place machine, and other related equipment corresponding to the AOI equipment, as well as the initial relationships of environmental parameters. The constraints of the DAG may include forced edges, forbidden edges, hierarchical constraints, etc.

[0157] In step 505, a target learning algorithm is obtained from the multiple candidate learning algorithms included in the learning algorithm table. The target learning algorithm includes a structure learning algorithm and an edge weight learning algorithm.

[0158] In one example, referring to the previous section, the semantic understanding and logical reasoning capabilities of a large language model can be used to select N target learning algorithms from multiple candidate learning algorithms. Alternatively, N target learning algorithms can be selected from multiple candidate learning algorithms using simple preset selection rules. The number of target learning algorithms can be specified by the front-end user.

[0159] For example, if the preset selection rule is that when the amount of data to be learned is greater than 500, an algorithm that is only applicable to small and medium-sized samples should not be selected, then when the amount of training data to be learned is 1000, an algorithm suitable for learning a large number of samples can be selected from multiple candidate learning algorithms based on the preset selection rule, such as the target learning algorithm composed of PC algorithm and maximum likelihood estimation algorithm.

[0160] In step 506, N structure learning algorithms are used to control the directed acyclic graph (DAG) to perform graph structure learning on the training set of the data to be learned, resulting in the graph structure learning results of the DAG corresponding to the N structure learning algorithms (hereinafter referred to as the N graph structure learning results). For example, the PC algorithm can be selected to control the DAG to perform graph structure learning on the training set of the data to be learned. The specific process can be referred to the previous text and will not be repeated here.

[0161] In step 507, the N graph structure learning results are displayed in graph format on the front end. Optionally, the differences among the N graph structure learning results can be highlighted.

[0162] In step 508, user evaluation results for the learning results of N graph structures are obtained. If the user evaluation results indicate that the learning of the directed acyclic graph corresponding to a certain structure learning algorithm has ended, the edge weights of the learning structure are optimized based on the maximum likelihood estimation algorithm to obtain the causal relationship graph.

[0163] Optionally, technicians can review the learning results of N graph structures by combining their knowledge of the AOI furnace front-end domain. If a graph structure learning result matches the actual business, then referring to the relevant description above, the edge weights of the graph structure learning structure are optimized based on the maximum likelihood estimation algorithm to obtain a causal relationship graph. Otherwise, technicians can analyze the causes of the problems based on the graph structure learning result and input various possible learning optimization strategies at the front end according to the analysis results. These strategies include changing the data to be learned, selecting the strategy of the preset algorithm, and how to operate on the constraints of the directed acyclic graph. Then, the process proceeds to the next iteration.

[0164] For example, when the learning optimization strategy includes the selection method of the preset algorithm selection strategy, when using a large language model to screen the target learning algorithm, the update method of the preset algorithm selection strategy, the data description information of the data to be learned, and the candidate algorithm table can be input into the large language model so that the large language model can obtain a new target learning algorithm from the candidate algorithm table with reference to the update method of the preset algorithm selection strategy.

[0165] Figure 6 This illustration shows a schematic diagram of the process for determining a furnace-front AOI fault solution according to an embodiment of this application. Figure 6 As shown, the method 600 for determining a furnace-front AOI fault solution in this application embodiment includes steps 601 to 604.

[0166] In step 601, when a target fault is detected in the furnace front AOI, counterfactual reasoning is performed on the causal relationship diagram based on the target defect to obtain the root cause of the target fault.

[0167] In step 602, intervention reasoning is performed on the causal relationship graph based on the root cause of the target fault to obtain a predictive solution for the target fault. Table 2 shows the conditional probability of insufficient solder faults occurring at different solder paste thicknesses.

[0168] Table 2 Conditional probability of insufficient solder failure occurring at different solder paste thicknesses

[0169] For example, if the target fault is insufficient solder and the root cause is thin solder paste, we can set the solder paste thickness to be thin. By referring to Table 2, we can find that the conditional probability of insufficient solder occurring is 0.05, and the conditional probability of insufficient solder not occurring is 0.95. Therefore, we can generate a predictive solution for insufficient solder fault based on the solder paste thickness range corresponding to normal solder paste thickness.

[0170] In step 603, based on the root cause of the target fault, a suggested solution for the target fault is queried. Here, the suggested solution for the target fault can be considered different from the predicted solution for the target fault, and both are displayed on the front end. Technicians can select one through human-computer interaction and report it in the form of a selection command.

[0171] In step 604, in response to the selection instruction for the suggested solution and the predicted solution, a target solution for the target fault is determined. Several target solutions for the target fault can be recommended here; Table 3 shows a list of target solutions for a tombstoning fault in the furnace front AOI as an example.

[0172] Table 3. List of target solutions for example, AOI tombstone erection failure at the furnace front.

[0173] The target solutions listed in Table 3 can be confirmed by technical personnel, and the confirmed target solutions can be deployed to the actual production process for implementation.

[0174] As can be seen, the method in this application embodiment can systematically provide technical support for the learning of school data for directed acyclic graphs by constructing candidate algorithm tables and algorithm selection rule tables in advance. Furthermore, the experience of technical personnel can be continuously accumulated and deposited into the directed acyclic graph through user evaluation information. This not only ensures the accuracy and reliability of the directed acyclic graph, but also eliminates the reliance on pure manual labor and facilitates the transfer of experience.

[0175] After determining the causal relationship diagram, upon sensing a target fault, root cause analysis and solution generation can be performed using the causal relationship diagram, forming an intelligent closed loop of "perception-diagnosis-decision-optimization". Therefore, the method in this application embodiment can be based on the causal relationship diagram to achieve 7 24-hour automatic diagnosis to improve defect handling efficiency.

[0176] Moreover, when using causal relationship diagrams to find the root cause of a failure and the target solution, clear causal paths and probability support can be generated. For example, according to the analysis, the probability of tombstone failure caused by excessive humidity is 85%. This can improve the explanatoryness, transparency and credibility of the target solution, greatly enhance the process engineer's trust in the system, make intelligent suggestions easier to adopt and implement, and promote human-machine collaboration.

[0177] By dividing functional modules according to their respective functions, an exemplary embodiment of this application provides an apparatus for determining a causal relationship graph. This apparatus can be a computer device or a chip applied to a computer device. Figure 7 A schematic block diagram of a functional module of a causal relationship diagram determination apparatus according to an exemplary embodiment of this application is shown. Figure 7 As shown, the device 700 for determining the causal relationship diagram includes: The acquisition module 701 is used to acquire the learning data of the directed acyclic graph. The learning data of the directed acyclic graph includes the production parameter information and fault status information of the product sample during the production process. The learning module 702 is used to perform structural learning on the production data of the product sample through the directed acyclic graph (DAG) under the constraints of the DAG, obtain the graph structure learning result of the DAG, obtain the user evaluation result of the graph structure learning result of the DAG, and optimize the edge weights of the graph structure learning result of the DAG if the user evaluation result of the graph structure learning result of the DAG is "learning ends", thereby obtaining a causal relationship graph. The DAG includes the initial relationship between the production-related information and fault state information of the product sample.

[0178] In one possible implementation, the learning module 702 is further configured to, if the user evaluation result of the graph structure learning result of the directed acyclic graph is relearning, determine a learning optimization strategy for the directed acyclic graph based on the user evaluation result of the graph structure learning result of the directed acyclic graph; and control the learning process of the directed acyclic graph based on the learning optimization strategy for the directed acyclic graph.

[0179] In one possible implementation, the learning module 702 is used to update the data to be learned in the directed acyclic graph if the learning strategy of the directed acyclic graph includes a data replacement instruction for the data to be learned in the directed acyclic graph; and to update the constraints of the directed acyclic graph based on the constraint update information of the directed acyclic graph if the learning strategy of the directed acyclic graph includes constraint update information of the directed acyclic graph.

[0180] In one possible implementation, the device further includes a filtering module 703, used to determine the data description information of the data to be learned based on the directed acyclic graph; and to select the target learning algorithm of the directed acyclic graph that matches the data description information of the data to be learned from multiple candidate learning algorithms using a preset algorithm selection strategy.

[0181] In one possible implementation, the learning module 702 is further configured to update the preset algorithm selection strategy based on the adjustment information of the algorithm selection strategy if the optimization strategy of the directed acyclic graph includes adjustment information of the algorithm selection strategy.

[0182] In one possible implementation, the filtering module 703 is used to match the data description information of the data to be learned with the algorithm description information of multiple candidate learning algorithms to obtain the matching degree of multiple candidate learning algorithms corresponding to the data to be learned; based on the matching degree of multiple candidate learning algorithms corresponding to the data to be learned, a target learning algorithm is obtained from the multiple candidate learning algorithms, and the target learning algorithm includes at least one of the multiple candidate learning algorithms whose matching degree is greater than a preset matching degree.

[0183] By dividing the functional modules according to their respective functions, an exemplary embodiment of this application provides a fault solution determination apparatus. This fault solution determination apparatus can be a computer device or a chip applied to a computer device. Figure 8 A schematic block diagram of a functional module of a fault solution determination apparatus according to an exemplary embodiment of this application is shown. Figure 8 As shown, the fault solution determination device 800 includes: The reasoning module 801 is used to infer the root cause of the target fault based on the fault information and cause-effect diagram of the target fault when a target fault is detected in the product under test. The determination module 802 is used to determine the target solution for the target fault of the product under test based on the root cause of the target fault; wherein, the cause-effect diagram includes the relationship between the production-related information of the product sample and the fault status information, and the product sample and the product under test belong to the same type of product.

[0184] In one possible implementation, the determining module 802 is used to query suggested solutions for the target fault based on the root cause of the target fault; to perform intervention reasoning on the causal relationship graph based on the root cause of the target fault to obtain a predicted solution for the target fault; and to determine the target solution for the target fault in response to a selection instruction for the suggested solution and the predicted solution.

[0185] This application also provides a computer device, including: at least one processor; and a memory communicatively connected to the at least one processor. The memory stores a computer program executable by the at least one processor, which, when executed by the at least one processor, causes the computer device to perform a causal relationship graph determination method according to an embodiment of this application.

[0186] An exemplary embodiment of this application also provides a non-transitory computer-readable storage space storing a computer program, wherein the computer program, when executed by a computer's processor, is used to cause the computer to perform a method for determining a causal relationship graph according to an embodiment of this application.

[0187] An exemplary embodiment of this application also provides a computer program product, including a computer program, wherein, when executed by a computer's processor, the computer program is used to cause the computer to perform a method for determining a causal relationship graph according to an embodiment of this application.

[0188] This application also provides a computer device, including: at least one processor; and a memory communicatively connected to the at least one processor. The memory stores a computer program executable by the at least one processor, which, when executed by the at least one processor, causes the computer device to perform a fault solution determination method according to an embodiment of this application.

[0189] An exemplary embodiment of this application also provides a non-transitory computer-readable storage space storing a computer program, wherein the computer program, when executed by a computer's processor, is used to cause the computer to perform a fault solution determination method according to an embodiment of this application.

[0190] An exemplary embodiment of this application also provides a computer program product, including a computer program, wherein, when executed by a computer's processor, the computer program is used to cause the computer to perform a fault solution determination method according to an embodiment of this application.

[0191] refer to Figure 9 The present invention describes a structural block diagram of a computer device 900 that can be used as an embodiment of the present application, which is an example of a hardware device that can be applied to various aspects of the embodiments of the present application. The term "computer device" is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. A computer device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the embodiments of the present application described and / or claimed herein.

[0192] like Figure 9 As shown, the computer device 900 includes a computing unit 901, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 902 or a computer program loaded into a random access memory (RAM) 903 from a storage unit 908. The RAM 903 may also store various programs and data required for the operation of the device 900. The computing unit 901, ROM 902, and RAM 903 are interconnected via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.

[0193] like Figure 9 As shown, multiple components in computer device 900 are connected to I / O interface 905, including: input unit 906, output unit 907, storage unit 908, and communication unit 909. Input unit 906 can be any type of device capable of inputting information to computer device 900. Input unit 906 can receive input numerical or character information and generate key signal inputs related to user settings and / or function control of the computer device. Output unit 907 can be any type of device capable of presenting information and may include, but is not limited to, a monitor, speaker, video / audio output terminal, vibrator, and / or printer. Storage unit 908 may include, but is not limited to, hard disks and optical disks. Communication unit 909 allows computer device 900 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers, and / or chipsets, such as Bluetooth™ devices, WiFi devices, WiMax devices, cellular communication devices, and / or the like.

[0194] like Figure 9 As shown, computing unit 901 can be various general-purpose and / or dedicated processing components with processing and computing capabilities. Some examples of computing unit 901 include, but are not limited to, central processing unit (CPU), graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Computing unit 901 performs the various methods and processes described above. For example, in some embodiments, the methods of the embodiments of this application can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as storage unit 908. In some embodiments, part or all of the computer program can be loaded and / or installed on computer device 900 via ROM 902 and / or communication unit 909. In some embodiments, computing unit 901 can be configured to perform the methods of the embodiments of this application by any other suitable means (e.g., by means of firmware).

[0195] Program code used to implement the methods of the embodiments of this application may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0196] In the context of embodiments of this application, machine-readable space can be a tangible space that may contain or store programs for use by or in conjunction with an instruction execution system, apparatus, or device. Machine-readable space can be machine-readable signal space or machine-readable storage space. Machine-readable space can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage space include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0197] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0198] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or space (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0199] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other.

[0200] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a terminal, a user equipment, or other programmable device. The computer program or instructions can be stored in computer-readable storage space or transmitted from one computer-readable storage space to another. For example, the computer program or instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage space can be any available space that a computer can access or a data storage device such as a server or data center that integrates one or more available spaces. The available space can be magnetic space, such as a floppy disk, hard disk, or magnetic tape; it can also be optical space, such as a digital video disc (DVD); or it can be semiconductor space, such as a solid-state drive (SSD).

[0201] Although this application has been described in conjunction with specific features and embodiments, it is obvious that various modifications and combinations can be made thereto without departing from the spirit and scope of this application. Accordingly, this specification and drawings are merely exemplary illustrations of this application as defined by the appended claims, and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of this application. Clearly, those skilled in the art can make various alterations and modifications to this application without departing from the spirit and scope of this application. Thus, if such modifications and modifications of this application fall within the scope of the claims of this application and their equivalents, this application is also intended to include such modifications and modifications.

Claims

1. A method for determining a causal relationship diagram, characterized in that, include: Acquire the training data for the directed acyclic graph, wherein the training data for the directed acyclic graph includes production parameter information and fault status information of the product sample during the production process; Under the constraints of the directed acyclic graph, the production data of the product sample is subjected to structural learning through the directed acyclic graph to obtain the graph structure learning result of the directed acyclic graph. The directed acyclic graph includes the initial relationship between the production-related information and fault status information of the product sample. Obtain the user evaluation result of the graph structure learning result of the directed acyclic graph. If the user evaluation result of the graph structure learning result of the directed acyclic graph is "learning completed", optimize the edge weights of the graph structure learning result of the directed acyclic graph to obtain the causal relationship graph.

2. The method according to claim 1, characterized in that, The method further includes: If the user evaluation result of the graph structure learning result of the directed acyclic graph is relearning, a learning optimization strategy for the directed acyclic graph is determined based on the user evaluation result of the graph structure learning result of the directed acyclic graph. The learning optimization strategy based on the directed acyclic graph controls the learning process of the directed acyclic graph.

3. The method according to claim 2, characterized in that, The learning strategy based on the directed acyclic graph controls the learning process of the directed acyclic graph, including: If the learning strategy for the directed acyclic graph includes a data replacement instruction for the directed acyclic graph, then update the data to be learned in the directed acyclic graph. If the learning strategy for the directed acyclic graph includes constraint update information for the directed acyclic graph, the constraints of the directed acyclic graph are updated based on the constraint update information for the directed acyclic graph.

4. The method according to claim 2, characterized in that, The method further includes: Based on the data to be learned from the directed acyclic graph, determine the data description information of the data to be learned; A preset algorithm selection strategy is used to select the target learning algorithm for the directed acyclic graph that matches the data description information of the data to be learned from multiple candidate learning algorithms.

5. The method according to claim 4, characterized in that, The learning strategy based on the directed acyclic graph controls the learning process of the directed acyclic graph, including: If the optimization strategy for the directed acyclic graph includes adjustment information for the algorithm selection strategy, the preset algorithm selection strategy is updated based on the adjustment information for the algorithm selection strategy.

6. The method according to claim 4, characterized in that, The step of obtaining the target learning algorithm for the directed acyclic graph from multiple candidate learning algorithms based on the data description information of the data to be learned includes: The data description information of the data to be learned is matched with the algorithm description information of the multiple candidate learning algorithms to obtain the matching degree of the multiple candidate learning algorithms corresponding to the data to be learned; Based on the matching degree of multiple candidate learning algorithms corresponding to the data to be learned, the target learning algorithm is obtained from the multiple candidate learning algorithms, and the target learning algorithm includes at least one of the multiple candidate learning algorithms whose matching degree is greater than a preset matching degree.

7. A method for determining a fault solution, characterized in that, include: When a target fault is detected in the product under test, the root cause of the target fault is inferred based on the fault information and cause-effect diagram of the target fault. Based on the root cause of the target fault, a target solution for the target fault of the product under test is determined; wherein, The causal relationship diagram includes the relationship between production-related information and fault status information of the product sample, and the product sample and the product under test belong to the same product category.

8. The method according to claim 7, characterized in that, The step of determining the solution to the target fault of the product under test based on the root cause of the target fault includes: Based on the root cause of the target fault, query the suggested solutions for the target fault; Based on the root causes of the target fault, the causal relationship graph is intervened and reasoned to obtain a predictive solution for the target fault. In response to the selection instruction for the suggested solution and the predicted solution, a target solution for the target fault is determined.

9. A computer device, characterized in that, include: processor; as well as, Memory for stored programs; The program includes instructions that, when executed by a processor, cause the processor to perform the method according to any one of claims 1 to 8.

10. A computer storage medium, characterized in that, The computer storage medium stores computer instructions that, when executed on the processor, cause the processor to perform the method according to any one of claims 1 to 8.