Apparatus and computer-implemented method for concept clustering

The method addresses the limitations of prior clustering methods by determining embeddings and using multicut clustering to identify clusters and learn rules in knowledge graphs, achieving efficient and interpretable concept clustering and rule generation.

JP7802481B2Active Publication Date: 2026-01-20ROBERT BOSCH GMBH
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021159200
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-09-30
Filing Date
2021-09-29
Publication Date
2026-01-20
Estimated Expiration
2041-09-29

AI Technical Summary

Technical Problem

Existing concept clustering methods for relational data require prior knowledge of the number of clusters and involve numerous hyperparameters, limiting their effectiveness and interpretability.

Method used

A computer-implemented method for concept clustering on knowledge graphs that determines embeddings of entities, constructs a weighted undirected graph, uses multicut clustering to identify clusters, and learns rules based on semantic similarity, providing human-interpretable descriptions without requiring a priori cluster numbers.

Benefits of technology

The method computes high-quality clusters with fewer hyperparameters, enabling efficient and interpretable clustering and rule generation, facilitating semi-automatic ontology construction and enhanced question-answering capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007802481000006
    Figure 0007802481000006
  • Figure 0007802481000007
    Figure 0007802481000007
  • Figure 0007802481000008
    Figure 0007802481000008
Patent Text Reader

Abstract

To provide a computer-implemented method, a device, and a program that solve conceptual clustering problems relating to relational data.SOLUTION: The method includes (1) determining embedding 206 of a first entity 204, especially the embedding 206 of the first entity 204 in a knowledge graph 202, (2) inserting a first vertex 210 of the embedding 206 into a particularly weighted and particularly undirected graph 208, (3) determining a first cluster 216 consisting of a plurality of vertices with the first vertex 210 in the graph 208, (4) especially in the knowledge graph 202, determining a second entity 222 for the first cluster 216 and determining semantic similarity 224 between the first entity 204 and the second entity 222, and (5) determining a rule 226 for the first cluster 216 depending on the semantic similarity 224 between the first entity 204 and the second entity 222.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to concept clustering. [Background technology]

[0002] The task of conceptual clustering for relational data is described, for example, in RE Stepp and RS Michalski, "Conceptual clustering of structured objects: A goal-oriented approach," Artificial Intelligence, 28(1):43-69 (1986). [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] REStepp and RS Michalski: Conceptual clustering of structured objects: A goal-oriented approach. Artificial Intelligence, 28(1):43-69 (1986) Summary of the Invention [Problem to be solved by the invention]

[0004] Disclosure of the Invention According to the present invention, a computer-implemented method, a corresponding apparatus, and a corresponding computer program are provided for solving a concept clustering problem on relational data. [Means for solving the problem]

[0005] The computer-implemented method includes the steps of: determining an embedding of a first entity, in particular an embedding of the first entity in a knowledge graph; inserting a first vertex of the embedding into a weighted, in particular undirected, graph; determining a first cluster in the graph, consisting of vertices with the first vertex; determining a second entity for the first cluster, in particular in the knowledge graph; determining a semantic similarity between the first entity and the second entity, in particular in the knowledge graph; and determining rules for the first cluster depending on the semantic similarity between the first entity and the second entity. In this way, a conceptual clustering task is performed on entities of a knowledge graph (KG), where, given the KG and a set of target entities, the goal is to cluster these entities into distinct, in particular unknown, groups based on the quality of descriptions computed for the groups via the KG. The rules provide descriptions for the computed clusters that are equally understandable by humans and machines. Our method is particularly favorable due to its ability to compute high-quality clusters, along with their descriptions, without a priori knowing their number. Moreover, in contrast to other existing clustering methods, such as DBSCAN, which do not require the number of clusters as input, our method requires fewer hyperparameters to tune.

[0006] The step of inserting a first vertex into the graph may include labeling with a label an edge of the graph connecting the first vertex to a second vertex of the graph. Depending on the target entities, a particular undirected weighted complete graph is constructed in which edges between all pairs of entities are labeled.

[0007] Labeling the edges may include determining weights depending on the distance between a first vector for a first vertex and a second vector for a second vertex, and mapping the weights to labels by a function, for example, edges between all entity pairs are labeled using the cosine similarity between the respective entities in the embedding space.

[0008] The step of determining the first cluster may include determining a subset of edges of the graph for the first cluster that includes the first vertex such that no cycle in the graph intersects the subset. A multicut problem is formulated based on the graph and solved efficiently.

[0009] Determining the embedding may include using a model to map a first entity to a first vector in a vector space, which may be an embedding model that transforms the entities and relations of the KG into vectors in a vector space, in particular a low-dimensional vector space.

[0010] Determining the rule may include determining a plurality of rules dependent on semantic similarity to the second entity, and selecting a rule from the plurality of rules.

[0011] The step of selecting a rule may include the steps of determining the amount of entities covered by rules belonging to a first cluster, determining the amount of entities covered by rules belonging to a second cluster, determining criteria for the rule depending on the amount of entities covered by rules belonging to the first cluster and the amount of entities belonging to the second cluster, and selecting the rule if the criteria meet a predetermined condition, or not selecting the rule if the criteria do not meet the predetermined condition.

[0012] Determining the criterion may include determining a ratio between the amount of entities covered by the rules belonging to the first cluster and the cardinality of the first cluster.

[0013] Determining the criterion may include determining a ratio between the amount of entities covered by the rules belonging to the second cluster and the cardinality of the second cluster.

[0014] The method may include determining an output depending on a rule, detecting an input to the rule, and determining a label for the rule depending on the input. The rule describes a concept found in the KG. Such a description can be provided to an expert, who can suggest a name for it. Such a concept can then be added to the KG under the suggested name.

[0015] The method may include the steps of receiving an input, in particular a query or a message, selecting a rule depending on the input, determining at least one entity depending on the rule, and outputting a response depending on the at least one entity.

[0016] Outputting the response may include displaying the status of a machine, the characteristics of an object in a digital image, or an answer to a question, depending on the at least one entity.

[0017] The apparatus is configured to perform the method. The computer program comprises computer readable instructions which, when executed on a computer, cause the computer to perform the steps of the method.

[0018] Further advantageous embodiments can be derived from the following description and drawings. [Brief explanation of the drawings]

[0019] [Figure 1] 1 is a diagram illustrating generally aspects of an apparatus for solving a concept clustering problem on relational data; [Figure 2] FIG. 1 shows a schematic diagram of steps in a method for solving a concept clustering problem on relational data. [Figure 3] FIG. 1 is a diagram illustrating an example of an application. DETAILED DESCRIPTION OF THE INVENTION

[0020] A knowledge graph (KG) represents a connected collection of factual information, often coded as a set of <subject-predicate-object> triples, e.g.<john worksAt Firm A> The subject or object of such a triple is called an entity. The predicate is called a relation. Naturally, the set of triples in KG can be represented as a directed graph with labeled vertices and edges.

[0021] Knowledge Graph Embedding (KGE) involves embedding the entities and relations of a KG into a continuous vector space with dimension n specified by the user. More specifically, a KG model takes as input a set of triples of the KG and aims to map the entities and relations into an n-dimensional vector space such that some features that describe the KG structure are preserved. These features are captured by the objective function of each embedding model. In this way, a set of numerical vectors is obtained from the relational data.

[0022] Concept clustering is the task of grouping entities in a knowledge graph into sets consisting of groups with high inter-cluster similarity and groups with low inter-cluster similarity, and further describing the commonality of the entities in each cluster in terms of their KG properties.

[0023] A multicut of a graph is a subset of its edges such that no cycle in the graph intersects this subset exactly once.

