WO2021124502A1 - Inferring device, inferring method, and inferring program - Google Patents

Inferring device, inferring method, and inferring program Download PDF

Info

Publication number
WO2021124502A1
WO2021124502A1 PCT/JP2019/049767 JP2019049767W WO2021124502A1 WO 2021124502 A1 WO2021124502 A1 WO 2021124502A1 JP 2019049767 W JP2019049767 W JP 2019049767W WO 2021124502 A1 WO2021124502 A1 WO 2021124502A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
node
graph
relationship
inference
Prior art date
Application number
PCT/JP2019/049767
Other languages
French (fr)
Japanese (ja)
Inventor
淳平 羽藤
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2019/049767 priority Critical patent/WO2021124502A1/en
Priority to JP2021559617A priority patent/JP7031079B2/en
Publication of WO2021124502A1 publication Critical patent/WO2021124502A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Definitions

  • the present invention relates to an inference device, an inference method, and an inference program.
  • a knowledge graph (Knowledge Graph) is often used.
  • the knowledge graph is represented by a triple, which is a set of three items, ⁇ subject, predicate, and object>.
  • the relationship between the subject, which is a node, and the object is expressed by a predicate. That is, in the knowledge graph, the relationship between nodes is represented by an edge.
  • the "triple” is also called a "triplet”.
  • Patent Document 1 constructs a knowledge graph by integrating a plurality of knowledge such as weather, human preference, and human behavior, and uses the user's speech, data obtained from a sensor, and the knowledge graph. It discloses an inference method for inferring the intent of. In this inference method, the arrival probability of each node is calculated by randomly walking on the knowledge graph with the node corresponding to the obtained data as the start node, and this is set as the importance of each node. After that, a query indicating the conditions to be searched is generated, and the nodes searched by the query are extracted in descending order of importance and output as an inference result.
  • the triple in the inference method of Patent Document 1 indicates "the existence of the relationship between the nodes", but does not indicate the "degree of the relationship between the nodes”. Therefore, when there are multiple relationships between nodes that have the same graph structure characteristics of the relationships between the nodes (at this time, the arrival probabilities also match), the relationships between the nodes can be given superiority or inferiority. However, there is a problem that the inference result obtained by the query may not be appropriate.
  • the present invention has been made to solve the above problems, and an object of the present invention is to provide an inference device, an inference method, and an inference program capable of improving the accuracy of inference.
  • the inference device uses knowledge information provided from a knowledge base including information about humans and inference rules provided from a rule database, and among dynamically changing external information. It has an information coupling unit that generates integrated information by combining information belonging to different domains in a forward chain, and an information analysis unit, and the information belonging to the different domains is as a directed graph having a node and an edge.
  • the integrated information is information that can be expressed, and the integrated information is an integrated graph generated by combining the directed graphs that belong to the different domains, and the information analysis unit is a node that is a component of the integrated graph.
  • the inference method is an inference method executed by a computer, in which the computer includes information about a human being, knowledge information provided by a knowledge base, and inference rules provided by a rule database. And, in the step of generating integrated information by combining information belonging to different domains among dynamically changing external information in a forward chain, the information belonging to the different domains is the step.
  • the importance of a node, which is a component of the graph, is provided from the relationship database with an algorithm of probability or page rank of reaching the node when it randomly walks on the integrated graph and converges to a steady state. It is characterized by having a step of calculating using relationship data indicating the degree of relationship between nodes, which is a component of the integrated graph.
  • the accuracy of inference can be improved.
  • FIG. 1 It is a functional block diagram which shows schematic structure of the inference apparatus which concerns on embodiment of this invention. It is a figure which shows the example of the hardware composition of the inference apparatus which concerns on this embodiment. It is a figure which shows another example of the hardware composition of the inference apparatus which concerns on this embodiment. It is a flowchart which shows the operation of the inference apparatus which concerns on this embodiment. It is a figure which shows the example of the triple using the predicate "rdfs: subClassOf" defined in RDFS as Table 1.
  • FIG. It is a figure which shows the example of RDF representation using a directed graph. It is a figure which shows the example of the knowledge base in this embodiment as Table 2.
  • FIG. 1 It is a figure which shows the example of the hardware composition of the inference apparatus which concerns on this embodiment. It is a figure which shows another example of the hardware composition of the inference apparatus which concerns on this embodiment. It is a flowchart which shows the operation of the inference apparatus which concerns on this embodiment. It is a
  • FIG. 3 is a diagram showing an example of data generated by the dynamic information acquisition unit of the inference device according to the present embodiment as Table 3.
  • (A) and (b) are diagrams showing how the graph connection portion of the inference device according to the present embodiment creates a directed graph by using a forward chaining rule which is an inference rule stored in the rule DB. It is a figure which shows the example of the graph obtained by sequentially applying the forward chaining rule which is an inference rule to the graph which expresses the knowledge base shown in FIG. 7 and FIG. (A) to (c) are diagrams showing deductive reasoning, inductive reasoning, and hypothetical reasoning as a graph. It is a figure which shows the example of the dialogue by the inference device which concerns on this embodiment as Table 4.
  • FIG. 5 is a diagram showing an example of data acquired by the graph search unit of the inference device according to the present embodiment by searching the graph as Table 5. It is a figure which shows the example of the integrated graph (integrated graph corresponding to FIG. 13) including the importance of the node searched by the graph search part of the inference apparatus which concerns on this embodiment, and the search result. It is a figure which shows an example of the knowledge graph in the comparative example. When the importance is obtained from the knowledge graph of FIG. 15 by the inference method of the comparative example and the reciprocal of the importance is the distance, the total distance of the paths from any of the starting nodes to any of the target nodes. It is a figure which shows the result to the top 3 of the route which becomes the shortest.
  • the inference device integrates information belonging to a plurality of domains different from each other by a method using a graph to create an integrated graph as integrated information. Further, the inference device according to the embodiment can be provided with a configuration for deriving the inference result from the integrated graph as integrated information.
  • the graph is a figure having vertices (that is, nodes) and edges (that is, edges) as constituent elements.
  • the method for deriving the inference result is, for example, a graph analysis method that does not require training data.
  • Graphs are mainly classified into directed graphs and undirected graphs.
  • a directed graph is composed of vertices and edges with orientation (ie, arrows).
  • An undirected graph is composed of vertices and edges that have no orientation.
  • An undirected graph is equivalent to a bidirectional graph composed of vertices and edges with orientations in both directions.
  • the directed graphs in the embodiment are shown, for example, in FIGS. 6, 9 (a) and 9 (b), which will be described later.
  • FIG. 1 is a functional block diagram schematically showing the configuration of the inference device 10 according to the embodiment of the present invention.
  • the inference device 10 is an device capable of implementing the inference method according to the present embodiment.
  • the inference device 10 includes a graph coupling unit 14 as an information coupling unit.
  • the inference device 10 has a knowledge base unit 11 for storing the knowledge base 11a and a rule database unit (also referred to as a "rule DB unit”) 12 for storing the rule database (also referred to as "rule DB”) 12a.
  • Dynamic information acquisition unit 13 graph connection unit 14 as information connection unit, graph analysis unit 15 as information analysis unit, graph search unit 16 as information search unit, information output unit 17, relationship analysis.
  • a unit 18 and a relationship database unit (also referred to as “relationship DB unit”) 19 for storing the relationship database (also referred to as “relationship DB”) 19a may be provided.
  • the knowledge base unit 11 is a storage device that stores a knowledge base 11a composed of knowledge information.
  • the knowledge base unit 11 is a part of the inference device 10. However, the knowledge base unit 11 may be provided in an external device connected so as to be able to communicate with the inference device 10.
  • the rule DB unit 12 is a storage device that stores a plurality of rules (hereinafter, also referred to as "inference rules") for combining (that is, concatenating) a plurality of graphs.
  • the rule DB unit 12 is a part of the inference device 10. However, the rule DB unit 12 may be provided in an external device connected so as to be able to communicate with the inference device 10.
  • the dynamic information acquisition unit 13 acquires external information that changes dynamically.
  • the dynamic information acquisition unit 13 acquires information that changes dynamically from moment to moment, converts the acquired information into information in a predetermined format, and outputs the information.
  • External information is obtained from an external device, an application executed by the external device, and the like.
  • External information is acquired from, for example, an application 41, a user interface 42, a GPS (Global Positioning System) 43, a camera 44, the Internet 45, an external database (also referred to as "external DB") 46, a sensor 47, and the like.
  • the application 41 is software that operates on a device such as a computer or a portable information terminal.
  • the graph connection unit 14 is based on the knowledge information provided by the knowledge base 11a, the inference rule provided by the rule DB 12a, and the external information acquired by the dynamic information acquisition unit 13, and is based on a graph (“meaningful”. By dynamically combining "graphs” or “data structures” or “knowledge graphs”), an integrated graph with integrated information is generated.
  • the relationship analysis unit 18 determines the relationship between the nodes that are the components of the graph based on at least one of the knowledge information held by the knowledge base 11a and the external information handled by the graph connection unit 14. To analyze. However, if it is not necessary to dynamically generate the relationships between the nodes that are the components of the integrated graph, or if the relationships between the nodes are input by user operations, the relationship analysis unit 18 is not provided. It is also possible.
  • the relationship DB unit 19 is a storage device that stores the relationship DB 19a, and stores data indicating the relationship between the nodes, which is the analysis result of the relationship analysis unit 18.
  • the relationship DB unit 19 may be provided in an external device connected so as to be able to communicate with the inference device 10.
  • the graph analysis unit 15 analyzes the integrated graph generated by the graph connecting unit 14 and calculates the importance of the nodes that are the components of this integrated graph.
  • the importance of each node is stored in the relationship DB 19a with respect to the probability of reaching each node, that is, the probability of reaching each node when, for example, an infinite random walk on the integrated graph is performed to reach a steady state. It is a value converted based on the value representing the relationship being made.
  • the graph search unit 16 searches for desired information from the integrated graph analyzed by the graph analysis unit 15 using the importance calculated by the graph analysis unit 15.
  • the desired information is, for example, a specific information pattern in the integrated graph analyzed by the graph analysis unit 15.
  • the information output unit 17 outputs the desired information searched by the graph search unit 16 to the user interface 51.
  • the user interface 51 is, for example, a speaker as an audio output device for outputting audio, a display as a video output device for displaying video, and the like.
  • the user interface 51 provides the user with desired information searched by the graph search unit 16 by voice, video, or the like.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the inference device 10 according to the present embodiment.
  • the inference device 10 includes a processing circuit 61, a hard disk drive (HDD) 62 as a storage device, an input interface device 63, and an output interface device 64.
  • the processing circuit 61 realizes, for example, the functions of the dynamic information acquisition unit 13, the graph connection unit 14, the relationship analysis unit 18, the graph analysis unit 15, the graph search unit 16, and the information output unit 17 shown in FIG. It is a semiconductor integrated circuit that can be used.
  • the input interface device 63 is, for example, a circuit that communicates with an external device, software executed by the external device, and the like.
  • the output interface device 64 is, for example, a circuit that communicates with an external device, software executed by the external device, and the like.
  • the processing circuit 61 is, for example, dedicated hardware.
  • the processing circuit 61 is, for example, a single circuit, a composite circuit, a processor that executes a program, a processor that executes a parallel program, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or any of these. It may be a combination of the above.
  • FIG. 3 is a diagram showing another example of the hardware configuration of the inference device 10 according to the present embodiment.
  • the inference device 10 includes a CPU (Central Processing Unit) 71 as a processor as an information processing unit, a memory 72 as a storage device for storing a program, an HDD 62 as a storage device, and an input interface device. 63 and an output interface device 64 are provided.
  • the memory 72 can store the inference program according to the present embodiment.
  • the CPU 71 includes the dynamic information acquisition unit 13, the graph connection unit 14, the relationship analysis unit 18, the graph analysis unit 15, and the graph search unit 16 shown in FIG. And the function of the information output unit 17 can be realized.
  • the CPU 71 may include a plurality of cache memories such as a primary cache memory and a secondary cache memory. Further, the program stored in the HDD 62, the memory 72, or the like causes the computer to execute the procedure or method of the process performed by the inference device 10.
  • the memory 72 includes, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Memory), an EEPROM (Electrically Memory), or an EEPROM (Electrically Memory). It is a volatile semiconductor memory.
  • the HDD 62 can be used for storing the learning data.
  • the learning data may be stored in an optical storage device using an optical disk such as a DVD (Digital Versaille Disc), a semiconductor memory, an external storage device, or the like.
  • the inference device 10 may realize a part of its function by dedicated hardware and another part of its function by software or firmware.
  • the function of the dynamic information acquisition unit 13 is realized by a processing circuit as dedicated hardware, and the functions of the configuration other than the dynamic information acquisition unit 13 are realized by the CPU, which is a processor that executes a program stored in the memory. You may.
  • FIG. 4 is a flowchart showing the operation of the inference device 10 according to the present embodiment.
  • the operation of the inference device 10 includes advance preparation, which is the operation of Phase Ph1, and execution of inference, which is the operation of Phase Ph2.
  • Phase Ph1 includes preparation of the knowledge base 11a, which is the process of step S101, and preparation of the rule DB 12a, which is the process of step S102. Further, the phase Ph1 may include the processing of the relationship analysis unit 18 or a part of the processing, and the storage of the processing result in the relationship DB 19a. This process is shown as step S103 in FIG. All or part of the processing of Phase Ph1 may be performed by an device other than the inference device 10.
  • Phase Ph2 is the acquisition of dynamic information, which is the process of step S104, the combination of graphs, which is the process of step S105, the analysis of the integrated graph, which is the process of step S107, and the search of the integrated graph, which is the process of step S108. And the output of information which is the process of step S109.
  • the graph combination which is the process of step S104, is executed using the prepared knowledge base 11a and the rule DB 12a.
  • the analysis of the graph, which is the process of step S107 is executed using the relationship DB 19a. Further, the analysis of the graph, which is the process of step S107, may include the process of the relationship analysis unit 18 or a part of the process, and the storage of the process result in the relationship DB 19a. This process is shown as step S106 in FIG.
  • Step S101 Preparation of Knowledge Base 11a First, a knowledge base 11a for storing various knowledge information used for operating the inference device 10 is created. The knowledge base 11a is stored in the knowledge base unit 11.
  • RDF Resource Description Framework
  • RDF Resource Description Framework
  • data is represented using triples consisting of a subject, a predicate, and an object.
  • FIG. 5 is a diagram showing an example of a triple using the predicate “rdfs: subClassOf” defined in RDFS as Table 1.
  • Example Y1 shown in Table 1 uses the predicate "rdfs: subClassOf” to express that the ramen class (subject) is a food class (object) using one triple.
  • ramen class means a thing belonging to ramen.
  • food class means something that belongs to food.
  • FIG. 6 is a diagram showing an example Y1 of the RDF representation shown in FIG. 5 using a directed graph.
  • the subject and the object are represented as vertices, that is, nodes
  • the predicate is represented as edges, that is, edges.
  • a triple consisting of a subject, a predicate, and an object includes a node that is the subject, a node that is the object, and an arrow that is a predicate, that is, an arrow that is an edge from the subject to the object. Expressed as a directed graph.
  • the knowledge information stored as the knowledge base 11a is, for example, device information, common sense (that is, common sense) information, general knowledge information, ontology of these information, and the like.
  • the knowledge information stored as the knowledge base 11a can include two or more types of device information, common knowledge information, general knowledge information, ontology of these information, and the like.
  • Device information is information about the device.
  • the device information includes, for example, device attributes, device names, device types, device setting items, numerical ranges of device setting items, device usage restrictions, device usage counts, device usage, and the like.
  • the attributes of the device can include, for example, an air conditioner class, a fan class, a music player class, and the like.
  • Common sense information is information related to human common sense.
  • Common sense information is, for example, human values, human thoughts, human behavior, human condition, and the like.
  • Common sense information includes information about human condition and information about human behavior.
  • Information about the human state includes information about the physical state of the person and information about the psychological state of the person.
  • Information about the human condition can include, for example, information that the human feels hot, that the human feels cold, that the human is in trouble, that the human is laughing, and so on.
  • Information about human behavior can include, for example, information such as driving, eating, sleeping, searching, going to a specific place, and the like.
  • F1 ⁇ Eat hot, ten, cold food>
  • Example of common sense information F1 expresses the knowledge that "human beings eat cold food when it is hot” with one triple of ⁇ subject, predicate, object>.
  • the "then” (predicate) in the triple of Example F1 is defined as meaning "when a human being is in the (subject) state, the next action to be taken is the (object) action.” Therefore, the triple of Example F1 shows that "when a human being is in a state of" hot "(subject), the next action that a human takes is the action of" eating cold food "(object).” ..
  • F2a ⁇ Eat cold food, slot, cold food class>
  • F2b ⁇ Eat cold food, subAct, eat>
  • Examples of common sense information F2a and F2b state that "the action of" eating cold food "is the target of” cold food class ", and the action as a superordinate concept is” eating ". Is expressed by two triples including ⁇ subject, predicate, object>.
  • Example F2a "slot” (predicate) is defined as meaning “the object targeted by the action of (subject) is the object of (object).”
  • “subAct” (predicate) is defined as meaning “the action of the superordinate concept of (subject) is the action of (object).”
  • the common sense information used may be different information for each region, gender, and domain of the application to be inferred. That is, the common sense information of the knowledge base 11a used by the inference device 10 may be switched to any one of a plurality of types of common sense information according to the person or field targeted by the inference device 10.
  • General knowledge information is information about universal facts. "General knowledge information” can include information on engineering, physics, science, biology, medicine, food, geography, religion, economy, politics, history, celebrities, and so on.
  • G1 An example G1 of general knowledge information of the knowledge base 11a is shown below.
  • G1 ⁇ ice cream, rdfs: subClassOf, cold food class>
  • Example of general knowledge information "rdfs: subClassOf" (predicate) in G1 is defined as meaning "a (subject) thing is a subclass of a (object) thing.”
  • Example G1 expresses the knowledge that "ice cream (subject) is a subclass of cold food (object)" with one triple of ⁇ subject, predicate, object>.
  • G2 ⁇ Strawberry ice cream, instanceOf, ice cream class>
  • Example of general knowledge information "instanceOf" (predicate) in G2 is defined as meaning "a thing of (subject) is an instance of (object).”
  • Example G2 expresses the knowledge that "strawberry ice cream (subject) is an instance (actual state) of ice cream class (object)" with one triple of ⁇ subject, predicate, object>. There is.
  • the ontology is the vocabulary of the target domain, the relationship between the vocabulary and the vocabulary, the class, the attribute, the constraint condition, and the like.
  • the ontology is, for example, the information listed below.
  • -The predicate "slot” means "the object targeted by the action of (subject) is (object).”
  • -The subject that the predicate "slot” can take is a vocabulary related to behavior.
  • -The object that the predicate "slot” can take is a vocabulary related to a class of objects.
  • FIG. 7 is a diagram showing an example of the knowledge base 11a in the present embodiment as Table 2.
  • Step S102 Preparation of Rule DB 12a
  • one or more inference rules used to operate the inference device 10 are prepared as rule DB 12a.
  • the rule DB 12a is stored in the rule DB unit 12.
  • the prepared inference rules are to integrate multiple pieces of information into one piece of information by combining information belonging to each of multiple domains that are different from each other, and to generate a new hypothesis from external information obtained from sensors or the like. , Etc. are used.
  • inference rule examples W1 and W2 may be stored in the rule DB 12a.
  • Example W1 of the inference rule is "If the temperature outside the vehicle is 30 degrees or higher, the condition outside the vehicle and the driver is hot.”
  • the example W1 of the inference rule has a role of combining the temperature information outside the vehicle acquired by the temperature sensor and the information on the human condition.
  • Example W2 of the inference rule is related to the action of "eating" when the current time is 7:00, 12:00, or 17:00. ".
  • the example W2 of the inference rule has a role of combining the time information which is the current time acquired by the clock and the information about the human behavior.
  • the inference rule may generate a new hypothesis by using information input from the outside. For example, when the voice spoken by a human can be collected by the microphone, the following inference rule examples W3 to W5 may be saved as the rule DB 12a.
  • An example of an inference rule, W3, is "If a person says'I'm full', he ate something at a restaurant just before.”
  • An example of an inference rule, W4 is "When a person says'I'm full', he ate something in the car just before.”
  • An example of an inference rule, W5, is "When a person says'I'm full', he ate something in the house just before.”
  • Step S103 Offline relationship analysis
  • the relationship analysis unit 18 performs the process of step S103 when analyzing the relationship between nodes offline.
  • the following examples H1 and H2 are assumed as specific examples of performing offline relationship analysis.
  • Example H1 is a case where the node corresponding to the dynamic information acquired in step S103 already exists in the knowledge base 11a.
  • Example H2 statically completes only the relationship analysis of the nodes existing in the knowledge base 11a even if the node corresponding to the dynamic information acquired in step S103 does not exist in the knowledge base 11a, and is separately dynamic. This is a case where only the difference is analyzed online when a node corresponding to the information is added.
  • the analysis of the relationship between nodes is specifically to analyze the degree of relationship between nodes (that is, the strength of the relationship).
  • the predicate shows the relationship between the subject and the object, but does not show how strong the relationship is.
  • the relationship analysis unit 18 analyzes the degree of the relationship between each node, converts the result into data, and stores it in the relationship DB 19a.
  • the relationship analysis unit 18 does not have to analyze only the relationship between the node that is the subject and the node that is the object in the triple, but at least directly and indirectly with the node that can be the observation node. Analyze the relationship with all or some of the nodes that have a relationship regardless.
  • a measure of the degree of relationship for example, a method in which a developer or user of an inference device manually defines the degree of relationship between nodes can be considered. In that case, a plurality of degrees of relationship may be specified from various viewpoints.
  • the degree of the relationship between the nodes may be defined by using another knowledge such as a thesaurus in which the nodes appear, for example, based on the number of steps between the nodes.
  • the degree of relationship between nodes may be determined based on the behavior history or characteristics of the target person expressed by knowledge, preferences, and the like. In this case, the degree of relationship between the nodes may be adjusted according to the probability that the action and the condition when the action is performed occur at the same time.
  • the degree of the relationship between the nodes is determined by using word2vec, which is a technique for vector-expressing words, or doc2vec, which is a technique for vector-expressing a document of an arbitrary length, for a document in which knowledge as a node appears.
  • the word to be knowledge may be expressed in a vector and determined by using a method capable of calculating the similarity between knowledge.
  • the relationship analysis unit 18 can generate relationship data using one or more of thesaurus data, human behavior history, human characteristics, human preferences, word2vec, doc2vec, and the like. ..
  • the relationship analysis unit 18 can adopt an arbitrary method that can express the degree of the relationship between the nodes in a form that can be handled arithmetically so that it can be handled in the subsequent processing.
  • the degree of relationship between nodes is expressed numerically, so it can be expressed by a square matrix with rows and columns of the number of nodes to be analyzed. At least this square matrix is stored in the relationship DB 19a.
  • This square matrix is expressed as a relational matrix R.
  • the element r ij of the relation matrix R is a value representing the degree of the relationship between the node N i and the node N j.
  • Step S104 Acquisition of dynamic information
  • the dynamic information acquisition unit 13 acquires information that changes dynamically from moment to moment, and converts the acquired information into information in the same format as the knowledge base 11a. And output.
  • the timing at which the dynamic information acquisition unit 13 acquires information is, for example, at regular time intervals.
  • the timing at which the dynamic information acquisition unit 13 acquires information may be another timing.
  • the timing at which the dynamic information acquisition unit 13 acquires information may be, for example, immediately after the dynamic information acquisition unit 13 receives the information acquisition command input by the user.
  • the timing at which the dynamic information acquisition unit 13 acquires information may be a specific time.
  • the specific time is, for example, when it is 12 o'clock in the daytime, when a vehicle enters a specific urban area, and so on.
  • the dynamic information acquisition unit 13 acquires information at a plurality of timings, such as when a specific time is reached at the position where the information is acquired, or when there is a specific event at the position where the information is acquired. May be satisfied at the same time.
  • the information acquired by the dynamic information acquisition unit 13 is, for example, sensor information, application information, user's personal information, user's command information, and other information.
  • the information acquired by the dynamic information acquisition unit 13 is also referred to as external information.
  • the sensor information is, for example, user operation information or utterance information obtained by the user interface 42 such as a touch panel or a microphone. Further, the sensor information may be a sensing result for the outside world or a human being obtained by the camera 44 or various sensors. Various sensors are, for example, thermometers, hygrometers, and the like. Further, the sensor information may be position information obtained by GPS43 or the like.
  • the sensor information is, for example, information obtained by a visible light camera or an infrared camera installed in the car.
  • the sensor information may be, for example, information indicating the result of detecting the positions of the driver's face and eyes.
  • the camera 44 may be a plurality of cameras installed in the vehicle.
  • the sensor information may be voice information indicating a voice uttered by the driver or a passenger, which is acquired by a microphone installed in the vehicle.
  • the sensor information may be information acquired by a biological sensor, a pressure-sensitive sensor, or the like.
  • the biosensor can include a motion sensor, a blood pressure sensor, an electrocardiogram sensor, a heart rate sensor, and the like.
  • the dynamic information acquisition unit 13 acquires the information "the temperature outside the vehicle is 35 degrees” and "the humidity outside the vehicle is 90%” from the temperature sensor and the humidity sensor, it is dynamic.
  • the information acquisition unit 13 converts the information into the following triple examples J1 and J2 composed of ⁇ subject, predicate, object>.
  • J1 ⁇ condition outside the car, temperature, 35 degrees>
  • J2 ⁇ condition outside the car, humidity, 90%>
  • the dynamic information acquisition unit 13 uses the information as the ⁇ subject. , Predicate, object> is converted to the following triple example J3.
  • J3 ⁇ current time, is, 12:00>
  • the application information acquired by the dynamic information acquisition unit 13 is, for example, information acquired by an application operating in the user's environment, application usage status, application usage history, screen displayed by the application, and displayed by the application. Including choice display, etc.
  • the user command information acquired by the dynamic information acquisition unit 13 is, for example, the content explicitly or implicitly instructed by the user to the inference system including the inference device 10.
  • the user's personal information acquired by the dynamic information acquisition unit 13 is the user's name, the user's family, the user's taste, and the like.
  • the external information acquired by the dynamic information acquisition unit 13 includes, for example, weather, news, geographic information, etc. obtained from the Internet 45. Further, the external information acquired by the dynamic information acquisition unit 13 may include information stored in the external DB 46 and provided by a country, a local government, a company, an individual, or the like.
  • FIG. 8 is a diagram showing an example of data generated by the dynamic information acquisition unit 13 of the inference device 10 according to the present embodiment as Table 3.
  • Examples in Table 3 include conditions outside the vehicle, car navigation information, current time, command information, driver information, and the like.
  • Step S105 Graph Joining
  • the graph joining unit 14 applies an inference rule saved as a rule DB 12a to, for example, the knowledge base 11a and the output of the dynamic information acquisition unit 13.
  • Forward chaining is applied sequentially to combine a plurality of graphs to finally generate one integrated graph consisting of the combined graphs.
  • the plurality of graphs constituting the integrated graph are, for example, directed graphs.
  • the application of the inference rule in the rule DB 12a can be expressed using a graph as follows. "If a specific information pattern is found in the target graph, add / change / delete nodes or edges to the graph.”
  • W1 of the inference rule "If the temperature outside the vehicle is 30 degrees or higher, the condition outside the vehicle and the driver is hot.” Is expressed using a graph as follows. "If the information pattern of triple ⁇ outside condition, temperature,? X> is found in the target graph and the condition"? X ⁇ 30 "is satisfied, the graph shows triple ⁇ outside condition, temperature, hot>. , Triple ⁇ driver, temperature, hot>, and newly added. "
  • 9 (a) and 9 (b) are diagrams showing how the graph connecting portion 14 of the inference device 10 according to the present embodiment creates a directed graph using a forward chaining rule which is an inference rule stored in the rule DB 12a. Is.
  • the inference rule examples W1 and W2 are sequentially applied to the graphs showing Table 2 shown in FIG. 7 and Table 3 shown in FIG. 8, the graph as shown in FIG. 10 is obtained. can get.
  • the graph of FIG. 10 is an example.
  • the graph connecting unit 14 can generate one integrated graph as shown in FIG. 10 from the information obtained from the sensor or the information belonging to each of the plurality of domains different from each other. .. That is, the graph connecting unit 14 can generate integrated information by combining information belonging to each of a plurality of domains different from each other by sequentially applying the rules by a forward chain.
  • the integrated information can be expressed as an integrated graph.
  • the graph connecting unit 14 uses information about humans in order to combine information belonging to each of a plurality of domains different from each other.
  • Information about humans includes, for example, information about human conditions and information about human behavior.
  • Information about the human condition is, for example, “hot”, “cold”, “hungry”, and so on.
  • Information about human behavior is, for example, “lowering the temperature”, “raising the temperature”, “eating cold food”, and the like.
  • the information of the sensor domain "state outside the vehicle” and the information of the food domain “chilled Chinese” can be obtained, that is, the information belonging to each of a plurality of domains different from each other. Can be combined.
  • K1 ⁇ Outside the car, status, hot>
  • K2 ⁇ Eat hot, ten
  • K3 ⁇ Eat cold food, slots
  • K4 ⁇ Chilled Chinese, instanceOf, cold food class>
  • Step S106 Online Relationship Analysis
  • the relationship analysis unit 18 performs the process of step S106 when analyzing the relationship between nodes online.
  • the node added in step S105 includes a node that does not statically exist in the knowledge base prepared in step S101.
  • the relationship analysis unit 18 needs to execute step S106.
  • step S106 there is a "driver" as a node that does not exist in FIG. 9 (a) but exists in FIG. 9 (b). Since the knowledge graph at the time of step S103 is in the state of FIG. 9A, the relationship between the “driver” and the other nodes cannot be analyzed. Therefore, the relationship analysis unit 18 analyzes the relationship between the "driver” and the other nodes in step S106.
  • step S106 has the same basic processing contents as the analysis of the relationship in step S103, but in step S103, at least the relationship between the nodes related to the nodes for which the analysis of the relationship has not been completed. Perform analysis.
  • Step S107 Graph Analysis Next, the graph analysis unit 15 traces the nodes of the integrated graph (for example, FIG. 10) generated by the graph combination in the graph connection unit 14 through the edges. Then, probabilistic inference is executed, and the importance of each node is calculated as a result of the inference.
  • the graph analysis unit 15 executes deductive inference (deduction), inductive inference (induction), and hypothetical inference (abduction) by tracing the nodes on the integrated graph.
  • 11 (a) to 11 (c) are diagrams showing deductive reasoning, inductive reasoning, and hypothetical reasoning as a graph.
  • the nodes A0 to C0 are deduced by tracing the graph. Can be inferred.
  • the triple ⁇ A0, x, B0>, the triple ⁇ A0, x, B2>, the triple ⁇ B0, y, C0>, and the triple ⁇ B2 , Y, C0> and triple ⁇ B3, y, C0> trace from node A0 to node C0 via node B0 or B2, and finally from node C0 to node B3.
  • the node B3 can be inductively inferred from the node A0.
  • subClassOf, ramen class> and triple ⁇ miso ramen, rdfs: subClassOf, ramen class> are included in the graph.
  • the node "Taro-san” and the node "Miso Ramen” are not directly connected in the graph.
  • the node "Taro-san” likes the node “Shoyu ramen” and the node “Tonkotsu ramen”, so he likes “Ramen class” which means ramen in general. In that case, the node “Taro-san” also likes the node “Miso Ramen”. That is, such inductive reasoning is possible.
  • the graph generated by the graph connecting unit 14 is a cycle graph in which each node is complicatedly connected. Therefore, in the integrated graph generated by the graph connecting unit 14 (for example, FIG. 10), the conclusion of inference can be specified as one by simply following the integrated graph as shown in FIGS. 11A to 11C. I can't. Therefore, for example, the probability of reaching each node, that is, the arrival probability when the integrated graph (for example, FIG. 10) calculated by the graph connecting unit 14 is randomly walked infinitely and becomes a steady state is calculated. Since this probability can be interpreted as the "probability that the node is the conclusion of inference", this probability is defined as the importance of each node. Random walking on the integrated graph is equivalent to probabilistically performing deductive reasoning, inductive reasoning, and hypothetical reasoning.
  • steps S107a, S107b, and S107c that is, step S107 shown in FIG. 4, which show a specific calculation method of the graph analysis unit 15, will be described.
  • Step S107a Graph transformation and transition matrix creation>
  • the graph analysis unit 15 appropriately converts the integrated graph input to the graph analysis unit 15 to create a transition matrix between nodes for a random walk.
  • a new graph L2 is created according to the type of verb of each triple included in the graph L1 input to the graph analysis unit 15.
  • the graph L2 created by the graph analysis unit 15 is also referred to as an "inference graph".
  • any of the following conversion pattern TP1, conversion pattern TP2, and conversion pattern TP3 is applied.
  • the directed graph which is the input graph L1 is used as it is as the inference graph L2.
  • the inference graph L2 is created by converting the input graph L1 into an undirected graph, that is, a bidirectional graph.
  • the inference graph L2 is created by converting the input graph L1 into a directed graph in the opposite direction.
  • an adjacency matrix of the inference graph L2 is created, and the transition matrix P between the nodes in which the total value of each column of this matrix is normalized by 1 is obtained.
  • the transition matrix P between the nodes is a matrix having a size (N ⁇ N).
  • the element P (i, j) of the transition matrix P indicates the transition probability from the j-th node to the i-th node in the random walk on the integrated graph.
  • j and i are positive integers.
  • the transition probability from the node A5 to each of the nodes A6 to A9 is 0, which is an equal value.
  • the transition probabilities from node A5 to each of nodes A6 to A9 do not have to be equal values.
  • the transition probabilities set may be different values from each other.
  • the initial settings of the transition probabilities of the elements P (i, j) and the elements P (j, i) of the transition matrix P are as follows.
  • P (i, j) ⁇ (0 ⁇ ⁇ 1)
  • P (j, i) 0
  • the elements P (i, j) of the transition matrix P and The initial setting of the transition probability of the element P (j, i) is as follows, for example.
  • the transition probability is set as follows with a bias.
  • P (i, j) ⁇ (0 ⁇ ⁇ 1)
  • P (j, i) ⁇ (0 ⁇ ⁇ 1)
  • ⁇ and ⁇ are not equal to each other.
  • Observation node setting> The graph analysis unit 15 sets an important node as a starting point of inference, such as information acquired from the outside or information detected by a sensor, as an “observation node”.
  • the graph analysis unit 15 sets the weight of the observation node to 0 or more, and creates an N-dimensional observation vector v with the other nodes as 0.
  • the graph analysis unit 15 sets the transition matrix P and the observation vector v, that is, Is used to obtain the importance of each node included in the inference graph (graph L2). That is, the graph analysis unit 15 determines the start node, which is the node as the start point of the random walk on the integrated graph, based on the probability of the observation vector v, and the relation matrix stored in the transition matrix P and the relation DB 19a. The probability of reaching each node is obtained by randomly walking on the inference graph by R, and this is set as the importance of each node.
  • k is a positive integer.
  • indicates a predetermined constant satisfying 0 ⁇ ⁇ 1.
  • the transition probability becomes an inappropriate value. In that case, adjustments such as setting the rik to 0 may be performed. Further, the normalization of the element pijk is not limited to that of the equation (3), and a method of normalizing such that the sum of the columns is 1 may be adopted.
  • the element p ijk of the transition matrix P k in the i-th row and the j-column may be defined as in the following equation (4), and the influence of the r ik may be controlled by the value of ⁇ .
  • is a value in the range of 0 to 1.
  • the element pijk of the i-by-j column of the transition matrix P k may be the following equation (5). ..
  • equation (1) Indicates an observation vector v of size N ⁇ 1.
  • equation (1) Indicates a vector having a size of 1 ⁇ N in which all elements are 1, and is also referred to as a vector 1 T.
  • the first term on the right side of equation (1) indicates that the integrated graph is randomly walked based on the transition matrix P.
  • the second term on the right side of equation (1) indicates that the random walk is restarted from the observation node with a probability of (1- ⁇ ) in the middle of the random walk.
  • the N-dimensional importance vector for the starting node Nk is x vk , that is, Then, the importance vector assuming the start node N k is obtained by the following equation (6).
  • Equation (6) represents that the importance vector x vk has converged by repeating the random walk.
  • x vk (i) indicates the importance of the i-th node assuming the start node N k.
  • the power method can be used to calculate the importance vector x vk in the equation (6).
  • a method similar to PageRank which is an algorithm for determining the importance of a web page, can be used.
  • the same calculation method as the PageRank described in Non-Patent Document 1 can be used.
  • the cost function CF1 k that is, by the following equation (7), is used.
  • Equation (7) Indicates an N ⁇ N identity matrix, which is also referred to as an identity matrix E.
  • the importance of the node is calculated on the premise of all the start nodes by the same method as the method of calculating the importance x vk of the node on the premise of the start node Nk described above.
  • step S103 If the node to be selected as the start node is determined in advance, a set of start nodes that can be used as a virtual start node is obtained in advance, and then the virtual start node is included in addition to each node. It is also possible to obtain the relational matrix in step S103 or step S107.
  • Severity obtained in this way is the sum of values obtained by multiplying the importance weight w k and the node i on the premise of start node N k for each starting node N k.
  • the weight w k may be a value set in advance or may be a variable value according to the situation. Further, by setting all the weights w k to 1, it is also possible to make the sum of only the importance of the node i on the premise of the start node N k having no weight.
  • the graph analysis unit 15 determines each start node.
  • the weight w k can be set, and the importance of each node on the integrated graph can be calculated based on the weight w k for each start node.
  • the graph analysis unit 15 determines a start node which is a node as a start point of a random walk on the integrated graph, and calculates the sum of the importance of each node on the integrated graph for each start node as the importance of each start node.
  • the weight w k can be set for each start node, and the importance of each start node can be calculated based on the weight w k for each start node.
  • k is an element of a set of k in which N k that can reach the target node exists.
  • the target node is a node to be derived by inference, and is a node finally obtained in step S106 (search for a graph) described later, and specifically, corresponds to "? Action". It is one of a set of nodes.
  • the importance vector x v is used in step S106, in the importance calculation method 2, when the target node is obtained, x vk is used instead of x v.
  • k is an element of a set of k in which N k that can reach the target node exists. It is a thing.
  • the starting node Nk when the starting node Nk cannot reach the target node, it means that the route to the target node cannot be obtained, that is, it is not related.
  • the importance of such a start node means not to consider.
  • the importance calculation method 1 there is a difference in considering the importance of irrelevant start nodes.
  • Step S108 Graph Search
  • the graph search unit 16 searches for a specific information pattern from the graph L2 by using the importance vector x v in order to extract desired information. A specific operation example of the graph search unit 16 will be described.
  • FIG. 12 is a diagram showing dialogue examples D1 and D2 as Table 4.
  • Dialogue Examples D1 and D2 are examples of intellectual dialogue by an artificial intelligence agent (also referred to as "AG”) that makes humans (also referred to as “users”) think “smart”.
  • AG artificial intelligence agent
  • Information integration is an elemental technology that integrates information belonging to each of a plurality of different domains.
  • Information belonging to each of a plurality of different domains includes, for example, weather, human operation history, navigation (also simply referred to as “navigation") information, human preference, and knowledge of human behavior.
  • Humans are, for example, drivers.
  • Knowledge of human behavior is information about human behavior, such as "eating cold food when it is hot.”
  • the subject, predicate, and object are ⁇ ? action, slot ,? slotClass> and ⁇ ? slotValue, instanceOf ,?
  • An information pattern satisfying slotClass> is extracted from the integrated graph.
  • the character string starting with "?” Is a variable, and an arbitrary character string is entered.
  • FIG. 13 is a diagram showing an example of data acquired by the graph search unit 16 of the inference device 10 according to the present embodiment by searching the integrated graph as Table 5. That is, FIG. 13 shows the results of sorting the graph search results by the importance of "? Action” and then by the importance of "? SlotValue".
  • FIG. 14 is a diagram showing an example of an integrated graph (integrated graph corresponding to FIG. 13) including the importance of the nodes searched by the graph search unit 16 of the inference device 10 according to the present embodiment and the search results.
  • the values in parentheses indicate the importance.
  • the hatched squares indicate observation nodes, and the hatched circles indicate nodes of high importance.
  • the top-level search results include ⁇ 'slotClass':'cold food class','action':'eat cold food','slotValue':'chilled Chinese' ⁇ . Is obtained.
  • the reason is that the top search results are "The driver likes ramen, that is, ⁇ driver, like, ramen class>", "There is a ramen shop Ra and an ice cream shop Ic in a nearby shop.”, "The current time is 12 o'clock. And it is related to eating behavior. "And” The temperature inside the car is 35 degrees, so the condition is hot. Therefore, humans eat cold foods or lower the temperature. " This is because the inference of the stage can be obtained by following the integrated graph by a random walk. Also, the node "'eat cold food'or'chilledChinese'" became more important (ie, more likely to be the conclusion of reasoning).
  • Step S109 Output of Information
  • the information output unit 17 outputs information in an appropriate form to a user interface 51 such as a display or a speaker by using the output of the graph search unit 16.
  • a user interface 51 such as a display or a speaker
  • the information output unit 17 outputs a voice such as "There is a chilled Chinese restaurant nearby" by voice synthesis.
  • FIG. 15 is a diagram showing an example of a knowledge graph in a comparative example.
  • the graph structure when the start node a11 is the start point and the graph structure when the start node a12 is the start point are the same. Therefore, when the inference method of the comparative example described in Patent Document 1 is used, the total value of the importance of the nodes on the route from any of the start nodes a11 and a12 to any of the target nodes c11, c12, and c13. Is the same value for all routes.
  • the target nodes c11, c12, and c13 are taken from any of the start nodes a11 and a12. It is a figure which shows the result to the top 3 of the route which the total distance becomes the shortest among the routes to any of.
  • the inference method of the comparative example as shown in FIG. 16, since the total distances in all of the cases C-11, C-12, and C-13 have the same value, which route is the most important route? It is indistinguishable.
  • FIG. 17 is a diagram showing an example of a knowledge graph according to the present embodiment.
  • an index indicating the degree of the relationship between the nodes is shown numerically (for example, “0.1”, “0.5”, “1.0”).
  • the numerical value in the upper row in the circular region indicating the node indicates the degree of the relationship with the start node a21, and the numerical value in the lower row indicates the degree of the relationship with the start node a22.
  • FIG. 17 is a diagram showing an example of a knowledge graph according to the present embodiment.
  • an index indicating the degree of the relationship between the nodes is shown numerically (for example, “0.1”, “0.5”, “1.0”).
  • the numerical value in the upper row in the circular region indicating the node indicates the degree of the relationship with the start node a21
  • the numerical value in the lower row indicates the degree of the relationship with the start node a22.
  • the importance of the route from the start node a21 or a22 to the target node c21 via the intermediate node b21 and the route from the start node a21 or a22 to the destination node c23 via the intermediate node b23 is determined by the start node a21 or It is higher than the importance of the route from a22 to the target node c22 via the intermediate node b22.
  • FIG. 18 when the importance is obtained from the knowledge graph of FIG. 17 by the inference method according to the present embodiment and the reciprocal of the importance is taken as the distance, the target node c21 from any of the start nodes a21 and a22. It is a figure which shows the result to the top 3 of the route which the total distance becomes the shortest among the routes to any of c22 and c23.
  • the total distance in each of the cases C-21 and C-22 is the same value
  • the total distance in the case C-23 is the total distance in the cases C-21 and C-22. Longer than the total distance. That is, in the case of FIG. 18, by using the degree of relationship, the importance can be calculated based on the degree of relationship.
  • FIG. 19 is a diagram showing another example of the knowledge graph in the comparative example.
  • the intermediate node b31 is used to reach the target node c31 from the start node a31
  • the intermediate node b32 is used to reach the target node c32 from the start node a31.
  • the intermediate node b31 has a route only from the start node a31
  • the intermediate node b32 has a route from nodes a32 to a37 other than the start node a31.
  • FIG. 20 shows the path from the start node a31 to any of the target nodes c31 and c32 when the importance is obtained from the knowledge graph of FIG. 19 by the inference method of the comparative example and the reciprocal of the importance is the distance. It is a figure which shows the result of the total distance.
  • the inference method of the comparative example as shown in FIG. 20, the total distance in the case C-31 passing through the intermediate node b32 having many inflow paths passes through the intermediate node b31 having few inflow paths. It is determined that the importance of the route of Case C-31 is higher than the importance of the route of Case C-32, which is shorter than the total distance in. However, it is not appropriate to determine that the route of Case C-31 is of high importance because there are many routes that flow in from the nodes a32 to a37 whose degree of relationship with the start node a31 is "0". ..
  • FIG. 21 is a diagram showing another example of the knowledge graph in the present embodiment.
  • an index indicating the degree of the relationship between the nodes is shown numerically (for example, “0.9”, “0.5”, “1.0” in the circle indicating the node).
  • the numerical values indicating the degree of the relationship between the start node a41 and each of the intermediate nodes b41 and b42 are “0.9” and “0.5”, respectively.
  • the numerical value indicating the degree of the relationship between the start node a41 and each of the target nodes c41 and c42 is “1.0”, respectively.
  • the importance of the route from the start node a41 to the destination node c41 via the intermediate node b41 is higher than the importance of the route from the start node a41 to the destination node c42 via the intermediate node b42.
  • the importance is obtained from the knowledge graph of FIG. 21 by the inference method according to the present embodiment, and when the reciprocal of the importance is taken as the distance, from the start node a41 to any of the target nodes c41 and c42. It is a figure which shows the route which the total distance becomes the shortest among the routes of.
  • the total distance in case C-41 is shorter than the total distance in case C-42. That is, in the case of FIG. 22, the importance can be appropriately calculated based on the degree of relationship.
  • the degree of the relationship between the nodes is taken into consideration as compared with the case where the importance is calculated only by the graph structure. It is possible to make inferences and improve the accuracy of inferences.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An inferring device (10) includes an information linking unit (14) which generates integrated information by linking, in a forward chain, information belonging to mutually different domains, from among dynamically varying external information, using knowledge information provided from a knowledge base (11a), and inference rules provided from a rule database (12a), and an information analyzing unit (15), wherein: the information belonging to mutually different domains is information that can be represented as a directed graph having nodes and edges; the integrated information is an integrated graph generated by combining directed graphs, which constitute the information belonging to different domains; and the information analyzing unit (15) calculates the importance of the nodes, which are constituent elements of the integrated graph, using the probability of reaching each node when a random walk on the integrated graph has converged to a steady state, or using the PageRank algorithm, and relationship data indicating the degree of relationship between the nodes, provided from a relationship database (19a).

Description

推論装置、推論方法、及び推論プログラムInference device, inference method, and inference program
 本発明は、推論装置、推論方法、及び推論プログラムに関するものである。 The present invention relates to an inference device, an inference method, and an inference program.
 センサ技術及び情報処理技術の進展により、機械が人の活動及び周辺状況を把握し、その活動及び周辺状況に適した支援を推論し、推論結果に基づく支援を遂行する形態が増えてきている。しかし、センサで取得したセンサデータだけでは、人の活動及び周辺状況を正確に把握することはできない。このため、センサデータと推論結果との間の橋渡し役となる知識が重要となる。このような知識を構築する場合、知識グラフ(Knowledge Graph)を用いることが多い。知識グラフは、〈主語、述語、目的語〉の3つの項目の組であるトリプル(Triple)によって表現される。知識グラフでは、ノード(Node)である主語と目的語との関係が、述語によって表現される。つまり、知識グラフでは、ノード間の関係がエッジ(Edge)で表現される。なお、「トリプル」は、「トリプレット(Triplet)」とも呼ばれる。 With the progress of sensor technology and information processing technology, there is an increasing number of forms in which machines grasp human activities and surrounding situations, infer support suitable for the activities and surrounding situations, and perform support based on the inference results. However, it is not possible to accurately grasp human activities and surrounding conditions only from the sensor data acquired by the sensor. For this reason, knowledge that acts as a bridge between sensor data and inference results is important. When constructing such knowledge, a knowledge graph (Knowledge Graph) is often used. The knowledge graph is represented by a triple, which is a set of three items, <subject, predicate, and object>. In the knowledge graph, the relationship between the subject, which is a node, and the object is expressed by a predicate. That is, in the knowledge graph, the relationship between nodes is represented by an edge. The "triple" is also called a "triplet".
 特許文献1は、天気、人間の好み、人間の行動などの複数の知識を統合することで知識グラフを構成し、ユーザの発話及びセンサから得られたデータなどと知識グラフとを用いることでユーザの意図を推論する推論方法を開示している。この推論方法では、得られたデータに対応するノードを開始ノードとして知識グラフ上をランダムウォークすることで、各ノードの到達確率を算出し、それを各ノードの重要度としている。その後、検索対象の条件を示すクエリが生成され、そのクエリで検索されたノードから重要度の高い順にノードが抽出され、推論結果とし出力される。 Patent Document 1 constructs a knowledge graph by integrating a plurality of knowledge such as weather, human preference, and human behavior, and uses the user's speech, data obtained from a sensor, and the knowledge graph. It discloses an inference method for inferring the intent of. In this inference method, the arrival probability of each node is calculated by randomly walking on the knowledge graph with the node corresponding to the obtained data as the start node, and this is set as the importance of each node. After that, a query indicating the conditions to be searched is generated, and the nodes searched by the query are extracted in descending order of importance and output as an inference result.
特許第6567218号公報Japanese Patent No. 6567218
 しかしながら、特許文献1の推論方法におけるトリプルは、“ノード間の関係の存在”を示すが、その“ノード間の関係の程度”を示していない。そのため、ノード間の関係のグラフ構造上の特徴が一致している(このとき、到達確率も一致している)ノード間の関係が複数存在する場合、ノード間の関係に優劣を付けることができず、クエリによって得られた推論の結果が適切でない場合があるという問題がある。 However, the triple in the inference method of Patent Document 1 indicates "the existence of the relationship between the nodes", but does not indicate the "degree of the relationship between the nodes". Therefore, when there are multiple relationships between nodes that have the same graph structure characteristics of the relationships between the nodes (at this time, the arrival probabilities also match), the relationships between the nodes can be given superiority or inferiority. However, there is a problem that the inference result obtained by the query may not be appropriate.
 本発明は、上記課題を解決するためになされたものであり、推論の精度を向上させることができる推論装置、推論方法、及び推論プログラムを提供することを目的とする。 The present invention has been made to solve the above problems, and an object of the present invention is to provide an inference device, an inference method, and an inference program capable of improving the accuracy of inference.
 本発明の一態様に係る推論装置は、人間に関する情報を含み知識ベースから提供される知識情報と、ルールデータベースから提供される推論ルールと、を用いて、動的に変化する外部の情報のうちの互いに異なるドメインに属する情報を前向き連鎖で結合することによって統合情報を生成する情報結合部と、情報解析部とを有し、前記互いに異なるドメインに属する情報は、ノードとエッジとを有する有向グラフとして表現できる情報であり、前記統合情報は、前記異なるドメインに属する情報である前記有向グラフを結合することによって生成された統合グラフであり、前記情報解析部は、前記統合グラフの構成要素であるノードの重要度を、前記統合グラフ上をランダムウォークして定常状態に収束したときの前記ノードに到達する確率又はページランクのアルゴリズムと、関係性データベースから提供される、前記統合グラフの構成要素であるノードのノード間の関係の程度を示す関係性データとを用いて算出することを特徴とする。 The inference device according to one aspect of the present invention uses knowledge information provided from a knowledge base including information about humans and inference rules provided from a rule database, and among dynamically changing external information. It has an information coupling unit that generates integrated information by combining information belonging to different domains in a forward chain, and an information analysis unit, and the information belonging to the different domains is as a directed graph having a node and an edge. The integrated information is information that can be expressed, and the integrated information is an integrated graph generated by combining the directed graphs that belong to the different domains, and the information analysis unit is a node that is a component of the integrated graph. A node that is a component of the integrated graph provided by the relationship database and an algorithm of the probability or page rank of reaching the node when the importance is randomly walked on the integrated graph and converges to a steady state. It is characterized in that it is calculated using the relationship data indicating the degree of the relationship between the nodes.
 本発明の他の態様に係る推論方法は、コンピュータが実行する推論方法であって、前記コンピュータが、人間に関する情報を含み、知識ベースから提供される知識情報と、ルールデータベースから提供される推論ルールと、を用いて、動的に変化する外部の情報のうちの互いに異なるドメインに属する情報を前向き連鎖で結合することによって統合情報を生成するステップであって、前記互いに異なるドメインに属する情報は、ノードとエッジとを有する有向グラフとして表現できる情報であり、前記統合情報は、前記異なるドメインに属する情報である前記有向グラフを結合することによって生成された統合グラフであるステップと、前記コンピュータが、前記統合グラフの構成要素であるノードの重要度を、前記統合グラフ上をランダムウォークして定常状態に収束したときの前記ノードに到達する確率又はページランクのアルゴリズムと、関係性データベースから提供される、前記統合グラフの構成要素であるノードのノード間の関係の程度を示す関係性データとを用いて算出するステップとを有することを特徴とする。 The inference method according to another aspect of the present invention is an inference method executed by a computer, in which the computer includes information about a human being, knowledge information provided by a knowledge base, and inference rules provided by a rule database. And, in the step of generating integrated information by combining information belonging to different domains among dynamically changing external information in a forward chain, the information belonging to the different domains is the step. Information that can be expressed as a directed graph having nodes and edges, and the integrated information is an integrated graph generated by combining the directed graphs that belong to the different domains, and the computer integrates the integrated graph. The importance of a node, which is a component of the graph, is provided from the relationship database with an algorithm of probability or page rank of reaching the node when it randomly walks on the integrated graph and converges to a steady state. It is characterized by having a step of calculating using relationship data indicating the degree of relationship between nodes, which is a component of the integrated graph.
 本発明によれば、推論の精度を向上させることができる。 According to the present invention, the accuracy of inference can be improved.
本発明の実施の形態に係る推論装置の構成を概略的に示す機能ブロック図である。It is a functional block diagram which shows schematic structure of the inference apparatus which concerns on embodiment of this invention. 本実施の形態に係る推論装置のハードウェア構成の例を示す図である。It is a figure which shows the example of the hardware composition of the inference apparatus which concerns on this embodiment. 本実施の形態に係る推論装置のハードウェア構成の他の例を示す図である。It is a figure which shows another example of the hardware composition of the inference apparatus which concerns on this embodiment. 本実施の形態に係る推論装置の動作を示すフローチャートである。It is a flowchart which shows the operation of the inference apparatus which concerns on this embodiment. RDFSで定義されている「rdfs:subClassOf」という述語を用いたトリプルの例を表1として示す図である。It is a figure which shows the example of the triple using the predicate "rdfs: subClassOf" defined in RDFS as Table 1. FIG. RDF表現の例を、有向グラフを用いて示す図である。It is a figure which shows the example of RDF representation using a directed graph. 本実施の形態における知識ベースの例を表2として示す図である。It is a figure which shows the example of the knowledge base in this embodiment as Table 2. 本実施の形態に係る推論装置の動的情報取得部が生成するデータの例を表3として示す図である。FIG. 3 is a diagram showing an example of data generated by the dynamic information acquisition unit of the inference device according to the present embodiment as Table 3. (a)及び(b)は、本実施の形態に係る推論装置のグラフ結合部がルールDBに格納された推論ルールである前向き連鎖ルールを用いて有向グラフを作成する様子を示す図である。(A) and (b) are diagrams showing how the graph connection portion of the inference device according to the present embodiment creates a directed graph by using a forward chaining rule which is an inference rule stored in the rule DB. 図7及び図8に示される知識ベースを表現するグラフに対して、推論ルールである前向き連鎖ルールを順次適用することで得られたグラフの例を示す図である。It is a figure which shows the example of the graph obtained by sequentially applying the forward chaining rule which is an inference rule to the graph which expresses the knowledge base shown in FIG. 7 and FIG. (a)~(c)は、演繹推論、帰納推論、及び仮説的推論をグラフとして示す図である。(A) to (c) are diagrams showing deductive reasoning, inductive reasoning, and hypothetical reasoning as a graph. 本実施の形態に係る推論装置による対話例を表4として示す図である。It is a figure which shows the example of the dialogue by the inference device which concerns on this embodiment as Table 4. 本実施の形態に係る推論装置のグラフ検索部がグラフを検索することによって取得したデータの例を表5として示す図である。FIG. 5 is a diagram showing an example of data acquired by the graph search unit of the inference device according to the present embodiment by searching the graph as Table 5. 本実施の形態に係る推論装置のグラフ検索部によって検索されたノードの重要度、検索結果を含む統合グラフ(図13に対応する統合グラフ)の例を示す図である。It is a figure which shows the example of the integrated graph (integrated graph corresponding to FIG. 13) including the importance of the node searched by the graph search part of the inference apparatus which concerns on this embodiment, and the search result. 比較例における知識グラフの一例を示す図である。It is a figure which shows an example of the knowledge graph in the comparative example. 図15の知識グラフに対して比較例の推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードのいずれかから目的ノードのいずれかまでの経路のうちの、総距離が最短になる経路の上位3位までの結果を示す図である。When the importance is obtained from the knowledge graph of FIG. 15 by the inference method of the comparative example and the reciprocal of the importance is the distance, the total distance of the paths from any of the starting nodes to any of the target nodes. It is a figure which shows the result to the top 3 of the route which becomes the shortest. 本実施の形態における知識グラフの一例を示す図である。It is a figure which shows an example of the knowledge graph in this embodiment. 図17の知識グラフに対して本実施の形態に係る推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードのいずれかから目的ノードのいずれかまでの経路のうちの、総距離が最短になる経路の上位3位までの結果を示す図である。When the importance is obtained from the knowledge graph of FIG. 17 by the inference method according to the present embodiment and the reciprocal of the importance is the distance, the path from any of the starting nodes to any of the target nodes is used. , It is a figure which shows the result to the top 3 of the route which the total distance becomes the shortest. 比較例における知識グラフの他の例を示す図である。It is a figure which shows another example of the knowledge graph in the comparative example. 図19の知識グラフに対して比較例の推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードから目的ノードのいずれかまでの経路のうちの、総距離が最短になる経路を示す図である。When the importance is obtained from the knowledge graph of FIG. 19 by the inference method of the comparative example and the reciprocal of the importance is the distance, the total distance of the paths from the start node to any of the target nodes is the shortest. It is a figure which shows the path. 本実施の形態における知識グラフの他の例を示す図である。It is a figure which shows another example of the knowledge graph in this embodiment. 図21の知識グラフに対して本実施の形態に係る推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードから目的ノードのいずれかまでの経路のうちの、総距離が最短になる経路を示す図である。When the importance is obtained from the knowledge graph of FIG. 21 by the inference method according to the present embodiment and the reciprocal of the importance is the distance, the total distance of the paths from the start node to any of the target nodes. It is a figure which shows the path which becomes the shortest.
 以下に、本発明の実施の形態に係る推論装置、推論方法、及び推論プログラムを、図面を参照しながら説明する。以下の実施の形態は、例にすぎず、本発明の範囲内で種々の変更が可能である。 Hereinafter, the inference device, the inference method, and the inference program according to the embodiment of the present invention will be described with reference to the drawings. The following embodiments are merely examples, and various modifications can be made within the scope of the present invention.
《1》構成
 本実施の形態に係る推論装置は、互いに異なる複数のドメインに属する情報を、グラフを用いる方法で統合し、統合された情報としての統合グラフを作る。また、実施の形態に係る推論装置は、統合された情報としての統合グラフから推論の結果を導出する構成を備えることができる。ここで、グラフとは、頂点(すなわち、ノード)と辺(すなわち、エッジ)とを構成要素として有する図形である。推論の結果を導出する方法は、例えば、学習データを必要としないグラフ解析方法である。グラフは、主に、有向グラフと無向グラフとに分類される。有向グラフは、頂点と、向きを持つ辺(すなわち、矢印)と、により構成される。無向グラフは、頂点と、向きを持たない辺と、により構成される。無向グラフは、頂点と、両方向に向きを持つ辺と、により構成される双方向グラフと等価である。実施の形態における有向グラフは、例えば、後述の図6、図9(a)及び(b)、などに示される。
<< 1 >> Configuration The inference device according to the present embodiment integrates information belonging to a plurality of domains different from each other by a method using a graph to create an integrated graph as integrated information. Further, the inference device according to the embodiment can be provided with a configuration for deriving the inference result from the integrated graph as integrated information. Here, the graph is a figure having vertices (that is, nodes) and edges (that is, edges) as constituent elements. The method for deriving the inference result is, for example, a graph analysis method that does not require training data. Graphs are mainly classified into directed graphs and undirected graphs. A directed graph is composed of vertices and edges with orientation (ie, arrows). An undirected graph is composed of vertices and edges that have no orientation. An undirected graph is equivalent to a bidirectional graph composed of vertices and edges with orientations in both directions. The directed graphs in the embodiment are shown, for example, in FIGS. 6, 9 (a) and 9 (b), which will be described later.
 図1は、本発明の実施の形態に係る推論装置10の構成を概略的に示す機能ブロック図である。推論装置10は、本実施の形態に係る推論方法を実施することができる装置である。図1に示されるように、推論装置10は、情報結合部としてのグラフ結合部14を備えている。また、推論装置10は、知識ベース11aを保存する知識ベース部11と、ルールデータベース(「ルールDB」とも表記する。)12aを保存するルールデータベース部(「ルールDB部」とも表記する。)12と、動的情報取得部13と、情報結合部としてのグラフ結合部14と、情報解析部としてのグラフ解析部15と、情報検索部としてのグラフ検索部16と、情報出力部17、関係解析部18、関係性データベース(「関係性DB」とも表記する。)19aを保存する関係性データベース部(「関係性DB部」とも表記する。)19とを備えてもよい。 FIG. 1 is a functional block diagram schematically showing the configuration of the inference device 10 according to the embodiment of the present invention. The inference device 10 is an device capable of implementing the inference method according to the present embodiment. As shown in FIG. 1, the inference device 10 includes a graph coupling unit 14 as an information coupling unit. Further, the inference device 10 has a knowledge base unit 11 for storing the knowledge base 11a and a rule database unit (also referred to as a "rule DB unit") 12 for storing the rule database (also referred to as "rule DB") 12a. , Dynamic information acquisition unit 13, graph connection unit 14 as information connection unit, graph analysis unit 15 as information analysis unit, graph search unit 16 as information search unit, information output unit 17, relationship analysis. A unit 18 and a relationship database unit (also referred to as “relationship DB unit”) 19 for storing the relationship database (also referred to as “relationship DB”) 19a may be provided.
 知識ベース部11は、知識情報からなる知識ベース11aを保存する記憶装置である。知識ベース部11は、推論装置10の一部である。ただし、知識ベース部11は、推論装置10と通信できるように接続された外部の装置に備えられてもよい。 The knowledge base unit 11 is a storage device that stores a knowledge base 11a composed of knowledge information. The knowledge base unit 11 is a part of the inference device 10. However, the knowledge base unit 11 may be provided in an external device connected so as to be able to communicate with the inference device 10.
 ルールDB部12は、複数のグラフを結合(すなわち、連結)するための複数のルール(以下「推論ルール」ともいう。)を保存する記憶装置である。ルールDB部12は、推論装置10の一部である。ただし、ルールDB部12は、推論装置10と通信できるように接続された外部の装置に備えられてもよい。 The rule DB unit 12 is a storage device that stores a plurality of rules (hereinafter, also referred to as "inference rules") for combining (that is, concatenating) a plurality of graphs. The rule DB unit 12 is a part of the inference device 10. However, the rule DB unit 12 may be provided in an external device connected so as to be able to communicate with the inference device 10.
 動的情報取得部13は、動的に変化する外部の情報を取得する。動的情報取得部13は、時々刻々と動的に変化する情報を取得し、取得された情報を予め決められた形式の情報に変換して出力する。外部の情報は、外部の装置、外部の装置で実行されるアプリケーション、などから取得される。外部の情報は、例えば、アプリケーション41、ユーザインタフェース42、GPS(Global Positioning System)43、カメラ44、インターネット45、外部データベース(「外部DB」とも表記する。)46、センサ47、などから取得される。アプリケーション41は、コンピュータ、携帯型情報端末、などの装置で動作するソフトウェアである。 The dynamic information acquisition unit 13 acquires external information that changes dynamically. The dynamic information acquisition unit 13 acquires information that changes dynamically from moment to moment, converts the acquired information into information in a predetermined format, and outputs the information. External information is obtained from an external device, an application executed by the external device, and the like. External information is acquired from, for example, an application 41, a user interface 42, a GPS (Global Positioning System) 43, a camera 44, the Internet 45, an external database (also referred to as "external DB") 46, a sensor 47, and the like. .. The application 41 is software that operates on a device such as a computer or a portable information terminal.
 グラフ結合部14は、知識ベース11aから提供された知識情報と、ルールDB12aから提供された推論ルールと、動的情報取得部13によって取得された外部の情報とに基づいて、グラフ(「意味のグラフ」又は「データ構造」又は「知識グラフ」ともいう。)を動的に結合することによって、情報が統合された統合グラフを生成する。 The graph connection unit 14 is based on the knowledge information provided by the knowledge base 11a, the inference rule provided by the rule DB 12a, and the external information acquired by the dynamic information acquisition unit 13, and is based on a graph (“meaningful”. By dynamically combining "graphs" or "data structures" or "knowledge graphs"), an integrated graph with integrated information is generated.
 関係解析部18は、知識ベース11aが保持する知識情報及びグラフ結合部14が扱う外部の情報のうちの少なくともいずれかの情報をもとに、グラフの構成要素であるノードの間の関係性を解析する。ただし、統合グラフの構成要素であるノードのノード間の関係性を動的に生成する必要がない場合又はノード間の関係性がユーザ操作によって入力される場合には、関係解析部18を備えないことも可能である。 The relationship analysis unit 18 determines the relationship between the nodes that are the components of the graph based on at least one of the knowledge information held by the knowledge base 11a and the external information handled by the graph connection unit 14. To analyze. However, if it is not necessary to dynamically generate the relationships between the nodes that are the components of the integrated graph, or if the relationships between the nodes are input by user operations, the relationship analysis unit 18 is not provided. It is also possible.
 関係性DB部19は、関係性DB19aを保存する記憶装置であり、関係解析部18の解析結果であるノード間の関係性を示すデータを記憶している。ただし、関係性DB部19は、推論装置10と通信できるように接続された外部の装置に備えられてもよい。 The relationship DB unit 19 is a storage device that stores the relationship DB 19a, and stores data indicating the relationship between the nodes, which is the analysis result of the relationship analysis unit 18. However, the relationship DB unit 19 may be provided in an external device connected so as to be able to communicate with the inference device 10.
 グラフ解析部15は、グラフ結合部14によって生成された統合グラフを解析して、この統合グラフの構成要素であるノードの重要度を算出する。各ノードの重要度は、例えば、統合グラフ上を無限にランダムウォークして定常状態となったときの、各ノードに到達する確率、すなわち、各ノードへの到達確率に対して関係性DB19aに格納されている関係性を表す値をもとに変換した値である。 The graph analysis unit 15 analyzes the integrated graph generated by the graph connecting unit 14 and calculates the importance of the nodes that are the components of this integrated graph. The importance of each node is stored in the relationship DB 19a with respect to the probability of reaching each node, that is, the probability of reaching each node when, for example, an infinite random walk on the integrated graph is performed to reach a steady state. It is a value converted based on the value representing the relationship being made.
 グラフ検索部16は、グラフ解析部15によって解析された統合グラフから、グラフ解析部15によって算出された重要度を用いて、所望の情報を検索する。所望の情報は、例えば、グラフ解析部15によって解析された統合グラフにおける特定の情報パターンである。 The graph search unit 16 searches for desired information from the integrated graph analyzed by the graph analysis unit 15 using the importance calculated by the graph analysis unit 15. The desired information is, for example, a specific information pattern in the integrated graph analyzed by the graph analysis unit 15.
 情報出力部17は、グラフ検索部16によって検索された所望の情報をユーザインタフェース51に出力する。 The information output unit 17 outputs the desired information searched by the graph search unit 16 to the user interface 51.
 ユーザインタフェース51は、例えば、音声を出力する音声出力装置としてのスピーカ、映像を表示する映像出力装置としてのディスプレイ、などである。ユーザインタフェース51は、グラフ検索部16によって検索された所望の情報を、ユーザに対し、音声、映像、などによって提供する。 The user interface 51 is, for example, a speaker as an audio output device for outputting audio, a display as a video output device for displaying video, and the like. The user interface 51 provides the user with desired information searched by the graph search unit 16 by voice, video, or the like.
 図2は、本実施の形態に係る推論装置10のハードウェア構成の例を示す図である。図2の例では、推論装置10は、処理回路61と、記憶装置としてのハードディスクドライブ(HDD)62と、入力インタフェース装置63と、出力インタフェース装置64とを備えている。処理回路61は、例えば、図1に示される動的情報取得部13、グラフ結合部14、関係解析部18、グラフ解析部15、グラフ検索部16、及び情報出力部17の機能を実現することができる半導体集積回路である。入力インタフェース装置63は、例えば、外部機器、外部機器で実行されるソフトウェア、などと通信を行う回路である。出力インタフェース装置64は、例えば、外部機器、外部機器で実行されるソフトウェア、などと通信を行う回路である。 FIG. 2 is a diagram showing an example of the hardware configuration of the inference device 10 according to the present embodiment. In the example of FIG. 2, the inference device 10 includes a processing circuit 61, a hard disk drive (HDD) 62 as a storage device, an input interface device 63, and an output interface device 64. The processing circuit 61 realizes, for example, the functions of the dynamic information acquisition unit 13, the graph connection unit 14, the relationship analysis unit 18, the graph analysis unit 15, the graph search unit 16, and the information output unit 17 shown in FIG. It is a semiconductor integrated circuit that can be used. The input interface device 63 is, for example, a circuit that communicates with an external device, software executed by the external device, and the like. The output interface device 64 is, for example, a circuit that communicates with an external device, software executed by the external device, and the like.
 処理回路61は、例えば、専用のハードウェアである。処理回路61は、例えば、単一回路、複合回路、プログラムを実行するプロセッサ、並列プログラムを実行するプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、又はこれらのうちのいずれかを組み合わせたものであってもよい。 The processing circuit 61 is, for example, dedicated hardware. The processing circuit 61 is, for example, a single circuit, a composite circuit, a processor that executes a program, a processor that executes a parallel program, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or any of these. It may be a combination of the above.
 図3は、本実施の形態に係る推論装置10のハードウェア構成の他の例を示す図である。図3において、図2に示される構成要素と同一又は対応する構成要素には、図2に示される符号と同じ符号が付される。図3の例では、推論装置10は、情報処理部としてのプロセッサであるCPU(Central Processing Unit)71と、プログラムを記憶する記憶装置としてのメモリ72と、記憶装置としてのHDD62と、入力インタフェース装置63と、出力インタフェース装置64とを備えている。メモリ72は、本実施の形態に係る推論プログラムを記憶することができる。CPU71は、メモリ72に記憶されている推論プログラムを実行することによって、図1に示される動的情報取得部13、グラフ結合部14、関係解析部18、グラフ解析部15、グラフ検索部16、及び情報出力部17の機能を実現することができる。 FIG. 3 is a diagram showing another example of the hardware configuration of the inference device 10 according to the present embodiment. In FIG. 3, components that are the same as or correspond to the components shown in FIG. 2 are designated by the same reference numerals as those shown in FIG. In the example of FIG. 3, the inference device 10 includes a CPU (Central Processing Unit) 71 as a processor as an information processing unit, a memory 72 as a storage device for storing a program, an HDD 62 as a storage device, and an input interface device. 63 and an output interface device 64 are provided. The memory 72 can store the inference program according to the present embodiment. By executing the inference program stored in the memory 72, the CPU 71 includes the dynamic information acquisition unit 13, the graph connection unit 14, the relationship analysis unit 18, the graph analysis unit 15, and the graph search unit 16 shown in FIG. And the function of the information output unit 17 can be realized.
 CPU71は、1次キャッシュメモリ及び2次キャッシュメモリなどの複数のキャッシュメモリを備えてもよい。また、HDD62、メモリ72、などに記憶されているプログラムは、推論装置10が行う処理の手順又は方法をコンピュータに実行させる。メモリ72は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)などのような、不揮発性又は揮発性の半導体メモリである。 The CPU 71 may include a plurality of cache memories such as a primary cache memory and a secondary cache memory. Further, the program stored in the HDD 62, the memory 72, or the like causes the computer to execute the procedure or method of the process performed by the inference device 10. The memory 72 includes, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Memory), an EEPROM (Electrically Memory), or an EEPROM (Electrically Memory). It is a volatile semiconductor memory.
 図2及び図3において、学習データの保存には、HDD62を使用することができる。なお、学習データは、DVD(Digital Versatile Disc)などのような光ディスクを用いる光学式記憶装置、半導体メモリ、外部の記憶装置、などに記憶されてもよい。 In FIGS. 2 and 3, the HDD 62 can be used for storing the learning data. The learning data may be stored in an optical storage device using an optical disk such as a DVD (Digital Versaille Disc), a semiconductor memory, an external storage device, or the like.
 なお、推論装置10は、その機能の一部を専用のハードウェアで実現し、機能の他の一部をソフトウェア又はファームウェアで実現してもよい。例えば、動的情報取得部13の機能を専用のハードウェアとしての処理回路で実現し、動的情報取得部13以外の構成の機能をメモリに格納されたプログラムを実行するプロセッサであるCPUで実現してもよい。 Note that the inference device 10 may realize a part of its function by dedicated hardware and another part of its function by software or firmware. For example, the function of the dynamic information acquisition unit 13 is realized by a processing circuit as dedicated hardware, and the functions of the configuration other than the dynamic information acquisition unit 13 are realized by the CPU, which is a processor that executes a program stored in the memory. You may.
《2》動作
《2-1》動作の概要
 図4は、本実施の形態に係る推論装置10の動作を示すフローチャートである。推論装置10の動作は、フェーズPh1の動作である事前準備と、フェーズPh2の動作である推論の実行とを含む。
<< 2 >> Operation << 2-1 >> Outline of operation FIG. 4 is a flowchart showing the operation of the inference device 10 according to the present embodiment. The operation of the inference device 10 includes advance preparation, which is the operation of Phase Ph1, and execution of inference, which is the operation of Phase Ph2.
 フェーズPh1は、ステップS101の処理である知識ベース11aの準備と、ステップS102の処理であるルールDB12aの準備とを含む。また、フェーズPh1は、関係解析部18の処理又はその一部の処理、及びその処理結果の関係性DB19aへの保存を含んでもよい。この処理は、図4においてステップS103として示される。フェーズPh1の処理の全体又は一部は、推論装置10以外の装置によって行われてもよい。 Phase Ph1 includes preparation of the knowledge base 11a, which is the process of step S101, and preparation of the rule DB 12a, which is the process of step S102. Further, the phase Ph1 may include the processing of the relationship analysis unit 18 or a part of the processing, and the storage of the processing result in the relationship DB 19a. This process is shown as step S103 in FIG. All or part of the processing of Phase Ph1 may be performed by an device other than the inference device 10.
 フェーズPh2は、ステップS104の処理である動的情報の取得と、ステップS105の処理であるグラフの結合と、ステップS107の処理である統合グラフの解析と、ステップS108の処理である統合グラフの検索と、ステップS109の処理である情報の出力とを含む。ステップS104の処理であるグラフの結合は、事前準備された知識ベース11aとルールDB12aとを用いて実行される。ステップS107の処理であるグラフの解析は、関係性DB19aを用いて実行される。また、ステップS107の処理であるグラフの解析は、関係解析部18の処理又はその一部の処理、及びその処理結果の関係性DB19aへの保存も含んでもよい。この処理は、図4においてステップS106として示される。 Phase Ph2 is the acquisition of dynamic information, which is the process of step S104, the combination of graphs, which is the process of step S105, the analysis of the integrated graph, which is the process of step S107, and the search of the integrated graph, which is the process of step S108. And the output of information which is the process of step S109. The graph combination, which is the process of step S104, is executed using the prepared knowledge base 11a and the rule DB 12a. The analysis of the graph, which is the process of step S107, is executed using the relationship DB 19a. Further, the analysis of the graph, which is the process of step S107, may include the process of the relationship analysis unit 18 or a part of the process, and the storage of the process result in the relationship DB 19a. This process is shown as step S106 in FIG.
《2-2》ステップS101:知識ベース11aの準備
 まず、推論装置10を動作させるために使用される様々な知識情報を保存する知識ベース11aが作成される。知識ベース11aは、知識ベース部11に格納される。
<< 2-2 >> Step S101: Preparation of Knowledge Base 11a First, a knowledge base 11a for storing various knowledge information used for operating the inference device 10 is created. The knowledge base 11a is stored in the knowledge base unit 11.
 知識ベース11aとして保存される情報の形式は、例えば、RDF(Resource Description Framework)である。RDFは、インターネット上にある情報(リソース)を表現するための標準化された枠組みである。RDFでは、主語、述語、及び目的語からなるトリプルを用いてデータを表現する。 The format of the information stored as the knowledge base 11a is, for example, RDF (Resource Description Framework). RDF is a standardized framework for expressing information (resources) on the Internet. In RDF, data is represented using triples consisting of a subject, a predicate, and an object.
 また、RDFS(RDF Schema)は、リソースを表現するための標準化された語彙定義である。図5は、RDFSで定義されている「rdfs:subClassOf」という述語を用いたトリプルの例を表1として示す図である。表1に示される例Y1は、「rdfs:subClassOf」という述語を用いて、ラーメンクラス(主語)は、食べ物クラス(目的語)であることを、1つのトリプルを用いて表現している。ここで、「ラーメンクラス」は、ラーメンに属する物を意味している。また、「食べ物クラス」は、食べ物に属する物を意味している。 Also, RDFS (RDF Schema) is a standardized vocabulary definition for expressing resources. FIG. 5 is a diagram showing an example of a triple using the predicate “rdfs: subClassOf” defined in RDFS as Table 1. Example Y1 shown in Table 1 uses the predicate "rdfs: subClassOf" to express that the ramen class (subject) is a food class (object) using one triple. Here, "ramen class" means a thing belonging to ramen. Also, "food class" means something that belongs to food.
 図6は、図5に示されるRDF表現の例Y1を、有向グラフを用いて示す図である。図6に示されるように、RDF表現では、主語と目的語とは頂点、すなわち、ノードとして表現され、述語は辺、すなわち、エッジとして表現される。RDF表現では、主語、述語、及び目的語からなるトリプルは、主語であるノードと、目的語であるノードと、述語である矢印、すなわち、主語から目的語へ向かうエッジである矢印と、を含む有向グラフとして表現される。 FIG. 6 is a diagram showing an example Y1 of the RDF representation shown in FIG. 5 using a directed graph. As shown in FIG. 6, in the RDF representation, the subject and the object are represented as vertices, that is, nodes, and the predicate is represented as edges, that is, edges. In the RDF representation, a triple consisting of a subject, a predicate, and an object includes a node that is the subject, a node that is the object, and an arrow that is a predicate, that is, an arrow that is an edge from the subject to the object. Expressed as a directed graph.
 本出願において、例えば、主語A0、述語B0、及び目的語C0からなるトリプルは、以下のように、括弧を用いて記述される。
〈A0、B0、C0〉
In the present application, for example, the triple consisting of the subject A0, the predicate B0, and the object C0 is described using parentheses as follows.
<A0, B0, C0>
 知識ベース11aとして保存されている知識情報は、例えば、機器情報、常識(すなわち、コモンセンス)情報、一般的な知識情報、これらの情報のオントロジー、などである。知識ベース11aとして保存されている知識情報は、機器情報、常識情報、一般的な知識情報、これらの情報のオントロジー、などのうちの2種類以上を含むことができる。 The knowledge information stored as the knowledge base 11a is, for example, device information, common sense (that is, common sense) information, general knowledge information, ontology of these information, and the like. The knowledge information stored as the knowledge base 11a can include two or more types of device information, common knowledge information, general knowledge information, ontology of these information, and the like.
 「機器情報」は、機器に関する情報である。機器情報は、例えば、機器の属性、機器の名前、機器の種類、機器の設定項目、機器の設定項目の数値範囲、機器の利用制限、機器の使用回数、機器の使い方、などである。機器の属性は、例えば、エアコンクラス、扇風機クラス、音楽再生機クラス、などを含むことができる。 "Device information" is information about the device. The device information includes, for example, device attributes, device names, device types, device setting items, numerical ranges of device setting items, device usage restrictions, device usage counts, device usage, and the like. The attributes of the device can include, for example, an air conditioner class, a fan class, a music player class, and the like.
 「常識情報」は、人間の一般常識に関する情報である。常識情報は、例えば、人間の価値観、人間の考え、人間の行動、人間の状態、などである。常識情報は、人間の状態に関する情報と人間の行動に関する情報とを含む。人間の状態に関する情報は、人間の物理的状態に関する情報と人間の心理的状態に関する情報とを含む。人間の状態に関する情報は、例えば、人間が暑いと感じている、人間が寒いと感じている、人間が困っている、人間が笑っている、などの情報を含むことができる。人間の行動に関する情報は、例えば、運転する、食べる、寝る、探す、特定の場所に行く、などの情報を含むことができる。 "Common sense information" is information related to human common sense. Common sense information is, for example, human values, human thoughts, human behavior, human condition, and the like. Common sense information includes information about human condition and information about human behavior. Information about the human state includes information about the physical state of the person and information about the psychological state of the person. Information about the human condition can include, for example, information that the human feels hot, that the human feels cold, that the human is in trouble, that the human is laughing, and so on. Information about human behavior can include, for example, information such as driving, eating, sleeping, searching, going to a specific place, and the like.
 知識ベース11aの常識情報の例F1を以下に示す。
F1=〈暑い、then、冷たい食べ物を食べる〉
 常識情報の例F1は、「人間は、暑いならば、冷たい食べ物を食べる。」という知識を、〈主語、述語、目的語〉の1つのトリプルで表現している。例F1のトリプルにおける「then」(述語)は、「人間が(主語)の状態にある場合、次に取る行動は(目的語)の行動である。」を意味するものとして、定義される。したがって、例F1のトリプルは、「人間が「暑い」(主語)という状態にある場合、人間が次に取る行動は「冷たい物を食べる」(目的語)の行動である」ことを示している。
An example F1 of common sense information of the knowledge base 11a is shown below.
F1 = <Eat hot, ten, cold food>
Example of common sense information F1 expresses the knowledge that "human beings eat cold food when it is hot" with one triple of <subject, predicate, object>. The "then" (predicate) in the triple of Example F1 is defined as meaning "when a human being is in the (subject) state, the next action to be taken is the (object) action." Therefore, the triple of Example F1 shows that "when a human being is in a state of" hot "(subject), the next action that a human takes is the action of" eating cold food "(object)." ..
 知識ベース11aの常識情報の例F2a及びF2bを以下に示す。
F2a=〈冷たい食べ物を食べる、slot、冷たい食べ物クラス〉
F2b=〈冷たい食べ物を食べる、subAct、食べる〉
 常識情報の例F2a及びF2bは、「「冷たい食べ物を食べる」という行動は、その対象が「冷たい食べ物クラス」であり、上位概念としての行動は「食べる」である。」という知識を、〈主語、述語、目的語〉を含む2つのトリプルで表現している。例F2aにおける「slot」(述語)は、「(主語)の行動が対象とする物体は、(目的語)の物体である。」を意味するものとして、定義される。例F2bにおける「subAct」(述語)は、「(主語)の上位概念の行動は、(目的語)の行動である。」を意味するものとして、定義される。
Examples of common sense information of the knowledge base 11a, F2a and F2b, are shown below.
F2a = <Eat cold food, slot, cold food class>
F2b = <Eat cold food, subAct, eat>
Examples of common sense information F2a and F2b state that "the action of" eating cold food "is the target of" cold food class ", and the action as a superordinate concept is" eating ". Is expressed by two triples including <subject, predicate, object>. Example F2a, "slot" (predicate) is defined as meaning "the object targeted by the action of (subject) is the object of (object)." In Example F2b, "subAct" (predicate) is defined as meaning "the action of the superordinate concept of (subject) is the action of (object)."
 なお、使用される常識情報は、地域、性別、及び推論の対象としているアプリケーション、のドメインごとに、異なる情報であってもよい。つまり、推論装置10が対象としている人又は分野に応じて、推論装置10が使用する知識ベース11aの常識情報を、複数種類の常識情報のうちのいずれかの常識情報に切替えてもよい。 Note that the common sense information used may be different information for each region, gender, and domain of the application to be inferred. That is, the common sense information of the knowledge base 11a used by the inference device 10 may be switched to any one of a plurality of types of common sense information according to the person or field targeted by the inference device 10.
 「一般的な知識情報」は、普遍的な事実に関する情報である。「一般的な知識情報」は、工学、物理、科学、生物、医学、食品、地理、宗教、経済、政治、歴史、有名人物、などに関する情報を含むことができる。 "General knowledge information" is information about universal facts. "General knowledge information" can include information on engineering, physics, science, biology, medicine, food, geography, religion, economy, politics, history, celebrities, and so on.
 知識ベース11aの一般的な知識情報の例G1を以下に示す。
G1=〈アイスクリーム、rdfs:subClassOf、冷たい食べ物クラス〉
 一般的な知識情報の例G1における「rdfs:subClassOf」(述語)は、「(主語)の物は、(目的語)の物のサブクラスである。」を意味するものとして、定義される。例G1は、「アイスクリーム(主語)は、冷たい食べ物(目的語)の、サブクラスである。」という知識を、〈主語、述語、目的語〉の1つのトリプルで表現している。
An example G1 of general knowledge information of the knowledge base 11a is shown below.
G1 = <ice cream, rdfs: subClassOf, cold food class>
Example of general knowledge information "rdfs: subClassOf" (predicate) in G1 is defined as meaning "a (subject) thing is a subclass of a (object) thing." Example G1 expresses the knowledge that "ice cream (subject) is a subclass of cold food (object)" with one triple of <subject, predicate, object>.
 知識ベース11aの一般的な知識情報の例G2を以下に示す。
G2=〈苺アイスクリーム、instanceOf、アイスクリームクラス〉
 一般的な知識情報の例G2における「instanceOf」(述語)は、「(主語)の物は、(目的語)のインスタンスである。」を意味するものとして、定義される。例G2は、「苺アイスクリーム(主語)は、アイスクリームクラス(目的語)、のインスタンス(実態)である。」という知識を、〈主語、述語、目的語〉の1つのトリプルで表現している。
An example G2 of general knowledge information of the knowledge base 11a is shown below.
G2 = <Strawberry ice cream, instanceOf, ice cream class>
Example of general knowledge information "instanceOf" (predicate) in G2 is defined as meaning "a thing of (subject) is an instance of (object)." Example G2 expresses the knowledge that "strawberry ice cream (subject) is an instance (actual state) of ice cream class (object)" with one triple of <subject, predicate, object>. There is.
 前記オントロジーとは、対象とするドメインの語彙、語彙と語彙の関係、クラス、属性、制約条件等である。オントロジーは、例えば、以下に列記する情報である。
・述語「slot」は、「(主語)の行動が対象とする物体は(目的語)である。」を意味する。
・述語「slot」がとり得る主語は、行動に関する語彙である。
・述語「slot」がとり得る目的語は、オブジェクトのクラスに関する語彙である。
The ontology is the vocabulary of the target domain, the relationship between the vocabulary and the vocabulary, the class, the attribute, the constraint condition, and the like. The ontology is, for example, the information listed below.
-The predicate "slot" means "the object targeted by the action of (subject) is (object)."
-The subject that the predicate "slot" can take is a vocabulary related to behavior.
-The object that the predicate "slot" can take is a vocabulary related to a class of objects.
 図7は、本実施の形態における知識ベース11aの例を表2として示す図である。 FIG. 7 is a diagram showing an example of the knowledge base 11a in the present embodiment as Table 2.
《2-3》ステップS102:ルールDB12aの準備
 次に、推論装置10を動作させるために使用される1つ以上の推論ルールが、ルールDB12aとして用意される。ルールDB12aは、ルールDB部12に格納される。用意された推論ルールは、互いに異なる複数のドメインの各々に属する情報を結合することによって複数の情報を1つの情報に統合すること、センサなどから取得された外部情報から新たな仮説を生成すること、などに利用される。
<< 2-3 >> Step S102: Preparation of Rule DB 12a Next, one or more inference rules used to operate the inference device 10 are prepared as rule DB 12a. The rule DB 12a is stored in the rule DB unit 12. The prepared inference rules are to integrate multiple pieces of information into one piece of information by combining information belonging to each of multiple domains that are different from each other, and to generate a new hypothesis from external information obtained from sensors or the like. , Etc. are used.
 互いに異なる複数のドメインの各々に属する情報を結合するために、例えば、人間の状態に関する情報と人間の行動に関する情報とを利用してもよい。例えば、以下の推論ルールの例W1及びW2をルールDB12aに保存してもよい。 In order to combine information belonging to each of a plurality of different domains, for example, information on human condition and information on human behavior may be used. For example, the following inference rule examples W1 and W2 may be stored in the rule DB 12a.
 推論ルールの例W1は、「車外の気温が30度以上ならば、車外及び運転手の状態は暑い。」である。推論ルールの例W1は、温度センサにより取得された車外の気温情報と、人間の状態に関する情報と、を結合する役割を持つ。 Example W1 of the inference rule is "If the temperature outside the vehicle is 30 degrees or higher, the condition outside the vehicle and the driver is hot." The example W1 of the inference rule has a role of combining the temperature information outside the vehicle acquired by the temperature sensor and the information on the human condition.
 推論ルールの例W2は、「現在時刻が7時又は12時又は17時である場合、現在時刻は「食べる」という動作に関連する。」である。推論ルールの例W2は、時計により取得された現在時刻である時間情報と、人間の行動に関する情報と、を結合する役割を持つ。 Example W2 of the inference rule is related to the action of "eating" when the current time is 7:00, 12:00, or 17:00. ". The example W2 of the inference rule has a role of combining the time information which is the current time acquired by the clock and the information about the human behavior.
 また、推論ルールは、外部から入力される情報を利用して、新たな仮説を生成するものであってもよい。例えば、人間が発話する音声をマイクで収集できる場合、以下の推論ルールの例W3~W5を、ルールDB12aとして保存してもよい。 In addition, the inference rule may generate a new hypothesis by using information input from the outside. For example, when the voice spoken by a human can be collected by the microphone, the following inference rule examples W3 to W5 may be saved as the rule DB 12a.
 推論ルールの例W3は、「人間が『お腹がいっぱい』と発話した場合、その人間は直前にレストランで何かを食べた。」である。
 推論ルールの例W4は、「人間が『お腹がいっぱい』と発話した場合、その人間は直前に車の中で何かを食べた。」である。
 推論ルールの例W5は、「人間が『お腹がいっぱい』と発話した場合、その人間は直前に家の中で何かを食べた。」である。
