Canonical transformations using machine learning language model
Various embodiments of the present disclosure provide machine learning techniques for transforming disparate, third-party datasets to canonical representations. The techniques include generating, using a machine learning prediction model, a canonical representation for an input dataset. The machine learning prediction model is previously trained using permutative input embeddings for a training dataset based on canonical data entity features, such that each permutative input embedding corresponds to a different sequence of the canonical data entity features. The permutative input embeddings are leveraged to generate a latent representation for the training dataset. The latent representation is combined with a canonical data map to generate an alignment vector, which is refined to generate an output vector for the input dataset. The machine learning prediction model is trained using a model loss generated based on a comparison of the output vector with a corresponding labeled vector.
1 . A computer-implemented method comprising:
generating, by one or more processors and using a machine learning prediction model, a canonical representation for an input dataset, wherein the machine learning prediction model is previously trained by:
generating a plurality of permutative input embeddings for a training dataset based on a plurality of canonical data entity features, wherein each permutative input embedding of the plurality of permutative input embeddings corresponds to a different sequence of the plurality of canonical data entity features;
generating a latent representation based on the plurality of permutative input embeddings;
generating an alignment vector representation for the training dataset based on a comparison between the latent representation and a canonical data map, wherein the canonical data map comprises a canonical labeled vector comprising a label corresponding to a data type of the input dataset;
generating an output vector for the training dataset based on the alignment vector representation;
generating, using a loss function, a model loss for the machine learning prediction model based on the output vector and a labeled vector for the training dataset; and
updating one or more parameters of the machine learning prediction model based on the model loss.
2 . The computer-implemented method of claim 1 further comprising:
receiving the input dataset from a third-party data source, wherein the input dataset comprises one or more data fields associated with inconsistent metadata indicative of one or more field descriptions or one or more column values specific to the third-party data source.
3 . The computer-implemented method of claim 1 , wherein the latent representation is generated using one or more neural network layers of the machine learning prediction model, and the latent representation is indicative of a plurality of feature weights for each of the plurality of canonical data entity features.
4 . The computer-implemented method of claim 3 , wherein the training dataset comprises a plurality of data fields and the plurality of feature weights comprises one or more feature weights between each of the plurality of data fields and each of the plurality of canonical data entity features.
5 . The computer-implemented method of claim 3 , wherein the one or more neural network layers of the machine learning prediction model comprise a bidirectional recurrent neural network.
6 . The computer-implemented method of claim 1 , wherein the alignment vector representation is based on a dot product between the latent representation and the canonical data map.
7 . The computer-implemented method of claim 1 , wherein generating the output vector for the training dataset comprises:
generating, using a sigmoid function, a hidden state output for the alignment vector representation,
generating, using an activation function, a refined hidden state output, and
generating the output vector based on the refined hidden state output.
8 . The computer-implemented method of claim 7 , wherein the activation function comprises a softmax function.
9 . The computer-implemented method of claim 7 , wherein the output vector for the training dataset comprises a dot product between the refined hidden state output and the canonical data map.
10 . The computer-implemented method of claim 1 , wherein the loss function comprises a cross-entropy loss function and the model loss comprises a cross-entropy loss between the output vector and the labeled vector.
11 . The computer-implemented method of claim 1 , wherein the output vector comprises a two dimensional vector indicative of a canonical table from a canonical model that corresponds to each of a plurality of data fields of the training dataset.
12 . The computer-implemented method of claim 1 , wherein the canonical labeled vector is generated using exhaustive raw data representing all data types of the input dataset.
13 . A system comprising:
one or more processors; and
one or more memories storing processor-executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
generating, using a machine learning prediction model, a canonical representation for an input dataset, wherein the machine learning prediction model is previously trained by:
generating a plurality of permutative input embeddings for a training dataset based on a plurality of canonical data entity features, wherein each permutative input embedding of the plurality of permutative input embeddings corresponds to a different sequence of the plurality of canonical data entity features;
generating a latent representation based on the plurality of permutative input embeddings;
generating an alignment vector representation for the training dataset based on a comparison between the latent representation and a canonical data map, wherein the canonical data map comprises a canonical labeled vector comprising a label corresponding to a data type of the input dataset;
generating an output vector for the training dataset based on the alignment vector representation;
generating, using a loss function, a model loss for the machine learning prediction model based on the output vector and a labeled vector for the training dataset; and
updating one or more parameters of the machine learning prediction model based on the model loss.
14 . The system of claim 13 , wherein the one or more processors are further configured to:
receive the input dataset from a third-party data source, wherein the input dataset comprises one or more data fields associated with inconsistent metadata indicative of one or more field descriptions or one or more column values specific to the third-party data source.
15 . The system of claim 13 , wherein the latent representation is generated using one or more neural network layers of the machine learning prediction model, and the latent representation is indicative of a plurality of feature weights for each of the plurality of canonical data entity features.
16 . The system of claim 15 , wherein the training dataset comprises a plurality of data fields and the plurality of feature weights comprises one or more feature weights between each of the plurality of data fields and each of the plurality of canonical data entity features.
17 . The system of claim 15 , wherein the one or more neural network layers of the machine learning prediction model comprise a bidirectional recurrent neural network.
18 . The system of claim 13 , wherein the alignment vector representation is based on a dot product between the latent representation and the canonical data map.
19 . One or more non-transitory computer-readable media storing processor-executable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
generating, using a machine learning prediction model, a canonical representation for an input dataset, wherein the machine learning prediction model is previously trained by:
generating a plurality of permutative input embeddings for a training dataset based on a plurality of canonical data entity features, wherein each permutative input embedding of the plurality of permutative input embeddings corresponds to a different sequence of the plurality of canonical data entity features;
generating a latent representation based on the plurality of permutative input embeddings;
generating an alignment vector representation for the training dataset based on a comparison between the latent representation and a canonical data map, wherein the canonical data map comprises a canonical labeled vector comprising a label corresponding to a data type of the input dataset;
generating an output vector for the training dataset based on the alignment vector representation;
generating, using a loss function, a model loss for the machine learning prediction model based on the output vector and a labeled vector for the training dataset; and
updating one or more parameters of the machine learning prediction model based on the model loss.
20 . The one or more non-transitory computer-readable media of claim 19 , wherein generating the output vector for the training dataset comprises:
generating, using a sigmoid function, a hidden state output for the alignment vector representation,
generating, using an activation function, a refined hidden state output, and
generating the output vector based on the refined hidden state output; and wherein
the activation function comprises a softmax function, and the output vector for the training dataset comprises a dot product between the refined hidden state output and the canonical data map.