Apparatus and method for determining a knowledge graph

A hierarchical multi-task setting with a shared Transformer model addresses the challenge of accurately classifying instances into a hierarchical label set, optimizing training data and computational resources for efficient knowledge graph determination.

JP7780897B2Active Publication Date: 2025-12-05ROBERT BOSCH GMBH
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021151855
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-09-21
Filing Date
2021-09-17
Publication Date
2025-12-05
Estimated Expiration
2041-09-17

AI Technical Summary

Technical Problem

Existing methods struggle to efficiently determine a knowledge graph by accurately classifying instances into a hierarchical set of labels, particularly in scenarios with limited computing power, where multiple labels can be assigned at each level.

Method used

A computer-implemented method using a hierarchical multi-task setting with a shared Transformer model, where different classifiers are trained to make separate decisions, leveraging pre-trained neural language models and hierarchical classification algorithms to ensure computational feasibility and accurate label assignments.

Benefits of technology

The method enables coherent and efficient determination of knowledge graphs by optimizing the use of training data and computational resources, ensuring accurate hierarchical label assignments even in scenarios with limited computing power.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007780897000001
    Figure 0007780897000001
  • Figure 0007780897000002
    Figure 0007780897000002
  • Figure 0007780897000003
    Figure 0007780897000003
Patent Text Reader

Abstract

To provide a device and a computer-implemented method for determining a knowledge graph.SOLUTION: The device and method comprises determining (404) an embedding for a sequence of tokens of an instance, determining (406) a first classification for the contextual embedding at a first classifier, determining (410) if the first classification meets a first condition, adding (412) to the knowledge graph a first link between a first node of the knowledge graph representing the instance and a node of the knowledge graph representing the first classification when the first classification meets the first condition and not adding the first link otherwise.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] In particular, the present invention relates to an apparatus and method for determining a knowledge graph by solving a classification problem. Summary of the Invention [Means for solving the problem]

[0002] Disclosure of the Invention A computer-implemented method for determining a knowledge graph includes determining an embedding for a token sequence of an instance, determining a first classification for the embedding in a first classifier, determining whether the first classification satisfies a first condition, and if the first classification satisfies the first condition, adding a first link to the knowledge graph between a first node in the knowledge graph representing the instance and a node in the knowledge graph representing the first classification, and not adding the first link otherwise. The first classifier is associated with a node in the knowledge graph representing a label in a label tree. The first classification can be that the instance belongs to this label or that the instance does not belong to this label.

[0003] Preferably, the method includes the steps of determining a second classification in a second classifier, determining whether the second classification satisfies a second condition, and if the second classification satisfies the second condition, adding a second link to the knowledge graph between the node in the knowledge graph representing the instance and the second node in the knowledge graph representing the second classification, and if not, not adding the second link.In a multi-task setting, the main task is divided into a set of tasks, and the classifier outputs a prediction for each task separately.

[0004] The method may include providing embeddings to a first classifier and providing the embeddings and / or hidden states of the first classifier resulting from the provided embeddings as inputs to a second classifier. Classifiers at different levels in the hierarchy are assigned to different levels in the hierarchy of labels in the label tree. Links between parent and child nodes in the knowledge graph are represented by the hierarchy for the classifiers. The classifications or hidden states of a classifier representing a parent can be used as inputs for a classifier representing its child.

[0005] The method includes determining a first link from the node representing the instance to a first node representing the first classification if the second classification satisfies the condition. If the second classifier is at a lower hierarchical level in the hierarchy for classifiers than the first classifier, the predictions of this collection of classifiers are used in hierarchical prediction mode or by post-processing prediction to make the hierarchical prediction consistent, such as adding related parent nodes to the knowledge graph when the parent nodes are not predicted but the children are, or removing the child's label when the parent node is not predicted.

[0006] A token sequence for the instance can be determined. A tokenizer can be used to determine the sequence. The instance can include digital text data.

[0007] Preferably, the first classification and / or the second classification are binary classifications.