[0024] Rule induction is the task of learning rules from a KG. That is, given a KG, the goal of rule learning is to construct a set of rules of the form H←B, where H is a required predicate of the form h(X,c), c is a dummy constant corresponding to the target cluster, h is a dummy predicate representing the relationship between X and the target cluster, and B is a set of rules of the form b1(X1,Y1),b2(X2,Y2),…,bn(X n ,Y n ) where for all X1,X2,…,X n ,Y1,Y2,…,Y n can be a variable or a constant such that the learned rule is retained frequently enough in the data.

[0025] One measure for a rule is a function that takes a KG and a rule as input and outputs a value that represents how well a given rule fits the KG.

[0026] A conjunctive query CQ is a query of the form q(X1,X2,…,X k )←B's formula, or sometimes simply (X1,X2,…,X k )←B, where B is the body of the CQ as defined for rules, and X1, X2, …, X k are so-called answer variables, i.e. variables that have a role in answering the query.

[0027] Users formulate their information needs in the form of such queries. For example, in the case of a KG storing employees of company A, a possible conjunctive query could be to identify all people who work for department D of company A and who are married and have children. Formally, such a query could be written as: Q(X)←type(X,person),worksFor(X,D),marriedTo(X,Y),hasChild(X,Z) In the above example, X is the answer variable of the given CQ. Naturally, a conjunctive query can be expressed as a KG pattern.

[0028] 1 shows a device 100 having at least one processor 102 and at least one memory device 104 for storing instructions and other data. The device 100 may comprise an input 106 and an output 108. The input 106 may be a receiver for messages or a user interface for detecting user queries. The output 108 may be a display.

[0029] The apparatus 100 is configured to perform the method described below with reference to Fig. 2. As an example for relational data, the method will be described with respect to a knowledge graph KG202 having multiple entities. In the following, the principles of the method will be described with respect to a first entity 204 of the multiple entities. The method can be applied to any of the entities of the KG202. The method can equally be applied to a target entity, e.g., a portion of the KG202.

[0030] The method for concept clustering described below does not require information about the number of clusters.

[0031] The method takes as input a knowledge graph KG, a set of entities T, and other parameters, including the maximum length m of the cluster description, the minimum coverage μ, and a threshold θ, which are used to determine the quality of the computed description.

[0032] The method includes a step 1 of determining an embedding for at least one entity of the KG 202. The embedding may be a vector in a vector space. The embedding may be determined by a model, in particular an embedding model. Figure 2 exemplarily depicts an embedding 206 of a first entity 204. The embedding 206 of the first entity 204 may be a first vector.

[0033] The corresponding algorithm can start by embedding entities and relations into a low-dimensional vector space using a specific embedding model. Any embedding model can be used. An exemplary embedding model is described in Ren, H., Hu, W., Leskovec, J.: Query2box: Reasoning over knowledge graphs in vector space using box embeddings. In: ICLR (2020).

[0034] The method includes a step 2 of determining a graph 208. According to an embodiment, the graph 208 is determined for an embedding of the entities of the KG 202. Step 2 includes inserting a first vertex 210 of the embedding 206 into the graph 208. If the target entities, i.e. a subset of the entities of the KG 202, are used, the graph 208 is incomplete in the sense that it has fewer vertices than entities, i.e. the construction of the graph 208 for the entire KG 202 can actually be avoided.

[0035] In the illustrative embodiment, graph 208 is a weighted undirected graph.

[0036] Step 2 includes determining levels for edges of graph 208. According to an embodiment, inserting a first vertex 210 into graph 208 includes labeling a graph edge 212 connecting first vertex 210 to a second vertex 214 of graph 208 with a label.

[0037] The step of labeling the edge 212 may include determining a weight depending on the distance [cosine similarity] between a first vector for the first vertex 210 and a second vector for the second vertex 214, and mapping the weight to a label by a function.

[0038] In an embodiment, graph 210 is a similarity graph that can be used as input to the Multicut algorithm. Once the entities and relations are mapped into the embedding space, a weighted undirected complete graph G=(V,E) can be computed. In this embodiment, E=T, and all entity pairs in E are connected. The method then computes pairwise distances between all entity pairs using the cosine similarity of their vectors.

[0039] More specifically, let a and b be two target entities, and v a ,v b Let a and b be their respective numeric vectors in the embedding space. Then the distance between a and b is calculated using the cosine similarity function as follows:

number

[0040] Then, all edges (a, b) ∈ E in the constructed complete graph G are labeled by the function φ:E→R.

number

[0041] The method includes a step 3 of determining at least one cluster in the graph 208. Preferably, step 3 includes determining at least two clusters in the graph 208. According to an embodiment, a first cluster 216 of vertices having a first vertex 210 is determined. According to an embodiment, a second cluster 218 and a third cluster 220 are similarly determined.

[0042] Determining the first cluster 216 may include determining a subset of edges of the graph 208 for the first cluster 216 that includes the first vertex 210 such that no cycle in the graph 208 intersects this subset even once.

[0043] To detect salient regions in the embedding space, a multicut clustering algorithm can be used. Aspects of the multicut clustering approach are disclosed in Chopra, S., Rao, M.: The partition problem. Math. Prog. 59(1-3), 87-115 (1993).

[0044] A multicut of graph 208 is a subset of its edges such that no cycle in the graph intersects this subset exactly once. By assigning 1 to edges in a multicut and 0 to all other edges, the set of all valid multicuts can be formulated by the set of linear inequalities:

number

[0045] In this example, it is sufficient to consider only chordless cycles. G A graph decomposition is uniquely defined by

[0046] Given the above definitions, the minimum cost multicut problem is as follows:

number

[0047] This problem can be solved using an effective heuristic method based on a local search strategy, as disclosed, for example, in Keuper, M., Levinkov, E., Bonneel, N., Lavoue, G., Brox, T., Andres, B.: Efficient decomposition of image and mesh graphs by lifted multicuts. In: ICCV (2015).

[0048] The method includes step 4 of determining a second entity 222 for the first cluster 216. Step 4 includes determining a semantic similarity 224 between the first entity 204 and the second entity 222. The second entity 222 and the semantic similarity 224 are determined in the knowledge graph 202.

[0049] The method includes a step 5 of determining a rule 226 for the first cluster 216 depending on the semantic similarity between the first entity 204 and the second entity 222 .

[0050] Determining the rule 226 may include determining a plurality of rules dependent on semantic similarity to the second entity, and selecting the rule 226 from the plurality of rules.

[0051] The regions or clusters constructed in the vector space can be mapped to conjunctive queries or descriptions by learning Horn rules. More specifically, for every entity a clustered into cluster c in step 3, the method adds a fact belongsTo(a,c) to the KG, belongsTo(X,c)←p1(X,Y),p2(Y,Z),…,pm (W,U) where m is the desired description length specified by the user as above, while p1, p2, ..., p m is a relation that appears in KG, which means that entity a is covered by the rule.

[0052] An exemplary algorithm that can be used to learn such rules is disclosed in Galarraga, L., Teflioudi, C., Hose, K., Suchanek, FM: Fast rule mining in ontological knowledge bases with amie++. The VLDB Journal 24(6), 707-730 (2015).

[0053] To be able to capture constants in the rule head, the method described therein is modified as described below. More specifically, according to one exemplary implementation, the rule is modified to start with belongsTo(X,c) instead of belongsTo(X,Y), and the rule body is constructed by applying the expansion operators described in "Fast rule mining in ontological knowledge bases with amie++", apart from the operator "add closing atom operator".

[0054] The learned rules can then be pruned based on various rule criteria such as confidence, coverage, or weighted relative accuracy.

[0055] The step of selecting a rule 226 may include determining the amount of entities covered by the rules 226 belonging to the first cluster 216 and determining the amount of entities covered by the rules belonging to the second cluster 218. The criteria for the rule 226 are determined depending on the amount of entities covered by the rules 226 belonging to the first cluster 216 and the amount of entities belonging to the second cluster 218. If the criteria meet a predetermined condition, the rule 226 is selected. If the criteria do not meet the predetermined condition, the rule 226 is not selected.

