Model Generation Configuration
In generation, we need to create the generate
action corresponding to the
selected trained Rockfish model with its configuration.
Basic Configuration Setup
Model | Generate Configuration | Generate Action |
---|---|---|
RF-Time-GAN | generate_config = ra.GenerateTimeGAN.Config(doppelganger=ra.GenerateTimeGAN.DGConfig()) |
generate = ra.GenerateTimeGAN(generate_config) |
RF-Time-Transformer | generate_config = ra.GenerateTimeTransformer.Config() |
generate = ra.GenerateTimeTransformer(generate_config) |
RF-Tab-GAN | generate_config = ra.GenerateTabGAN.Config(tabular_gan=ra.GenerateTabGAN.GenerateConfig()) |
generate = ra.GenerateTabGAN(generate_config) |
RF-Tab-Transformer | generate_config = ra.GenerateTabTransformer.Config() |
generate = ra.GenerateTabTransformer(generate_config) |
The generation configuration uses default parameter values if not specified.
Available Parameters
Model | Parameters | Description | Default Value | Guidelines |
---|---|---|---|---|
RF-Time-GAN | given_metadata |
A dict to specify metadata values for conditional generation. If the dict is None, generate all possible metadata values. | None |
Users can provide given_metadata in a dict - keys to indicate field names and values for the values prior to generation |
clip_per_sample |
When True, it ensures only generating in-range values | True |
It is effective when activate_normalization_per_sample = True in training configuration. When activate_normalization_per_sample = False , it by default only generates within range values. |
|
sessions |
Number of generated sessions | None |
If None, it will generate the min(1000, number of source sessions) . To generate more, users need to indicate the number in ra.SessionTarget . It is only used if users want to generate smaller number than the source number. |
|
RF-Time-Transformer | sessions |
Number of sessions to generate. | None |
If None, it will generate the min(1000, number of source sessions) . To generate more, users need to indicate the number in ra.SessionTarget . It is only used if users want to generate smaller number than the source number. |
RF-Tab-Transformer | records |
Number of records to generate. | None |
If None, it will generate the min(1000, number of source records) . To generate more, users need to indicate the number in ra.SessionTarget . It is only used if users want to generate smaller number than the source number. |
RF-Tab-GAN | clip_in_range |
When True, enable generated continuous values to be within the range | False |
It clips the out-of-range values by the boundary of training data so that it may affect the numerical columns' distribution due to the spikes around the boundary. |
records |
Number of records to generate. | None |
If None, it will generate the min(23,000, number of source records) . To generate more, users need to indicate the number in ra.SessionTarget . It is only used if users want to generate smaller number than the source number. |
Usage Examples
You can customize the generation behavior by passing parameters to the configuration objects. Here are some examples:
Note: The
sessions
andrecords
parameters should only be specified when you want to generate fewer items than the default limit. For generating more than the default, usera.SessionTarget
instead.For comprehensive information on how to apply the generate action with different use cases, please refer to the Generate Module.
RF-Time-GAN
generate_config = ra.GenerateTimeGAN.Config(
doppelganger=ra.GenerateTimeGAN.DGConfig(
given_metadata={'user_type': 'premium'}, # Conditional generation
clip_per_sample=True, # Ensure in-range values
sessions=500 # Generate 500 sessions (only when < min(1000, source sessions))
)
)
generate = ra.GenerateTimeGAN(generate_config)
RF-Time-Transformer
generate_config = ra.GenerateTimeTransformer.Config(
sessions=200 # Generate 200 sessions (only when < min(1000, source sessions))
)
generate = ra.GenerateTimeTransformer(generate_config)
RF-Tab-GAN
generate_config = ra.GenerateTabGAN.Config(
tabular_gan=ra.GenerateTabGAN.GenerateConfig(
clip_in_range=True, # Clip values to training range
records=1000 # Generate 1000 records (only when < min(23000, source records))
)
)
generate = ra.GenerateTabGAN(generate_config)
RF-Tab-Transformer
generate_config = ra.GenerateTabTransformer.Config(
records=500 # Generate 500 records (only when < min(1000, source records))
)
generate = ra.GenerateTabTransformer(generate_config)