[0008] The method may include providing a node in a knowledge graph representing a label tree, and adding a plurality of links to the knowledge graph to nodes representing labels for the instance, such that a single label or multiple labels can be assigned to the instance.

[0009] Preferably, the method includes determining whether the instance belongs to a category represented by a node in the label tree according to the first classification and / or the second classification.

[0010] The method preferably includes the step of assigning a first classification a different label than a second classification, so that in a multi-task setting different tasks are solved.

[0011] For training, the method includes the steps of preparing data points having labels for a first classification and / or labels for a second classification, and training a first classifier and / or a second classifier depending on the data points. That is, different classifiers are trained to make different decisions, thereby solving different tasks in a multi-task setting. This combines the advantages of a hierarchical classification algorithm, in which training data is optimally utilized by training classifiers focused on different decisions, with the advantages of a pre-trained neural language model for Transformer-based classification. Because a single Transformer model is shared for all classifiers and different classifiers are trained in a multi-task setting, computational feasibility is ensured even in settings with limited computing power.

[0012] Preferably, the method comprises the steps of providing a model, in particular a neural network, and training the model to determine the first classification or the second classification, such that for each label a portion of the neural network representing one classifier is trained.

[0013] Training the model may include determining a loss from the output of the first classifier and a loss from the output of the second classifier, and backpropagating the losses to train weights in the first classifier and the second classifier depending on both losses, or to train the first classifier depending on the first loss and independent of the second loss and to train the second classifier depending on the second loss and independent of the first loss.

[0014] Preferably, the method includes determining a classification for the input to the model thus trained, by a classifier at a position in the hierarchy of classifiers in the model, and assigning this classification to a label corresponding to its position in the hierarchy of the label tree. The collection of classifiers in the model can be used to make hierarchical predictions, which results in coherent labels in the tree.

[0015] An apparatus for determining a knowledge graph is configured to perform the steps of this method.

[0016] Further advantageous embodiments will be readily apparent from the following description and drawings. [Brief explanation of the drawings]

[0017] [Figure 1] FIG. 1 illustrates an apparatus for determining a knowledge graph. [Figure 2] FIG. 1 illustrates a label tree. [Figure 3A] FIG. 1 is a schematic diagram showing classification according to a first embodiment. [Figure 3B] FIG. 1 is a schematic diagram showing classification according to a second embodiment. [Figure 4] FIG. 1 illustrates steps in a method for determining a knowledge graph. [Figure 5] FIG. 1 illustrates steps in a method for training a model for determining a knowledge graph. DETAILED DESCRIPTION OF THE INVENTION

[0018] The apparatus 100 for determining a knowledge graph 102 comprises, according to an embodiment, at least one processor 104, at least one memory 106, and an interface 108. The interface 108 may be adapted to receive input data for the knowledge graph 102 and to output information related to the input data. A data link 110 is at least temporarily connected to the at least one processor 104, the interface 108, and the at least one memory 106.

[0019] The apparatus 100 is configured to perform the method steps described below.

[0020] The at least one memory 106 may include a computer program that may include computer-readable instructions that, when executed by the at least one processor 104, cause the device 100 to perform steps in the method.

[0021] In the following example, knowledge graph 102 represents a solution to a classification problem governed by hierarchical multi-label classification, a category of classification problem in which an item, e.g., an instance of text or a digital image, is classified into a hierarchical set of labels, where multiple labels can be assigned at each hierarchical level.

[0022] In an embodiment, the instance is stored in at least one memory 106 or received via an interface 108. The instance may include digital text data.

[0023] In the embodiment described below, a binary classifier is trained for leaf or non-leaf nodes of a tree of labels. Figure 2 shows an exemplary label tree 200 that is hierarchically structured. The hierarchical structure has a top level, referred to as the root level 202, and, in descending hierarchical order, a first level 204, a second level 206, and a third level 208.

[0024] The root level in the example has one node called root. The first level 204 in the example has a non-leaf node for label A and a non-leaf node for label B, both of which are directly linked to the node called root. They are not directly linked to each other. According to one embodiment, each node in the label tree has exactly one parent.