[0056] Determining the criterion may include determining the ratio of the amount of entities covered by the rules 226 belonging to the first cluster 216 to the cardinality of the first cluster 216 .

[0057] Determining the criterion may include determining the ratio of the amount of entities covered by the rules belonging to the second cluster 218 to the cardinality of the second cluster 218 .

[0058] The third cluster 220 can be used to determine the criteria as well.

[0059] According to one embodiment, the exclusive coverage criterion can be used to estimate the quality of the obtained cluster description. The main advantage of this criterion is that it takes into account all computed clusters when evaluating a given rule, in contrast to most other rule criteria that estimate the quality of rules considered independently. This ensures that a given rule is dedicated to the current cluster, which contributes to its quality. For a given rule r, a cluster c, and a collection of clusters S and KG, the exclusive coverage criterion is defined as follows:

number

[0060] Finally, among all the calculated cluster descriptions, the cluster description with the highest average exclusive coverage can be selected.

[0061] The method may include determining an output in dependence on the rule 226, and, in particular, in response to the output, detecting an input to the rule 226. The method may include determining a label for the rule 226 in dependence on the input.

[0062] The rules can be used as explanations for the clusters constructed via embedding and can therefore be considered useful in contributing to the explainability of machine learning models.

[0063] Rules express human-interpretable labels for concepts, which are sets of salient entities grouped based on the entities' semantic similarity.

[0064] For example, suppose we are given a KG extracted from a scientific publication in the context of materials science. Needless to say, after such an extraction process, many concepts, such as types of SOFCs, may be missing, as they may not be directly mentioned in the text.

[0065] After applying the above method based on such KG, a cluster of entities can be obtained by rule 226, which describes the cluster as a set consisting of "electrochemical conversion devices that generate electricity directly by oxidizing fuel, having dimensions from a needle-like shape to a length of about 1.5 to 2 meters for fast start-up time and high gross power."

[0066] If such a description is provided to a materials scientist, he or she will immediately understand that this label refers to a "tubular SOFC" and will be able to add this concept to the KG under the proposed name.

[0067] The rule 226 and output in this example is "an electrochemical conversion device that produces electricity directly by oxidizing a fuel, the electrochemical conversion device having dimensions ranging from a needle-like shape to a length of about 1.5-2 meters for fast start-up time and high gross power," or a phrase thereof. The label for rule 226 in this example can be "Tubular SOFC."

[0068] This method and these rules particularly contribute to the process of semi-automatic ontology construction.

[0069] This allows new concepts, and therefore new rules, to be generated. By explicitly adding new concepts to the KG as described above, the question-answering process can be optimized.

[0070] One application aspect is described below with reference to FIG.

[0071] The corresponding method includes a step 302 of receiving an input, in particular a query.

[0072] The query can be a user-generated question in natural language, which can be converted into a formal representation.

[0073] The method includes a step 304 of selecting a rule 226 depending on the input.

[0074] The task in this example is to find an answer to a question. An answer to a question is found if at least one entity in the KG is found using a rule that corresponds to a concept. Because questions are formulated by users in natural language, they can often contain concepts for which no rules apply.

[0075] In this case, the method includes automatically detecting rules 226 for the above concepts.

[0076] The method includes a step 306 of determining at least one entity in dependence on the rules 226 .

[0077] The method includes a step 308 of outputting a response depending on said at least one entity.

[0078] Once the rules 226 have been determined, they can be presented to the user as descriptions of the detected concepts, allowing the user to better understand the responses.

[0079] The query can be about the condition of a machine, the properties of an object in a digital image, or the answer to a question.

[0080] Outputting the response may include displaying the status of a machine, the characteristics of an object in a digital image, or an answer to a question, depending on the at least one entity.