An example of an inference rule, W3, is "If a person says'I'm full', he ate something at a restaurant just before."
An example of an inference rule, W4, is "When a person says'I'm full', he ate something in the car just before."
An example of an inference rule, W5, is "When a person says'I'm full', he ate something in the house just before."
《2-4》ステップS103:オフラインでの関係解析
 関係解析部18は、オフラインでノード間の関係を解析する場合、ステップS103の処理を行う。オフラインでの関係解析を行う具体的な例として、以下の例H1及びH2を想定している。
 例H1は、ステップS103で取得した動的情報に対応するノードがすでに知識ベース11a内に存在している場合である。例H2は、ステップS103で取得した動的情報に対応するノードが知識ベース11a内に存在していなくとも、静的に知識ベース11a内に存在するノードの関係解析だけを完了させ、別途動的情報に対応するノードを追加した際に差分だけオンラインで解析する場合である。
<< 2-4 >> Step S103: Offline relationship analysis The relationship analysis unit 18 performs the process of step S103 when analyzing the relationship between nodes offline. The following examples H1 and H2 are assumed as specific examples of performing offline relationship analysis.
Example H1 is a case where the node corresponding to the dynamic information acquired in step S103 already exists in the knowledge base 11a. Example H2 statically completes only the relationship analysis of the nodes existing in the knowledge base 11a even if the node corresponding to the dynamic information acquired in step S103 does not exist in the knowledge base 11a, and is separately dynamic. This is a case where only the difference is analyzed online when a node corresponding to the information is added.
 ノード間の関係性の解析とは、具体的には、ノード間の関係の程度(すなわち、関係の強さ)を解析することである。例えば、図7において、述語は、主語と目的語との間の関係を示しているが、どの程度の関係の強さであるかを示していない。例えば、主語が「暑い」である場合、述語「then」は、主語「暑い」が目的語「温度を下げる」、「窓を開ける」、「冷たい食べ物を食べる」などと関係があることを示しているが、関係の強弱を示していない。そこで、関係解析部18は、各ノード間の関係の程度を解析し、その結果をデータ化して、関係性DB19aに保存しておく。このように、各ノード間の関係の程度を解析しデータ化して保存することで、ノード間の関係の強弱が判断可能になる。ただし、関係解析部18は、トリプルにおいて、主語になっているノードと目的語になっているノードと間の関係のみを解析すればよいのではなく、少なくとも観測ノードとなりえるノードと直接、間接を問わずに関係が存在するノードの全て若しくは一部のノードとの関係を解析する。 The analysis of the relationship between nodes is specifically to analyze the degree of relationship between nodes (that is, the strength of the relationship). For example, in FIG. 7, the predicate shows the relationship between the subject and the object, but does not show how strong the relationship is. For example, if the subject is "hot," the predicate "then" indicates that the subject "hot" is related to the objects "lower the temperature," "open the window," "eat cold food," and so on. However, it does not indicate the strength of the relationship. Therefore, the relationship analysis unit 18 analyzes the degree of the relationship between each node, converts the result into data, and stores it in the relationship DB 19a. In this way, by analyzing the degree of the relationship between each node, converting it into data, and saving it, the strength of the relationship between the nodes can be determined. However, the relationship analysis unit 18 does not have to analyze only the relationship between the node that is the subject and the node that is the object in the triple, but at least directly and indirectly with the node that can be the observation node. Analyze the relationship with all or some of the nodes that have a relationship regardless.
 関係の程度の尺度として、例えば、推論装置の開発者、ユーザなどが人手でノード間の関係の程度を規定する方法が考えられる。その際には、様々な観点で関係の程度が複数規定されてもよい。 As a measure of the degree of relationship, for example, a method in which a developer or user of an inference device manually defines the degree of relationship between nodes can be considered. In that case, a plurality of degrees of relationship may be specified from various viewpoints.
 また、ノード間の関係の程度は、ノードが出現するシソーラスなどの別の知識を用いて、例えば、ノード間のステップ数などに基づいて規定されてもよい。 Further, the degree of the relationship between the nodes may be defined by using another knowledge such as a thesaurus in which the nodes appear, for example, based on the number of steps between the nodes.
 加えて、ノード間の関係の程度は、知識で表現する対象の人の行動履歴又は特性、嗜好などに基づいて決定されてもよい。この場合、ノード間の関係の程度は、行動とその行動が行われたときの条件の同時発生する確率に応じて調整されてもよい。 In addition, the degree of relationship between nodes may be determined based on the behavior history or characteristics of the target person expressed by knowledge, preferences, and the like. In this case, the degree of relationship between the nodes may be adjusted according to the probability that the action and the condition when the action is performed occur at the same time.
 さらに、ノード間の関係の程度は、ノードとなる知識が出現する文書について、単語をベクトル表現化する技術であるword2vec又は任意の長さの文書をベクトル表現化する技術であるdoc2vecなどを用いて、知識となる単語をベクトル表現化し、知識間の類似度を算出可能な方法を用いて、決定されてもよい。言い換えれば、関係解析部18は、シソーラスのデータ、人間の行動履歴、人間の特性、人間の嗜好、word2vec、及びdoc2vec、などのうちの1つ以上を用いて関係性データを生成することができる。 Further, the degree of the relationship between the nodes is determined by using word2vec, which is a technique for vector-expressing words, or doc2vec, which is a technique for vector-expressing a document of an arbitrary length, for a document in which knowledge as a node appears. , The word to be knowledge may be expressed in a vector and determined by using a method capable of calculating the similarity between knowledge. In other words, the relationship analysis unit 18 can generate relationship data using one or more of thesaurus data, human behavior history, human characteristics, human preferences, word2vec, doc2vec, and the like. ..
 本実施の形態では、具体的な関係の程度の尺度に制約は設けられていない。本実施の形態において、関係解析部18は、ノード間の関係の程度をその後の処理で扱えるように算術的に扱える形式で表現できる任意の方法を採用可能である。一般的には、ノード間の関係の程度は、数値表現されるため、解析対象のノード数の行と列を持つ正方行列で表現可能である。少なくともこの正方行列が関係性DB19aに保存される。この正方行列を、関係行列Rと表現する。関係行列Rの要素rijは、ノードNとノードNの関係の程度を表す値である。 In this embodiment, there are no restrictions on the specific measure of the degree of relationship. In the present embodiment, the relationship analysis unit 18 can adopt an arbitrary method that can express the degree of the relationship between the nodes in a form that can be handled arithmetically so that it can be handled in the subsequent processing. In general, the degree of relationship between nodes is expressed numerically, so it can be expressed by a square matrix with rows and columns of the number of nodes to be analyzed. At least this square matrix is stored in the relationship DB 19a. This square matrix is expressed as a relational matrix R. The element r ij of the relation matrix R is a value representing the degree of the relationship between the node N i and the node N j.
《2-5》ステップS104:動的情報の取得
 動的情報取得部13は、時々刻々と動的に変化する情報を取得し、取得された情報を知識ベース11aと共通の形式の情報に変換して出力する。
<< 2-5 >> Step S104: Acquisition of dynamic information The dynamic information acquisition unit 13 acquires information that changes dynamically from moment to moment, and converts the acquired information into information in the same format as the knowledge base 11a. And output.
 動的情報取得部13が情報を取得するタイミングは、例えば、一定時間ごとである。動的情報取得部13が情報を取得するタイミングは、他のタイミングであってもよい。動的情報取得部13が情報を取得するタイミングは、例えば、動的情報取得部13がユーザによって入力された情報取得の命令を受け取った直後であってもよい。また、動的情報取得部13が情報を取得するタイミングは、特定の時刻であってもよい。特定の時刻は、例えば、昼の12時になったとき、車両が特定の市街地に入ったときなどである。また、動的情報取得部13が情報を取得するタイミングは、情報を取得する位置において特定の時刻になったとき、又は情報を取得する位置において特定のイベントがあるとき、などのように、複数の条件が同時に満たされる度であってもよい。 The timing at which the dynamic information acquisition unit 13 acquires information is, for example, at regular time intervals. The timing at which the dynamic information acquisition unit 13 acquires information may be another timing. The timing at which the dynamic information acquisition unit 13 acquires information may be, for example, immediately after the dynamic information acquisition unit 13 receives the information acquisition command input by the user. Further, the timing at which the dynamic information acquisition unit 13 acquires information may be a specific time. The specific time is, for example, when it is 12 o'clock in the daytime, when a vehicle enters a specific urban area, and so on. Further, the dynamic information acquisition unit 13 acquires information at a plurality of timings, such as when a specific time is reached at the position where the information is acquired, or when there is a specific event at the position where the information is acquired. May be satisfied at the same time.
 動的情報取得部13が取得する情報は、例えば、センサ情報、アプリケーション情報、ユーザの個人情報、ユーザの命令情報、及びその他の情報、などである。動的情報取得部13が取得する情報は、外部の情報ともいう。 The information acquired by the dynamic information acquisition unit 13 is, for example, sensor information, application information, user's personal information, user's command information, and other information. The information acquired by the dynamic information acquisition unit 13 is also referred to as external information.
 センサ情報は、例えば、タッチパネル、マイク、などのユーザインタフェース42で得られたユーザ操作の情報又は発話の情報である。また、センサ情報は、カメラ44又は各種のセンサで得られた外界又は人間に対するセンシング結果であってもよい。各種のセンサは、例えば、温度計、湿度計、などである。また、センサ情報は、GPS43などで得られた位置情報であってもよい。 The sensor information is, for example, user operation information or utterance information obtained by the user interface 42 such as a touch panel or a microphone. Further, the sensor information may be a sensing result for the outside world or a human being obtained by the camera 44 or various sensors. Various sensors are, for example, thermometers, hygrometers, and the like. Further, the sensor information may be position information obtained by GPS43 or the like.
 車を例にすると、センサ情報は、例えば、車内に設置された可視光カメラ又は赤外線カメラで得られた情報である。センサ情報は、例えば、運転手の顔と目の位置を検出した結果を示す情報であってもよい。また、カメラ44は、車内に設置された複数のカメラであってもよい。或いは、センサ情報は、車内に設置されたマイクによって取得された、運転手又は同乗者によって発話された音声を示す音声情報であってもよい。また、センサ情報は、生体センサ又は感圧センサなどによって取得された情報であってもよい。生体センサは、モーションセンサ、血圧センサ、心電図センサ、心拍数センサ、などを含むことができる。 Taking a car as an example, the sensor information is, for example, information obtained by a visible light camera or an infrared camera installed in the car. The sensor information may be, for example, information indicating the result of detecting the positions of the driver's face and eyes. Further, the camera 44 may be a plurality of cameras installed in the vehicle. Alternatively, the sensor information may be voice information indicating a voice uttered by the driver or a passenger, which is acquired by a microphone installed in the vehicle. Further, the sensor information may be information acquired by a biological sensor, a pressure-sensitive sensor, or the like. The biosensor can include a motion sensor, a blood pressure sensor, an electrocardiogram sensor, a heart rate sensor, and the like.
 例えば、動的情報取得部13が、温度センサ及び湿度センサから「車外の温度は、35度である。」及び「車外の湿度は、90%である。」という情報を取得した場合、動的情報取得部13は、それらの情報を、〈主語、述語、目的語〉からなる以下のようなトリプルの例J1及びJ2に変換する。
J1=〈車外の状態、temperature、35度〉
J2=〈車外の状態、humidity、90%〉
For example, when the dynamic information acquisition unit 13 acquires the information "the temperature outside the vehicle is 35 degrees" and "the humidity outside the vehicle is 90%" from the temperature sensor and the humidity sensor, it is dynamic. The information acquisition unit 13 converts the information into the following triple examples J1 and J2 composed of <subject, predicate, object>.
J1 = <condition outside the car, temperature, 35 degrees>
J2 = <condition outside the car, humidity, 90%>
 また、動的情報取得部13が、時計から得た現在時刻の情報として「現在は、12時です。」という情報を取得した場合、動的情報取得部13は、それらの情報を、〈主語、述語、目的語〉からなる以下のようなトリプルの例J3に変換する。
J3=〈現在時刻、is、12時〉
Further, when the dynamic information acquisition unit 13 acquires the information "currently 12 o'clock" as the information of the current time obtained from the clock, the dynamic information acquisition unit 13 uses the information as the <subject. , Predicate, object> is converted to the following triple example J3.
J3 = <current time, is, 12:00>
 動的情報取得部13が取得するアプリケーション情報は、例えば、ユーザの環境で動作しているアプリケーションが取得した情報、アプリケーションの利用状況、アプリケーションの利用履歴、アプリケーションによって表示中の画面、アプリケーションによって表示中の選択肢表示、などを含む。 The application information acquired by the dynamic information acquisition unit 13 is, for example, information acquired by an application operating in the user's environment, application usage status, application usage history, screen displayed by the application, and displayed by the application. Including choice display, etc.
 動的情報取得部13が、カーナビゲーションシステムのアプリケーションにより、近くのお店の情報を取得し、「近隣にある、「アイスクリーム屋#6」という名称のお店が、見つかった。」場合に、動的情報取得部13は、その情報を、〈主語、述語、目的語〉からなる以下のようなトリプルの例J4に変換する。
J4=〈近くのお店、has、アイスクリーム屋#6〉
The dynamic information acquisition unit 13 acquired information on a nearby store using the application of the car navigation system, and found a store named "Ice cream shop # 6" in the neighborhood. In this case, the dynamic information acquisition unit 13 converts the information into the following triple example J4 composed of <subject, predicate, object>.
J4 = <Nearby shop, has, ice cream shop # 6>
 動的情報取得部13が取得するユーザ命令情報は、例えば、ユーザが推論装置10を含む推論システムに対して明示的又は非明示的に命令した内容、などである。例えば、「ユーザがボタン操作により、エアコンを起動して温度を下げた。」場合、動的情報取得部13は、その情報を、〈主語、述語、目的語〉からなる以下のようなトリプルの例J5に変換する。
J5=〈直近の命令、is、温度を下げる〉
The user command information acquired by the dynamic information acquisition unit 13 is, for example, the content explicitly or implicitly instructed by the user to the inference system including the inference device 10. For example, in the case of "the user activates the air conditioner and lowers the temperature by operating a button", the dynamic information acquisition unit 13 uses the information as the following triple consisting of <subject, predicate, object>. Convert to Example J5.
J5 = <latest command, is, lower temperature>
 動的情報取得部13が取得するユーザの個人情報は、ユーザの名前、ユーザの家族、ユーザの趣向、などである。 The user's personal information acquired by the dynamic information acquisition unit 13 is the user's name, the user's family, the user's taste, and the like.
 動的情報取得部13は、例えば、「運転手の名前は東京太郎であり、運転手はラーメン一般が好き。」という情報を、〈主語、述語、目的語〉からなる以下のような2つのトリプルの例J6及びJ7に変換する。
J6=〈運転手、name、東京太郎〉
J7=〈運転手、like、ラーメンクラス〉
The dynamic information acquisition unit 13 provides, for example, the information "The driver's name is Tokyo Taro, and the driver likes ramen in general." Convert to triple examples J6 and J7.
J6 = <driver, name, Tokyo Taro>
J7 = <driver, like, ramen class>
 動的情報取得部13が取得する外部情報は、例えば、インターネット45から得られる天気、ニュース、地理情報、などを含む。また、動的情報取得部13が取得する外部情報は、外部DB46に保存された国、自治体、企業、個人などが提供している情報、などを含んでもよい。 The external information acquired by the dynamic information acquisition unit 13 includes, for example, weather, news, geographic information, etc. obtained from the Internet 45. Further, the external information acquired by the dynamic information acquisition unit 13 may include information stored in the external DB 46 and provided by a country, a local government, a company, an individual, or the like.
 図8は、本実施の形態に係る推論装置10の動的情報取得部13が生成するデータの例を表3として示す図である。表3の例は、車外の状態、カーナビゲーションの情報、現在時刻、命令情報、運転手の情報、などを含む。 FIG. 8 is a diagram showing an example of data generated by the dynamic information acquisition unit 13 of the inference device 10 according to the present embodiment as Table 3. Examples in Table 3 include conditions outside the vehicle, car navigation information, current time, command information, driver information, and the like.
《2-6》ステップS105:グラフの結合
 次に、グラフ結合部14は、例えば、知識ベース11aと、動的情報取得部13の出力と、に対して、ルールDB12aとして保存された推論ルールを、前向き連鎖(Forward Chaining)により順次適用して、複数のグラフを結合し、最終的に結合された複数のグラフからなる1つの統合グラフを生成する。統合グラフを構成する複数のグラフは、例えば、有向グラフである。
<< 2-6 >> Step S105: Graph Joining Next, the graph joining unit 14 applies an inference rule saved as a rule DB 12a to, for example, the knowledge base 11a and the output of the dynamic information acquisition unit 13. , Forward chaining is applied sequentially to combine a plurality of graphs to finally generate one integrated graph consisting of the combined graphs. The plurality of graphs constituting the integrated graph are, for example, directed graphs.
 ルールDB12aにおける推論ルールの適用を、グラフを用いて表現すると以下のようになる。
「対象のグラフに特定の情報パターンが見つかった場合、そのグラフに、ノード若しくはエッジを追加/変更/削除する。」
The application of the inference rule in the rule DB 12a can be expressed using a graph as follows.
"If a specific information pattern is found in the target graph, add / change / delete nodes or edges to the graph."
 前述の推論ルールの例W1及びW2を用いて、グラフの結合の具体例を説明する。以下において、「?x」は、任意の変数を示す。 A specific example of graph combination will be described using the above-mentioned examples of inference rules W1 and W2. In the following, "? X" indicates an arbitrary variable.
 推論ルールの例W1として、「車外の気温が30度以上ならば、車外及び運転手の状態は暑い。」を、グラフを用いて表現すると、以下のようになる。
「対象のグラフに、トリプル〈車外の状態、temperature、?x〉の情報パターンが見つかり、かつ、条件「?x≧30」を満たす場合、グラフに、トリプル〈車外の状態、status、暑い〉と、トリプル〈運転手、status、暑い〉と、を新規に追加する。」
As an example W1 of the inference rule, "If the temperature outside the vehicle is 30 degrees or higher, the condition outside the vehicle and the driver is hot." Is expressed using a graph as follows.
"If the information pattern of triple <outside condition, temperature,? X> is found in the target graph and the condition"? X ≥ 30 "is satisfied, the graph shows triple <outside condition, temperature, hot>. , Triple <driver, temperature, hot>, and newly added. "
 図9(a)及び(b)は、本実施の形態に係る推論装置10のグラフ結合部14がルールDB12aに格納された推論ルールである前向き連鎖ルールを用いて有向グラフを作成する様子を示す図である。 9 (a) and 9 (b) are diagrams showing how the graph connecting portion 14 of the inference device 10 according to the present embodiment creates a directed graph using a forward chaining rule which is an inference rule stored in the rule DB 12a. Is.
 推論ルールの例W2として、「現在時刻が7時又は12時又は17時の場合、現在時刻は“食べる”という動作に関連する。」をグラフで表現すると、以下のようになる。
「対象のグラフに、トリプル〈現在時刻、is、?x〉の情報パターンが見つかり、かつ、条件「?x=7時」又は「?x=12時」又は「?x=17時」を満たす場合、グラフに、トリプル〈現在時刻、relate、食べる〉を新規に追加する。」
As an example W2 of the inference rule, "when the current time is 7 o'clock, 12 o'clock or 17 o'clock, the current time is related to the action of" eating "" is expressed graphically as follows.
"A triple <current time, is,? X> information pattern is found in the target graph, and the condition"? X = 7 o'clock "or"? X = 12 o'clock "or"? X = 17:00 "is satisfied. If so, add a new triple <current time, relate, eat> to the graph. "
 例えば、図7に示される表2と図8に示される表3とを示すグラフに対して、推論ルールの例W1及びW2を、前向き連鎖により順次適用すると、図10に示されるようなグラフが得られる。図10のグラフは、一例である。 For example, when the inference rule examples W1 and W2 are sequentially applied to the graphs showing Table 2 shown in FIG. 7 and Table 3 shown in FIG. 8, the graph as shown in FIG. 10 is obtained. can get. The graph of FIG. 10 is an example.
 以上のように、グラフ結合部14は、センサから得られた情報又は互いに異なる複数のドメインの各々に属する情報から、図10に示されるような、統合された1つのグラフを生成することができる。すなわち、グラフ結合部14は、ルールを前向き連鎖により順次適用することで、互いに異なる複数のドメインの各々に属する情報を結合することによって、統合された情報を生成することができる。また、統合された情報は、統合グラフとして表現できる。 As described above, the graph connecting unit 14 can generate one integrated graph as shown in FIG. 10 from the information obtained from the sensor or the information belonging to each of the plurality of domains different from each other. .. That is, the graph connecting unit 14 can generate integrated information by combining information belonging to each of a plurality of domains different from each other by sequentially applying the rules by a forward chain. In addition, the integrated information can be expressed as an integrated graph.
 また、特に、グラフ結合部14は、互いに異なる複数のドメインの各々に属する情報を結合するために、人間に関する情報を利用する。人間に関する情報は、例えば、人間の状態に関する情報と人間の行動に関する情報とを含む。人間の状態に関する情報は、例えば、「暑い」、「寒い」、「お腹が空いた」、などである。人間の行動に関する情報は、例えば、「温度を下げる」、「温度を上げる」、「冷たいものを食べる」、などである。 In particular, the graph connecting unit 14 uses information about humans in order to combine information belonging to each of a plurality of domains different from each other. Information about humans includes, for example, information about human conditions and information about human behavior. Information about the human condition is, for example, "hot", "cold", "hungry", and so on. Information about human behavior is, for example, "lowering the temperature", "raising the temperature", "eating cold food", and the like.
 例えば、推論ルールの例W1を適用することで、「車外の状態」というセンサのドメインの情報と、「冷やし中華」という食品のドメインの情報とを、すなわち、互いに異なる複数のドメインの各々に属する情報を、結合することができる。 For example, by applying the example W1 of the inference rule, the information of the sensor domain "state outside the vehicle" and the information of the food domain "chilled Chinese" can be obtained, that is, the information belonging to each of a plurality of domains different from each other. Can be combined.
 具体的には、〈主語、述語、目的語〉からなるトリプルK1~K4、により、「車外の情報」と「冷やし中華」とを、有向グラフを用いて結合することができる。
