Automatic term assignment
Automatic term assignment is the process of automatically mapping business terms to data assets and asset columns as part of metadata enrichment.
In addition to any automatically assigned business terms, you can also assign terms manually by editing the data asset properties in a project or a catalog, or when you work with enrichment results.
If automatic term assignment is configured as part of metadata enrichment, such assignments are generated by several methods. These methods also generate suggestions for terms to assign.
The terms are assigned based on the confidence level. Initially, these associations are represented as candidates which domain experts and stewards can review and assign manually. The confidence for an assigned or suggested term is shown as a percentage value. This value represents the overall confidence. See How the overall confidence is computed. The confidence level for when a term is suggested or automatically assigned is determined by the project's enrichment settings. The default confidence level to be exceeded is 75% for term suggestions, and 90% for automatic assignment of candidate terms. See Default enrichment settings. A project administrator can customize these settings.
Only published business terms can be assigned. Assigned terms do not affect data class assignment.
Quality of term assignments
To achieve high-quality term assignments, consider the following tips:
-
Make sure that the categories that you want to use in metadata enrichment include only relevant governance artifacts. You might want to consider this already when you set up your business vocabulary.
-
Experiment with the term assignment thresholds. Changing the thresholds can have a huge impact on the number of assigned terms. Find the threshold where the number of false positives is low and not too many true positives are missed.
-
Analyze some of the false positives to find a pattern or a valid reason why these terms were suggested or assigned. If most false positives can be attributed to a specific algorithm, consider disabling that algorithm in the enrichment settings and rerun term assignment. Check whether this reduces the number of false positives.
-
Make sure to train the ML model on a catalog to which you publish only carefully reviewed term assignments. Preferably, dedicate one catalog to model training.
-
For term assignment based on column data or metadata, create relationships between terms and data classes. Make sure that the data classes that you use don't produce false positives.
Term assignment methods
You can use all or a subset of the available term assignment methods.
Name matching
The name matching method bases its result on the similarity between the term name or abbreviations and the name of the data asset or column. For example, a column CREDNUM might be associated with a term Credit Card Number because of the similarity between the two names. Name matching matches only data asset and column names with term names and abbreviations. Descriptions are not considered. ML-based term assignment handles names and descriptions.
Based on data class assignment
The class-based assignment method generates assignments based on data classification. If a data class was selected for an asset column either as the result of column analysis or manually, and if this data class is linked to one or more business terms, these terms are suggested or assigned if they exceed the respective thresholds. The term confidence level is the same as the confidence of the data class that the term is linked with. For example, a column COL1 classified as an email address with 90% confidence is likely to be assigned to the term E-mail Address if the data class and term are linked. Because there is no similarity between the name of the column and the term, the name matching method is not capable of making this association.
To enable the class-based assignment method, it is important to review data class to term linkage before running term assignment because appropriate linkage is an important prerequisite for high-quality results.
Machine learning
The machine learning (ML) method for generating term assignments use the built-in supervised machine learning models. These models comprise a model for term assignments and one for term removals.
The ML models are trained based on published terms and on term assignments present in the training data in a project or a catalog. See Training data for machine learning models. If no term assignments are available, the training for the term assignment model focuses on linguistic similarity of words in names and descriptions of terms and data assets or columns. Terms can be assigned based on that similarity. With an increasing number of reviewed assignments, terms can be assigned independent of linguistic similarity because term assignments on columns with similar characteristics become available.
Semantic term assignment
This method uses a fine-tuned IBM Slate foundation model for assigning and suggesting domain-specific business terms. The model takes into account names and descriptions of assets and columns and semantically matches terms with that metadata. Thus, terms can be assigned even if they aren't exact matches.
Rejected terms
When you review term assignments in the metadata enrichment results, you might find terms that you think are not accurate for a data asset. You can remove such terms thus providing negative feedback. Such terms are considered as rejected. If the training scope is the project, the confidence scores of term assignments can be adjusted based on these rejected terms when you rerun automatic term assignment. The individual confidence values returned by each selected term assignment method are adjusted by this negative confidence value for calculating the overall confidence score of a term. See How the overall confidence score is calculated.
Training data for machine learning models
For each project, you can define in the default enrichment settings whether the built-in ML model used for automatic term assignment is trained with assets from the project or with assets from a catalog of your choice. Adjusting the confidence scores based on rejections is available only if the training scope is the project.
The default setting is to train the models within the project. In this case, the models are trained with any published business terms and any available term assignments or rejections on columns that were marked as reviewed in the project.
When you select a catalog as the training scope, the model for term assignments is trained with any published business terms and any term assignments available in the selected catalog. The model for term rejections cannot be trained with assets from a catalog.
When are the models trained?
Model training for the built-in ML models is triggered when a metadata enrichment job is started and one of these conditions is true:
-
No model is available yet.
-
A new business term was created or an existing term was updated since the model was last trained. The term does not have to be assigned to any assets or columns.
-
Training scope project: At least 21 columns were marked as reviewed since the model was last trained.
Training scope catalog: Assignments on at least 21 columns in the selected catalog changed because terms were assigned or removed since the model was last trained.
-
The last training did not complete successfully or within a reasonable period of time.
If no information about term rejections is available on the first use of the model for confidence-score adjustments, the initial training for this model happens later, which means, it is initially trained when information about rejected terms is available on a subsequent model training cycle.
How the overall confidence is computed
A method that associates a term with a data asset computes a confidence, which is a numeric value between a configurable minimum and 1. The minimum value is defined by the suggestion threshold for term assignment that can be configured in the default enrichment settings.
The confidence for an assigned or suggested term is shown as a percentage value. This value represents the overall confidence. The overall confidence is the maximum of the confidence values returned by the selected term assignment methods and might be adjusted by any negative confidence value returned by the ML model for term removals.
You can choose whether the confidence values that are returned by the selected term assignment methods are adjusted based on previously rejected business terms.
Example:
Assuming all methods are enabled, the confidence values for a column ADDRESS and term Home Address:
Name matching: 0.5
Class-based assignment: 0.4
ML-based assignment: 0.3
Semantic assignment: 0.5
ML model for rejections: -0.4
The actual confidence value for each method is calculated by subtracting the confidence value returned for rejected terms:
Name matching: 0.5 - 0.4 = 0.1
Class-based assignment: 0.4 - 0.4 = 0
ML-based assignment: 0.3 - 0.4 = -0.1
Semantic assignment: 0.5 - 0.4 = 0.1
The overall confidence is 0.1 because it’s the highest value calculated for a method.
If the same confidence value for a term is calculated for several methods, only one is automatically assigned. The order in which such a term is selected is as follows:
- Term found by the data-class based assignment method
- Term found by the semantic term-assignment method
- Term found by the ML method
- Term found by the name-matching method
How new analysis results update existing term assignments
When you rerun an enrichment, a new analysis result updates term assignments as follows:
Type of term assignment | Data asset or column is reviewed | Data asset or column is not reviewed |
---|---|---|
Manually assigned terms | Terms remain unchanged. | Terms remain unchanged. |
Rejected terms | Terms remain unchanged. | Terms remain unchanged. |
Suggested terms | Terms are deleted and replaced with the new suggested terms. | Terms are deleted and replaced with the new suggested terms. |
Automatically assigned terms | Existing terms remain unchanged. Newly detected terms are added as suggested terms. | Existing term assignments are updated. |
Learn more
Parent topic: Metadata enrichment results