[0025] The second level 206 in this example has a non-leaf node for label A43 and a non-leaf node for label A44, both of which are directly linked to node A. Neither of these are linked to node B nor to a node called the root, and neither are directly linked to each other.

[0026] The second level 206 in this example has a non-leaf node for label B41 and a non-leaf node for label B23, both of which are directly linked to node B. Neither of these are linked to node A nor to a node called the root, and neither are directly linked to each other.

[0027] The third level 208 in this example has a leaf node for label A43B and a leaf node for label A43C, both of which are directly linked to node A43, and neither of which are linked to any other nodes.

[0028] The third level 208 in this example has a leaf node for label A44B and a leaf node for label A44C, both of which are directly linked to node A44, and neither of which are linked to any other nodes.

[0029] The third level 208 in this example has a leaf node for label B41J and a leaf node for label B41F, both of which are directly linked to node B41, and neither of which are linked to any other nodes.

[0030] The third level 208 in this example has a leaf node for label B23D and a leaf node for label B23Q, both of which are directly linked to node B23, and neither of which are linked to any other nodes.

[0031] Figure 3A shows a portion of a ensemble of classifiers 300 as a schematic diagram of classification according to a first embodiment, where one classifier is trained for each node of the tree, and Figure 3B shows classification according to a second embodiment.

[0032] More specifically, Figures 3A and 3B show an artificial neural network architecture with a classifier for the labels in the branch of the tree of Figure 2 that contains node A. In the following, a first embodiment of an ensemble 300 will be described with reference to Figure 3A.

[0033] The input to the collection 300 can be an instance with a sequence of tokens. This input can include the title or abstract of a patent document. In this example, the labels are by patent classification.

[0034] In the first embodiment shown in Figure 3A, the input is raw text 301 without any kind of processing. A suitable tokenizer 302, e.g., word-piece tokenization, tokenizes the text 301 into a sequence of tokens. In the example, this sequence of tokens is one-hot encoded to form an input vector t1, t2, t3, ... tn for each token using the corresponding vocabulary token identification 303 in preparation for a transformer layer 304, hereafter referred to as the transformer. Input vectors for special classification tokens are provided similarly, which in Figure 3A are represented as <cls>It is called.

[0035] In an embodiment, the transformer 304 is a transformer-based neural language model, for example, a pre-trained neural language model, such as BERT or RoBERTa.

[0036] In the transformer 304, the input vectors representing special classification tokens <cls>, t1, t2, t3, ... tn and the one-hot encoded token sequence are passed through a pre-trained transformer, i.e., language model, which generates embeddings 306. Embeddings 306 include token embeddings 306-1, 306-2, ... 306-n for input vectors t1, t2, t3, ... tn. Embeddings 306 also include embeddings 307 for special classification tokens, e.g., CLS for BERT.

[0037] According to one embodiment, BERT outputs a sequence of special embeddings, the first of which is an embedding 307 corresponding to a classification token and can be used as a representation of the entire input sequence. In addition, BERT also outputs one embedding for each token. According to this embodiment, the CLS embeddings are used to form a single embedding that is used as input for the classifier and / or the rest of the neural network.

[0038] In the following, an example will be described based on using CLS token embeddings as the aggregate vector 308.

[0039] The transformer output embedding 306 is a matrix whose dimension depends on the maximum number of tokens. If the number of word-piece tokens in a text is M and the embedding size is E, the transformer 304 generates a token tensor of dimension M×E. The first vector in this token tensor corresponds to the CLS token embedding 307, which can be considered to represent the embedding for the entire input sequence, i.e., can be used as the aggregate embedding 308.

[0040] The aggregate embedding 308 can be fed directly into the task-specific hidden layer of the classifier.

[0041] FIG. 3A shows multiple classifiers arranged in a hierarchical structure that matches the hierarchical structure of leaf and non-leaf nodes in the label tree shown in FIG.

[0042] More specifically, FIG. 3A illustrates a classifier 310 corresponding to a first level of the hierarchy, which is trained to determine a classification value assigned to label A for aggregate embedding 308. A classifier 312 corresponding to a second level of the hierarchy is trained to determine a classification value for its input, specifically a binary classification value assigned to label A43. A classifier 314 corresponding to the second level of the hierarchy is trained to determine a classification value for its input, specifically a binary classification value assigned to label A44. A classifier 316 corresponding to a third level of the hierarchy is trained to determine a classification value for its input, specifically a binary classification value assigned to label A43B. A classifier 318 corresponding to the third level of the hierarchy is trained to determine a classification value for its input, specifically a binary classification value assigned to label A43C. A classifier 320 corresponding to the third level of the hierarchy is trained to determine a classification value for its input, specifically a binary classification value assigned to label A44B. The classifier 322 corresponding to the third level of the hierarchy is trained to determine a classification value for its input, specifically the binary classification value assigned to label A44C.

[0043] In training, shared layers can be used for the two tasks. In this embodiment, shared layers refer to layers of the artificial neural network for the classifiers used to calculate the individual outputs. For the classifiers for labels A43C and A43B, the shared layers include the layer of classifier 310 for label A, the layer of classifier 312 for label A43, the layer of classifier 316 for label A43B, the layer of classifier 318 for label A43C, and the BERT layer, but not the layer of classifier 314 for label A44, the layer of classifier 320 for label A44B, or the layer of classifier 322 for label A44C.

[0044] In an embodiment, a binary classification is true if the instance is assigned to the label and false otherwise, where true indicates that the instance belongs to this label and false indicates that the instance does not belong to this label.

[0045] A softmax layer or softmax operation 324 can be provided for the classification values. As shown in the portion of the collection 300 shown in Figure 3A, with seven labels spanning the hierarchical structure, seven softmax layers or softmax operations 324 can be used.

[0046] In the example, the classifiers are arranged as label-specific layers, where a task in the example is to identify whether an input can be assigned to a label or not, and the classifiers can generally be of any type.

[0047] The input to a task uses the hierarchical relationships between labels to pass learning from higher-level tasks to lower-level ones. The input for the classifier 310 in an embodiment is the aggregate embedding 308.

[0048] The input for any classifier may include the output of a classifier at a higher level in the hierarchy. The input for such a classifier may include a concatenation of the aggregate embedding 308 and the output of the classifier at a higher level in the hierarchy. In an embodiment, optional means 326 for combining, e.g., concatenating, the aggregate embedding 308 with the individual outputs is shown. According to one embodiment, for the second level and below, the aggregate embedding 308 or CNN output may be combined, e.g., concatenated, with the parent's hidden state, which is passed as input to the child's fully connected layer.

[0049] In an embodiment, a task is performed by at least one fully connected layer of the classifier. A set of fully connected layers, including a softmax function after the last fully connected layer, can be used to determine the output.

[0050] The input for any classifier can be a vector, which can be passed through k fully connected layers, each of size D.

[0051] The classifier is task-specific. In an embodiment, the task-specific classifier performs binary classification to predict whether a given instance, e.g., text or a sequence of words from text or a digital image, belongs to a particular class. In an embodiment, the task-specific classifier includes a fully connected layer with a dimension-2 softmax output 324. The fully connected layer can be equipped with rectified linear unit ReLU as the activation function and binary cross-entropy as the loss.

[0052] In the following, an assembly 300 according to a second embodiment will be described with reference to Figure 3B, where elements having the same function as those previously described with reference to Figure 3A are given the same reference numerals.

[0053] The ensemble 300 according to the second embodiment differs from the ensemble 300 according to the first embodiment only in that the information of the token sequence t1, t2, t3, ... tn is aggregated into one aggregate embedding 308, e.g., a single vector. In contrast to the first embodiment, this aggregate embedding 308 is not based on a special classification token embedding 307, e.g., CLS in BERT. Instead, the aggregation is determined from the token embeddings 306-1, 306-2, ... 306-n by a component 309, which can be a convolutional neural network layer, a CNN layer, or an aggregation function such as the mean, with or without attention.

