Logical inference device, logical inference method, and program
The logical inference device and method automate bottleneck identification in logical inference processes, addressing the need for deep knowledge in building practical systems by reducing man-hours and improving efficiency.
Patent Information
- Application Number
- JP2024531857
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-07
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2042-07-07
AI Technical Summary
Building a practical application system based on a logical inference model requires deep knowledge of the logical inference engine, leading to increased man-hours due to the difficulty in identifying the cause of long inference times.
A logical inference device and method that includes an execution unit, monitoring unit, and estimation unit to automatically identify bottlenecks in the inference process, reducing the need for manual investigation and expertise.
Automatically estimates and presents bottlenecks in logical inference processing, improving efficiency and reducing the time and knowledge required to build a system based on logical inference models.
Smart Images

Figure 0007810262000001 
Figure 0007810262000002 
Figure 0007810262000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a logical inference device, a logical inference method, and a program. [Background technology]
[0002] Deductive reasoning is a method of taking a logical formula (premise) that represents input information and a logical formula (background knowledge) that represents inference rules. It outputs a logical formula (consequence) derived from the input information by the inference rules. It is an inference method. Abduction (Abductive reasoning) is a method of taking a logical formula (observation) that represents input information and background knowledge, and deriving a conclusion from the input information using inference rules. It is an inference method that outputs a logical formula (hypothesis) such that
[0003] Although deductive inference and abductive inference are theoretically different modes of logical inference, they are the same in that they receive input information and inference rules and output inference results, and can be interpreted as essentially the same when implemented on a computer. Therefore, models based on deductive inference or abductive inference are collectively called logical inference models, and software programs that implement computational processing based on logical inference models on a computer are called logical inference engines.
[0004] Non-Patent Document 1 discloses a method for implementing weighted abduction, which is one type of abduction, on a computer. Non-Patent Document 2 discloses a method for implementing Markov Logic Network, which is one type of deductive inference, on a computer.
[0005] The techniques disclosed in Non-Patent Document 1 and Non-Patent Document 2 employ a procedure in which candidates for inference results are generated from input information and inference rules, and the final solution is obtained by searching for the optimal solution from among the candidates. The computational efficiency at this time is highly dependent on the given input information and the logical expressions used in the inference rules, so even for similar inferences in the same domain, the computational efficiency for inference can vary significantly depending on the logical expressions used to describe the input information and inference rules.
[0006] For example, when writing down the relationship "if person x kills person y, person x will be arrested by police z" as an inference rule, in the technology of Non-Patent Document 2, one inference rule is kill(x,y)^isPolice(z)⇒arrest(z,x) Rather than writing kill(x,y) ⇒ isCriminal(x) isCriminal(x)^isPolice(z)⇒arrest(z,x) The computational efficiency of this knowledge-based inference is improved by writing it as follows. This is because the technology disclosed in Non-Patent Document 2 has the characteristic that the computational load increases nonlinearly with the number of types of variables included in each inference rule. Therefore, in this case, reducing the number of types of variables included in each inference rule even if it means increasing the number of inference rules improves the overall computational efficiency. [Prior art documents] [Non-patent literature]
[0007] [Non-Patent Document 1] Naoya Inoue and Kentaro Inui. ILP-based Reasoning for Weighted Abduction. In Proceedings of AAAI Workshop on Plan, Activity and Intent Recognition, pp. 25-32, August 2011. [Non-patent document 2] Richardson, Matt and Domingos, Pedro (2006). Markov Logic Networks. Machine Learning, 62, 107-136, 2006. Summary of the Invention [Problem to be solved by the invention]
[0008] However, the appropriate logical expression varies depending on factors such as the logical inference model and logical inference engine used, and the intended final behavior of inference. Therefore, building a practical application system based on a logical inference model requires adjustments by personnel with deep knowledge of the logical inference engine, which poses a major problem in practical applications. In other words, when building an application system based on a logical inference model, it takes time to identify the cause of the long inference time (bottleneck), which increases the man-hours required to build the system.
[0009] Therefore, an object of the present disclosure is to reduce the man-hours required to build a system based on a logical inference model, which is the problem described above. [Means for solving the problem]
[0010] A logical inference device according to one embodiment of the present disclosure includes: an execution means for executing an inference process on input information according to the inference rules, using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions; a monitoring means for monitoring an execution status of the inference process and acquiring profile information representing the execution status; an estimation means for estimating, based on the profile information, a bottleneck that represents a problem in the execution of the predetermined inference process as a candidate; Equipped with The structure is as follows.
[0011] Furthermore, a logical inference method according to an embodiment of the present disclosure includes: using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; The structure is as follows.
[0012] Furthermore, a program according to an embodiment of the present disclosure includes: using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; Have the computer perform the process, The structure is as follows. [Effects of the Invention]
[0013] By being configured as described above, the present disclosure can reduce the number of steps required to build a system based on a logical inference model. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a block diagram showing a configuration of a logical inference device according to a first embodiment of the present disclosure. [Figure 2] 2 is a flowchart showing the operation of the logical inference device disclosed in FIG. [Figure 3] FIG. 10 is a block diagram showing the configuration of a logical inference device according to a second embodiment of the present disclosure. [Figure 4]4 is a flowchart showing the operation of the logical inference device disclosed in FIG. 3. [Figure 5] FIG. 11 is a block diagram showing a hardware configuration of a logical inference device according to a third embodiment of the present disclosure. [Figure 6] FIG. 10 is a block diagram showing the configuration of a logical inference device according to a third embodiment of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0015] <Embodiment 1> A first embodiment of the present disclosure will be described with reference to Figures 1 and 2. Figure 1 is a diagram for explaining the configuration of a logical inference device, and Figure 2 is a diagram for explaining the processing operation of the logical inference device.
[0016] The logical inference device 10 of this embodiment is a device that estimates and presents the cause of an increase in calculation time for a specific input in some logical inference engine. The configuration and operation of the logical inference device will be described below.
[0017] The logical inference device 10 is composed of one or more information processing devices each including a calculation device and a storage device. As shown in FIG. 1, the logical inference device 10 includes an acquisition unit 11, an execution unit 12, a monitoring unit 13, an estimation unit 14, and an output unit 15. The functions of the acquisition unit 11, the execution unit 12, the monitoring unit 13, the estimation unit 14, and the output unit 15 can be realized by the calculation device executing a program for realizing each function stored in the storage device. The logical inference device 10 also includes a background knowledge information storage unit 16, a query information storage unit 17, and a bottleneck knowledge information storage unit 18. The background knowledge information storage unit 16, the query information storage unit 17, and the bottleneck knowledge information storage unit 18 are each composed of a storage device.
[0018] The acquiring unit 11 acquires background knowledge information in which background knowledge is expressed by one or more logical formulas (step S1). The background knowledge information is, for example, pre-stored in the background knowledge information storage unit 16, and the acquiring unit 11 reads and acquires the background knowledge information from the background knowledge information storage unit 16. The background knowledge information is information in which a set of inference rules (background knowledge) that states that if the antecedent is true, the consequent is true is expressed by one or more logical formulas.
[0019] Furthermore, the acquiring unit 11 acquires query information, which is predetermined input information (step S2). The query information is, for example, stored in advance in the query information storage unit 17, and the acquiring unit 11 reads and acquires the query information from the query information storage unit 17. Note that the query information is information that expresses an observed fact using one or more logical expressions.
[0020] The acquiring unit 11 also acquires bottleneck knowledge information that expresses in some format the relationship between profile information (described later) and bottleneck candidates (step S1). The bottleneck knowledge information is, for example, pre-stored in the bottleneck knowledge information storage unit 18, and the acquiring unit 11 reads and acquires the bottleneck knowledge information from the bottleneck knowledge information storage unit 18. Specifically, the bottleneck knowledge information is information that expresses in an arbitrary format the relationship that a specific bottleneck is considered to be a candidate when a preset condition is met for profile information that represents the execution status of the inference process (described later). A specific format, for example, may be a software program that receives data representing the profile information as input and determines whether the condition is met, and that is stored for each bottleneck candidate. In this case, the bottleneck is, for example, information that expresses the content of a preset problem in the execution of the inference process in the form of a character string. For example, it may express the content of factors that decrease the calculation efficiency of the inference process or factors that increase the calculation time.
[0021] The acquiring unit 11 may acquire any or all of the background knowledge information, query information, and bottleneck knowledge information by reading them from a storage device built into the logical inference device 10 or from an external storage device. The acquiring unit 11 may also acquire any or all of the background knowledge information, query information, and bottleneck knowledge information by receiving them from another device via a communication unit. The acquiring unit 11 may also generate any or all of the background knowledge information, query information, and bottleneck knowledge information in response to a user's input operation performed via an arbitrary input device such as a mouse or a touch panel, and acquire the generated information.
[0022] The execution unit 12 (execution means) executes logical inference using the background knowledge information and the query information (step S2). That is, the execution unit 12 executes inference processing according to the logical rules of the background knowledge information for the observed facts (input information) that are the query information. Note that the content of the inference processing differs depending on the target logical inference model and the logical inference engine used, but various specific methods can be applied, for example, a hypothetical inference method as described in Non-Patent Document 1.
[0023] The monitoring unit 13 (monitoring means) monitors the execution status of the inference process executed by the execution unit 12 and acquires profile information representing the execution status (step S2). Specifically, the monitoring unit 13 acquires profile information of the calculation process executed by the execution unit 12 by monitoring the processing state inside the logical inference engine executed based on the logical rules in the execution unit 12. The profile information is, for example, statistical information regarding the call status of functions inside the logical inference engine, and in particular, for functions that take logical expressions or inference rules as arguments, the data format is such that statistical information for each logical predicate or inference rule corresponding to the argument can be acquired. Note that the means by which the profile information is acquired is arbitrary, and an existing profiling tool, typified by GNU Profiler, may be used as long as it is possible to implement it in a way that satisfies the above conditions.
[0024] The estimation unit 14 (estimation means) estimates and lists candidate bottlenecks from the profile information and bottleneck knowledge information (step S3). How to list the candidate bottlenecks is arbitrary. For example, it may be determined whether the profile information currently being targeted satisfies a condition set corresponding to each bottleneck included in the bottleneck knowledge information, and bottlenecks that return true may be listed as candidates. Also, for example, if the bottlenecks are expressed as weight parameters of some statistical analyzer, the candidate bottlenecks may be determined based on the results of mapping the profile information into a vector space by any means and using the resulting information as input for statistical analysis.
[0025] Here, an example of bottleneck estimation by the estimation unit 14 will be given. For example, in a hypothetical inference engine based on the method shown in Non-Patent Document 1, if an inference process using a certain inference rule is executed with an abnormal frequency, that is, if the profile information indicates that the execution frequency of the inference process of a certain inference rule is equal to or greater than a threshold, then possible bottlenecks that can be suspected from this include, for example, "the number of inference rules having in their antecedents the same predicate as the consequent of that inference rule is a problem" or "the argument of the consequent of that inference rule is excessively abstract, resulting in an abnormally large number of combinations of logical expressions to which the inference rule can be applied," and such bottlenecks are estimated as candidates.
[0026] Here is another example of bottleneck estimation. For example, if the profile information shows that most of the calculation time is spent on unification processing for a certain predicate p, the direct cause will be that a large number of logical formulas with predicate p occur among the candidate hypotheses, and therefore the bottleneck can be identified by searching for "the cause of the large number of logical formulas with predicate p that can be unified with each other." The following are examples of bottleneck candidates based on such profile information: · Because there are many combinations of logical expressions among the candidate hypotheses to which an inference rule that derives a logical expression with predicate p can be applied, a large number of predicates p are generated from them. - Because there are many inference rules in the background knowledge that lead to logical formulas with predicate p, these are used in hypothesis candidates, resulting in the generation of a large number of logical formulas with predicate p. The problem is not the number of logical formulas with predicate p, but whether they can be unified, and it is necessary to impose an exclusivity relationship between the inference rules that derive predicate p (one rule cannot be used in a hypothesis in which the other rule is used).
[0027] Also, for example, if the profile information shows that most of the calculation time is being spent on inference using a certain inference rule A(x) → B(x)^C(y), the direct cause can be determined to be that "the hypotheses contain a large number of combinations of logical expressions that satisfy B(x)^C(y)," and therefore the following are possible bottlenecks: There is a possibility that a large number of logical expressions with predicate B are being generated. By digging deeper into the "cause of the large number of logical expressions with predicate B being generated," we can find more fundamental bottleneck candidates. Specific candidates are similar to those given in the unification example above. There is a possibility that a large number of logical formulas with predicate C are generated. The same argument as for predicate B applies here.
[0028] The output unit 15 outputs the bottlenecks estimated as candidates as described above as candidates for bottlenecks to be corrected in the query information and background knowledge information (step S4). For example, the output unit 16 may display the bottleneck candidates on a display panel, or may store the bottleneck candidates in a recording medium (not shown). For example, the output unit 15 may output the bottleneck candidates to another device via an input / output interface or a communication interface.
[0029] According to the above configuration, the logical inference device automatically estimates and presents bottlenecks in calculation time in logical inference processing that is performed using query information and background knowledge information as inputs. This improves the efficiency of human time spent examining logical expressions compared to manual bottleneck investigation, and also reduces the knowledge and skills required for the work.
[0030] <Embodiment 2> A second embodiment of the present disclosure will be described with reference to Figures 3 and 4. Figure 3 is a diagram for explaining the configuration of a logical inference device, and Figure 4 is a diagram for explaining the processing operation of the logical inference device. Note that, here, components having the same functions as those described in the first embodiment are given the same reference numerals, and their description will be omitted as appropriate.
[0031] 3, the logical inference device 10 of this embodiment includes a verification unit 19 in addition to the configuration of the first embodiment. Each function of the verification unit 19 can be realized by the arithmetic device executing a program for realizing each function stored in the storage device.
[0032] The verification unit 19 (verification means) determines the consistency between the query information and background knowledge information for the bottleneck candidates estimated and listed by the estimation unit 14 as described above (step S3), and eliminates inappropriate candidates from the bottleneck candidate list (step S3'). Any means can be used to determine the consistency. For example, for each bottleneck, conditions that the query information and background knowledge information must satisfy in order for that bottleneck to be adopted as a candidate may be set in advance, and consistency may be determined based on whether the conditions are satisfied. In other words, if the query information and background knowledge information do not satisfy the conditions set for each bottleneck, the verification unit 19 eliminates that bottleneck from the candidate list. Alternatively, for example, the bottleneck knowledge, query information, and background knowledge information may each be mapped to a vector space by any means, and consistency may be determined based on the results of statistical analysis using these vectors as input. The output unit 15 then outputs the remaining bottleneck candidates after excluding inappropriate bottlenecks (step S4).
[0033] An example of exclusion from bottleneck candidates by the verification unit 19 is shown below. The bottleneck candidates listed here are the examples given above. For bottleneck candidates that are caused by the existence of a large number of inference rules in the background knowledge information that lead to logical formulas with predicate p, the validity of the bottleneck can be evaluated by directly checking the content of the background knowledge information. In other words, if there are only a few inference rules in the background knowledge information that lead to logical formulas with predicate p, for example, if the number is below a threshold, this bottleneck candidate can be rejected. For bottleneck candidates that are caused by the generation of a large number of logical expressions containing predicate B, the validity of the bottleneck can be evaluated by directly checking the contents of the generated candidate hypotheses. For example, if the number of logical expressions containing predicate B included in the candidate hypotheses is not that large, for example, if the number is below a threshold, then this bottleneck candidate can be rejected.
[0034] <Embodiment 3> Next, a third embodiment of the present disclosure will be described with reference to Fig. 5 to Fig. 6. Fig. 5 to Fig. 6 are block diagrams showing the configuration of a logical inference device according to the third embodiment. Note that this embodiment shows an outline of the configuration of the logical inference device described in the above-mentioned embodiments.
[0035] First, the hardware configuration of the logical inference device 100 in this embodiment will be described with reference to Fig. 5. The logical inference device 100 is configured as a general information processing device, and is equipped with the following hardware configuration, as an example. ·CPU(Central Processing Unit)101(Arithmetic unit) ROM (Read Only Memory) 102 (storage device) RAM (Random Access Memory) 103 (storage device) ·Programs 104 loaded into RAM 103 A storage device 105 for storing a group of programs 104 A drive device 106 that reads and writes from a storage medium 110 external to the information processing device A communication interface 107 that connects to a communication network 111 outside the information processing device Input / output interface 108 for inputting and outputting data Bus 109 connecting each component
[0036] The logical inference device 100 can be equipped with the execution means 121, monitoring means 122, and estimation means 123 shown in Fig. 6 by having the CPU 101 acquire and execute the group of programs 104. The group of programs 104 is stored in advance in the storage device 105 or the ROM 102, for example, and is loaded into the RAM 103 and executed by the CPU 101 as needed. The group of programs 104 may be supplied to the CPU 101 via the communication network 111, or may be stored in advance in the storage medium 110, and the drive device 106 may read out the programs and supply them to the CPU 101. However, the execution means 121, monitoring means 122, and estimation means 123 described above may be constructed using dedicated electronic circuits for realizing such means.
[0037] 5 shows an example of the hardware configuration of an information processing device that is the logical inference device 100, and the hardware configuration of the information processing device is not limited to the above-described case. For example, the information processing device may be configured with a part of the above-described configuration, such as excluding the drive device 106. Furthermore, the information processing device may use a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an MPU (Micro Processing Unit), an FPU (Floating Point Number Processing Unit), a PPU (Physics Processing Unit), a TPU (Tensor Processing Unit), a quantum processor, a microcontroller, or a combination thereof, instead of the above-described CPU.
[0038] The execution means 121 executes inference processing based on the inference rules for the input information, using background knowledge information in which the inference rules are expressed by one or more logical expressions and query information in which the input information is expressed by one or more logical expressions. The inference processing based on the logical rules is executed based on a logical inference model or a logical inference engine corresponding to the logical rules.
[0039] The monitoring means 122 monitors the execution status of the inference process and acquires profile information representing the execution status. The profile information is, for example, statistical information regarding the call status of functions within the logical inference engine, but may be any information representing the execution status of the inference process.
[0040] The estimation means 123 estimates, as candidates, bottlenecks that represent problems in the execution of a preset inference process, based on the profile information. For example, the estimation means 123 checks whether the profile information satisfies conditions set corresponding to each bottleneck, and estimates bottlenecks that satisfy the conditions as candidates.
[0041] By configuring the present disclosure as described above, it is possible to automatically estimate bottlenecks that cause long inference times, thereby reducing the amount of work required to build a system.
[0042] The above-mentioned program can be stored in various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media, media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (Random Access Memory)). The program may also be provided to the computer by various types of transitory computer readable media. Examples of the computer-readable medium include an electric signal, an optical signal, and an electromagnetic wave. The temporary computer-readable medium can provide the program to the computer via a wired communication path such as an electric wire or an optical fiber, or via a wireless communication path.
[0043] Although the present disclosure has been described above with reference to the above-described embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, at least one or more of the functions of the execution means 121, the monitoring means 122, and the estimation means 123 described above may be executed by an information processing device installed and connected anywhere on a network, i.e., may be executed by so-called cloud computing.
[0044] <Additional Notes> A part or all of the above-described embodiments can be described as follows: The following provides an overview of the configurations of the logical inference device, logical inference method, and program according to the present invention. However, the present invention is not limited to the following configurations. (Appendix 1) an execution means for executing an inference process on input information according to the inference rules, using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions; a monitoring means for monitoring an execution status of the inference process and acquiring profile information representing the execution status; an estimation means for estimating, based on the profile information, a bottleneck that represents a problem in the execution of the predetermined inference process as a candidate; Equipped with Logical reasoning device. (Appendix 2) 10. The logical inference device according to claim 1, When the profile information satisfies a predetermined condition, the estimation means estimates the bottleneck set in accordance with the condition as a candidate. Logical reasoning device. (Appendix 3) 10. The logical inference device according to claim 2, the estimation means estimates the candidate bottleneck from the profile information based on bottleneck knowledge information that indicates a relationship between a preset execution status of the inference process and the bottleneck; Logical reasoning device. (Appendix 4) 10. The logical inference device according to claim 2, the estimation means estimates the candidate bottleneck based on an execution frequency of the inference process according to the specific inference rule; Logical reasoning device. (Appendix 5) 10. The logical inference device according to claim 1, the monitoring means acquires, as the profile information, a call status of a function set in accordance with the logical rule resulting from execution of the inference process; Logical reasoning device. (Appendix 6) 10. The logical inference device according to claim 1, a verification means for excluding a bottleneck estimated as a candidate from the candidates when the background knowledge information and the query information do not satisfy a predetermined condition for the bottleneck estimated as a candidate; Logical reasoning device. (Appendix 7) using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; Logical reasoning methods. (Appendix 8) 8. The logical inference method according to claim 7, further comprising: If the profile information satisfies a predetermined condition, the bottleneck set in accordance with the condition is estimated as a candidate bottleneck. Logical reasoning methods. (Appendix 9) 9. A logical inference method according to claim 8, comprising: inferring the candidate bottleneck from the profile information based on bottleneck knowledge information that indicates a relationship between a preset execution status of the inference process and the bottleneck; Logical reasoning methods. (Appendix 10) 9. A logical inference method according to claim 8, comprising: predicting the bottleneck as a candidate based on the frequency of execution of the inference process according to the specific inference rule; Logical reasoning methods. (Appendix 11) 8. The logical inference method according to claim 7, further comprising: acquiring, as the profile information, a call status of a function set in accordance with the logical rule resulting from the execution of the inference process; Logical reasoning methods. (Appendix 12) 8. The logical inference method according to claim 7, further comprising: If the background knowledge information and the query information do not satisfy a predetermined condition for the bottleneck estimated as a candidate, the bottleneck is excluded from the candidates. Logical reasoning methods. (Appendix 13) using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; A computer-readable storage medium that stores a program for causing a computer to execute a process. [Explanation of symbols]
[0045] 10 Logical Reasoning Device 11 Acquisition Department 12 Executive Department 13 Monitoring Department 14 Estimation part 15 Output section 16 Background knowledge information storage unit 17 Query information storage unit 18 Bottleneck knowledge information storage unit 19 Verification Department 100 Logical Reasoning Device 101 CPU 102 ROM 103 RAM 104 Programs 105 Storage device 106 Drive device 107 Communication Interface 108 Input / Output Interface 109 Bus 110 Storage medium 111 Communication Network 121 Means of Implementation 122 Monitoring means 123 Estimation means
Claims
1. an execution means for executing an inference process on input information according to the inference rules, using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions; a monitoring means for monitoring an execution status of the inference process and acquiring profile information representing the execution status; an estimation means for estimating, based on the profile information, a bottleneck that represents a problem in the execution of the predetermined inference process as a candidate; Equipped with Logical reasoning device.
2. 2. The logical inference device according to claim 1, When the profile information satisfies a predetermined condition, the estimation means estimates the bottleneck set in accordance with the condition as a candidate. Logical reasoning device.
3. 3. The logical inference device according to claim 2, the estimation means estimates the candidate bottleneck from the profile information based on bottleneck knowledge information that indicates a relationship between a preset execution status of the inference process and the bottleneck; Logical reasoning device.
4. 3. The logical inference device according to claim 2, the estimation means estimates the candidate bottleneck based on the frequency of execution of the inference process according to the specific inference rule; Logical reasoning device.
5. 2. The logical inference device according to claim 1, the monitoring means acquires, as the profile information, a call status of a function set in accordance with the inference rule due to execution of the inference process; Logical reasoning device.
6. 2. The logical inference device according to claim 1, a verification means for excluding a bottleneck estimated as a candidate from the candidates when the background knowledge information and the query information do not satisfy a predetermined condition for the bottleneck estimated as a candidate; Logical reasoning device.
7. using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; Logical reasoning methods.
8. 8. A logical inference method according to claim 7, If the profile information satisfies a predetermined condition, the bottleneck set in accordance with the condition is estimated as a candidate. Logical reasoning methods.
9. 8. A logical inference method according to claim 7, acquiring, as the profile information, a call status of a function set in accordance with the inference rule resulting from execution of the inference process; Logical reasoning methods.
10. using background knowledge information in which inference rules are expressed by one or more logical expressions and query information in which input information is expressed by one or more logical expressions, to execute inference processing on the input information according to the inference rules; monitoring an execution status of the inference process and acquiring profile information representing the execution status; estimating, as a candidate, a bottleneck that represents a problem in executing the predetermined inference process based on the profile information; A program that causes a computer to execute a process.
Citation Information
Patent Citations
Performance analysis expert system
JP1988041954A
Regular base system managing apparatus and method
JP1991081828A
Hypothesis inference device, hypothesis inference method, and computer-readable recording medium
WO2018229877A1