K1=〈車外の状態、status、暑い〉
K2=〈暑い、then、冷たいものを食べる〉
K3=〈冷たいものを食べる、slot、冷たい食べ物クラス〉
K4=〈冷やし中華、instanceOf、冷たい食べ物クラス〉
Specifically, by using triples K1 to K4 consisting of <subject, predicate, and object>, "information outside the vehicle" and "chilled Chinese" can be combined using a directed graph.
K1 = <Outside the car, status, hot>
K2 = <Eat hot, ten, cold food>
K3 = <Eat cold food, slots, cold food class>
K4 = <Chilled Chinese, instanceOf, cold food class>
《2-7》ステップS106:オンラインでの関係解析
 関係解析部18は、オンラインでノード間の関係を解析する場合、ステップS106の処理を行う。オンラインでの解析を行う具体的な場合として、ステップS105で追加したノードの中にステップS101で準備した知識ベースに静的に存在しないノードが含まれている場合がある。この場合、ステップS103を実行しても必要な関係解析が完了していないため、関係解析部18は、ステップS106を実行することが必要となる。例えば、図9(a)には存在しないが図9(b)に存在するノードとして「運転手」がある。ステップS103の時点の知識グラフは、図9(a)の状態であるから、「運転手」とそれ以外のノードとの関係は、解析不能である。よって、関係解析部18は、「運転手」とのそれ以外のノードとの間の関係の解析を、ステップS106で行う。
<< 2-7 >> Step S106: Online Relationship Analysis The relationship analysis unit 18 performs the process of step S106 when analyzing the relationship between nodes online. As a specific case of performing online analysis, there is a case where the node added in step S105 includes a node that does not statically exist in the knowledge base prepared in step S101. In this case, since the necessary relationship analysis is not completed even if step S103 is executed, the relationship analysis unit 18 needs to execute step S106. For example, there is a "driver" as a node that does not exist in FIG. 9 (a) but exists in FIG. 9 (b). Since the knowledge graph at the time of step S103 is in the state of FIG. 9A, the relationship between the “driver” and the other nodes cannot be analyzed. Therefore, the relationship analysis unit 18 analyzes the relationship between the "driver" and the other nodes in step S106.
 ステップS106で行うノード間の関係の解析は、ステップS103における関係の解析と基本的な処理内容は同じであるが、ステップS103では、少なくとも関係の解析が完了していないノードに関するノード間の関係の解析を行う。 The analysis of the relationship between the nodes performed in step S106 has the same basic processing contents as the analysis of the relationship in step S103, but in step S103, at least the relationship between the nodes related to the nodes for which the analysis of the relationship has not been completed. Perform analysis.
《2-8》ステップS107:グラフの解析
 次に、グラフ解析部15は、グラフ結合部14におけるグラフの結合によって生成された統合グラフ(例えば、図10)のノードを、エッジを通って辿ることで、確率的な推論を実行し、推論の結果として各ノードの重要度を算出する。グラフ解析部15は、統合グラフ上のノードを辿ることで、演繹推論(deduction)、帰納推論(induction)、及び仮説的推論(abduction)を実行する。図11(a)~(c)は、演繹推論、帰納推論、及び仮説的推論をグラフとして示す図である。
<< 2-8 >> Step S107: Graph Analysis Next, the graph analysis unit 15 traces the nodes of the integrated graph (for example, FIG. 10) generated by the graph combination in the graph connection unit 14 through the edges. Then, probabilistic inference is executed, and the importance of each node is calculated as a result of the inference. The graph analysis unit 15 executes deductive inference (deduction), inductive inference (induction), and hypothetical inference (abduction) by tracing the nodes on the integrated graph. 11 (a) to 11 (c) are diagrams showing deductive reasoning, inductive reasoning, and hypothetical reasoning as a graph.
 例えば、図11(a)に示されるグラフのように、トリプル〈A0、x、B0〉とトリプル〈B0、y、C0〉とがある場合、グラフを辿ることで、ノードA0からノードC0を演繹推論することができる。 For example, as in the graph shown in FIG. 11A, when there are triples <A0, x, B0> and triples <B0, y, C0>, the nodes A0 to C0 are deduced by tracing the graph. Can be inferred.
 具体的には、トリプル〈ソクラテス、is、人〉とトリプル〈人、is、死ぬ〉とがある場合、ノード「ソクラテス」からノード「死ぬ」を推論し、「ソクラテスは死ぬ。」を結論として得ることができる。 Specifically, if there is a triple <Socrates, is, person> and a triple <People, is, die>, the node "Die" is inferred from the node "Socrates", and "Socrates dies" is obtained as a conclusion. be able to.
 また、例えば、図11(b)に示されるグラフのように、トリプル〈A0、x、B0〉と、トリプル〈A0、x、B2〉と、トリプル〈B0、y、C0〉と、トリプル〈B2、y、C0〉と、トリプル〈B3、y、C0〉と、がある場合、ノードA0からノードB0又はB2を介してノードC0へと辿り、最後に、ノードC0からノードB3へ逆に辿ることで、ノードA0からノードB3を帰納推論することができる。 Further, for example, as shown in the graph shown in FIG. 11B, the triple <A0, x, B0>, the triple <A0, x, B2>, the triple <B0, y, C0>, and the triple <B2 , Y, C0> and triple <B3, y, C0>, trace from node A0 to node C0 via node B0 or B2, and finally from node C0 to node B3. Then, the node B3 can be inductively inferred from the node A0.
 具体的には、トリプル〈太郎さん、好き、醤油ラーメン〉と、トリプル〈太郎さん、好き、とんこつラーメン〉と、トリプル〈醤油ラーメン、rdfs:subClassOf、ラーメンクラス〉と、トリプル〈とんこつラーメン、rdfs:subClassOf、ラーメンクラス〉と、トリプル〈味噌ラーメン、rdfs:subClassOf、ラーメンクラス〉と、がグラフに含まれる場合を検討する。この場合、ノード「太郎さん」とノード「味噌ラーメン」とは、グラフでは、直接繋がってはいない。しかし、ノード「太郎さん」は、ノード「醤油ラーメン」とノード「とんこつラーメン」とが好きであることから、ラーメン一般を意味する「ラーメンクラス」が好きである。それならば、ノード「太郎さん」は、ノード「味噌ラーメン」も好きである。つまり、このような帰納推論が可能である。 Specifically, triple <Taro-san, like, soy sauce ramen>, triple <Taro-san, like, Tonkotsu ramen>, triple <soy sauce ramen, rdfs: subClassOf, ramen class>, triple <Tonkotsu ramen, rdfs: Consider the case where subClassOf, ramen class> and triple <miso ramen, rdfs: subClassOf, ramen class> are included in the graph. In this case, the node "Taro-san" and the node "Miso Ramen" are not directly connected in the graph. However, the node "Taro-san" likes the node "Shoyu ramen" and the node "Tonkotsu ramen", so he likes "Ramen class" which means ramen in general. In that case, the node "Taro-san" also likes the node "Miso Ramen". That is, such inductive reasoning is possible.
 また、例えば、図11(c)に示されるグラフのように、トリプル〈A0、x、B0〉という事象が起きた場合、トリプル〈B0、y、C0〉とトリプル〈B0、y、C2〉のグラフを辿ることで、ノードA0からノードC0又はノードC2の仮説を推論することができる。 Further, for example, as shown in the graph shown in FIG. 11C, when the event of triple <A0, x, B0> occurs, the triple <B0, y, C0> and the triple <B0, y, C2> By following the graph, the hypothesis of node C0 or node C2 can be inferred from node A0.
 具体的には、トリプル〈花子さん、12時の行動、お昼ご飯を食べた〉という事象と、トリプル〈お昼ご飯を食べた、次の行動、昼寝をする〉と、トリプル〈お昼ご飯を食べた、次の行動、散歩をする〉と、がある場合、仮説「花子さんの次の行動は、昼寝をする。」及び仮説「花子さんの次の行動は、散歩をする。」という2つの仮説(つまり、いずれが正しいかは、わからない説)を推論することができる。このような推論は、仮説的推論ともいう。 Specifically, the triple <Hanako-san, 12 o'clock action, ate lunch>, the triple <I ate lunch, the next action, take a nap>, and the triple <I ate lunch>. , Next action, take a walk>, there are two hypotheses: the hypothesis "Hanako's next action is to take a nap" and the hypothesis "Hanako's next action is to take a walk." (That is, the theory that you do not know which is correct) can be inferred. Such reasoning is also called hypothetical reasoning.
 グラフ結合部14が生成したグラフ(例えば、図10)は、各ノードが複雑に結合された巡回グラフである。このため、グラフ結合部14が生成した統合グラフ(例えば、図10)では、図11(a)~(c)のように単純に統合グラフを辿るだけでは推論の結論を1つに特定することができない。そこで、例えば、グラフ結合部14が算出した統合グラフ(例えば、図10)上を無限にランダムウォークして定常状態となったときの、各ノードに到達する確率、すなわち、到達確率を算出する。この確率は、その「ノードが推論の結論である確率」と解釈できるので、この確率は、各ノードの重要度と定義される。また、統合グラフ上をランダムウォークすることは、確率的に演繹推論、帰納推論、及び仮説的推論、を実行していることと等価である。 The graph generated by the graph connecting unit 14 (for example, FIG. 10) is a cycle graph in which each node is complicatedly connected. Therefore, in the integrated graph generated by the graph connecting unit 14 (for example, FIG. 10), the conclusion of inference can be specified as one by simply following the integrated graph as shown in FIGS. 11A to 11C. I can't. Therefore, for example, the probability of reaching each node, that is, the arrival probability when the integrated graph (for example, FIG. 10) calculated by the graph connecting unit 14 is randomly walked infinitely and becomes a steady state is calculated. Since this probability can be interpreted as the "probability that the node is the conclusion of inference", this probability is defined as the importance of each node. Random walking on the integrated graph is equivalent to probabilistically performing deductive reasoning, inductive reasoning, and hypothetical reasoning.
 次に、グラフ解析部15の具体的な計算方法を示すステップS107a、S107b、S107c、すなわち、図4に示されるステップS107の内容を説明する。 Next, the contents of steps S107a, S107b, and S107c, that is, step S107 shown in FIG. 4, which show a specific calculation method of the graph analysis unit 15, will be described.
〈ステップS107a:グラフの変換と遷移行列の作成〉
 グラフ解析部15は、グラフ解析部15に入力された統合グラフを適宜変換して、ランダムウォークのためのノード間の遷移行列を作成する。
<Step S107a: Graph transformation and transition matrix creation>
The graph analysis unit 15 appropriately converts the integrated graph input to the graph analysis unit 15 to create a transition matrix between nodes for a random walk.
 まず、グラフ解析部15に入力されたグラフL1に含まれる各トリプルの動詞の種類に応じて、新規にグラフL2を作成する。グラフ解析部15によって作成されたグラフL2は、「推論グラフ」ともいう。推論グラフの作成においては、例えば、以下の変換パターンTP1、変換パターンTP2、変換パターンTP3のいずれかを適用する。 First, a new graph L2 is created according to the type of verb of each triple included in the graph L1 input to the graph analysis unit 15. The graph L2 created by the graph analysis unit 15 is also referred to as an "inference graph". In creating the inference graph, for example, any of the following conversion pattern TP1, conversion pattern TP2, and conversion pattern TP3 is applied.
 「変換パターンTP1」では、入力されたグラフL1である有向グラフを、そのまま推論グラフL2として利用する。「変換パターンTP2」では、入力されたグラフL1である有向グラフを、無向グラフ、すなわち、双方向グラフに変換することで推論グラフL2を作成する。「変換パターンTP3」では、入力されたグラフL1である有向グラフを、逆方向の有向グラフに変換することで推論グラフL2を作成する。 In the "conversion pattern TP1", the directed graph which is the input graph L1 is used as it is as the inference graph L2. In the "conversion pattern TP2", the inference graph L2 is created by converting the input graph L1 into an undirected graph, that is, a bidirectional graph. In the "conversion pattern TP3", the inference graph L2 is created by converting the input graph L1 into a directed graph in the opposite direction.
 次に推論グラフL2の隣接行列を作成し、この行列の各列の合計値を1で規格化したノード間の遷移行列Pを求める。ノード数をN(Nは正の整数)とすると、ノード間の遷移行列Pは、サイズが(N×N)の行列である。 Next, an adjacency matrix of the inference graph L2 is created, and the transition matrix P between the nodes in which the total value of each column of this matrix is normalized by 1 is obtained. Assuming that the number of nodes is N (N is a positive integer), the transition matrix P between the nodes is a matrix having a size (N × N).
 ここで、遷移行列Pの要素P(i,j)は、統合グラフ上のランダムウォークにおいて、j番目のノードから、i番目のノードへの遷移確率を示す。j及びiは、正の整数である。例えば、あるノードA5を主語として、ノードA5に接続されているノードが4個のノードA6~A9である場合、ノードA5からノードA6~A9の各々への遷移確率を、均等な値である0.25に設定する。ただし、ノードA5からノードA6~A9の各々への遷移確率は、均等な値である必要はない。設定される遷移確率は、互いに異なる値であってもよい。 Here, the element P (i, j) of the transition matrix P indicates the transition probability from the j-th node to the i-th node in the random walk on the integrated graph. j and i are positive integers. For example, when a certain node A5 is the subject and the nodes connected to the node A5 are four nodes A6 to A9, the transition probability from the node A5 to each of the nodes A6 to A9 is 0, which is an equal value. Set to .25. However, the transition probabilities from node A5 to each of nodes A6 to A9 do not have to be equal values. The transition probabilities set may be different values from each other.
 変換パターンTP2に示されるように、入力されたグラフL1である有向グラフを、無向グラフに変換することで推論グラフL2を作成する場合には、以下のような効果が得られる。 As shown in the conversion pattern TP2, when the inference graph L2 is created by converting the input graph L1 into an undirected graph, the following effects can be obtained.
 例えば、〈暑い、then、冷たいものを食べる〉というトリプルでは、「暑い」ならば「冷たいものを食べる」と推論することもできるし、逆に、「冷たいものを食べる」ならばグラフを逆方向に辿って、「暑い」と推論することもできる。また、図11(b)に示される帰納推論の例のように、ノードC0からノードB3に、すなわち、逆方向に、グラフを辿ることで、推論の結論を得ることができる。 For example, in the triple of "hot, then, eat cold", it can be inferred that "hot" means "eat cold", and conversely, "eat cold" reverses the graph. It can be inferred that it is "hot". Further, as in the example of inductive reasoning shown in FIG. 11B, the conclusion of the reasoning can be obtained by tracing the graph from node C0 to node B3, that is, in the reverse direction.
 例えば、〈j、x、i〉というトリプルにおいて、遷移行列Pの要素P(i,j)及び要素P(j,i)の遷移確率の初期の設定は、以下の通りである。
P(i,j)=α (0<α≦1)
P(j,i)=0
For example, in the triple <j, x, i>, the initial settings of the transition probabilities of the elements P (i, j) and the elements P (j, i) of the transition matrix P are as follows.
P (i, j) = α (0 <α ≦ 1)
P (j, i) = 0
 しかし、変換パターンTP2にしたがって、有向グラフであるグラフL1を無向グラフであるグラフL2に変換した場合には、変換されたグラフL2のトリプルにおいては、遷移行列Pの要素P(i,j)及び要素P(j,i)の遷移確率の初期の設定は、例えば、以下の通りである。
P(i,j)=P(j,i)=α (0<α≦1)
或いは、遷移確率は、偏りをもたせて、以下のように設定される。
P(i,j)=α (0<α≦1)
P(j,i)=β (0<β≦1)
ここで、αとβは、互いに等しくない。このことで、後述するランダムウォークの処理において、ノードiとノードjの間を自由に行き来することができる。
However, when the graph L1 which is a directed graph is converted into the graph L2 which is an undirected graph according to the conversion pattern TP2, in the triple of the converted graph L2, the elements P (i, j) of the transition matrix P and The initial setting of the transition probability of the element P (j, i) is as follows, for example.
P (i, j) = P (j, i) = α (0 <α ≦ 1)
Alternatively, the transition probability is set as follows with a bias.
P (i, j) = α (0 <α ≦ 1)
P (j, i) = β (0 <β ≦ 1)
Here, α and β are not equal to each other. As a result, in the random walk process described later, it is possible to freely move back and forth between the node i and the node j.
 次に、変換パターンTP3に示されるように、入力されたグラフL1である有向グラフを、逆方向の有向グラフに変換することで推論グラフL2を作成する場合には、以下のような効果が得られる。 Next, as shown in the conversion pattern TP3, when the inference graph L2 is created by converting the input graph L1 into a directed graph in the opposite direction, the following effects can be obtained.
 例えば、トリプル〈太郎さん、好き、ラーメン〉と、トリプル〈太郎さん、嫌い、ドリアン〉とがある場合に、太郎さんが好きなものを推論するタスクを考える。 For example, if there is a triple <Taro-san, like, ramen> and a triple <Taro-san, dislike, durian>, consider the task of inferring what Taro-san likes.
 仮に、上記トリプル〈太郎さん、好き、ラーメン〉と、トリプル〈太郎さん、嫌い、ドリアン〉とをそのまま推論に利用すると、後述するステップS105cである重要度算出ステップにおいて、「ラーメン」と「ドリアン」の重要度が同程度になる可能性がある。そこで、「嫌い」という動詞において、有向グラフを逆方向にする。このことで、後述の重要度算出ステップにおいて推論グラフをランダムウォークする際に、「ドリアン」を経由する確率を低くすることができる。よって、「ドリアン」の重要度を下げる効果がある。 If the above triple <Taro-san, like, ramen> and the triple <Taro-san, dislike, durian> are used as they are for inference, "ramen" and "durian" will be used in the importance calculation step of step S105c described later. May be of similar importance. Therefore, in the verb "dislike", the directed graph is reversed. This makes it possible to reduce the probability of passing through the "durian" when randomly walking the inference graph in the importance calculation step described later. Therefore, it has the effect of lowering the importance of "Durian".
 次に、変換パターンTP3に示されるように、入力されたグラフL1である有向グラフを、逆方向の有向グラフに変換する方法を以下に述べる。
具体的には、
〈j、x、i〉というトリプルにおいて、遷移確率の初期設定は、以下の通りである。
P(i,j)=α (0<α≦1)
P(j,i)=0
また、逆方向の有向グラフに変換した際には、遷移確率の初期設定は、以下の通りである。
P(i,j)=0
P(j,i)=α (0<α≦1)
Next, as shown in the conversion pattern TP3, a method of converting the input graph L1 directed graph into a directed graph in the reverse direction will be described below.
In particular,
In the triple <j, x, i>, the initial setting of the transition probability is as follows.
P (i, j) = α (0 <α ≦ 1)
P (j, i) = 0
Further, when converted to a directed graph in the reverse direction, the initial setting of the transition probability is as follows.
P (i, j) = 0
P (j, i) = α (0 <α ≦ 1)
〈ステップS107b:観測ノードの設定〉
 グラフ解析部15は、外部から取得された情報又はセンサによって検出された情報など、推論の起点となる重要なノードを「観測ノード」と設定する。
<Step S107b: Observation node setting>
The graph analysis unit 15 sets an important node as a starting point of inference, such as information acquired from the outside or information detected by a sensor, as an “observation node”.
 次に、グラフ解析部15は、観測ノードの重みを0以上に設定し、それ以外のノードを0としたN次元の観測ベクトルvを作る。観測ベクトルvの確率分布の総和は1である。例えば、観測ノードとして「車外の状態」、「近くのお店」、「直近の命令」、「運転手」とした場合、それらのノードに相当する観測ベクトルvの要素を、各々0.25(=1/4)と設定する。それ以外のノードに相当する観測ベクトルvの要素を、0と設定する。 Next, the graph analysis unit 15 sets the weight of the observation node to 0 or more, and creates an N-dimensional observation vector v with the other nodes as 0. The sum of the probability distributions of the observation vector v is 1. For example, if the observation nodes are "outside the vehicle", "nearby shop", "most recent command", and "driver", the elements of the observation vector v corresponding to those nodes are 0.25 (each). = 1/4) is set. The element of the observation vector v corresponding to the other nodes is set to 0.
 後述する処理で、観測ノードからランダムウォークを再スタートすることで、観測ノードに近いノードほど重要度が高くなる効果がある。 By restarting the random walk from the observation node in the process described later, there is an effect that the node closer to the observation node becomes more important.
〈ステップS107c:重要度の算出〉
 次に、グラフ解析部15は、遷移行列Pと、観測ベクトルv、すなわち、
Figure JPOXMLDOC01-appb-M000001
を利用して、推論グラフ(グラフL2)に含まれる各ノードの重要度を求める。すなわち、グラフ解析部15は、観測ベクトルvの確率に基づいて、統合グラフ上のランダムウォークの開始点としてのノードである開始ノードを決定し、遷移行列P及び関係性DB19aに保存される関係行列Rにより、推論グラフ上をランダムウォークすることで各ノードに到達する確率を求め、これを各ノードの重要度とする。
<Step S107c: Calculation of importance>
Next, the graph analysis unit 15 sets the transition matrix P and the observation vector v, that is,
Figure JPOXMLDOC01-appb-M000001
Is used to obtain the importance of each node included in the inference graph (graph L2). That is, the graph analysis unit 15 determines the start node, which is the node as the start point of the random walk on the integrated graph, based on the probability of the observation vector v, and the relation matrix stored in the transition matrix P and the relation DB 19a. The probability of reaching each node is obtained by randomly walking on the inference graph by R, and this is set as the importance of each node.
 具体的な計算例は、例えば、以下のものである。まず、開始ノードとなり得るノード集合から1つの開始ノードNを選択したときの推論行列M、すなわち、
Figure JPOXMLDOC01-appb-M000002
を、以下の式(1)のように定義する。kは、正の整数である。
Specific calculation examples are as follows, for example. First, the inference matrix M k when one start node N k is selected from the set of nodes that can be the start node, that is,
Figure JPOXMLDOC01-appb-M000002
Is defined as the following equation (1). k is a positive integer.
Figure JPOXMLDOC01-appb-M000003
ここで、αは、0<α≦1を満たす、予め決められた定数を示す。
Figure JPOXMLDOC01-appb-M000003
Here, α indicates a predetermined constant satisfying 0 <α ≦ 1.
Figure JPOXMLDOC01-appb-M000004
は、N×Nの各ノードと開始ノードNとの関係を考慮した遷移行列を示す。ある遷移行列Pの要素をpijとし、関係行列Rの要素をrijとしたときに、遷移行列Pの要素は、pij*rikで表現される。
Figure JPOXMLDOC01-appb-M000004
Shows a transition matrix considering the relationship between each N × N node and the start node N k. The elements of a transition matrix P and p ij, when the elements of the relationship matrix R was r ij, the elements of transition matrix P k is expressed by p ij * r ik.
 ここで、遷移行列Pの要素pijのjに対する総和(すなわち、列における総和)は、以下の式(2)で表される。 Here, the sum of the elements pij of the transition matrix P with respect to j (that is, the sum in the column) is expressed by the following equation (2).
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000005
 よって、遷移行列Pの要素であるpij*rikのjに対する総和である
