Improve Consistency of Transform Primitives #236
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Due to the use of a
frozenset
which is an unordered Python object, the order of commutative transform primitives that used multiple columns, such asAND
, could change when running Deep Feature Synthesis in different Python sessions. This behavior did not affect the feature values because the primitives are commutative. It did change the feature definitions which made comparing different sets of feature definitions a challenge.The behavior is addressed by sorting the features used in commutative transform primitives alphabetically by name. For example, if the transform primitive
AND
is used with the features (columns)FLAG_A
andFLAG_B
the resulting feature will beAND(FLAG_A, FLAG_B)
.