[0054] A set of convolutional layers with variable kernel sizes can be applied to the tensor containing the embeddings of all input tokens. In an example, the convolutional layers have kernels of size 2, 3, 4, or 5 and F filters per convolutional layer. In an example, a CNN layer is used as component 309, which generates a single vector representing the entire input sequence.

[0055] A computer-implemented method for determining the knowledge graph 102 is described below with reference to Figure 4. The following description assumes that there is one classifier for each leaf or non-leaf node of the label tree.

[0056] The method uses a trained model. In the example, the model represents the ensemble 300. That is, the model represents a neural network with multiple classifiers that perform hierarchical classification. In the example, the model is a neural network with layers and levels as described above. In the example, the linear layer generates two logits for binary classification.

[0057] The method is illustrated using an example with an exemplary hierarchical structure for multiple classifiers and for a trained first classifier and a trained second classifier.

[0058] A first classifier is trained to determine a first classification. The first classifier is associated with a first node in the knowledge graph 102 that represents a first label. A second classifier is trained to determine a second classification. The second classifier is associated with a second node in the knowledge graph 102 that represents a second label.

[0059] The classifier hierarchy may further include different classifiers trained to make different decisions, with the classifiers at different levels in the classifier hierarchy being assigned to different levels in the hierarchy of labels in the label tree, and these classifiers may be used in a similar manner as described for the first and second classifiers.

[0060] The links between parent and child nodes in the knowledge graph 102 are represented by a hierarchical structure for classifiers: the classification or hidden state of a classifier representing a parent can be used as input for a classifier representing its child.

[0061] In an embodiment, the first classification and the second classification are binary classifications for one particular label in the label tree.

[0062] In this way, the output of the transformer 304 can be shared for all the classifiers, each of which is trained in a multi-task setting, as described in more detail below, i.e., the parameters of the transformer 304 can actually be trained in the same way.

[0063] The method includes a step 402 of dividing an instance of text into a sequence of tokens using a tokenizer 302 .

[0064] Then, step 404 is executed.

[0065] In step 404, for each token, an embedding is determined using a transformer 304, e.g., a neural language model based on a transformer. At the same time, step 404 determines a single embedding, which can be, for example, an aggregate embedding 308 for a CLS token or for the output of a component 309 that can be used to represent the entire sequence.

[0066] Then, step 406 is executed.

[0067] In step 406, a first classification is determined for the embedding in the first classifier. To this end, in an embodiment, the embedding is provided to the first classifier.

[0068] Then, step 408 is performed.

[0069] A second classification is determined in a second classifier in step 408. To this end, the embeddings and / or hidden states of the first classifier resulting from the embeddings provided in step 406 may be provided as inputs to the second classifier.

[0070] Optionally, the embedding can be coupled with the classification or hidden state.

[0071] Then, step 410 is performed.

[0072] In step 410, it is determined whether the first classification satisfies a first condition. The first classification can be that the instance belongs to this label or that the instance does not belong to this label.

[0073] If the first classification satisfies the first condition, e.g., indicates that the instance belongs to this label, then step 412 is executed. Otherwise, step 414 is executed.

[0074] In step 412, a first link is added to the knowledge graph 102 between a first node of the knowledge graph 102 representing the instance and a node of the knowledge graph 102 representing the first taxonomy.

[0075] Step 414 is then executed.

[0076] In step 414, it is determined whether the second classification satisfies a second condition. The second classification can be that the instance belongs to this label or that the instance does not belong to this label.

[0077] If the second classification satisfies the second condition, e.g., indicates that the instance belongs to this label, then step 416 is performed. Otherwise, step 418 is performed.

[0078] In step 416, a second link is added to the knowledge graph 102 between the node of the knowledge graph 102 representing the instance and a second node of the knowledge graph 102 representing the second taxonomy.

[0079] Then, step 418 is performed. Step 418 is optional.