Figure JPOXMLDOC01-appb-M000006
は、常に1になるとは限らず、遷移確率を表現する行列としては不適切でなる。そこで、列での総和が1となるように関係行列Rを求める際に調整を行う必要がある。或いは、関係行列Rを求める際の調整を行わずに、遷移行列Pのi行j列の要素をpijkとしたときに、以下の式(3)に示されるように、要素pijkを、列での総和が1となるように列ごとに正規化する。
Thus, is the sum for j of p ij * r ik is an element of the transition matrix P k
Figure JPOXMLDOC01-appb-M000006
Is not always 1, and is inappropriate as a matrix expressing the transition probability. Therefore, it is necessary to make adjustments when obtaining the relational matrix R so that the sum of the columns is 1. Alternatively, without adjustment for obtaining the relationship matrix R, the elements of row i and column j of the transition matrix P k is taken as p ijk, as shown in the following equation (3), an element p ijk , Normalize each column so that the sum of the columns is 1.
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000007
 また、上記処理の前などにおいて、rikが負の値になる場合、遷移確率が不適切な値になるので、その場合は、rikを0にするなどの調整が行われてもよい。また、要素pijkの正規化は、式(3)のものに限られず、列での総和が1となるような正規化を行う方法が採用されてもよい。 Further, before the above processing, if the rik becomes a negative value, the transition probability becomes an inappropriate value. In that case, adjustments such as setting the rik to 0 may be performed. Further, the normalization of the element pijk is not limited to that of the equation (3), and a method of normalizing such that the sum of the columns is 1 may be adopted.
 また、遷移行列Pのi行j列の要素pijkを、以下の式(4)のように定義し、γの値によってrikの影響を制御可能としてもよい。
 pij*(1-γ+rik*γ)    (4)
 ここで、γは、0から1までの範囲内の値とする。このように要素pijkを定義することで、例えば、γ=0.5とすることで、遷移確率に対して開始ノードNとの関係を半分に抑制して考慮するといった調整が可能となる。
Further, the element p ijk of the transition matrix P k in the i-th row and the j-column may be defined as in the following equation (4), and the influence of the r ik may be controlled by the value of γ.
p ij * (1-γ + r ik * γ) (4)
Here, γ is a value in the range of 0 to 1. By defining the element pijk in this way, for example, by setting γ = 0.5, it is possible to make adjustments such as suppressing the relationship with the start node Nk in half with respect to the transition probability. ..
 式(4)をpijk′と表記し、式(3)に相当する調整を行った場合に、遷移行列Pのi行j列の要素pijkを、以下の式(5)としてもよい。 When the equation (4) is expressed as pijk ′ and the adjustment corresponding to the equation (3) is performed, the element pijk of the i-by-j column of the transition matrix P k may be the following equation (5). ..
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000008
 式(1)において、
Figure JPOXMLDOC01-appb-M000009
は、N×1のサイズの観測ベクトルvを示す。
In equation (1)
Figure JPOXMLDOC01-appb-M000009
Indicates an observation vector v of size N × 1.
 式(1)において、
Figure JPOXMLDOC01-appb-M000010
は、すべての要素が1の、1×Nのサイズのベクトルを示し、ベクトル1とも表記する。
In equation (1)
Figure JPOXMLDOC01-appb-M000010
Indicates a vector having a size of 1 × N in which all elements are 1, and is also referred to as a vector 1 T.
 式(1)の右辺の第1項は、遷移行列Pに基づいて統合グラフをランダムウォークすることを示している。式(1)の右辺の第2項は、ランダムウォークの途中に(1-α)の確率で観測ノードから再度ランダムウォークを開始することを示している。 The first term on the right side of equation (1) indicates that the integrated graph is randomly walked based on the transition matrix P. The second term on the right side of equation (1) indicates that the random walk is restarted from the observation node with a probability of (1-α) in the middle of the random walk.
 次に、開始ノードNに対するN次元の重要度ベクトルをxvk、すなわち、
Figure JPOXMLDOC01-appb-M000011
とし、以下の式(6)により、開始ノードNを前提とした重要度ベクトルを求める。
Next, the N-dimensional importance vector for the starting node Nk is x vk , that is,
Figure JPOXMLDOC01-appb-M000011
Then, the importance vector assuming the start node N k is obtained by the following equation (6).
Figure JPOXMLDOC01-appb-M000012
Figure JPOXMLDOC01-appb-M000012
 式(6)は、ランダムウォークを繰り返して、重要度ベクトルxvkが収束したことを表す。xvk(i)は、開始ノードNを前提としたi番目のノードの重要度を示す。 Equation (6) represents that the importance vector x vk has converged by repeating the random walk. x vk (i) indicates the importance of the i-th node assuming the start node N k.
 式(6)における重要度ベクトルxvkの計算には、ベキ乗法を利用することができる。例えば、この重要度ベクトルxvkの計算には、ウェブページの重要度を決定するためのアルゴリズムであるページランク(PageRank)と同様の方法を利用することができる。また、この重要度ベクトルxvkの計算には、非特許文献1に記載のページランクと同様の計算方法を利用することができる。 The power method can be used to calculate the importance vector x vk in the equation (6). For example, in the calculation of the importance vector x vk , a method similar to PageRank, which is an algorithm for determining the importance of a web page, can be used. Further, in the calculation of the importance vector x vk , the same calculation method as the PageRank described in Non-Patent Document 1 can be used.
 また、式(1)と式(6)とから、以下の式(7)によってコスト関数CF1、すなわち、
Figure JPOXMLDOC01-appb-M000013
を算出し、このコスト関数の値を最小化するような、総和が1の重要度ベクトルxvkを求めることで、開始ノードNを前提としたノードの重要度を算出してもよい。
Further, from the equations (1) and (6), the cost function CF1 k , that is, by the following equation (7), is used.
Figure JPOXMLDOC01-appb-M000013
By calculating the importance vector x vk having a sum of 1 so as to minimize the value of this cost function, the importance of the node assuming the start node N k may be calculated.
Figure JPOXMLDOC01-appb-M000014
Figure JPOXMLDOC01-appb-M000014
 式(7)において、
Figure JPOXMLDOC01-appb-M000015
は、N×Nの単位行列を示し、単位行列Eとも表記する。
In equation (7)
Figure JPOXMLDOC01-appb-M000015
Indicates an N × N identity matrix, which is also referred to as an identity matrix E.
 以上に説明した開始ノードNを前提としたノードの重要度xvkの算出方法と同様の方法によって、全ての開始ノードを前提としてノードの重要度の算出を行う。 The importance of the node is calculated on the premise of all the start nodes by the same method as the method of calculating the importance x vk of the node on the premise of the start node Nk described above.
《開始ノードのクラスタリング》
 開始ノードNを前提としたノードの重要度xvkを全ての開始ノードに対して算出するため、開始ノードの個数に比例して計算回数が増えるため、重要度の算出を行う前に各開始ノードN,N間の何らかの基準が一定以上である場合には、仮想的に1つの開始ノードVとして扱う方法が考えられる。基準としては、関係rijの値を用いることが考えられる。Vに対する関係は、各開始ノードN,Nそれぞれの関係の平均をとるなど合成値を作成して用いることが考えられる。
<< Clustering of start nodes >>
Since the importance x vk of the node assuming the start node Nk is calculated for all the start nodes, the number of calculations increases in proportion to the number of start nodes. Therefore, each start is performed before the importance is calculated. node N i, if any rule for N j is constant or can be considered a method to handle as a single start node V N virtually. As a reference, it is conceivable to use the value of the relation rij. Relationship to V N, each starting node N i, it is conceivable to use to create a composite value such as taking the average of the N j each relationship.
 また、開始ノードとして選択されるノードが予め決まっている場合であれば、事前に仮想的な開始ノードとできる開始ノード集合を予め求めたうえで、各ノードに加えて仮想的な開始ノードも含めて関係行列をステップS103又はステップS107で求めておくことも可能である。 If the node to be selected as the start node is determined in advance, a set of start nodes that can be used as a virtual start node is obtained in advance, and then the virtual start node is included in addition to each node. It is also possible to obtain the relational matrix in step S103 or step S107.
 次に全ての重要度xvkから全体としての重要度xを求める手順を説明する。 Next, the procedure for obtaining the overall importance x v from all the importance x vk will be described.
《重要度の算出方法1》
 全ての重要度xvkから全体としての重要度xを求める手順の1つとして、各ノードiに対する重要度x(i)を以下の式(8)のように定義する方法がある。
<< Calculation method of importance 1 >>
As one of the procedures for obtaining the overall importance x v from all the importance x vk, there is a method of defining the importance x v (i) for each node i as shown in the following equation (8).
Figure JPOXMLDOC01-appb-M000016
Figure JPOXMLDOC01-appb-M000016
 この方法で求めた重要度は、各開始ノードNに対する重みwと、開始ノードNを前提としたノードiの重要度とをかけた値の総和である。重みwは、事前に設定する値でもよく、状況に合わせて可変な値としてもよい。また、重みwは、すべて1とすることで重みのない開始ノードNを前提としたノードiの重要度のみでの総和とすることも可能である。 Severity obtained in this way is the sum of values obtained by multiplying the importance weight w k and the node i on the premise of start node N k for each starting node N k. The weight w k may be a value set in advance or may be a variable value according to the situation. Further, by setting all the weights w k to 1, it is also possible to make the sum of only the importance of the node i on the premise of the start node N k having no weight.
 つまり、グラフ解析部15は、統合グラフ上のランダムウォークの開始点としてのノードである開始ノードを決定し、開始ノード毎に統合グラフの各ノードの重要度を算出するときに、開始ノード毎に重みwを設定し、開始ノード毎に重みwに基づいて統合グラフ上の各ノードの重要度を算出することができる。また、グラフ解析部15は、統合グラフ上のランダムウォークの開始点としてのノードである開始ノードを決定し、開始ノード毎に統合グラフ上の各ノードの重要度の総和を開始ノード毎の重要度として算出するときに、開始ノード毎に重みwを設定し、開始ノード毎に重みwに基づいて開始ノード毎の重要度を算出することができる。 That is, when the graph analysis unit 15 determines the start node which is the node as the start point of the random walk on the integrated graph and calculates the importance of each node of the integrated graph for each start node, the graph analysis unit 15 determines each start node. The weight w k can be set, and the importance of each node on the integrated graph can be calculated based on the weight w k for each start node. Further, the graph analysis unit 15 determines a start node which is a node as a start point of a random walk on the integrated graph, and calculates the sum of the importance of each node on the integrated graph for each start node as the importance of each start node. When calculating as, the weight w k can be set for each start node, and the importance of each start node can be calculated based on the weight w k for each start node.
《重要度の算出方法2》
 全ての重要度xvkから全体としての重要度xを求める別の手順として、各ノードiに対する重要度x(i)を以下の式(9)のように定義する方法がある。
<< Calculation method of importance 2 >>
As another procedure for obtaining the overall importance x v from all the importance x vk, there is a method of defining the importance x v (i) for each node i as shown in the following equation (9).
Figure JPOXMLDOC01-appb-M000017
ただし、kは、目的ノードまで到達可能なNが存在するkの集合の要素とする。
Figure JPOXMLDOC01-appb-M000017
However, k is an element of a set of k in which N k that can reach the target node exists.
 ここで、目的ノードとは、推論で導出したいノードのことであり、後述するステップS106(グラフの探索)で最終的に求めるノードのことであり、具体的には、「?action」に対応するノード集合のうちのいずれかである。ただし、ステップS106で重要度ベクトルxを利用しているが、重要度の算出方法2では、目的ノードを求める場合には、xではなく、xvkを用いて求める。 Here, the target node is a node to be derived by inference, and is a node finally obtained in step S106 (search for a graph) described later, and specifically, corresponds to "? Action". It is one of a set of nodes. However, although the importance vector x v is used in step S106, in the importance calculation method 2, when the target node is obtained, x vk is used instead of x v.
 重要度の算出方法2は、重要度の算出方法1の条件に加えて、「kは目的ノードまで到達可能なNが存在するkの集合の要素である」という、kに関する制限を設けたものである。ここで、到達可能とは、グラフの到達可能性と考える方法がある。加えて、開始ノードNを前提としたノードiの重要度が閾値以上のノードのみに制限したネットワークでの到達可能性と考えるなどのグラフの到達可能性に何らかの基準を追加する方法もある。 In the importance calculation method 2, in addition to the condition of the importance calculation method 1, a restriction regarding k is provided that "k is an element of a set of k in which N k that can reach the target node exists". It is a thing. Here, there is a method of considering the reachability of the graph as the reachability of the graph. In addition, there is also a method of adding some criterion to the reachability of the graph, such as considering the reachability in a network in which the importance of the node i assuming the start node Nk is limited to the nodes equal to or higher than the threshold value.
 重要度の算出方法2では、開始ノードNから目的ノードまで到達できない場合、その開始ノードは、目的ノードまでの経路が求まらない、つまりは、関連性がないことを意味するため、そのような開始ノードの重要度は、考慮しないことを意味する。一方で、重要度の算出方法1では、関連性がない開始ノードの重要度も考慮する違いがある。 In the importance calculation method 2, when the starting node Nk cannot reach the target node, it means that the route to the target node cannot be obtained, that is, it is not related. The importance of such a start node means not to consider. On the other hand, in the importance calculation method 1, there is a difference in considering the importance of irrelevant start nodes.
《2-9》ステップS108:グラフの検索
 グラフ検索部16は、所望の情報を抽出するために、重要度ベクトルxを利用して、グラフL2から特定の情報パターンを検索する。グラフ検索部16の具体的な動作例について述べる。
<< 2-9 >> Step S108: Graph Search The graph search unit 16 searches for a specific information pattern from the graph L2 by using the importance vector x v in order to extract desired information. A specific operation example of the graph search unit 16 will be described.
 図12は、対話例D1及びD2を表4として示す図である。対話例D1及びD2は、人間(「ユーザ」ともいう。)に「気が利く」と思わせる人工知能エージェント(「AG」ともいう。)による知的な対話の例である。 FIG. 12 is a diagram showing dialogue examples D1 and D2 as Table 4. Dialogue Examples D1 and D2 are examples of intellectual dialogue by an artificial intelligence agent (also referred to as "AG") that makes humans (also referred to as "users") think "smart".
 対話例D2のように、AGに『近くに冷やし中華のレストランありますよ。』という気の利いた発話を自動で行わせるためには、「情報統合」と「推論」の2つの要素技術が必要である。「情報統合」は、互いに異なる複数のドメインの各々に属する情報を統合する要素技術である。互いに異なる複数のドメインの各々に属する情報は、例えば、天気、人間による操作履歴、ナビゲーション(単に「ナビ」ともいう。)情報、人間の好み、及び人間の行動に関する知識、などである。人間は、例えば、運転手である。人間の行動に関する知識は、例えば、「暑いときに冷たい食べ物を食べる」といった人間の行動に関する情報である。 As in dialogue example D2, AG said, "There is a chilled Chinese restaurant nearby. In order to make a nifty utterance automatically, two elemental technologies of "information integration" and "inference" are required. "Information integration" is an elemental technology that integrates information belonging to each of a plurality of different domains. Information belonging to each of a plurality of different domains includes, for example, weather, human operation history, navigation (also simply referred to as "navigation") information, human preference, and knowledge of human behavior. Humans are, for example, drivers. Knowledge of human behavior is information about human behavior, such as "eating cold food when it is hot."
 ここでは、グラフ検索部16は、主語、述語、目的語が、それぞれ〈?action、slot、?slotClass〉かつ〈?slotValue、instanceOf、?slotClass〉を満たす情報パターンを統合グラフから抽出する。ここで、“?”から始まる文字列は、変数であり、任意の文字列が入る。 Here, in the graph search unit 16, the subject, predicate, and object are <? action, slot ,? slotClass> and <? slotValue, instanceOf ,? An information pattern satisfying slotClass> is extracted from the integrated graph. Here, the character string starting with "?" Is a variable, and an arbitrary character string is entered.
 例えば、表2及び表3の例では、「トリプル〈冷たい食べ物を食べる、slot、冷たい食べ物クラス〉及びトリプル〈冷やし中華、instanceOf、冷たい食べ物クラス〉を満たす」又は「トリプル〈温度を下げる、slot、エアコンクラス〉及びトリプル〈エアコン#1、instanceOf、エアコンクラス〉を満たす」が、検索対象の情報パターンに相当する。 For example, in the examples of Tables 2 and 3, "satisfy triple <eat cold food, slot, cold food class> and triple <chilled Chinese, instanceOf, cold food class>" or "triple <lower temperature, slot, air conditioner". Class> and triple <air conditioner # 1, temperatureOf, air conditioner class> are satisfied "corresponds to the information pattern to be searched.
 図13は、本実施の形態に係る推論装置10のグラフ検索部16が統合グラフを検索することによって取得したデータの例を表5として示す図である。つまり、図13は、グラフ検索結果をまず、「?action」の重要度でソートし、次に「?slotValue」の重要度でソートした結果を示している。 FIG. 13 is a diagram showing an example of data acquired by the graph search unit 16 of the inference device 10 according to the present embodiment by searching the integrated graph as Table 5. That is, FIG. 13 shows the results of sorting the graph search results by the importance of "? Action" and then by the importance of "? SlotValue".
 図14は、本実施の形態に係る推論装置10のグラフ検索部16によって検索されたノードの重要度、検索結果を含む統合グラフ(図13に対応する統合グラフ)の例を示す図である。図14において、カッコ内は、重要度を示す。ハッチングされた四角は、観測ノード、ハッチングされた丸は、重要度の高いノードを示す。 FIG. 14 is a diagram showing an example of an integrated graph (integrated graph corresponding to FIG. 13) including the importance of the nodes searched by the graph search unit 16 of the inference device 10 according to the present embodiment and the search results. In FIG. 14, the values in parentheses indicate the importance. The hatched squares indicate observation nodes, and the hatched circles indicate nodes of high importance.
 この例では、最上位に、
{slotValue:‘冷やし中華’、 slotClass:‘冷たい食べ物クラス’、 action:‘冷たい食べ物を食べる’}
が得られる。これにより、車載エージェントが「冷やし中華をたべませんか」とユーザに勧めるための情報が得られた。
In this example, at the top,
{SlotValue:'Chilled Chinese', slotClass:'Cold Food Class', action:'Eat Cold Food'}
Is obtained. This provided information for the in-vehicle agent to recommend to the user, "Why don't you eat chilled Chinese food?"
 図13の例では、最上位の検索結果に
{‘slotClass’:‘冷たい食べ物クラス’、 ‘action’:‘冷たい食べ物を食べる’、 ‘slotValue’:‘冷やし中華’}
が得られる。その理由は、最上位の検索結果は、
「運転手がラーメンを好きである、つまり、〈運転手、like、ラーメンクラス〉」と、「近くのお店にラーメン屋Raとアイスクリーム屋Icがある。」と、「現在時刻は12時で、食べる行動と関連している。」と、「車内の気温35度であるから、状態が暑い。したがって、人間は冷たいものを食べるか、温度を下げる。」と、を利用すれば、多段階の推論を、ランダムウォークにより統合グラフを辿ることで取得できるからである。また、「‘冷たい食べ物を食べる’又は、‘冷やし中華’」のノードの重要度が高くなった(すなわち、推論の結論となる可能性が高くなった)からである。
In the example of FIG. 13, the top-level search results include {'slotClass':'cold food class','action':'eat cold food','slotValue':'chilled Chinese'}.
Is obtained. The reason is that the top search results are
"The driver likes ramen, that is, <driver, like, ramen class>", "There is a ramen shop Ra and an ice cream shop Ic in a nearby shop.", "The current time is 12 o'clock. And it is related to eating behavior. "And" The temperature inside the car is 35 degrees, so the condition is hot. Therefore, humans eat cold foods or lower the temperature. " This is because the inference of the stage can be obtained by following the integrated graph by a random walk. Also, the node "'eat cold food'or'chilledChinese'" became more important (ie, more likely to be the conclusion of reasoning).
《2-10》ステップS109:情報の出力
 最後に、情報出力部17は、グラフ検索部16の出力を利用して、ディスプレイ又はスピーカなどのユーザインタフェース51に情報を適切な形で出力する。情報出力部17は、例えば、表1の対話例D1及びD2では、音声合成により、「近くに冷やし中華のレストランありますよ。」などの音声を出力する。
<< 2-10 >> Step S109: Output of Information Finally, the information output unit 17 outputs information in an appropriate form to a user interface 51 such as a display or a speaker by using the output of the graph search unit 16. For example, in the dialogue examples D1 and D2 in Table 1, the information output unit 17 outputs a voice such as "There is a chilled Chinese restaurant nearby" by voice synthesis.
《3》効果
 図15は、比較例における知識グラフの一例を示す図である。図15の知識グラフでは、開始ノードa11を始点とした場合のグラフ構造と開始ノードa12を始点とした場合のグラフ構造とは、同一である。そのため、特許文献1に記載された比較例の推論方法を用いた場合、開始ノードa11、a12のいずれかから目的ノードc11、c12、c13のいずれかに向かう経路上のノードの重要度の合計値は、全ての経路について同じ値となる。
