The present invention relates to an observed event determination apparatus and an observed event determination method for determining the necessity of an observed event to be used in inference, and further relates to a computer readable recording medium that includes a program for realizing the same recorded thereon.
Heretofore, attempts have been made to execute inference by computer (see Patent Documents 1 to 4). If the inference is performed by a computer, it is possible to infer various situations based on information obtained from facts. Therefore, the inference by the computer is useful for the foregoing situations such as store roll-out plans, criminal investigations, evacuations at the time of disasters, environmental management, and the like, and it is expected to improve the accuracy of simulations by using the inference.
Also, in the abductive inference, as an example of the inference, a valid hypothesis is derived from knowledge (rules) and observed events (obtained facts). For example, it is assumed that “AB (if A holds true, then B holds true)” is present as the knowledge, and “B holds true” is acquired as an observed event. In this case, “A holds true” is obtained as a hypothesis by the inference. Note that, in the following, the abductive inference may also be called “backward inference”. Also, the process of searching A from B is referred to as “tracing back the inference”.
Patent Document 1: Japanese Patent Laid-Open Publication No. H09-213081
Patent Document 2: Japanese Patent Laid-Open Publication No. H10-333911
Patent Document 3: Japanese Patent Laid-Open Publication No. 2000-242499
Patent Document 4: Japanese Translation of PCT Application No. 2015-502617
Incidentally, normally, the knowledge is set manually in the inference, but the observed events are acquired in a large amount from logs at the time of system operation or the like. Therefore, there is a problem in that, in known systems that perform inference, the processing time needed to perform the inference largely increases due to the accumulation of the observed events.
On the other hand, all of the acquired observed events are not necessarily needed in the inference, and unnecessary observed events are present in the acquired observed events. Therefore, if the unnecessary observed events can be specified from the acquired observed events, the foregoing problem can be considered to be solved. However, the known systems that perform inference do not include such a function, and it is difficult to solve the foregoing problem.
An example object of the invention is to solve the foregoing problem and provide an observed event determination apparatus, an observed event determination method, and a computer readable recording medium that enable observed event data that is not needed in inference to be specified.
To achieve the above-stated example object, an observed event determination apparatus according to an example aspect of the invention includes:
a data receiving unit configured to receive observed event data indicating an observed event; and
a data determining unit configured to determine whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
Also, to achieve the above-stated example object, an observed event determination method according to an example aspect of the invention includes:
(a) a step of receiving observed event data indicating an observed event; and
(b) a step of determining whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
Furthermore, to achieve the above-stated example object, a computer-readable recording medium according to an example aspect of the invention is a computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause the computer to carry out:
(a) a step of receiving observed event data indicating an observed event; and
(b) a step of determining whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
As described above, according to the invention, observed event data that is not needed in inference can be specified.
Hereinafter, an observed event determination apparatus, an observed event determination method, and a computer readable recording medium according to the present example embodiment of the invention will be described with reference to
[Configuration of the Invention]
First, the configuration of the observed event determination apparatus according to the present example embodiment of the invention will be described.
The observed event determination apparatus 10 according to the present example embodiment shown in
The data receiving unit 11 receives observed event data indicating an observed event. The observed event data includes an observation such as “isFile(Data)”, for example. The observation is a conjunction of first-ordered literals. The data determining unit 12 determines whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
As described above, in the present example embodiment, it is appropriately determined whether or not the received observed event data is needed, and the observed event data that is not needed in the inference is specified. According to the present example embodiment, the increase in time needed for deriving a hypothesis due to accumulation of the observed event data in a large amount can be suppressed.
Next, the function of the observed event determination apparatus 10 according to the present example embodiment will be described using
In the present example embodiment, the data determining unit 12, first, executes an analysis on the received observed event data based on knowledge data. Also, the data determining unit 12, if it is determined that the received observed event data can be derived from the analysis result and other pieces of observed event data, determines that the received observed event data is not needed.
Specifically, it is assumed that observed event data “isFile(Data)” has been observed as an observation P, and pieces of observed event data “isText(Data)”, “!isZip(Data)”, and “!isPacket(Data)” are observed as an observation O′, as shown in
In this case, the data determining unit 12 acquires “isText(Data)”, “!isZip(Data)”, and “!isPacket(Data)” as the analysis result of the observation P, for example. Also, in the example in
Moreover, the extension function of the data determining unit 12 will be described using
In the example in
Next, the data determining unit 12 determines that the received observed event data is not needed on a condition that, with respect to the obtained inference result, when the inference is traced back from the received observed event data, any of the other pieces of observed event data are necessarily reached.
Specifically, in the example in
Incidentally, in the example in
In contrast, in the example in
Also,
In other words, in the example in
Specifically, it is assumed that “M(x)” has been observed as an observation M, as shown in
Under this condition, consider a situation in which “A(x)”, “B(x)”, and “C(x)” have been observed as an observation O′, and on the other hand, “D(x)” and “E(x)” have not been observed. Here, if an event N(y) expected to be observed has not been observed, or N(y) cannot be acquired as the hypothesis by backward inference from the observations M and O′ based on the knowledge data, the data determining unit 12 determines that the observation M is not needed.
Here, the extension function shown in
(group 1)
In the aforementioned example, if A(x), B(x), and C(x) are observed, and N(y) and L(y) are not observed or not obtained as a hypothesis, the data determining unit 12 determines that M(x) is not needed (can be deleted) based on the analysis (backward inference) using the knowledge data of the group 1.
Also, in the aforementioned example, if A(x), B(x), C(x), D(x), and E(x) are observed, and L(y) is not observed or not obtained as a hypothesis, the data determining unit 12 determines that M(x) is not needed (can be deleted) based on the analysis (backward inference) using the knowledge data of the groups 1 and 2.
Moreover, in the aforementioned example, if A(x), B(x), C(x), F(x), and G(x) are observed, and N(y) is not observed or not obtained as a hypothesis, the data determining unit 12 determines that M(x) is not needed (can be deleted) based on the analysis (backward inference) using the knowledge data of the groups 1 and 3.
Also, as shown in the following, it is assumed that each knowledge data includes M(x){circumflex over ( )}K(z) in the consequent. In this case, if M(x) and K(z) have been observed, it may be obvious that the data determining unit 12 can execute determination similarly to the example described above. That is, “M(x)” in the example described above need only be replaced by “M(x){circumflex over ( )}K(z)”.
(group 1)
Also, as shown in the following, it is assumed that knowledge data is present in which a plurality of literals are present in the antecedent. In this case, the data determining unit 12 determines that the literal in the consequent is not needed (can be deleted) on the condition that all of the literals in the antecedent have been observed.
[Apparatus Operations]
Next, the operations of the observed event determination apparatus 10 according to the present example embodiment of the invention will be described using
As shown in
Next, the data determining unit 12 performs analysis (backward inference) by applying knowledge data to each observed event data received in step A1, and generates hypothesis candidates based on the analysis (step A2).
Next, the data determining unit 12 selects one of the pieces of observed event data (observations) as a determination target (step A3).
Next, the data determining unit 12 selects one of the logical formulas that form conjunction with the observation that is the determination target selected in step A3 (step A4).
Next, if the observation selected in step A4 has been observed, or can be generated as a hypothesis candidate by backward inference from another observation, the data determining unit 12 extracts this observation as a related logical formula of the determination target selected in step A3 (step A5).
Next, the data determining unit 12 determines whether or not the processing in step A5 has been ended with respect to all of the logical formulas that form conjunction with the observation that is the determination target selected in step A3 (step A6).
If, as a result of the determination in step A6, the processing in step A5 has not been ended with respect to all of the logical formulas that form conjunction with the observation that is the determination target selected in step A3, the data determining unit 12 again executes processing in step A4.
On the other hand, if as a result of the determination in step A6, the processing in step A5 has been ended with respect to all of the logical formulas that form conjunction with the observation that is the determination target selected in step A3, the data determining unit 12 executes processing in step A7.
In step A7, the data determining unit 12 traces back the inference from the observation that is the determination target selected in step A3 and from the conjunction between this and the related logical formula.
Also, the data determining unit 12 determines, based on the result in step A7, whether or not, when the inference is traced back from the observation that is the determination target selected in step A3 and the conjunction between this and the related logical formula, a hypothesis candidate that matches any of the pieces of observed event data (observations) received in step A1 is necessarily reached (step A8).
As a result of the determination in step A8, if a hypothesis candidate that matches any of the pieces of observed event data (observations) received in step A1 is not reached, the data determining unit 12 executes the processing in step A10.
On the other hand, as a result of the determination in step A8, if a hypothesis candidate that matches any of the pieces of observed event data (observations) received in step A1 is reached, the data determining unit 12 deletes the observation that is the determination target selected in step A3 (step A9). Thereafter, the data determining unit 12 executes the processing in step A10.
In step A10, the data determining unit 12 determines whether or not a piece of observed event data that has not been selected as the determination target is present. As a result of the determination in step A10, if a piece of observed event data that has not been selected as the determination target is present, the data determining unit 12 again executes the processing in step A3.
On the other hand, As a result of the determination in step A10, if a piece of observed event data that has not been selected as the determination target is not present, the data determining unit 12 ends the processing.
Next, a specific example will be described using
First, it is assumed that “A(x)⇒M(x)”, “B(x)⇒M(x)”, “C(x)⇒M(x)”, “D(x)⇒M(x){circumflex over ( )}N(y)”, “E(x)⇒M(x){circumflex over ( )}N(y)”, “F(x)⇒M(x){circumflex over ( )}L(y)”, “G(x)⇒M(x){circumflex over ( )}L(y)”, “H(x)⇒M(x){circumflex over ( )}R(y)”, “N(y)⇒Q(y)”, “R(y)⇒U(y)”, “S(x)⇒C(x)”, and “T(x)⇒C(x)” are the knowledge data, as shown in
(Step A1)
As shown in
(Step A2)
Next, the data determining unit 12 performs the backward inference by applying the knowledge data to each piece of observed event data, and with this, generates hypothesis candidates. The generation result of hypothesis candidates is as shown by the directed graph in
(Steps A3 and A4)
Next, the data determining unit 12 selects M(x) as the observed event data. In
(Step A5)
For example, it is assumed that L(y) has been selected, in step A4, as the logical formula that forms a conjunction with M(x). Because L(z) is present in the observed event data, the data determining unit 12 extracts L(y) as a related logical formula.
Also, it is assumed that N(y) has been selected as the logical formula that forms a conjunction with M(x). Although N(y) is not present in the observed event data, “N(y)⇒Q(y)” is present in the knowledge data and Q(y) is present in the observed event data, and therefore N(y) can be generated as a hypothesis candidate. Therefore, the data determining unit 12 extracts N(y) as a related logical formula.
Moreover, it is assumed that R(y) has been selected as the logical formula that forms a conjunction with M(x). R(y) is not present in the observed event data, and furthermore, although “R(y)⇒U(y)” is present in the knowledge data, U(y) is not present in the observed event data, and therefore R(y) cannot be generated as the hypothesis candidate. Therefore, the data determining unit 12 does not extract R(y) as the related logical formula.
(Steps A7 and A8)
The data determining unit 12 traces back the inference from M(x), from M(x){circumflex over ( )}L(z), and from M(x){circumflex over ( )}N(y), and determines whether or not a hypothesis candidate that matches any of the pieces of observed event data (observation) is reached.
Specifically, a hypothesis candidate A(X) that is present at a node that can be reached from M(X) matches the observation A(X), and similarly, a hypothesis candidate B(X) matches the observation !B(X). Also, C(X) that is present at a node that can be reached from M(X) does not match any of the observations, but S(X) and !T(X) that are present at nodes that can be reached by further tracing back match the observation. Moreover, F(X) and !G(X) that are present at nodes that can be reached from M(x){circumflex over ( )}L(z) also match the observation. Also, D(X) and ! E(X) that are present at nodes that can be reached from M(X){circumflex over ( )}N(Y) also match the observation.
(Step A9)
As a result of the determination in step A8, it is determined that, as a result of tracing back the inference from the observation that is the determination target, and from the conjunction between the observation and a related logical formula, a hypothesis candidate that matches any of the observations is necessarily reached. Therefore, the data determining unit 12 deletes M(X). Note that, if it is assumed that “!T(X)” has not been observed, in this case, as a result of tracing back the inference from the observation that is the determination target and the conjunction between the observation and a related logical formula, a hypothesis candidate that matches any of the observations is not necessarily reached, and therefore M(X) will not be deleted.
[Effects of Present Example Embodiment]
As described above, according to the present example embodiment, whether or not observed event data is needed is appropriately determined, and observed event data that is not needed in inference is specified and deleted. As a result, the increase in time needed to derive a hypothesis due to accumulation of observed event data in a large amount can be suppressed.
[Program]
A program according to the present example embodiment need only be a program for causing a computer to perform steps A1 to A10 shown in
Also, the program according to the present example embodiment may also be executed by a computer system that includes a plurality of computers. In this case, for example, each of the computers may function as any of the data receiving unit 11 and the data determining unit 12.
[Physical configuration]
A description will now be given, with reference to
As shown in
The CPU 111 loads the program (codes) according to the present example embodiment that is stored in the storage device 113 to the main memory 112 and executes the codes in a predetermined order, thereby performing various kinds of computation. The main memory 112 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory). The program according to the present example embodiment is provided in a state of being stored in a computer-readable recording medium 120. Note that the program according to the present example embodiment may also be distributed on the Internet to which the computer is connected via the communication interface 117.
Specific examples of the storage device 113 may include a hard disk drive, a semiconductor storage device such as a flash memory, and the like. The input interface 114 mediates data transmission between the CPU 111 and input devices 118 such as a keyboard and a mouse. The display controller 115 is connected to a display device 119 and controls a display in the display device 119.
The data reader/writer 116 mediates data transmission between the CPU 111 and the recording medium 120, reads out the program from the recording medium 120, and writes, in the recording medium 120, the results of processing performed by the computer 110. The communication interface 117 mediates data transmission between the CPU 111 and other computers.
Specific examples of the recording medium 120 may include a general-purpose semiconductor storage device such as a CF (Compact Flash (registered trademark)) or an SD (Secure Digital), a magnetic recording medium such as a Flexible Disk, and an optical recording medium such as a CD-ROM (Compact Disk Read Only Memory).
Note that, the observed event determination apparatus 10 according to the present example embodiment may also be realized using hardware that corresponds to each of the units, rather than a computer in which the program is installed. Furthermore, the observed event determination apparatus 10 may be partially realized by a program, and the remainder may be realized by hardware.
Part of, or the entire present example embodiment described above can be expressed by the following (Supplementary note 1) to (Supplementary note 12), but is not limited thereto.
(Supplementary Note 1)
An observed event determination apparatus, including:
a data receiving unit configured to receive observed event data indicating an observed event; and
a data determining unit configured to determine whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
(Supplementary Note 2)
The observed event determination apparatus according to supplementary note 1,
wherein the data determining unit performs an analysis on the received observed event data based on the knowledge data, and determines that the received observed event data is not needed if it is determined that the received observed event data can be derived from the analysis result and the other pieces of observed event data.
(Supplementary Note 3)
The observed event determination apparatus according to supplementary note 1 or 2,
wherein the data determining unit performs backward inference on the received observed event data, and determines that the received observed event data is not needed on a condition that, with respect to the obtained inference result, when the inference is traced back from the received observed event data, any of the other pieces of observed event data are necessarily reached.
(Supplementary Note 4)
The observed event determination apparatus according to any of supplementary notes 1 to 3,
wherein the data determining unit determines, on a condition that the received observed event data and an event expected to be observed hold true at the same time, that the received observed event data is not needed if the event expected to be observed has not been observed, or if the event expected to be observed cannot be derived by backward inference from another observation based on the knowledge data.
(Supplementary Note 5)
An observed event determination method, including:
(a) a step of receiving observed event data indicating an observed event; and
(b) a step of determining whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
(Supplementary Note 6)
The observed event determination method according to supplementary note 5,
wherein, in the (b) step, an analysis is performed on the received observed event data based on the knowledge data, and it is determined that the received observed event data is not needed if it is determined that the received observed event data can be derived from the analysis result and the other pieces of observed event data.
(Supplementary Note 7)
The observed event determination method according to supplementary note 5 or 6,
wherein, in the (b) step, backward inference is performed on the received observed event data, and it is determined that the received observed event data is not needed on a condition that, with respect to the obtained inference result, when the inference is traced back from the received observed event data, any of the other pieces of observed event data are necessarily reached.
(Supplementary Note 8)
The observed event determination method according to any of supplementary notes 5 to 7,
wherein, in the (b) step, it is determined, on a condition that the received observed event data and an event expected to be observed hold true at the same time, that the received observed event data is not needed if the event expected to be observed has not been observed, or if the event expected to be observed cannot be derived by backward inference from another observation based on the knowledge data.
(Supplementary Note 9)
A computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause the computer to carry out:
(a) a step of receiving observed event data indicating an observed event; and
(b) a step of determining whether or not the received observed event data is not needed based on pieces of observed event data other than the received observed event data and knowledge data.
(Supplementary Note 10)
The computer-readable recording medium according to supplementary note 9,
wherein, in the (b) step, an analysis is performed on the received observed event data based on the knowledge data, and it is determined that the received observed event data is not needed if it is determined that the received observed event data can be derived from the analysis result and the other pieces of observed event data.
(Supplementary Note 11)
The computer-readable recording medium according to supplementary note 9 or 10,
wherein, in the (b) step, backward inference is performed on the received observed event data, and it is determined that the received observed event data is not needed on a condition that, with respect to the obtained inference result, when the inference is traced back from the received observed event data, any of the other pieces of observed event data are necessarily reached.
(Supplementary Note 12)
The computer-readable recording medium according to any of supplementary notes 9 to 11,
wherein, in the (b) step, it is determined, on a condition that the received observed event data and an event expected to be observed hold true at the same time, that the received observed event data is not needed if the event expected to be observed has not been observed, or if the event expected to be observed cannot be derived from another observation, under the situation in which new observed event data can be derived.
The invention of the present application has been described above with reference to the present example embodiment, but the invention of the present application is not limited to the above present example embodiment. The configurations and the details of the invention of the present application may be changed in various manners that can be understood by a person skilled in the art within the scope of the invention of the present application.
As described above, according to the invention, observed event data that is not needed in inference can be specified. The invention is useful in a system in which inference is performed.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2018/025722 | 7/6/2018 | WO | 00 |