[0081] In a production line having multiple machines configured to communicate via messages, the inputs can be messages. The messages can contain information about the state of the machines. In this case, the rules can relate to concepts about fault recognition. In this case, the outputs can indicate the normality of the products produced on the line, or the health status of the machine or even other machines on the production line.

[0082] In the case of digital image processing, the KG can be a description of the objects recognized in object recognition on an image. The entities in the KG can represent objects and / or their properties.

[0083] In the case of Street View, the object may be a car, a person, a house or other part of infrastructure. In the case of Street View, the property may particularly describe the object and / or its relationship to other objects in the digital image.

Claims

1. A computer-implemented, computer-executed method comprising: determining an embedding (206) of a first entity (204) in a knowledge graph (202); (2) inserting a first vertex (210) of said embedding (206) into a weighted undirected graph (208); determining (3) a first cluster (216) of vertices in the graph (208) that includes the first vertex (210); determining (4) a second entity (222) for the first cluster (216) in the knowledge graph (202); determining (4) a semantic similarity (224) between the first entity (204) and the second entity (222) in the knowledge graph (202); determining (5) a rule (226) for the first cluster (216) depending on the semantic similarity (224) between the first entity (204) and the second entity (222); Including, The step (5) of determining the rules (226) comprises: determining a plurality of rules dependent on semantic similarity to the second entity; selecting said rule (226) from said plurality of rules; Including, The step (5) of selecting the rule (226) comprises: determining the amount of entities covered by rules (226) belonging to the first cluster; and determining the amount of entities covered by rules (226) belonging to a second cluster; determining a criterion for said rule depending on the amount of entities covered by said rule (226) belonging to said first cluster and the amount of entities belonging to said second cluster; selecting the rule (226) if the criteria meet a predetermined condition, or not selecting the rule (226) if the criteria do not meet a predetermined condition; A method comprising:

2. 2. The method of claim 1, wherein inserting the first vertex into the graph comprises labeling an edge of the graph connecting the first vertex to a second vertex of the graph with a label.

3. The step (2) of labeling the edges (212) comprises: determining a weight depending on a distance between a first vector for the first vertex (210) and a second vector for the second vertex (214); mapping the weights to the labels by a function; The method of claim 2 , comprising:

4. 4. The method of claim 1, wherein the step of determining the first cluster comprises determining a subset of edges of the graph for the first cluster that includes the first vertex such that no cycle in the graph intersects the subset.

5. 5. The method of claim 1, wherein the step (1) of determining the embedding comprises using a model to map the first entity to a first vector in a vector space.

6. 6. The method according to claim 1, wherein the step of determining (5) the criteria comprises determining a ratio between the amount of entities covered by the rules (226) belonging to the first cluster and the cardinality of the first cluster.

7. 7. The method according to claim 1, wherein the step of determining (5) the criteria comprises determining a ratio between the amount of entities covered by the rules (226) belonging to the second cluster and the cardinality of the second cluster.

8. determining an output in dependence on said rules (226); Detecting inputs to said rules (226); determining a label for the rule dependent on the input; 8. The method of claim 1, comprising:

9. receiving a query or message as input (302); selecting (304) said rule (226) depending on said input; determining (306) at least one entity in dependence on said rules (226); outputting a response depending on said at least one entity (308); 9. The method of claim 1, comprising:

10. 10. The method of claim 9, wherein outputting the response (308) comprises displaying a state of a machine, a characteristic of an object in a digital image, or an answer to a question, depending on the at least one entity.

11. Apparatus (100), characterized in that it is adapted to carry out the method according to any one of claims 1 to 10.

12. 11. A computer program comprising computer readable instructions, which, when executed on a computer, cause the computer to carry out the steps of the method of any one of claims 1 to 10.

Citation Information

Patent Citations

  • Rule adjusting method and data classifying method using rule

    JP2001312408A

  • Method and apparatus for recommending entity

    US20190311275A1

  • Meaning extraction system, meaning extraction method, and recording medium

    WO2011118723A1