<< 3 >> Effect FIG. 15 is a diagram showing an example of a knowledge graph in a comparative example. In the knowledge graph of FIG. 15, the graph structure when the start node a11 is the start point and the graph structure when the start node a12 is the start point are the same. Therefore, when the inference method of the comparative example described in Patent Document 1 is used, the total value of the importance of the nodes on the route from any of the start nodes a11 and a12 to any of the target nodes c11, c12, and c13. Is the same value for all routes.
 図16は、図15の知識グラフに対して比較例の推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードa11、a12のいずれかから目的ノードc11、c12、c13のいずれかまでの経路のうちの、総距離が最短になる経路の上位3位までの結果を示す図である。比較例の推論方法では、図16に示されるように、事例C-11、C-12、C-13のいずれにおける総距離も同じ値であるため、いずれの経路が最も重要な経路であるのか判別不能である。 In FIG. 16, when the importance is obtained from the knowledge graph of FIG. 15 by the inference method of the comparative example and the reciprocal of the importance is the distance, the target nodes c11, c12, and c13 are taken from any of the start nodes a11 and a12. It is a figure which shows the result to the top 3 of the route which the total distance becomes the shortest among the routes to any of. In the inference method of the comparative example, as shown in FIG. 16, since the total distances in all of the cases C-11, C-12, and C-13 have the same value, which route is the most important route? It is indistinguishable.
 これに対し、本実施の形態に係る推論装置10は、開始ノードと各ノードとの間の関係の程度を示す関係性データを用いて重要度を決定している。図17は、本実施の形態における知識グラフの一例を示す図である。図17には、ノード間の関係の程度を示す指標が数値(例えば、「0.1」、「0.5」、「1.0」)で示されている。ノードを示す円形領域内における上段の数値は、開始ノードa21との関係の程度を示し、下段の数値は、開始ノードa22との関係の程度を示している。図17では、開始ノードa21、a22の各々と中間ノードb21、b22、b23の各々との関係の程度を示す数値の合計は、それぞれ「1.1(=0.1+1.0)」、「1.0(=0.5+0.5)」、「1.1(=1.0+0.1)」である。また、図17では、開始ノードa21、a22の各々と目的ノードc21、c22、c23の各々との関係の程度を示す数値は、それぞれ「1.0」である。したがって、開始ノードa21又はa22から中間ノードb21を経由して目的ノードc21に向かう経路及び開始ノードa21又はa22から中間ノードb23を経由して目的ノードc23に向かう経路の重要度は、開始ノードa21又はa22から中間ノードb22を経由して目的ノードc22に向かう経路の重要度よりも、高い。 On the other hand, the inference device 10 according to the present embodiment determines the importance using the relationship data indicating the degree of the relationship between the start node and each node. FIG. 17 is a diagram showing an example of a knowledge graph according to the present embodiment. In FIG. 17, an index indicating the degree of the relationship between the nodes is shown numerically (for example, “0.1”, “0.5”, “1.0”). The numerical value in the upper row in the circular region indicating the node indicates the degree of the relationship with the start node a21, and the numerical value in the lower row indicates the degree of the relationship with the start node a22. In FIG. 17, the sum of the numerical values indicating the degree of the relationship between each of the starting nodes a21 and a22 and each of the intermediate nodes b21, b22 and b23 is "1.1 (= 0.1 + 1.0)" and "1", respectively. It is "0.0 (= 0.5 + 0.5)" and "1.1 (= 1.0 + 0.1)". Further, in FIG. 17, the numerical value indicating the degree of the relationship between each of the start nodes a21 and a22 and each of the target nodes c21, c22 and c23 is “1.0”. Therefore, the importance of the route from the start node a21 or a22 to the target node c21 via the intermediate node b21 and the route from the start node a21 or a22 to the destination node c23 via the intermediate node b23 is determined by the start node a21 or It is higher than the importance of the route from a22 to the target node c22 via the intermediate node b22.
 図18は、図17の知識グラフに対して本実施の形態に係る推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードa21、a22のいずれかから目的ノードc21、c22、c23のいずれかまでの経路のうちの、総距離が最短になる経路の上位3位までの結果を示す図である。この推論方法では、図18に示されるように、事例C-21、C-22のいずれにおける総距離も同じ値であり、事例C-23における総距離は、事例C-21、C-22における総距離より長い。つまり、図18の場合には、関係の程度を用いることで、関係の程度に基づいて重要度を算出できている。 In FIG. 18, when the importance is obtained from the knowledge graph of FIG. 17 by the inference method according to the present embodiment and the reciprocal of the importance is taken as the distance, the target node c21 from any of the start nodes a21 and a22. It is a figure which shows the result to the top 3 of the route which the total distance becomes the shortest among the routes to any of c22 and c23. In this inference method, as shown in FIG. 18, the total distance in each of the cases C-21 and C-22 is the same value, and the total distance in the case C-23 is the total distance in the cases C-21 and C-22. Longer than the total distance. That is, in the case of FIG. 18, by using the degree of relationship, the importance can be calculated based on the degree of relationship.
 図19は、比較例における知識グラフの他の例を示す図である。図19の知識グラフでは、開始ノードa31から目的ノードc31に到達するには、中間ノードb31を経由し、開始ノードa31から目的ノードc32に到達するには、中間ノードb32を経由する。ここで、中間ノードb31は、開始ノードa31からのみ、経路があるのに対して、中間ノードb32は、開始ノードa31以外のノードa32~a37からの経路がある。しかし、これらのノードa32~a37は、すべて開始ノードa31とは、意味的に関係のない、若しくは、関係の程度が低いノードからの経路である場合には、特許文献1に記載された比較例の推論方法では、流入する経路が多い中間ノードb32の方が中間ノードb31よりも重要度が高く計算される。 FIG. 19 is a diagram showing another example of the knowledge graph in the comparative example. In the knowledge graph of FIG. 19, the intermediate node b31 is used to reach the target node c31 from the start node a31, and the intermediate node b32 is used to reach the target node c32 from the start node a31. Here, the intermediate node b31 has a route only from the start node a31, whereas the intermediate node b32 has a route from nodes a32 to a37 other than the start node a31. However, when all of these nodes a32 to a37 are routes from nodes that are not semantically related to or have a low degree of relationship with the start node a31, the comparative example described in Patent Document 1 In the inference method of, the intermediate node b32 having many inflow routes is calculated to be more important than the intermediate node b31.
 図20は、図19の知識グラフに対して比較例の推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードa31から目的ノードc31、c32のいずれかまでの経路のうちの、総距離の結果を示す図である。比較例の推論方法では、図20に示されるように、多くの流入経路を持つ中間ノードb32を通過する事例C-31における総距離が、流入経路が少ない中間ノードb31を通過する事例C-32における総距離よりも短く、事例C-31の経路の重要度が事例C-32の経路の重要度よりも高いと判定される。しかし、開始ノードa31との関係の程度が「0」であるノードa32~a37から流入する経路が多いことによって、事例C-31の経路の重要度が高いと判定されることは、適切ではない。 FIG. 20 shows the path from the start node a31 to any of the target nodes c31 and c32 when the importance is obtained from the knowledge graph of FIG. 19 by the inference method of the comparative example and the reciprocal of the importance is the distance. It is a figure which shows the result of the total distance. In the inference method of the comparative example, as shown in FIG. 20, the total distance in the case C-31 passing through the intermediate node b32 having many inflow paths passes through the intermediate node b31 having few inflow paths. It is determined that the importance of the route of Case C-31 is higher than the importance of the route of Case C-32, which is shorter than the total distance in. However, it is not appropriate to determine that the route of Case C-31 is of high importance because there are many routes that flow in from the nodes a32 to a37 whose degree of relationship with the start node a31 is "0". ..
 これに対し、本実施の形態に係る推論装置10は、開始ノードと各ノードとの間の関係の程度を示す関係性データを用いて重要度を決定している。図21は、本実施の形態における知識グラフの他の例を示す図である。図21には、ノード間の関係の程度を示す指標が数値(例えば、ノードを示す丸内における「0.9」、「0.5」、「1.0」)で示されている。図21では、開始ノードa41と、中間ノードb41、b42の各々との関係の程度を示す数値は、それぞれ「0.9」、「0.5」である。また、図21では、開始ノードa41と、目的ノードc41、c42の各々との関係の程度を示す数値は、それぞれ「1.0」である。したがって、開始ノードa41から中間ノードb41を経由して目的ノードc41に向かう経路の重要度は、開始ノードa41から中間ノードb42を経由して目的ノードc42に向かう経路の重要度よりも、高くなる。 On the other hand, the inference device 10 according to the present embodiment determines the importance using the relationship data indicating the degree of the relationship between the start node and each node. FIG. 21 is a diagram showing another example of the knowledge graph in the present embodiment. In FIG. 21, an index indicating the degree of the relationship between the nodes is shown numerically (for example, “0.9”, “0.5”, “1.0” in the circle indicating the node). In FIG. 21, the numerical values indicating the degree of the relationship between the start node a41 and each of the intermediate nodes b41 and b42 are “0.9” and “0.5”, respectively. Further, in FIG. 21, the numerical value indicating the degree of the relationship between the start node a41 and each of the target nodes c41 and c42 is “1.0”, respectively. Therefore, the importance of the route from the start node a41 to the destination node c41 via the intermediate node b41 is higher than the importance of the route from the start node a41 to the destination node c42 via the intermediate node b42.
 図22は、図21の知識グラフに対して本実施の形態に係る推論方法により重要度を求め、重要度の逆数を距離としたときに、開始ノードa41から目的ノードc41、c42のいずれかまでの経路のうちの、総距離が最短になる経路を示す図である。この推論方法では、図22に示されるように、事例C-41における総距離は、事例C-42における総距離より短い。つまり、図22の場合には、関係の程度に基づいて重要度を適切に算出できている。 In FIG. 22, the importance is obtained from the knowledge graph of FIG. 21 by the inference method according to the present embodiment, and when the reciprocal of the importance is taken as the distance, from the start node a41 to any of the target nodes c41 and c42. It is a figure which shows the route which the total distance becomes the shortest among the routes of. In this inference method, as shown in FIG. 22, the total distance in case C-41 is shorter than the total distance in case C-42. That is, in the case of FIG. 22, the importance can be appropriately calculated based on the degree of relationship.
 以上のように、本実施に形態に係る推論装置10、推論方法、又は推論プログラムを用いることによって、グラフ構造のみによって重要度を算出していた場合よりも、ノード間の関係の程度を考慮に入れた推論を行うことができ、推論の精度を向上することができる。 As described above, by using the inference device 10, the inference method, or the inference program according to the present embodiment, the degree of the relationship between the nodes is taken into consideration as compared with the case where the importance is calculated only by the graph structure. It is possible to make inferences and improve the accuracy of inferences.
 10 推論装置、 11 知識ベース部、 11a 知識ベース、 12 ルールDB部、 12a ルールDB、 13 動的情報取得部、 14 グラフ結合部(情報結合部)、 15 グラフ解析部(情報解析部)、 16 グラフ検索部(情報検索部)、 17 情報出力部、 18 関係解析部、 19 関係性DB部、 19a 関係性DB、 41 アプリケーション、 42 ユーザインタフェース、 43 GPS、 44 カメラ、 45 インターネット、 46 外部データベース、 47 センサ、 51 ユーザインタフェース。 10 inference device, 11 knowledge base, 11a knowledge base, 12 rule DB, 12a rule DB, 13 dynamic information acquisition, 14 graph connection (information connection), 15 graph analysis (information analysis), 16 Graph search unit (information retrieval unit), 17 information output unit, 18 relationship analysis unit, 19 relationship DB unit, 19a relationship DB, 41 application, 42 user interface, 43 GPS, 44 camera, 45 Internet, 46 external database, 47 sensors, 51 user interface.

Claims (16)

  1.  人間に関する情報を含み知識ベースから提供される知識情報と、ルールデータベースから提供される推論ルールと、を用いて、動的に変化する外部の情報のうちの互いに異なるドメインに属する情報を前向き連鎖で結合することによって統合情報を生成する情報結合部と、
     情報解析部と
     を有し、
     前記互いに異なるドメインに属する情報は、ノードとエッジとを有する有向グラフとして表現できる情報であり、
     前記統合情報は、前記異なるドメインに属する情報である前記有向グラフを結合することによって生成された統合グラフであり、
     前記情報解析部は、前記統合グラフの構成要素であるノードの重要度を、前記統合グラフ上をランダムウォークして定常状態に収束したときの前記ノードに到達する確率又はページランクのアルゴリズムと、関係性データベースから提供される、前記統合グラフの構成要素であるノードのノード間の関係の程度を示す関係性データとを用いて算出する
     ことを特徴とする推論装置。
    Using knowledge information provided by the knowledge base, including information about humans, and inference rules provided by the rules database, information belonging to different domains of dynamically changing external information is forward-chained. An information coupling part that generates integrated information by combining,
    It has an information analysis department
    The information belonging to the domains different from each other is information that can be expressed as a directed graph having nodes and edges.
    The integrated information is an integrated graph generated by combining the directed graphs which are information belonging to the different domains.
    The information analysis unit relates the importance of the node, which is a component of the integrated graph, to the probability of reaching the node or the PageRank algorithm when the node randomly walks on the integrated graph and converges to a steady state. An inference device provided from a sex database, which is calculated by using relationship data indicating the degree of relationship between nodes, which is a component of the integrated graph.
  2.  前記関係性データを生成する関係解析部を更に有し、
     前記関係解析部は、前記関係性データを前記関係性データベースに保存する
     ことを特徴とする請求項1に記載の推論装置。
    It also has a relationship analysis unit that generates the relationship data.
    The inference device according to claim 1, wherein the relationship analysis unit stores the relationship data in the relationship database.
  3.  前記関係解析部は、前記統合グラフの構成要素であるノードの重要度を算出するときに、重要度の算出対象である前記ノードについての関係性データが前記関係性データベースに存在しない場合、関係性データを生成し、前記関係性データベースに保存する
     ことを特徴とする請求項2に記載の推論装置。
    When the relationship analysis unit calculates the importance of a node that is a component of the integrated graph, if the relationship data for the node for which the importance is calculated does not exist in the relationship database, the relationship The inference device according to claim 2, wherein data is generated and stored in the relationship database.
  4.  前記関係解析部は、シソーラスのデータ、人間の行動履歴、人間の特性、人間の嗜好、word2vec、及びdoc2vecのうちの1つ以上を用いて前記関係性データを生成することを特徴とする請求項2又は3に記載の推論装置。 The claim is characterized in that the relationship analysis unit generates the relationship data using one or more of cissolus data, human behavior history, human characteristics, human preference, word2vec, and doc2vec. The inference device according to 2 or 3.
  5.  前記情報解析部は、前記統合グラフ上のランダムウォークにおいて用いられる、前記統合グラフの構成要素であるノードのノード間の遷移行列を作成することを特徴とする請求項1から4のいずれか1項に記載の推論装置。 Any one of claims 1 to 4, wherein the information analysis unit creates a transition matrix between nodes of nodes that are components of the integrated graph, which is used in a random walk on the integrated graph. The inference device described in.
  6.  前記関係性データは関係行列で表現されており、
     前記情報解析部は、前記遷移行列の要素の各列の総和が1となるように前記関係行列を調整する
     ことを特徴とする請求項5に記載の推論装置。
    The relationship data is represented by a relationship matrix.
    The inference device according to claim 5, wherein the information analysis unit adjusts the relational matrix so that the sum of each column of the elements of the transition matrix is 1.
  7.  前記情報解析部は、前記重要度の算出に際し、前記関係性データが与える影響の度合を調整することを特徴とする請求項1から6のいずれか1項に記載の推論装置。 The inference device according to any one of claims 1 to 6, wherein the information analysis unit adjusts the degree of influence of the relationship data when calculating the importance.
  8.  前記情報解析部は、前記統合グラフ上のランダムウォークの開始点としてのノードである開始ノードを決定し、前記開始ノード毎に前記統合グラフの各ノードの前記重要度を算出することを特徴とする請求項1から7のいずれか1項に記載の推論装置。 The information analysis unit determines a start node which is a node as a start point of a random walk on the integrated graph, and calculates the importance of each node of the integrated graph for each start node. The inference device according to any one of claims 1 to 7.
  9.  前記情報解析部は、前記開始ノード毎に重みを設定し、前記開始ノード毎に前記重みに基づいて前記統合グラフ上の各ノードの重要度を算出することを特徴とする請求項8に記載の推論装置。 The eighth aspect of the present invention, wherein the information analysis unit sets a weight for each start node and calculates the importance of each node on the integrated graph based on the weight for each start node. Inference device.
  10.  前記情報解析部は、前記統合グラフ上のランダムウォークの開始点としてのノードである開始ノードを決定し、前記開始ノード毎に前記統合グラフ上の各ノードの重要度の総和を前記開始ノード毎の重要度として算出することを特徴とする請求項1から7のいずれか1項に記載の推論装置。 The information analysis unit determines a start node which is a node as a start point of a random walk on the integrated graph, and sums the importance of each node on the integrated graph for each start node for each start node. The inference device according to any one of claims 1 to 7, wherein the inference device is calculated as an importance.
  11.  前記情報解析部は、前記開始ノード毎に重みを設定し、前記開始ノード毎に前記重みに基づいて前記開始ノード毎の重要度を算出することを特徴とする請求項10に記載の推論装置。 The inference device according to claim 10, wherein the information analysis unit sets a weight for each start node and calculates the importance of each start node based on the weight for each start node.
  12.  前記統合グラフのノードを検索する情報検索部を更に有し、
     前記情報検索部は、前記重要度に基づいて前記ノードを検索する
     請求項1から11のいずれか1項に記載の推論装置。
    It also has an information retrieval unit for searching the nodes of the integrated graph.
    The inference device according to any one of claims 1 to 11, wherein the information retrieval unit searches for the node based on the importance.
  13.  前記外部の情報を予め決められた形式の情報に変換して前記情報結合部に提供する動的情報取得部を更に有することを特徴とする請求項1から12のいずれか1項に記載の推論装置。 The inference according to any one of claims 1 to 12, further comprising a dynamic information acquisition unit that converts the external information into information in a predetermined format and provides the information coupling unit. apparatus.
  14.  前記知識ベースを保存する知識ベース部と、
     前記ルールデータベースを保存するルールデータベース部と、
     前記関係性データベースを保存する関係性データベース部と、
     を更に有することを特徴とする請求項1から13のいずれか1項に記載の推論装置。
    The knowledge base section that stores the knowledge base and
    The rule database section that stores the rule database and
    The relationship database section that stores the relationship database and
    The inference device according to any one of claims 1 to 13, further comprising.
  15.  コンピュータが実行する推論方法であって、
     前記コンピュータが、人間に関する情報を含み、知識ベースから提供される知識情報と、ルールデータベースから提供される推論ルールと、を用いて、動的に変化する外部の情報のうちの互いに異なるドメインに属する情報を前向き連鎖で結合することによって統合情報を生成するステップであって、前記互いに異なるドメインに属する情報は、ノードとエッジとを有する有向グラフとして表現できる情報であり、前記統合情報は、前記異なるドメインに属する情報である前記有向グラフを結合することによって生成された統合グラフであるステップと、
     前記コンピュータが、前記統合グラフの構成要素であるノードの重要度を、前記統合グラフ上をランダムウォークして定常状態に収束したときの前記ノードに到達する確率又はページランクのアルゴリズムと、関係性データベースから提供される、前記統合グラフの構成要素であるノードのノード間の関係の程度を示す関係性データとを用いて算出するステップと
     を有することを特徴とする推論方法。
    An inference method performed by a computer
    The computer belongs to different domains of dynamically changing external information, including information about humans, using knowledge information provided by the knowledge base and inference rules provided by the rules database. It is a step of generating integrated information by combining information in a forward chain, and the information belonging to the different domains is information that can be expressed as a directed graph having nodes and edges, and the integrated information is the different domains. A step that is an integrated graph generated by combining the directed graphs that are information belonging to
    A relationship database with a probability or page rank algorithm for the computer to reach the node when it randomly walks on the integrated graph and converges to a steady state with respect to the importance of the node which is a component of the integrated graph. A method of inference characterized by having a step of calculating using relationship data indicating the degree of relationship between nodes, which is a component of the integrated graph, provided by.
  16.  人間に関する情報を含み、知識ベースから提供される知識情報と、ルールデータベースから提供される推論ルールと、を取得する処理と、
     前記知識情報と前記推論ルールとを用いて、動的に変化する外部の情報のうちの互いに異なるドメインに属する情報を前向き連鎖で結合することによって統合情報を生成する処理であって、前記互いに異なるドメインに属する情報は、ノードとエッジとを有する有向グラフとして表現できる情報であり、前記統合情報は、前記異なるドメインに属する情報である前記有向グラフを結合することによって生成された統合グラフである処理と、
     前記統合グラフの構成要素であるノードの重要度を、前記統合グラフ上をランダムウォークして定常状態に収束したときの前記ノードに到達する確率又はページランクのアルゴリズムと、関係性データベースから提供される、前記統合グラフの構成要素であるノードのノード間の関係の程度を示す関係性データとを用いて算出する処理と
     をコンピュータに実行させることを特徴とする推論プログラム。
    The process of acquiring knowledge information provided by the knowledge base, including information about humans, and inference rules provided by the rule database.
    It is a process of generating integrated information by combining information belonging to different domains among dynamically changing external information in a forward chain using the knowledge information and the inference rule, which are different from each other. The information belonging to the domain is information that can be expressed as a directed graph having a node and an edge, and the integrated information is a process that is an integrated graph generated by combining the directed graphs that are information belonging to the different domains.
    The importance of a node, which is a component of the integrated graph, is provided from the relationship database with an algorithm of probability or page rank of reaching the node when randomly walking on the integrated graph and converging to a steady state. , An inference program characterized by causing a computer to perform a process of calculating using relationship data indicating the degree of a relationship between nodes, which is a component of the integrated graph.
PCT/JP2019/049767 2019-12-19 2019-12-19 Inferring device, inferring method, and inferring program WO2021124502A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2019/049767 WO2021124502A1 (en) 2019-12-19 2019-12-19 Inferring device, inferring method, and inferring program
JP2021559617A JP7031079B2 (en) 2019-12-19 2019-12-19 Inference device, inference method, and inference program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/049767 WO2021124502A1 (en) 2019-12-19 2019-12-19 Inferring device, inferring method, and inferring program

Publications (1)

Publication Number Publication Date
WO2021124502A1 true WO2021124502A1 (en) 2021-06-24

Family

ID=76478600

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/049767 WO2021124502A1 (en) 2019-12-19 2019-12-19 Inferring device, inferring method, and inferring program

Country Status (2)

Country Link
JP (1) JP7031079B2 (en)
WO (1) WO2021124502A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6567218B1 (en) * 2018-09-28 2019-08-28 三菱電機株式会社 Inference apparatus, inference method, and inference program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6567218B1 (en) * 2018-09-28 2019-08-28 三菱電機株式会社 Inference apparatus, inference method, and inference program

Also Published As

Publication number Publication date
JPWO2021124502A1 (en) 2021-06-24
JP7031079B2 (en) 2022-03-07

Similar Documents

Publication Publication Date Title
JP6567218B1 (en) Inference apparatus, inference method, and inference program
US11194842B2 (en) Methods and systems for interacting with mobile device
US10628432B2 (en) Personalized deep models for smart suggestions ranking
US10733507B2 (en) Semantic clustering based retrieval for candidate set expansion
US10726025B2 (en) Standardized entity representation learning for smart suggestions
JP5921536B2 (en) Computerized Agent System and User Instruction Semantic Networking
US10956414B2 (en) Entity based query filtering
US10148777B2 (en) Entity based search retrieval and ranking
WO2023065211A1 (en) Information acquisition method and apparatus
US9443023B2 (en) Searching and classifying information about geographic objects within a defined area of an electronic map
CN112889043A (en) User-centric browser location
US10956515B2 (en) Smart suggestions personalization with GLMix
CN103440314A (en) Semantic retrieval method based on Ontology
CN109522420A (en) A kind of method and system obtaining learning demand
Xu Formalizing natural‐language spatial relations between linear objects with topological and metric properties
Zhou et al. Familiarity-dependent computational modelling of indoor landmark selection for route communication: a ranking approach
JP6932162B2 (en) Area-based item recommendation terminal device and item recommendation information provision method.
Mata-Rivera et al. A collaborative learning approach for geographic information retrieval based on social networks
JP7031079B2 (en) Inference device, inference method, and inference program
Ivanov An algorithm for on-the-fly K shortest paths finding in multi-storey buildings using a hierarchical topology model
KR101384593B1 (en) Behavior pattern reasoning based on context awarness
CN114417166A (en) Continuous interest point recommendation method based on behavior sequence and dynamic social influence
JP7012916B2 (en) Inference device, setting method, and setting program
Kovács et al. Service-oriented context-aware framework
Dridi et al. Situation-aware rating prediction using fuzzy rules

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19956216

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021559617

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19956216

Country of ref document: EP

Kind code of ref document: A1