Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve feature deserialization to use common primitive instances #2127

Merged
merged 14 commits into from
Jun 27, 2022

Conversation

thehomebrewnerd
Copy link
Contributor

Updates feature deserialization to use a common primitive instance for features that share a primitive instead of creating a unique primitive instance for each feature.

Partially closes #2115

@codecov
Copy link

codecov bot commented Jun 21, 2022

Codecov Report

Merging #2127 (81568d0) into serialization-updates (aab351c) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@                  Coverage Diff                   @@
##           serialization-updates    #2127   +/-   ##
======================================================
  Coverage                  99.21%   99.21%           
======================================================
  Files                        143      143           
  Lines                      16835    16912   +77     
======================================================
+ Hits                       16703    16780   +77     
  Misses                       132      132           
Impacted Files Coverage Δ
featuretools/primitives/utils.py 99.62% <100.00%> (+0.01%) ⬆️
...ests/primitive_tests/test_feature_serialization.py 99.55% <100.00%> (+0.18%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update aab351c...81568d0. Read the comment docs.

@thehomebrewnerd thehomebrewnerd changed the base branch from main to serialization-updates June 23, 2022 13:29
Copy link
Contributor

@rwedge rwedge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, left one comment about adopting a new style change for pytest

@thehomebrewnerd thehomebrewnerd merged commit 97b93f0 into serialization-updates Jun 27, 2022
@thehomebrewnerd thehomebrewnerd deleted the feat-deserialize-improvement branch June 27, 2022 16:19
thehomebrewnerd added a commit that referenced this pull request Jun 30, 2022
…2136)

* serialization and deserialization improvements

* add pr number

* Improve feature deserialization to use common primitive instances (#2127)

* update feature deserialization

* update release notes

* lint fix

* fix comment

* fix for list inputs and test cleanup

* remove files

* remove file

* use tmp_path

* Allow users to directly set feature output column names and save during serialization (#2142)

* add set_feature_names method

* initial serialization updates

* update release notes

* fix tests

* code cleanup - only store names when set

* only use on multi-output features

* fix test

* lint fix

* remove unused functions

* add more test cases

* update serialization test

* Update featuretools/feature_base/feature_base.py

Co-authored-by: Roy Wedge <roy.wedge@alteryx.com>

Co-authored-by: Roy Wedge <roy.wedge@alteryx.com>

* Refactor feature serialization to avoid storing duplicate primitive information (#2144)

* initial refactor of serialization

* update release notes

* lint and remove breakpoint

* new approach without hash

* refactor and update tests

* remove comment

* update s3 file

* update feature base args

* lint fix

* misc cleanup

* remove extra str casting

* fix spelling error

* remove instance cache

* update save and load docstring examples

* lint fix

* more docstring cleanup

* update release notes

* tweak serialization

* update json

Co-authored-by: Roy Wedge <roy.wedge@alteryx.com>
@ozzieD ozzieD mentioned this pull request Jun 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature serialization and deserialization improvements
2 participants