You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There is an increasing user demand for applying constraints to the PARSynthesizer -- see #570. One reason why we have been unable to support constraints is that the PARSynthesizer has unchanging, context_columns while other synthesizers do not.
To at least address some constraint uses, it would be good to allow constraints if:
All of the involved columns are NOT context columns or
All of the involved columns ARE context columns
i.e. mixing-and-matching columns from context and non-context are not allowed within a constraint
Another reason is that PAR (and sequence-based synthesizers) cannot easily accommodate reject sampling based approaches. So it would only be possible to add non-overlapping constraints.
Expected behavior
Enable the PARSynthesizer to be used with constraints, in the same manner that any other synthesizer can be used. But only for select cases:
You can only use a constraint for columns that are all contextual, or all non-contextual
You cannot supply multiple overlapping constraints (that is 2 constraints that each independently act on the same column)
You cannot use it for custom constraints (for now, as it is complicated with a custom constraint to determine whether points 1 and 2 can be met).
If a user passes in constraints that violate these assumptions, we should throw a SynthesizerInputError.
Hi @Ng-ms, I understand this is an important issue to you. We (at SDV) are a small team working to support many users and features. We appreciate your patience as we prioritize issues and bug fixes. Thanks.
If you have any urgent request that require more investment from the team, perhaps you may want to Contact Us about starting a business relationship.
Hi @npatki Thank you for the amazing work in this library, i was wondering if there is any workaround method for the context_columns in the PAR , all of my date columns are context columns , i just need to make some larger than some, and the other equal to each other. thank you
Hi @naiomi-mo, no problem. One simple workaround for now might be that instead of modeling both datetime columns, you can preprocess your data to model: (a) only the lower date column, and then (b) the difference. That is to say, get rid of the higher datetime column. The SDV will then synthesize lower date + the difference column, which you can then use to reconstruct the higher date column. Hopefully that makes sense.
Problem Description
There is an increasing user demand for applying constraints to the PARSynthesizer -- see #570. One reason why we have been unable to support constraints is that the PARSynthesizer has unchanging,
context_columns
while other synthesizers do not.To at least address some constraint uses, it would be good to allow constraints if:
i.e. mixing-and-matching columns from context and non-context are not allowed within a constraint
Another reason is that PAR (and sequence-based synthesizers) cannot easily accommodate reject sampling based approaches. So it would only be possible to add non-overlapping constraints.
Expected behavior
Enable the PARSynthesizer to be used with constraints, in the same manner that any other synthesizer can be used. But only for select cases:
If a user passes in constraints that violate these assumptions, we should throw a
SynthesizerInputError
.For overlapping constraints:
For custom constraints:
The text was updated successfully, but these errors were encountered: