AI Synthesizer (NnGenerator)
The AI Synthesizer uses deep neural networks to learn models of your data, which can be sampled to generate new synthetic rows that faithfully mimic the statistical properties of your data.
You assign the AI Synthesizer generator to the columns that you want to use to generate the model, then provide the configuration details for the model.
By default, the AI Synthesizer is not available. To enable the AI Synthesizer, set the environment variable
TONIC_NN_GENERATOR_ENABLED
to true
. See Setting environment variables.For the AI Synthesizer, the replacement contains a link object for each column that is in the model.
The
metadata
object is populated from the NnMetadata
object. The model configuration is provided in the nnModelConfig
object outside of the links
object.For each column, you specify the type of data in that column (Categorical, Numeric, Location).
{
"generatorId": "NnGenerator",
"column": "string",
"table": "string",
"schema": "string",
"metadata": {
"encoding": "enum"
},
}
The following example replacement configures a model based on three columns. Two contain categorical data, and the third contains numeric data.
The model does not contain event data.
{
"name": "AI Synthesizer",
"schema": "test",
"table": "users",
"links": [
{
"generatorId": "NnGenerator",
"schema": "test",
"table": "users",
"column": "occupation",
"metadata": {
"encoding": "Categorical"
}
},
{
"generatorId": "NnGenerator",
"schema": "test",
"table": "users",
"column": "gender",
"metadata": {
"encoding": "Categorical"
}
},
{
"generatorId": "NnGenerator",
"schema": "test",
"table": "users",
"column": "salary",
"metadata": {
"encoding": "Numeric"
}
}
],
"nnModelConfig": {
"modelType": "VAE",
"epochs": 300,
"batchSize": 500,
"earlyStopping": false,
"recLossFactor": 2,
"latentDim": 128,
"maxCategoricalDim": 35,
"encoderLayerSizes": [ 256,256,256 ],
"decoderLayerSizes": [ 256,256,256 ]
}
}
Last modified 1mo ago