[0080] If the second classification satisfies the condition, a first link is determined from the node representing the instance to the first node representing the first classification in step 418. If the second classifier is at a lower hierarchical level in the hierarchical structure for classifiers than the first classifier, the predictions of this collection of classifiers are used in hierarchical prediction mode or by post-processing prediction to make the hierarchical prediction consistent, for example, adding related parent nodes to the knowledge graph when the parent nodes are not predicted but the children are, or removing the child's label when the parent node is not predicted.

[0081] In a multi-task setting, the main task is divided into a set of tasks corresponding to different classifiers, which output separate predictions for each task. The neural network can include more hierarchical levels than those shown in Figure 4. Thus, a more complex knowledge graph 102 can be easily determined.

[0082] For an unknown instance of a digital image or text sequence, a label set is predicted using a multi-head neural network fed by the model in this way.

[0083] The label set can optionally be made consistent with the predicted hierarchical label set: for this purpose, parent labels can be added or child labels can be removed according to the predicted label set.

[0084] A node n can be added to the knowledge graph 102 representing the original digital image or text sequence. A link called "belongsToCategory" can be added between any node L representing one of the predicted labels and n, which may or may not include the parent category.

[0085] The steps for training the model are described with reference to FIG.

[0086] In step 502, a model is prepared.

[0087] In particular, a neural network is structured according to the label tree, and the neural network may include multiple convolutional neural network layers, dropout layers, or fully connected layers.

[0088] In step 504, labeled data points are provided.

[0089] In an embodiment, the data points are assigned to the first class or the second class or both. In an embodiment, the data points have labels for the first classifier and the second classifier.

[0090] Training is performed using a number of labeled data points, each assigned to a different class or to multiple classes.

[0091] Then, step 506 is executed.

[0092] In step 506, the first classifier and / or the second classifier are trained depending on the data points.

[0093] A model is trained to determine the first and / or second classification. Thus, for each label, a classifier is trained, for example, a convolutional network, at least one fully connected layer, or a portion of an artificial neural network. Three or more levels of hierarchical structures and classifiers can be provided.

[0094] This means that different classifiers are trained to make different decisions. This combines the advantages of hierarchical classification algorithms, in which training data is optimally utilized by training multiple classifiers, each focused on a different decision, with the advantages of pre-trained neural language models based on Transformers, which typically result in state-of-the-art performance for text classification approaches. The use of hierarchical learning algorithms in a multi-task setting makes this combination possible, even though it may not be possible to simultaneously hold multiple Transformer models in memory. Because one Transformer model is shared for all classifiers and different classifiers are trained in a multi-task setting, computational feasibility is ensured, even in settings where only limited computing power is available.

[0095] According to one aspect, the step of training the model includes determining a first loss from the output of the first classifier and a second loss from the output of the second classifier, and backpropagating the losses to train weights in the first classifier and the second classifier. According to one embodiment, the first classifier and the second classifier do not belong to a shared layer. In this case, the first loss is determined independently of the output of the second classifier, and the parameters of the first classifier are updated depending on the first loss and independent of the second loss. The second loss is determined independently of the output of the first classifier, and the parameters of the second classifier are updated depending on the second loss and independent of the first loss. According to another embodiment, the first classifier and the second classifier belong to a shared layer. In this embodiment, the shared layer is updated depending on the first loss and the second loss. The parameters of the first and second classifiers are updated depending on, for example, the sum of the first and second losses. The first or second loss can be determined as the sum of the norms of the differences between the softmax output 324 for an input defined at a data point and a criterion defined at the data point for this point. The input can be an aggregate embedding 308, such as an embedding of CLS tokens or an embedding that aggregates information in a series of tokens t1, ..., tn of a training instance or this training instance.

[0096] According to another aspect, training the model includes determining a loss from the output of a first classifier when the data points are labeled for a first classification and not for a second classification, and backpropagating the loss to train weights in the first classifier but not in the second classifier.

[0097] According to another aspect, training the model includes determining a loss from the output of the second classifier when the data points are labeled for the second classification and not for the first classification, and backpropagating the loss to train weights in the second classifier and not in the first classifier.

[0098] Training may include multiple epochs.

[0099] A training step can be performed before using the model described above, in which case step 402 is performed after training.

[0100] The method may include determining classifications to input into the model thus trained. A classifier may be used at a position in a hierarchy of classifiers within the model to perform the classification. The method may further include assigning the classification to a label corresponding to a position in the hierarchy of the label tree.< / cls> < / cls>

Claims

1. 1. A computer-implemented method for determining a knowledge graph, comprising: determining (404) an embedding for the token sequence of the instance; determining (406) a first classification for the embedding in a first classifier; determining (410) whether the first classification satisfies a first condition; adding (412) a first link to the knowledge graph between a first node in the knowledge graph representing the instance and a node in the knowledge graph representing the first taxonomy if the first taxonomy satisfies the first condition, and not adding the first link if the first taxonomy does not satisfy the first condition; characterized in that it comprises A computer-implemented method for determining a knowledge graph.

2. determining a second classification in a second classifier (408); determining (414) whether the second classification satisfies a second condition; adding (416) a second link to the knowledge graph between the first node in the knowledge graph representing the instance and a second node in the knowledge graph representing the second taxonomy if the second taxonomy satisfies the second condition, and not adding the second link if the second taxonomy does not satisfy the second condition; 2. The method of claim 1, comprising:

3. feeding (406) the embeddings to the first classifier; providing (408) the embeddings and / or hidden states of the first classifier resulting from the provided embeddings as inputs to the second classifier; 3. The method of claim 2, comprising:

4. 4. The method of claim 3, further comprising determining (418) the first link from the first node of the knowledge graph representing the instance to the node representing the first taxonomy if the second taxonomy satisfies the condition.

5. The method of any one of claims 1 to 4, characterized in that it comprises a step (402) of determining the token sequence of the instance.

6. 6. A method according to any one of claims 1 to 5, characterized in that the instance comprises digital text data.

7. 5. The method according to claim 2, wherein the first classification and / or the second classification are binary classifications.

8. Providing nodes representing label trees in the knowledge graph (502); adding (506) a plurality of links to nodes representing labels for the instances to the knowledge graph; 5. The method according to claim 2, further comprising:

9. 9. The method of claim 8, further comprising determining whether the instance belongs to a category represented by a node in the label tree according to the first classification and / or the second classification.

10. 5. The method of claim 2, further comprising the step of assigning (502) the first classification to a label different from the second classification.

11. Providing (504) data points having a label for the first classification and / or a label for the second classification; training (506) the first classifier and / or the second classifier depending on the data points; 5. The method according to claim 2, further comprising:

12. a step (502) of providing a model, in particular a neural network; training (506) the model to determine the first classification or the second classification; 5. The method according to claim 2, further comprising:

13. The step of training the model (506) comprises: determining a loss from the output of the first classifier and a loss from the output of the second classifier; backpropagating the losses to train weights in the first classifier and the second classifier depending on both the losses, or to train the first classifier depending on the first loss and independent of the second loss and to train the second classifier depending on the second loss and independent of the first loss; 13. The method of claim 12, comprising:

14. 14. A method according to claim 12 or 13, characterized in that it comprises the step of determining a classification for an input to the trained model by a classifier at a position in a hierarchy of classifiers within the model, and assigning the classification to a label corresponding to the position in a hierarchy of a label tree.

15. In an apparatus (100) for determining a knowledge graph (102), The device (100) is configured to carry out the steps of the method according to any one of claims 1 to 14, An apparatus for determining a knowledge graph (102).

16. A computer program comprising computer-readable instructions that, when executed by a computer, cause the computer to carry out the steps of the method according to any one of claims 1 to 14.

Citation Information

Patent Citations

  • Time sequence knowledge graph generation method and device, equipment and medium

    CN111221983A

  • Rapid inference execution system for expert system

    JP1990067634A

  • Idea support device and idea support method

    JP2018147238A

  • System and method for domain-and language-independent definition extraction using deep neural networks

    WO2019133676A1